Sofia SIP doesn't handle fetching registrations
Hi, a SIP client can get its current registrations by sending a normal REGISTER but wituh no "Contact" header, as RFC 3261 says: ------------ 10.2.3 Fetching Bindings A success response to any REGISTER request contains the complete list of existing bindings, regardless of whether the request contained a Contact header field. If no Contact header field is present in a REGISTER request, the list of bindings is left unchanged. ------------- But when FreeSwitch receives a REGISTER with no Contact it returns an error and sends "500" error to the SIP client: 2008-11-16 20:29:27 [ERR] sofia_reg.c:960 sofia_reg_handle_sip_i_register() NO CONTACT! This is wrong obviosly. -- Iñaki Baz Castillo
There is an open bug on this but no one has seemed to care enough about it as few clients actually do this: http://jira.freeswitch.org/browse/MODENDP-86 We would be happy to look at patches to address this. Mike On Nov 16, 2008, at 3:01 PM, Iñaki Baz Castillo wrote:
Hi, a SIP client can get its current registrations by sending a normal REGISTER but wituh no "Contact" header, as RFC 3261 says:
------------ 10.2.3 Fetching Bindings
A success response to any REGISTER request contains the complete list of existing bindings, regardless of whether the request contained a Contact header field. If no Contact header field is present in a REGISTER request, the list of bindings is left unchanged. -------------
But when FreeSwitch receives a REGISTER with no Contact it returns an error and sends "500" error to the SIP client:
2008-11-16 20:29:27 [ERR] sofia_reg.c:960 sofia_reg_handle_sip_i_register() NO CONTACT!
This is wrong obviosly.
The RFC also says you must support both udp and tcp and try every packet greater that 1200 bytes at TCP unconditionally then timeout for 10 seconds and try it finally on udp despite the fact that only 20% of sip stuff seems to support TCP. Just because the RFC tells us to jump off a cliff doesn't mean we will. We deemed this feature to be far from critical and not worth the time and energy to implement. Nobody has missed it besides one other individual who apparently was not interested in implementing or propsing a bounty to expidite the feature into the code. Like Mike said, there is an open Jira issue on this matter. Do you have a requirement for this feature? On Sun, Nov 16, 2008 at 6:06 PM, Michael Jerris <mike@jerris.com> wrote:
There is an open bug on this but no one has seemed to care enough about it as few clients actually do this:
http://jira.freeswitch.org/browse/MODENDP-86
We would be happy to look at patches to address this.
Mike
On Nov 16, 2008, at 3:01 PM, Iñaki Baz Castillo wrote:
Hi, a SIP client can get its current registrations by sending a normal REGISTER but wituh no "Contact" header, as RFC 3261 says:
------------ 10.2.3 Fetching Bindings
A success response to any REGISTER request contains the complete list of existing bindings, regardless of whether the request contained a Contact header field. If no Contact header field is present in a REGISTER request, the list of bindings is left unchanged. -------------
But when FreeSwitch receives a REGISTER with no Contact it returns an error and sends "500" error to the SIP client:
2008-11-16 20:29:27 [ERR] sofia_reg.c:960 sofia_reg_handle_sip_i_register() NO CONTACT!
This is wrong obviosly.
_______________________________________________ Freeswitch-dev mailing list Freeswitch-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ AIM: anthm MSN:anthony_minessale@hotmail.com <MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com<PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <sip%3A888@conference.freeswitch.org> iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:213-799-1400
2008/11/17 Anthony Minessale <anthony.minessale@gmail.com>:
The RFC also says you must support both udp and tcp and try every packet greater that 1200 bytes at TCP unconditionally then timeout for 10 seconds and try it finally on udp despite the fact that only 20% of sip stuff seems to support TCP.
Just because the RFC tells us to jump off a cliff doesn't mean we will.
We deemed this feature to be far from critical and not worth the time and energy to implement. Nobody has missed it besides one other individual who apparently was not interested in implementing or propsing a bounty to expidite the feature into the code.
Like Mike said, there is an open Jira issue on this matter. Do you have a requirement for this feature?
Well, I test my SIP enviroments usually with Twinkle which allows fetching registrations, a feature that I consider very usseful for testing purposes. But not, it's not a "real" requeriment. Anyway, I already know that RFC3261 (and friends) are written by people coming from other galaxy in which NAT doesn't exist, there is IPv6 and devices use S/MIME to secure communications... XD But the feature aked here (fetching registrations) is, IMHO, an useful feature. Thanks for all. -- Iñaki Baz Castillo <ibc@aliax.net>
participants (3)
-
Anthony Minessale
-
Iñaki Baz Castillo
-
Michael Jerris