Review Board 1.7.16

res_pjsip_outbound_registration: Fix several reload issues.

Review Request #4304 - Created Dec. 30, 2014 and submitted

George Joseph
There are 2 issues with reloading registrations...

1.  The 'can_reuse_registration' test wasn't considering the intervals or expiration in its determination of whether a registration changed or not so if you changed any of the intervals or the expiration and reloaded, the object would get reloaded but the actual timers wouldn't change.  can_reuse_registration now does a sorcery diff on the old and new objects instead of discretely testing certain fields.  Now if you change expiration for instance, and reload, the timer is updated and re-registration will occur on the new value.

2.  If you mung up your password on an outbound registration you get a permanent failure.  If you fix the password (on the outbound_auth object) and reload, nothing tells outbound_registration to try again because the registration itself didn't change.  This patch adds an observer on the "auth" object type and if any auth changes, existing registration states are searched and those in a REJECTED_PERMANENT state are retried.

Tested locally with various scenarios using Wireshark to make sure intervals have changed and that auths are being retried.
Review request changed
Updated (Jan. 21, 2015, 1:47 p.m.)
  • changed from pending to submitted
Committed in revision 430898 runs on a server provided by Digium, Inc. and uses bandwidth donated to the open source Asterisk community by API Digital Communications in Huntsville, AL USA.
Please report problems with this site to