Fri, 03 Aug 2012 20:11:53 +0200
Neutralize buggy code causing OpenPKG to have 'fatal problems' in
spite of correct installation, configuration, and operation. An
administrator suffering from this failure is even unable to
uninstall the flawed software.
1 Index: channels/chan_sip.c
2 diff -Nau channels/chan_sip.c.orig channels/chan_sip.c
3 --- channels/chan_sip.c.orig 2011-01-14 18:32:52.000000000 +0100
4 +++ channels/chan_sip.c 2011-03-13 14:34:29.000000000 +0100
5 @@ -25085,6 +25085,7 @@
6 struct sip_pvt *p;
7 int newmsgs = 0, oldmsgs = 0;
8 const char *vmexten = NULL;
9 + char *s = NULL;
11 ao2_lock(peer);
13 @@ -25138,6 +25139,11 @@
14 }
15 /* Recalculate our side, and recalculate Call ID */
16 ast_sip_ouraddrfor(&p->sa, &p->ourip, p);
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 ao2_t_unlink(dialogs, p, "About to change the callid -- remove the old name");
24 build_callid_pvt(p);