mirror of
https://github.com/asterisk/asterisk.git
synced 2026-01-21 17:12:24 +00:00
[patch] Buddies are always auto-registered when processing the roster
Reporter said autoregister flag was ignored for registering 'buddies' which
had a subscription to us. Verified that this was the case and observed how
the patch addressed this and made sure it didn't break anything.
(closes issue ASTERISK-14233)
Reported by: Simon Arlott
Patches:
asterisk-0015229.patch (license #5756) patch uploaded by Simon Arlott
Tested by: Jonathan Rose
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@333378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -2992,10 +2992,12 @@ static int aji_filter_roster(void *data, ikspak *pak)
|
||||
if (ast_test_flag(&client->flags, AJI_AUTOPRUNE)) {
|
||||
ast_set_flag(&buddy->flags, AJI_AUTOPRUNE);
|
||||
ASTOBJ_MARK(buddy);
|
||||
} else if (!iks_strcmp(iks_find_attrib(x, "subscription"), "none") || !iks_strcmp(iks_find_attrib(x, "subscription"), "from")) {
|
||||
/* subscribe to buddy's presence only
|
||||
if we really need to */
|
||||
ast_set_flag(&buddy->flags, AJI_AUTOREGISTER);
|
||||
} else if (ast_test_flag(&client->flags, AJI_AUTOREGISTER)) {
|
||||
if (!iks_strcmp(iks_find_attrib(x, "subscription"), "none") || !iks_strcmp(iks_find_attrib(x, "subscription"), "from")) {
|
||||
/* subscribe to buddy's presence only
|
||||
if we really need to */
|
||||
ast_set_flag(&buddy->flags, AJI_AUTOREGISTER);
|
||||
}
|
||||
}
|
||||
ASTOBJ_UNLOCK(buddy);
|
||||
if (buddy) {
|
||||
|
||||
Reference in New Issue
Block a user