<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Dec 29, 2015 at 11:50 PM, Kirill Marchuk <span dir="ltr"><<a href="mailto:62mkv@mail.ru" target="_blank">62mkv@mail.ru</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    Hi Boobalan<br>
    <br>
     Can you check your code against this one ? (pretty old, but still
    relevant, I guess)
<a href="http://blog.russellbryant.net/2008/06/19/how-to-write-an-asterisk-module-part-1/" target="_blank">http://blog.russellbryant.net/2008/06/19/how-to-write-an-asterisk-module-part-1/</a><br>
    <br>
     Especially, did you use one of the AST_MODULE_INFO macros ? <br>
    <br>
    Luck !<br>
    <br>
    and Happy New Year!<br>
    <br>
    Kirill Marchuk<br clear="all"></div></blockquote></div><br></div><div class="gmail_extra">That blog post is still pretty accurate - we haven't changed the semantics of loading/registering a module much over the years.<br><br></div><div class="gmail_extra">The code in loader.c tells you why this WARNING message is being raised:<br><br>    /* the dlopen() succeeded, let's find out if the module<br>       registered itself */<br>    /* note that this will only work properly as long as<br>       ast_module_register() (which is called by the module's<br>       constructor) places the new module at the tail of the<br>       module_list<br>    */<br>    if (resource_being_loaded != (mod = AST_DLLIST_LAST(&module_list))) {<br>        ast_log(LOG_WARNING, "Module '%s' did not register itself during load\n", resource_in);<br>        /* no, it did not, so close it and return */<br>        logged_dlclose(resource_in, lib);<br>        /* note that the module's destructor will call ast_module_unregister(),<br>           which will free the structure we allocated in resource_being_loaded */<br>        return NULL;<br>    }<br><br></div><div class="gmail_extra">The module's constructor attributes are automatically added by the aforementioned AST_MODULE_INFO macros. Failure to add those will cause your module to not be registered, and hence not be loaded.<br></div><div class="gmail_extra"><br>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>Matthew Jordan<br></div><div>Digium, Inc. | Director of Technology<br></div><div>445 Jan Davis Drive NW - Huntsville, AL 35806 - USA</div><div>Check us out at: <a href="http://digium.com" target="_blank">http://digium.com</a> & <a href="http://asterisk.org" target="_blank">http://asterisk.org</a></div></div></div></div></div>
</div></div>