--- chan_sip.c 2004-11-04 12:40:35.000000000 -0500 +++ chan_sip.c_tagfix 2004-11-04 12:49:54.000000000 -0500 @@ -4020,8 +4020,11 @@ if (!auth) { ast_log(LOG_WARNING, "Already have a call??\n"); return 0; - } else + } else { p = r->call; + p->tag = rand(); /* create a new local tag for every register attempt */ + p->theirtag[0]='\0'; /* forget their old tag, so we don't match tags when getting response */ + } } else { if (!r->callid_valid) { build_callid(r->callid, sizeof(r->callid), __ourip, default_fromdomain);