On 12/14/2010 11:29 PM, Carsten Grzemba wrote:
I have the  code copied unchanged  from winsync-plugin.h where the 
slapi_apib_register function is called in test_winsync_plugin_start.
test_winsync_plugin_init does:

slapi_pblock_set( pb, SLAPI_PLUGIN_VERSION, SLAPI_PLUGIN_VERSION_01 ) != 0 ||
slapi_pblock_set(pb, SLAPI_PLUGIN_START_FN, (void *) posix_winsync_plugin_start 
) != 0 ||
slapi_pblock_set(pb, SLAPI_PLUGIN_CLOSE_FN, (void *) posix_winsync_plugin_close 
) != 0 ||
slapi_pblock_set( pb, SLAPI_PLUGIN_DESCRIPTION, (void *)&posix_winsync_pdesc ) 
!= 0 )

which registers the _start function
Move the registration of your API (the slapi_apib_register() call) to the test_winsync_plugin_init() function. That should cause the callbacks to be registered prior to the Replication plug-in checking for any regisered API.
Regards
Carsten

----- Ursprüngliche Nachricht -----
Von: Nathan Kinder<nkin...@redhat.com>
Datum: Dienstag, 14. Dezember 2010, 17:31
Betreff: Re: [389-devel] Problem using winsync API
An: "389 Directory server developer 
discussion."<389-de...@lists.fedoraproject.org>
Cc: Carsten Grzemba<grze...@contac-dt.de>






    On 12/13/2010 12:45 AM, Carsten Grzemba wrote:

      I found the reason: In winsync-plugin.h in the plugin config is defined a 
dependenciy for multi-master plugin. This seems to be wrong, because a Winsync 
plugin must already be registered when the multi-master plugin starts. I.e. the 
dependency should be reversed. The multi-master Plugin depends on the Winsync 
plugin.

I have removed

nsslapd-plugin-depends-on-named: Multimaster Replication Plugin

from the plugin configuration, and instead added the Multimaster Plugin config

nsslapd-plugin-depends-on-named: test Winsync API

Then, the Winsync plugin is loaded also if start / restart the directory server.
Can you review this?


    Could you supply your plug-in code?  You need to be calling
    slapi_apib_register() to register your API in your plug-in's init()
    function.  I'm curious to see if you are doing this in the init()
    callback, or in the start() callback.



    -NGK


      >  Regards

----- Ursprüngliche Nachricht -----
Von: Rich Megginson<rmegg...@redhat.com>
Datum: Samstag, 11. Dezember 2010, 0:59
Betreff: Re: [389-devel] Problem using winsync API
An: 389-de...@lists.fedoraproject.org



        >






      >

           On 12/08/2010 05:17 AM, Carsten Grzemba wrote:



      >

             >
----- Ursprüngliche Nachricht -----
Von: Carsten Grzemba<grze...@contac-dt.de>
Datum: Mittwoch, 8. Dezember 2010, 11:16
Betreff: [389-devel] Problem using winsync API
An: "389 Directory server developer 
discussion."<389-de...@lists.fedoraproject.org>



       I try to use the Winsync API. The _winsync_plugin_init and
_winsync_plugin_start functions are called, but apparently not
correctly registered.
If the actual functions should be called, nothing happens.
Debbuging shows the pointer thefunc in windows_private.c
functions is NIL.


     it works only after the creation of an winsync replication agreement. 
After restart the directoryserver only _winsync_plugin_init and 
_winsync_plugin_start are called.


   So is there still a problem?



       >  Does anyone know why this is?
Thanks
Carsten



         --


       389-devel mailing list
389-de...@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/389-devel

       >
--
389-devel mailing list
389-de...@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/389-devel








          --


        389-devel mailing list
389-de...@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/389-devel

        >
--
389-devel mailing list
389-de...@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/389-devel









--
389-devel mailing list
389-de...@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/389-devel

--
389-devel mailing list
389-de...@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/389-devel

Reply via email to