On Fri, 17 Oct 2003, Frank Danielson wrote: Hi Frank,
Thanks for your answer. I will try your solution using a PreClient hook as suggested by Huge. Thanks Frank and Huge. > I would use a PreHandler hook in your Client clause to look for the request > type and set an appropriate attribute to use in a Handler later. Since you > have multiple Digest-Attribute attributes the only way I know of to handle > it would be to spool through the incoming request's attrbutes looking for > the one you want. You could try something like this-> > > <Client 111.222.333.444> > Secret somesecret > PreHandlerHook sub {my ($r,$value);\ > foreach $r (@{${$_[0]}->{Attributes}})\ > {\ > if ($r->[0] eq "Digest-Attributes")\ > {\ > $value = Radius::AttrVal::pclean($r->[1]);\ > ${$_[0]}->add_attr('SIP-Request',$value) if ($value > =~ /REGISTER|INVITE/);\ > }\ > }} > </Client> > > <Handler SIP-Request=REGISTER> > </Handler> > > <Handler SIP-Request=INVITE> > </Handler> > > > Obviously I have not tested this so proceed at your own risk. > > Frank Danielson > [Infrastructure Architect] > > voice:407.515.8633 > fax:407.515.9001 > > ClearSky Mobile Media, Inc. > 56 E. Pine St. Suite 200 > Orlando, FL 32801 > USA > > -----Original Message----- > From: Jesus Rodriguez [mailto:[EMAIL PROTECTED] > Sent: Friday, October 17, 2003 2:30 PM > To: [EMAIL PROTECTED] > Subject: (RADIATOR) Handler SIP Proxy > > > Hello, > > My SIP proxy authenticates REGISTER and INVITE requests against Radiator. I > would like to be able to diferentiate between both requests. > > This is a REGISTER request: > > Code: Access-Request > Identifier: 104 > Authentic: <217><134><30>y<250>D<214>j<212>`N\F<254>{<222> > Attributes: > User-Name = "[EMAIL PROTECTED]" > Digest-Attributes = <10><12>3400000002 > Digest-Attributes = <1><13>voztele.com > Digest-Attributes = <2>*3f9032160a04f9a07db6b7431a03c66e63917d8e > Digest-Attributes = <4><17>sip:voztele.com > Digest-Attributes = <3><10>REGISTER > Digest-Response = "5d484ab3e8c3ee3aa8aeb4f7238d9456" > Service-Type = SIP > SIP-URI-User = "3400000002" > NAS-IP-Address = 192.168.1.34 > NAS-Port = 5060 > > > And this is an INVITE request: > > Code: Access-Request > Identifier: 100 > Authentic: <230><141><168>k<203>:}<239><134><139>O<227>]<6><147>' > Attributes: > User-Name = "[EMAIL PROTECTED]" > Digest-Attributes = <10><12>3400000000 > Digest-Attributes = <1><13>voztele.com > Digest-Attributes = <2>*3f90309d03749b41dfcc0d202bc35f89ebfc9d1c > Digest-Attributes = <4><27>sip:[EMAIL PROTECTED] > Digest-Attributes = <3><8>INVITE > Digest-Response = "f398469d53d8eeb47bbde0d45f78583d" > Service-Type = SIP > SIP-URI-User = "3400000000" > NAS-IP-Address = 192.168.1.34 > NAS-Port = 5060 > > > The only difference between them are these Digest-Attributes: > > Digest-Attributes = <3><10>REGISTER > Digest-Attributes = <3><8>INVITE > > I've been playing with <Handler Digest-Attributes = xxxxx" where xxxxx are > different regular expressions but no luck. > > Is there some way to diferentiate both requests? I have to treat them in a > different way because i need to send a reply attribute only for the INVITEs. > > Thanks in advance. > > Saludos > JesusR. > > ------------------------------- > Jesus Rodriguez > Endercom Comunicaciones, S.L. > [EMAIL PROTECTED] > http://www.endercom.com > Tel. +34 934424293 > ------------------------------- > === > Archive at http://www.open.com.au/archives/radiator/ > Announcements on [EMAIL PROTECTED] > To unsubscribe, email '[EMAIL PROTECTED]' with > 'unsubscribe radiator' in the body of the message. > === > Archive at http://www.open.com.au/archives/radiator/ > Announcements on [EMAIL PROTECTED] > To unsubscribe, email '[EMAIL PROTECTED]' with > 'unsubscribe radiator' in the body of the message. > > Saludos JesusR. ------------------------------- Jesus Rodriguez Endercom Comunicaciones, S.L. [EMAIL PROTECTED] http://www.endercom.com Tel. +34 934424293 ------------------------------- === Archive at http://www.open.com.au/archives/radiator/ Announcements on [EMAIL PROTECTED] To unsubscribe, email '[EMAIL PROTECTED]' with 'unsubscribe radiator' in the body of the message.