mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-08-01 15:03:39 +02:00
g_socket_send_message() fails due to invalid sendmsg(2) params.
g_socket_send_message() and g_socket_send_to() fail with ENOBUFS or EFAULT due to the fact that if no "address" argument is specified to g_socket_send_message, when g_socket_send_message() calls sendmsg(2), the 2nd parameter to sendmsg ("const struct msghdr *msg") contains uninitialized values. The fix is simple - initialize msg.msg_name to NULL and msg.msg_msg_namelen to 0. https://bugzilla.gnome.org/show_bug.cgi?id=594759
This commit is contained in:
@@ -2629,6 +2629,11 @@ g_socket_send_message (GSocket *socket,
|
||||
if (!g_socket_address_to_native (address, msg.msg_name, msg.msg_namelen, error))
|
||||
return -1;
|
||||
}
|
||||
else
|
||||
{
|
||||
msg.msg_name = NULL;
|
||||
msg.msg_namelen = 0;
|
||||
}
|
||||
|
||||
/* iov */
|
||||
{
|
||||
|
Reference in New Issue
Block a user