| 1 Index: channels/chan_sip.c |
|
| 2 diff -Nau channels/chan_sip.c.orig channels/chan_sip.c |
|
| 3 --- channels/chan_sip.c.orig 2009-04-24 00:51:58.000000000 +0200 |
|
| 4 +++ channels/chan_sip.c 2009-04-24 00:52:33.000000000 +0200 |
|
| 5 @@ -16428,6 +16428,7 @@ |
|
| 6 /* Called with peerl lock, but releases it */ |
|
| 7 struct sip_pvt *p; |
|
| 8 int newmsgs, oldmsgs; |
|
| 9 + char *s = NULL; |
|
| 10 |
|
| 11 /* Do we have an IP address? If not, skip this peer */ |
|
| 12 if (!peer->addr.sin_addr.s_addr && !peer->defaddr.sin_addr.s_addr) |
|
| 13 @@ -16461,6 +16462,11 @@ |
|
| 14 /* Recalculate our side, and recalculate Call ID */ |
|
| 15 if (ast_sip_ouraddrfor(&p->sa.sin_addr, &p->ourip)) |
|
| 16 p->ourip = __ourip; |
|
| 17 + /* Set the username = mailbox and remove the context */ |
|
| 18 + ast_string_field_build(p, username, "%s", peer->name); |
|
| 19 + s = strchr(p->username, '@'); |
|
| 20 + if (s != NULL) |
|
| 21 + *s = 0; |
|
| 22 build_via(p); |
|
| 23 build_callid_pvt(p); |
|
| 24 /* Destroy this session after 32 secs */ |
|