I see the following messages in the logs:
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_header: bad from header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:siptrace:sip_trace: cannot parse FROM header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:get_hdr_field: bad to header
Oct 14 15:59:58 beta /sbin/openser[32535]: INFO:core:parse_headers: bad header field
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:maxfwd:is_maxfwd_present: parsing MAX_FORWARD header failed!
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:get_hdr_field: bad to header
Oct 14 15:59:58 beta /sbin/openser[32535]: INFO:core:parse_headers: bad header field
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:rr:find_first_route: failed to parse headers
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_header: bad from header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_uri: cannot parse FROM header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:domain:is_from_local: Error while parsing From header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:get_hdr_field: bad to header
Oct 14 15:59:58 beta /sbin/openser[32535]: INFO:core:parse_headers: bad header field
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:get_hdr_field: bad to header
Oct 14 15:59:58 beta /sbin/openser[32535]: INFO:core:parse_headers: bad header field
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:build_res_buf_from_sip_req: parse_headers failed
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:sl:sl_send_reply_helper: response building failed
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:get_hdr_field: bad to header
Oct 14 15:59:58 beta /sbin/openser[32535]: INFO:core:parse_headers: bad header field
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:pv_get_to_attr: cannot parse To header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_header: bad from header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:pv_get_from_attr: cannot parse From header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_header: bad from header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:pv_get_from_attr: cannot parse From header
This seems to have been caused by one rogue UAC and has the effect of preventing entries being written to the location database.
My question: could anyone suggest how to prevent a UAC which is sending some weird data from causing the server to choke?
Thanks
Cameron
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_header:
bad from header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:pv_get_from_attr:
cannot parse From header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_header:
bad from header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:pv_get_from_attr:
cannot parse From header
This seems to have been caused by one rogue UAC and has the effect of
preventing entries being written to the location database.
My question: could anyone suggest how to prevent a UAC which is sending
some weird data from causing the server to choke?
To replicate this issue, in a SPA2102 or similar enter the following data: in the Proxy field
domain.com
in the outbound proxy field domain.com i.e. prefix the domain with >
The REGISTER message: REGISTER sip:>domain.com SIP/2.0 Via: SIP/2.0/UDP 192.168.1.112:5060;branch=z9hG4bK-a6a8f8f6 From: $user sip:12345678@domain.com>;tag=51d182cf9ed176f3o0 To: $user sip:12345678@domain.com> Call-ID: 363d0b66-60522e90@127.0.0.1 CSeq: 22061 REGISTER Max-Forwards: 70 Contact: $user sip:12345678@192.168.1.112:5060;expires=360 User-Agent: Linksys/SPA3102-5.1.7(GW) Content-Length: 0 Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER Supported: x-sipura, replaces
Could anyone suggest how to better handle this scenario?
Thanks
Hello,
On 10/15/08 11:27, CSB wrote:
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_header:
bad from header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:pv_get_from_attr:
cannot parse From header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:parse_from_header:
bad from header
Oct 14 15:59:58 beta /sbin/openser[32535]: ERROR:core:pv_get_from_attr:
cannot parse From header
This seems to have been caused by one rogue UAC and has the effect of
preventing entries being written to the location database.
My question: could anyone suggest how to prevent a UAC which is sending
some weird data from causing the server to choke?
To replicate this issue, in a SPA2102 or similar enter the following data: in the Proxy field
domain.com
in the outbound proxy field domain.com i.e. prefix the domain with >
The REGISTER message: REGISTER sip:>domain.com SIP/2.0 Via: SIP/2.0/UDP 192.168.1.112:5060;branch=z9hG4bK-a6a8f8f6 From: $user sip:12345678@domain.com>;tag=51d182cf9ed176f3o0 To: $user sip:12345678@domain.com> Call-ID: 363d0b66-60522e90@127.0.0.1 CSeq: 22061 REGISTER Max-Forwards: 70 Contact: $user sip:12345678@192.168.1.112:5060;expires=360 User-Agent: Linksys/SPA3102-5.1.7(GW) Content-Length: 0 Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER Supported: x-sipura, replaces
Could anyone suggest how to better handle this scenario
this should not prevent the other REGISTER messages to be processed properly, as I understood from your fist email.
Try to add
error_route { exit; }
It should stop processing the sip message when the first parsing error happens. you can try sending a 400 Bad request before, but in this case might fail as well.
Cheers, Daniel