diff -u ./osipua/src/osipdialog.c --- ./osipua/src/osipdialog.c 2004-01-03 13:15:39.000000000 -0500 +++ ./osipua/src/osipdialog.c 2004-06-14 11:53:05.000000000 -0400 @@ -1526,8 +1526,6 @@ from_clone (call_leg->from, &(request->from)); - from_set_tag (request->from, from_tag_new_random ()); - if (0 == strcmp ("REGISTER", method_name)) { url_init (&request->strtline->rquri); @@ -1602,6 +1600,10 @@ goto brood_error_1; } } + + /* Do not set the from_tag until after REGISTER treatment. */ + from_set_tag (request->from, from_tag_new_random ()); + if (osip_ua_has_specific_bind(ua)){ call_leg->localip=sgetcopy(ua->contact->url->host); }else {