[reSIProcate] RFC 3263, reSIProcate vs sipX

Robert Sparks rjsparks at nostrum.com
Tue Nov 28 11:40:00 CST 2006


The 3263 implementation inside the Dns classes is quite strong -  
there are several of us that have been making sure it's a correct and  
complete implementation  of the specs and there is some work that  
anticipates addressing the blacklisting problems described in the sip- 
nit-future draft (that's expired, but should be resurrected soon -  
you can find the most recent copy at softarmor).

As Byron points, start at DnsResult and look at what it relies on.  
You've probably already picked up that it uses ares, and the copy of  
ares we have here has significant local modification.

RjS

On Nov 28, 2006, at 11:09 AM, Byron Campen wrote:

> 	I have recently done some work on the resip DNS code to get it up  
> to snuff. testDns is much, much bigger now, but it needs a test DNS  
> zone-file to be set up in a very particular way for it to work. I  
> want to try to have this done sometime this week.
>
> 	As for isolating the DNS code, you will need to pull a lot of  
> rutil with it. Also, you'll need resip/stack/DnsResult.[hc]xx  
> (where all the 3263 logic is) and resip/stack/DnsInterface.[hc]xx  
> to make it all go. I know for sure this drags resip/stack/Tuple.[hc] 
> xx in as well, and possibly other stuff.
>
> Best regards,
> Byron Campen
>
>> Hi,
>>
>> I posted this right before the holiday last week, no doubt it got  
>> lost in a
>> haze of turkey and football.  Since then I figured out my compile  
>> problem.
>> I was missing gperf.  I installed that, along with a new openssl and
>> Berkeley db, and things generally ran fine.
>>
>> My other questions remain, and I'm still curious what people here  
>> think
>> about sipX vs resiprocate.  There is a resip/stack/test/testDns  
>> program that
>> appears to do exactly what I need, so my goal now is to identify the
>> supporting classes it needs and extract them from the rest of the  
>> stack.
>> Aside from just getting it to compile, any advice on what to leave  
>> in or out
>> will help too.
>>
>> Regards,
>> Dave
>>
>> ---------Original message--------------
>> Hi all,
>>
>> I've got a question about the SIP stack code.  This seemed like  
>> the right
>> list, my apologies if it should go to the user list.
>>
>> I have a working SIP stack that does not support 3263 SRV and  
>> NAPTR lookups.
>> It only does a basic gethostbyname from DNS.  My mission is to add  
>> 3263
>> support, so I checked the most popular open source SIP stacks  
>> looking for a
>> DNS access class that I could pick up and drop into my stack.  The  
>> big ones
>> appear to be reSIProcate and sipX.  They both look good but have very
>> different designs, so I thought I'd check here for some help in  
>> picking one.
>>
>> sipX has a class called SipSrvLookup that, at first glance,  
>> appears to do
>> exactly what I need.  On the other hand, reSIProcate looks like it  
>> has lot
>> more going on, so I wonder what functionality it must have that  
>> the other
>> does not.  I had more trouble figuring out where to start with  
>> this one, so
>> I have some questions that maybe yall can help with here:
>>
>> - First, any general things to keep in mind in choosing between  
>> the two will
>> help.  I think I saw a FAQ on this somewhere, which led me to believe
>> reSIProcate has a lot more features, but I'm not sure particularly  
>> how that
>> applies to my case.  One thing I noticed is that reSIProcate has a  
>> lot more
>> abstraction around the DNS layer.  Does this buy you much?
>>
>> - I need to call some method that will do "find me a SIP server  
>> using RFC
>> 3263 methods if possible, otherwise gethostbyname."  In sipX this  
>> method
>> looks like SipSrvLookup::servers.  In reSIProcate, is it
>> DnsInterface::lookup?  That method returns a DnsResult object,  
>> which I guess
>> contains a list of servers that you search using its lookup method.
>> Hopefully I don't need to change my application code much.
>>
>> - Once I identify the method I need to call, I need to pick out the
>> supporting classes that it needs.  I don't need the whole stack,  
>> just the
>> 3263 part of it.  I guess this will be parts of resip/stack and  
>> rutil/dns?
>> Any help with this will simplify things a lot.
>>
>>  <deleted stuff about compile problem>
>>
>> Thanks for your help!
>>
>> Dave
>> _______________________________________________
>> resiprocate-devel mailing list
>> resiprocate-devel at list.resiprocate.org
>> https://list.resiprocate.org/mailman/listinfo/resiprocate-devel
>
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel at list.resiprocate.org
> https://list.resiprocate.org/mailman/listinfo/resiprocate-devel




More information about the resiprocate-devel mailing list