diff options
author | file <file@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-05-28 23:28:52 +0000 |
---|---|---|
committer | file <file@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-05-28 23:28:52 +0000 |
commit | 5f0b85b97db35f7d62da981e009309e52b0bacc5 (patch) | |
tree | 66cebcae454c5eef346e7ab24d48e9ef0a4c4a71 /channels/chan_sip.c | |
parent | 8b1ef1293855ffcbe20ebcbc8ee4c2a50b6e6a22 (diff) |
Don't try to unregister a peer using the sip unregister CLI command if they are not registered. (issue #9811 reported by eliel)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@66315 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_sip.c')
-rw-r--r-- | channels/chan_sip.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 223e2276c..fed98d486 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -11121,8 +11121,12 @@ static int sip_unregister(int fd, int argc, char *argv[]) return RESULT_SHOWUSAGE; if ((peer = find_peer(argv[2], NULL, load_realtime))) { - expire_register(peer); - ast_cli(fd, "Unregistered peer \'%s\'\n\n", argv[2]); + if (peer->expire > 0) { + expire_register(peer); + ast_cli(fd, "Unregistered peer \'%s\'\n\n", argv[2]); + } else { + ast_cli(fd, "Peer %s not registered\n", argv[2]); + } } else { ast_cli(fd, "Peer unknown: \'%s\'. Not unregistered.\n", argv[2]); } |