Index: channels/chan_iax2.c =================================================================== --- channels/chan_iax2.c (revision 37660) +++ channels/chan_iax2.c (working copy) @@ -2591,6 +2591,7 @@ static void destroy_user(struct iax2_user *user); static int expire_registry(void *data); +static void realtime_update_peer(const char *peername, struct sockaddr_in *sin); static struct iax2_peer *realtime_peer(const char *peername, struct sockaddr_in *sin) { @@ -2676,6 +2677,7 @@ time(&nowtime); if ((nowtime - regseconds) > IAX_DEFAULT_REG_EXPIRE) { memset(&peer->addr, 0, sizeof(peer->addr)); + realtime_update_peer(peer->name, &peer->addr); if (option_debug) ast_log(LOG_DEBUG, "realtime_peer: Bah, '%s' is expired (%d/%d/%d)!\n", peername, (int)(nowtime - regseconds), (int)regseconds, (int)nowtime);