[sr-dev] Forward declaration of SDPOPS functions in my module

Cockhootec Yahrabee cockootec at gmail.com
Fri May 8 17:58:34 CEST 2015


Thanks Daniel for quick response.
Could you please be more specific on how to extend "sdpops_api_t" structure?

I've never done it so little help will be appreciated.


On Fri, May 8, 2015 at 4:42 PM, Daniel-Constantin Mierla <miconda at gmail.com>
wrote:

>  On a quick look, sdpops already exposes a function via api -- see
> modules/sdpops/api.h. So most of the needed things are there, you just need
> to extend the sdpops_api_t structure and bind_sdpops(...) function to set
> the new field to the function pointer.
>
> Cheers,
> Daniel
>
>
> On 08/05/15 16:37, Daniel-Constantin Mierla wrote:
>
> Hello,
>
> practically you want to call a function from another compiled object (like
> from a library). The way to do it is to expose the function you want via an
> API structure and then bind to this module from your module. This is quite
> common practice in kamailio -- for example, a lot of modules connect to tm
> module to use its functions.
>
> You can look at sl module how it exports some of its functions (the
> structure sl_api_t and the function sl_load_api) and then at registrar
> module to see how it bind and uses the api from sl module.
>
> Cheers,
> Daniel
>
> On 08/05/15 16:07, Cockhootec Yahrabee wrote:
>
> Hi guys,
>
>  I found this very useful function in `sdpops` module which I want to use
> within my own module but I cannot find out how to forward its declaration
> correctly so I can use it in my module.
>
>  Since `sdpops` has not defined it's functions within .h file I am just
> simply forward declaring function I want to use in my .h file like this:
>
> int sdp_remove_codecs_by_name(sip_msg_t* msg, str* codecs);
>
> And then I just calling it within my function. I can compile it and linker
> won't give me any errors but when I am running Kamailio it says that I have
> error in config file which is obviously not true because if I comment code
> which uses forward declared function kamailio runs without errors.
>
>  Kamailio log (when using forwarded declaration of sdpops function):
>   0(23096) DEBUG: <core> [route_struct.c:129]: mk_action(): ACTION_#2
> #0/2: 3(3)/ 0x1
>  0(23096) DEBUG: <core> [route_struct.c:129]: mk_action(): ACTION_#2 #1/2:
> 3(3)/ 0x1
>  0(23096) DEBUG: <core> [route_struct.c:129]: mk_action(): ACTION_#16
> #0/3: 22(16)/ 0x7f115fcfa898
>  0(23096) DEBUG: <core> [route_struct.c:129]: mk_action(): ACTION_#16
> #1/3: 8(8)/ 0x7f115fcfaf98
>  0(23096) DEBUG: <core> [route_struct.c:129]: mk_action(): ACTION_#16
> #2/3: 0(0)/ 0x7f1100000000
>  0(23096) DEBUG: <core> [route.c:129]: route_add(): mapping routing block
> (0xa84a40)[MANAGE_FAILURE] to 1
> ERROR: bad config file (1 errors)
>  0(23096) DEBUG: <core> [ppcfg.c:224]: pp_ifdef_level_check(): same number
> of pairing preprocessor directives #!IF[N]DEF - #!ENDIF
>  0(23096) DEBUG: tm [t_funcs.c:85]: tm_shutdown(): DEBUG: tm_shutdown :
> start
>  0(23096) DEBUG: tm [t_funcs.c:88]: tm_shutdown(): DEBUG: tm_shutdown :
> emptying hash table
>  0(23096) DEBUG: tm [t_funcs.c:90]: tm_shutdown(): DEBUG: tm_shutdown :
> removing semaphores
>  0(23096) DEBUG: tm [t_funcs.c:92]: tm_shutdown(): DEBUG: tm_shutdown :
> destroying tmcb lists
>  0(23096) DEBUG: tm [t_funcs.c:95]: tm_shutdown(): DEBUG: tm_shutdown :
> done
>  0(23096) DEBUG: <core> [mem/shm_mem.c:242]: shm_mem_destroy():
> shm_mem_destroy
>  0(23096) DEBUG: <core> [mem/shm_mem.c:245]: shm_mem_destroy(): destroying
> the shared memory lock
>
>  Did anybody resolved this issue? All help is appreciated.
>
>
> _______________________________________________
> sr-dev mailing listsr-dev at lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
> --
> Daniel-Constantin Mierlahttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
> Kamailio World Conference, May 27-29, 2015
> Berlin, Germany - http://www.kamailioworld.com
>
>
> --
> Daniel-Constantin Mierlahttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
> Kamailio World Conference, May 27-29, 2015
> Berlin, Germany - http://www.kamailioworld.com
>
>
> _______________________________________________
> sr-dev mailing list
> sr-dev at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20150508/c03d1856/attachment-0001.html>


More information about the sr-dev mailing list