< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

RE: [reSIProcate] crash during handling of SUBSCRIBE response


hi Jason Fischl,

        Thanks for response.

        Yes, I receive a 200 ok to a SUBSCRIBE without a contact. I can also see
this case in Example of RFC 3824. I have mention one Example of RFC 3824.


   A1: Subscriber (Alice's phone) ->
          Notifier (Alice's voicemail gateway)
          Subscribe to Alice's message summary status for 1 day.

      SUBSCRIBE sip:alice@xxxxxxxxxxxxxxxxx SIP/2.0
      To: <sip:alice@xxxxxxxxxxx>
      From: <sip:alice@xxxxxxxxxxx>;tag=78923
      Date: Mon, 10 Jul 2000 03:55:06 GMT
      Call-Id: 1349882@xxxxxxxxxxxxxxxxxxxxxxx
      CSeq: 4 SUBSCRIBE
      Contact: <sip:alice@xxxxxxxxxxxxxxxxxxxxxxx>
      Event: message-summary
      Expires: 86400
      Accept: application/simple-message-summary
      Content-Length: 0

          A2: Notifier -> Subscriber

      SIP/2.0 200 OK
      To: <sip:alice@xxxxxxxxxxx>;tag=4442
      From: <sip:alice@xxxxxxxxxxx>;tag=78923
      Date: Mon, 10 Jul 2000 03:55:07 GMT
      Call-Id: 1349882@xxxxxxxxxxxxxxxxxxxxxxx
      CSeq: 4 SUBSCRIBE
      Expires: 86400
      Content-Length: 0

Thanks & regards
Parag Patel
-----Original Message-----
From: jason.fischl@xxxxxxxxx [mailto:jason.fischl@xxxxxxxxx]On Behalf Of
Jason Fischl
Sent: Friday, November 11, 2005 11:19 PM
To: Patel Parag
Cc: resiprocate-devel@xxxxxxxxxxxxxxxxxxx
Subject: Re: [reSIProcate] crash during handling of SUBSCRIBE response


You are receiving a 200 to a SUBSCRIBE without a Contact? What
endpoint is sending you this? What do people think we should do in
this case? I'm not sure what is the right thing to do here. Certainly,
we should catch the exception and not leak any state. If there is no
Contact, how can we refresh the subscription? I guess we could do
something if the expires=0 on the subscription.

Jason



On 11/11/05, Patel Parag <papatel@xxxxxxxxxx> wrote:
> hi ,
>
>                 I am facing one problem during handling of 200 ok response
of SUBSCRIBE
> Request. I      try to explain flow of response handling for SUBSCRIBE.
>
>         1)DialogUsageManager::processResponce()
>         2)DialogSet::dispatch()
>                 there is Dialog not found so, DUM create new Dialog for
Subscription
>
>                 if (dialog == 0)
>                 {
>                         dialog = new Dialog(mDum, msg, *this);
>                 }
>
>                 but, problem is, response doesn't contain contact field so
throw
> exception.
>
>                 if  (response.exists(h_Contacts) &&
response.header(h_Contacts).size() ==
> 1)
>                 {
>                 }
>                 else
>                 {
>                         // control will come here ... and throw exception.
>                 }
>         please any buddy give me right direction...
>
> regards,
> parag Patel
>
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel
>