mirror of
https://git.jabber.space/devs/cproof.git
synced 2026-07-18 00:36:21 +00:00
fix(xmpp): guard NULL domain in autoping disco warning gate
g_ascii_strcasecmp() is not NULL-safe (unlike the g_strcmp0 it replaced), and connection_get_domain() can be NULL (init NULL, FREE_SET_NULL on teardown). A disco#info response racing a disconnect would dereference NULL. Capture the domain and skip the check when it is NULL.
This commit is contained in:
@@ -2432,7 +2432,8 @@ _disco_info_response_id_handler_onconnect(xmpp_stanza_t* const stanza, void* con
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Prevent repetitions by avoiding checks of disco items (from connection_set_disco_items)
|
// Prevent repetitions by avoiding checks of disco items (from connection_set_disco_items)
|
||||||
if (from && g_ascii_strcasecmp(from, connection_get_domain()) == 0) {
|
const char* domain = connection_get_domain();
|
||||||
|
if (from && domain && g_ascii_strcasecmp(from, domain) == 0) {
|
||||||
_disco_autoping_warning_message(features);
|
_disco_autoping_warning_message(features);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user