Opened 8 years ago

Closed 8 years ago

#1895 closed defect (fixed)

Terminate subscription when receiving non 2xx Notify response without Retry-After header

Reported by: riza Owned by: bennylp
Priority: normal Milestone: release-2.5
Component: pjsip Version: trunk
Keywords: Cc:
Backport to 1.x milestone: Backported: no

Description

RFC 3265 states:

If the NOTIFY request fails (as defined above) due to a timeout
condition, and the subscription was installed using a soft-state
mechanism (such as SUBSCRIBE), the notifier SHOULD remove the
subscription.

If a NOTIFY request receives a 481 response, the notifier MUST remove
the corresponding subscription even if such subscription was
installed by non-SUBSCRIBE means (such as an administrative
interface).

A NOTIFY request is considered failed if the response times out, or a
non-200 class response code is received which has no "Retry-After"
header and no implied further action which can be taken to retry the
request (e.g., "401 Authorization Required".)

If the NOTIFY request fails (as defined above) due to an error
response, and the subscription was installed using a soft-state
mechanism, the notifier MUST remove the corresponding subscription.

Based on the above statements, subscription will be terminated after receiving
these Notify response:

  1. 408
  2. 481
  3. Non 2xx response without "Retry-After" header

This ticket will apply the third condition for terminating the subscription.

Thanks to Mark Michelson for the report.

Change History (2)

comment:1 Changed 8 years ago by riza

In 5195:

Re #1895: Terminate subscription when receiving non 2xx Notify response without Retry-After header.

comment:2 Changed 8 years ago by riza

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.