[Users] Troubles parsing headers

Lars Sundqvist openser at lasse.imap.cc
Thu Aug 10 12:55:58 CEST 2006


Thanks alot! i should have spotted that myself.

I will contact the user and make sure he doublechecks the field!

Cheers,
Lars Sundqvist

Daniel-Constantin Mierla wrote:
> This trace helped to spot the problem, in the first, the line broke on 
> the wrong character.
>
> The empty space ' ' is not allowed after 'sip:'. If there is a space, 
> it must be escaped. sip: must be followed by username or domain (see 
> ruri).
>
> Maybe in the configuration of the phone one space is present at 
> beginning of username.
>
> Cheers,
> Daniel
>
>
> On 08/10/06 12:43, Lars Sundqvist wrote:
>> Yes, it is displayed as follows:
>>
>> U xxx.xxx.xx.xx:5061 -> yyy.yyy.yyy.yyy:5060
>> REGISTER sip:sip.yyyyy.yyy SIP/2.0.
>> Via: SIP/2.0/UDP xxx.xxx.xx.xx:5061;branch=z9hG4bK-d663b80b.
>> From: aaaa.bbbbb <sip: 
>> username123 at sip.yyyyy.yyy>;tag=ea8cef4b108a99bco1.
>> To: aaaa.bbbbb <sip: username123 at sip.yyyyy.yyy>.
>> Call-ID: b96fead3-f03493d4 at xxx.xxx.xx.xx.
>> CSeq: 3720 REGISTER.
>> Max-Forwards: 70.
>> Contact: aaaa.bbbbb <sip: username123 at xxx.xxx.xx.xx:5061>;expires=3600.
>> User-Agent: Linksys/RT31P2-2.0.10(LIc).
>> Content-Length: 0.
>> Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, REFER.
>> Supported: x-sipura.
>> .
>>
>>
>> Thanks,
>>
>> Lars Sundqvist
>>
>> Daniel-Constantin Mierla wrote:
>>> As I can see in the log, seems that the headers are not ended by 
>>> \r\n, therefore none of the headers can be parsed. If you use
>>>
>>> ngrep -W byline
>>>
>>> do you see the message printed line by line?
>>>
>>> Cheers,
>>> Daniel
>>>
>>>
>>> On 08/10/06 12:04, Lars Sundqvist wrote:
>>>> Thank you for your reply,
>>>>
>>>> Below is a extract from the log with the messages logged with xlog 
>>>> MB: $mb
>>>> (there is no special characters in the text that is replaced to 
>>>> anonymize the message)
>>>>
>>>> /sbin/openser[28716]: -------------------------------------------
>>>> /sbin/openser[28716]: ERROR: get_hdr_field: bad to header
>>>> /sbin/openser[28716]: ERROR: bad header  field
>>>> /sbin/openser[28716]: ERROR: get_hdr_field: bad to header
>>>> /sbin/openser[28716]: ERROR: bad header  field
>>>> /sbin/openser[28716]: ERROR:parse_from_header: bad from header
>>>> /sbin/openser[28716]: xl_get_from: ERROR cannot parse FROM header
>>>> /sbin/openser[28716]: ERROR: get_hdr_field: bad to header
>>>> /sbin/openser[28716]: ERROR: bad header  field
>>>> /sbin/openser[28716]: xl_get_to: ERROR cannot parse TO header
>>>> /sbin/openser[28716]: [REGISTER] from [<null>] to [<null>]
>>>> /sbin/openser[28716]: MB: REGISTER sip:sip.xxxxx.xxx SIP/2.0^M Via: 
>>>> SIP/2.0/UDP xxx.xxx.xx.xx:5061;branch=z9hG4bK-2fab8548^M From: aaaa
>>>> .bbbbb <sip: username123 at sip.xxxxx.xxx>;tag=ea8cef4b108a99bco1^M 
>>>> To: aaaa.bbbbb <sip: username123 at sip.xxxxx.xxx>^M Call-ID: 
>>>> b96fead3-f03493d4 at xxx.xxx.xx.xx^M
>>>> CSeq: 3668 REGISTER^M Max-Forwards: 70^M Contact: aaaa.bbbbb <sip: 
>>>> username123 at xxx.xxx.xx.xx:5061>;expires=3600^M User-Agent: 
>>>> Linksys/RT31P2-2.0.10(LIc)^M Con
>>>> tent-Length: 0^M Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, 
>>>> OPTIONS, REFER^M Supported: x-sipura^M ^M
>>>> /sbin/openser[28716]: ERROR: get_hdr_field: bad to header
>>>> /sbin/openser[28716]: ERROR: bad header  field
>>>> /sbin/openser[28716]: ERROR:maxfwd:is_maxfwd_present : parsing 
>>>> MAX_FORWARD header failed!
>>>> /sbin/openser[28716]: ERROR:parse_from_header: bad from header
>>>> /sbin/openser[28716]: insert_RR(): From parsing failed
>>>> /sbin/openser[28716]: record_route(): Error while inserting 
>>>> Record-Route line
>>>> /sbin/openser[28716]: ERROR: get_hdr_field: bad to header
>>>> /sbin/openser[28716]: ERROR: bad header  field
>>>> /sbin/openser[28716]: find_first_route: Error while parsing headers
>>>> /sbin/openser[28716]: analyzing REGISTER request
>>>> /sbin/openser[28716]: ERROR: get_hdr_field: bad to header
>>>> /sbin/openser[28716]: ERROR: bad header  field
>>>> /sbin/openser[28716]: find_credentials(): Error while parsing headers
>>>> /sbin/openser[28716]: pre_auth(): Error while looking for credentials
>>>> /sbin/openser[28716]: ERROR: get_hdr_field: bad to header
>>>> /sbin/openser[28716]: ERROR: bad header  field
>>>> /sbin/openser[28716]: ERROR: get_hdr_field: bad to header
>>>> /sbin/openser[28716]: ERROR: bad header  field
>>>> /sbin/openser[28716]: ERROR: build_res_buf_from_sip_req: alas, 
>>>> parse_headers failed
>>>> /sbin/openser[28716]: pre_auth(): Error while sending 400 reply
>>>> /sbin/openser[28714]: -------------------------------------------
>>>>
>>>> Would love to get this issue resolved so if there is anything else 
>>>> that could help in finding out what the problem is, please let me 
>>>> know.
>>>>
>>>> Cheers,
>>>>
>>>> Lars Sundqvist
>>>>
>>>>
>>>> Daniel-Constantin Mierla wrote:
>>>>> This looks a bit strange, because all headers are seen to be 
>>>>> corupted. But they look ok. There is not rocket science with the 
>>>>> Max-Forwards header.
>>>>>
>>>>> Do you get these mesages for all REGISTERs or just for certain 
>>>>> cases. Could you print the message buffer with xlog $mb - that 
>>>>> should show what OpenSER sees as SIP message.
>>>>>
>>>>> Cheers,
>>>>> Daniel
>>>>>
>>>>>
>>>>> On 08/09/06 16:26, Lars Sundqvist wrote:
>>>>>> Hi everyone,
>>>>>>
>>>>>> We have been having a problem with our openser installation for a 
>>>>>> while,
>>>>>> certain REGISTER requests generates errors.
>>>>>> The openser version we are running is 1.0.0 from cvs.
>>>>>>
>>>>>> Does anyone have a clue why the following register generates the 
>>>>>> error
>>>>>> below?
>>>>>>
>>>>>> Register:
>>>>>> xxx.xxx.xx.xx:5061 -> yyy.yyy.yyy.yyy:5060
>>>>>>  REGISTER sip:sip.xxxxx.xxx SIP/2.0..Via: SIP/2.0/UDP
>>>>>> xxx.xxx.xx.xx:5061;branch=z9hG4bK-39f541a2..From: aaaa.bbbbb <sip:
>>>>>> username123 at sip.xxxxx.xxx>;tag=ea
>>>>>>  8cef4b108a99bco1..To: aaaa.bbbbb <sip:
>>>>>> username123 at sip.xxxxx.xxx>..Call-ID:
>>>>>> b96fead3-f03493d4 at xxx.xxx.xx.xx..CSeq: 2508 REGISTER..Max-Forwards:
>>>>>> 70..Conta
>>>>>>  ct: aaaa.bbbbb <sip:
>>>>>> username123 at xxx.xxx.xx.xx:5061>;expires=3600..User-Agent:
>>>>>> Linksys/RT31P2-2.0.10(LIc)..Content-Length: 0..Allow: ACK, BYE, 
>>>>>> CANCEL, IN
>>>>>>  FO, INVITE, NOTIFY, OPTIONS, REFER..Supported: x-sipura....
>>>>>>
>>>>>> Error:
>>>>>> /sbin/openser[18198]: ERROR: get_hdr_field: bad to header
>>>>>> /sbin/openser[18198]: ERROR: bad header  field
>>>>>> /sbin/openser[18198]: ERROR: get_hdr_field: bad to header
>>>>>> /sbin/openser[18198]: ERROR: bad header  field
>>>>>> /sbin/openser[18198]: ERROR:parse_from_header: bad from header
>>>>>> /sbin/openser[18198]: xl_get_from: ERROR cannot parse FROM header
>>>>>> /sbin/openser[18198]: ERROR: get_hdr_field: bad to header
>>>>>> /sbin/openser[18198]: ERROR: bad header  field
>>>>>> /sbin/openser[18198]: xl_get_to: ERROR cannot parse TO header
>>>>>> /sbin/openser[18198]: [REGISTER] from [<null>] to [<null>]
>>>>>> /sbin/openser[18198]: ERROR: get_hdr_field: bad to header
>>>>>> /sbin/openser[18198]: ERROR: bad header  field
>>>>>> /sbin/openser[18198]: ERROR:maxfwd:is_maxfwd_present : parsing
>>>>>> MAX_FORWARD header failed!
>>>>>> /sbin/openser[18198]: ERROR:parse_from_header: bad from header
>>>>>> /sbin/openser[18198]: insert_RR(): From parsing failed
>>>>>> /sbin/openser[18198]: record_route(): Error while inserting 
>>>>>> Record-Route
>>>>>> line
>>>>>> /sbin/openser[18198]: ERROR: get_hdr_field: bad to header
>>>>>> /sbin/openser[18198]: ERROR: bad header  field
>>>>>> /sbin/openser[18198]: find_first_route: Error while parsing headers
>>>>>> /sbin/openser[18198]: analyzing REGISTER request
>>>>>> /sbin/openser[18198]: ERROR: get_hdr_field: bad to header
>>>>>> /sbin/openser[18198]: ERROR: bad header  field
>>>>>> /sbin/openser[18198]: find_credentials(): Error while parsing 
>>>>>> headers
>>>>>> /sbin/openser[18198]: pre_auth(): Error while looking for 
>>>>>> credentials
>>>>>> /sbin/openser[18198]: ERROR: get_hdr_field: bad to header
>>>>>> /sbin/openser[18198]: ERROR: bad header  field
>>>>>> /sbin/openser[18198]: ERROR: get_hdr_field: bad to header
>>>>>> /sbin/openser[18198]: ERROR: bad header  field
>>>>>> /sbin/openser[18198]: ERROR: build_res_buf_from_sip_req: alas,
>>>>>> parse_headers failed
>>>>>> /sbin/openser[18198]: pre_auth(): Error while sending 400 reply
>>>>>>
>>>>>> Many thanks,
>>>>>>
>>>>>> Lars Sundqvist
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Users mailing list
>>>>>> Users at openser.org
>>>>>> http://openser.org/cgi-bin/mailman/listinfo/users
>>>>>>
>>>>
>>>>
>>
>>





More information about the Users mailing list