[SR-Users] assign_hf_value, hf_value_exists and exclude_hf_value broken in 4.3.2?

Björn Bylander bjorn.bylander at loxysoft.se
Tue Sep 15 11:44:56 CEST 2015


Hello,

4.3.1 works well for us apart from the issue fixed by 93b297e16134b0e74cf83e3604da01355a52e700. Since 93b297e16134b0e74cf83e3604da01355a52e700 is included in 4.3.2 I tried upgrading one of our servers and now Kamailio won't even start as it apparently finds the way assign_hf_value, hf_value_exists and exclude_hf_value are used in our configuration to be incorrect. I enabled debug logging (WITH_DEBUG) and found the following:

>  0(1894) DEBUG: <core> [route.c:872]: fix_actions(): fixing assign_hf_value()
>  0(1894) ERROR: textopsx [textopsx.c:596]: fixup_hname_param(): ERROR: textops: cannot parse header near 'Privacy'
>  0(1894) ERROR: <core> [route.c:1154]: fix_actions(): fixing failed (code=-6) at cfg:/etc/kamailio/kamailio.cfg:642
>  0(1894) ERROR: <core> [route.c:1154]: fix_actions(): fixing failed (code=-6) at cfg:/etc/kamailio/kamailio.cfg:644
>  0(1894) ERROR: <core> [route.c:1154]: fix_actions(): fixing failed (code=-6) at cfg:/etc/kamailio/kamailio.cfg:661
> ERROR: error -6 while trying to fix configuration

Line 642 looks like this:
  assign_hf_value("Privacy", "id")

Commenting it out leads to the following output:

>  0(2217) DEBUG: <core> [route.c:872]: fix_actions(): fixing hf_value_exists()
>  0(2217) ERROR: textopsx [textopsx.c:596]: fixup_hname_param(): ERROR: textops: cannot parse header near 'Privacy'
>  0(2217) ERROR: <core> [route.c:1154]: fix_actions(): fixing failed (code=-6) at cfg:/etc/kamailio/kamailio.cfg:1016
>  0(2217) ERROR: <core> [route.c:1154]: fix_actions(): fixing failed (code=-6) at cfg:/etc/kamailio/kamailio.cfg:1019
>  0(2217) ERROR: <core> [route.c:1154]: fix_actions(): fixing failed (code=-6) at cfg:/etc/kamailio/kamailio.cfg:1023
> ERROR: error -6 while trying to fix configuration

Line 1016 looks like this:
  if (hf_value_exists("Privacy", "none")) {

Commenting it out leads to the following output:

>  0(2292) DEBUG: <core> [route.c:872]: fix_actions(): fixing exclude_hf_value()
>  0(2292) ERROR: textopsx [textopsx.c:596]: fixup_hname_param(): ERROR: textops: cannot parse header near 'Accept'
>  0(2292) ERROR: <core> [route.c:1154]: fix_actions(): fixing failed (code=-6) at cfg:/etc/kamailio/kamailio.cfg:1020
>  0(2292) ERROR: <core> [route.c:1154]: fix_actions(): fixing failed (code=-6) at cfg:/etc/kamailio/kamailio.cfg:1023
> ERROR: error -6 while trying to fix configuration

Lines 1020 and 1021 look like this
  exclude_hf_value("Accept", "application/media_control+xml");
  exclude_hf_value("Accept", "application/x-broadworks-call-center+xml");

Commenting them out makes Kamailio start without complaining.

Btw, "kamailio -c" thinks the configuration file is fine.

So, is our use of assign_hf_value, hf_value_exists and exclude_hf_value incorrect (looking at the textopsx documentation I can't see how) or was a bug introduced with 4.3.2 which causes this behaviour?

Regards,
Björn Bylander
 



More information about the sr-users mailing list