| |
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 */ |