libosip2 [LSARC/2009/277 FastTrack timeout 05/10/2009]
Simon Sun
Simon.Sun at SUN.COM
Tue May 12 03:35:40 PDT 2009
Hi James,
Please see my in-line comments below.
cheers,
Simon
James Carlson wrote:
> Simon Sun writes:
>
>> James Carlson wrote:
>>
>>> What (if anything) will be done with the existing SIP library and SIP
>>> proxy that are already in OpenSolaris?
>>>
>> Nothing needed for the current SIP stuff since there's no conflict
>> between each other.
>>
>
> What happens if someone tries to use both SIP proxies on a single
> system?
>
By default, the port 5060 is for SIP use. If two instances of one SIP
proxy were started up, the latter one should fail since the default port
has been occupied by the first instance. Same thing will happen to the
two different proxies. It has nothing do with the library underneath.
For this case, we just want to put back the library into SFW gate at
this moment.
Usually the port number can be changed in configuration file in the
proxy to prevent this from happening.
For example, the Sip Express Router(ser) which has been included in
Solaris has a configuration file /etc/sfw/ser/ser.cfg which is with the
below section:
#
# port to listen on. default is 5060
#
#port=5090
> What happens if a process ends up with both SIP libraries linked into
> it due to library dependencies?
>
> (I'm guessing the answers are that things may break, and, since it's
> just an "option," we don't really care. Is that right?)
>
It's incorrect. We do care the user's feeling.
Actually there's no dependency between libsip and libosip2. All the
interfaces and implementation are quite different from each other. There
is almost certainly no sane reason to use both at once since it will
definitely increase the complexity of the program.
If it's proper, we can strongly suggest the user not to use the two
library at the same time and includes that in man page.
>
>>> Will the documentation say anything about the duplication?
>> I'm not sure since it's difficult to describe this very clearly. If
>> needed, any suggestion?
>>
> At a minimum, we have to tell people which implementations are the
> preferred and supported ones. See the PAC advice delivered as part of
> PSARC 2009/147 ("tcpdump"):
>
> When delivering multiple implementations of a single
> feature, and where an extended period of co-existence rather
> than eventual replacement is expected, the Solaris PAC and
> the management of the on-going "familiarity" project are
> advised that the ARC requires explicit information regarding
> which of the co-existing implementations is regarded as
> "preferred."
>
> The short answer is that OpenSolaris is supposed to be a coherent
> system, not just a random assemblage of parts.
>
>
Yes, absolutely. Since we've provided SIP support in Solaris, by adding
another one which is more commonly used by OpenSource community, we can
attract more user who is based on oSIP to Solars and lose nothing. Later
on, we can port other application based on oSIP on other platform into
Solaris.
It's similar to the libusb. Even through in Solaris we provide the
USBA, we still put back libusb into Solaris to provide the end user
another choice.
>>> How should
>>> developers working on SIP applications on OpenSolaris choose between
>>> them?
>>>
>> oSIP is an GNU open-source project and the interfaces are quite
>> different from which in SIP. The end user can make the decision on
>> using which. With libosip2 integrated, we provide the end user
>> another choice.
>>
> Or just architectural confusion. It's unclear which we get.
>
They are two different implementations which are compliant with the RFC
3261. The user can choose the one he/she is more familiar with.
>
>>> Is there anything that uses or will use this new library?
>>>
>> Another library named libexosip2 will use it after being put back.
>>
> Is there any _application_ that will be using it?
>
>
partysip: A Linux SIP proxy based on osip2 (LGPL)
http://www.nongnu.org/partysip/partysip.html
SFLphone: A multiplatform, open source SIP user agent. It is based on
several libraries: cc++, ccRTP, osip2+eXosip:
http://www.sflphone.org/
GNU SIP Witch - call and registration server for the SIP protocol
GNU Bayonne - telephony server
http://www.gnu.org/software/gnucomm/
More information about the opensolaris-arc
mailing list