added a patch to fix segfault with libnl 3.2.25 [release 0.9.8.10-3mamba;Sun Aug 24 2014]

This commit is contained in:
Silvan Calarco 2024-01-05 17:49:44 +01:00
parent 681af7b4e1
commit 05ac373410
2 changed files with 55 additions and 1 deletions

View File

@ -0,0 +1,49 @@
From 8e4576b9fdb5c888d20a13aa2cc198df790dba54 Mon Sep 17 00:00:00 2001
From: Thomas Haller <thaller@redhat.com>
Date: Fri, 18 Jul 2014 13:34:33 +0200
Subject: netlink: fix crash in netlink-monitor validating netlink messages
The wrong callback data pointer was passed to the netlink message
validation function.
Since libnl commit 4dd5fdd0af2c0b7ffe1dbc49313f263dbb2e906f,
nl_socket_get_local_port() actually modifes the provided @sk
pointer. Hence, since libnl 3.2.25 NM will crash due to
this bug.
#0 _nl_socket_generate_local_port_no_release (sk=0x715500) at socket.c:339
#1 0x00007ffff76f3ad5 in nl_socket_get_local_port (sk=sk@entry=0x715500) at socket.c:369
#2 0x000000000046b81a in event_msg_recv (msg=<optimized out>, arg=0x715500) at nm-netlink-monitor.c:204
#3 0x00007ffff76f2604 in nl_cb_call (msg=0x71f240, type=5, cb=0x71f150) at ../include/netlink-private/netlink.h:141
#4 recvmsgs (cb=0x71f150, sk=0x71f070) at nl.c:823
#5 nl_recvmsgs_report (sk=sk@entry=0x71f070, cb=cb@entry=0x71f150) at nl.c:1003
#6 0x00007ffff76f2bc9 in nl_recvmsgs (sk=sk@entry=0x71f070, cb=cb@entry=0x71f150) at nl.c:1027
#7 0x00007ffff76ec6b8 in __cache_pickup (sk=sk@entry=0x71f070, cache=cache@entry=0x71f0c0, param=param@entry=0x7fffffffd3f0) at cache.c:701
#8 0x00007ffff76ed0dd in nl_cache_pickup (sk=sk@entry=0x71f070, cache=cache@entry=0x71f0c0) at cache.c:753
#9 0x00007ffff76ed2d8 in nl_cache_refill (sk=sk@entry=0x71f070, cache=cache@entry=0x71f0c0) at cache.c:983
#10 0x00007ffff7b224db in rtnl_link_alloc_cache (sk=0x71f070, family=family@entry=0, result=result@entry=0x7154e0) at route/link.c:1029
#11 0x000000000046c5f7 in sync_connection_setup (self=self@entry=0x715500, error=error@entry=0x7fffffffd4f8) at nm-netlink-monitor.c:412
#12 0x000000000046c91f in nm_netlink_monitor_open_connection (self=0x715500, error=error@entry=0x7fffffffd4f8) at nm-netlink-monitor.c:447
#13 0x000000000046cad7 in nm_netlink_monitor_get () at nm-netlink-monitor.c:840
#14 0x00000000004558b9 in main (argc=1, argv=0x7fffffffd958) at main.c:527
Reported-by: Jan Engelhardt <jengelh@inai.de>
Fixes: 9fee99e1230580067efb33f3aaea0fddad5cfe66
Signed-off-by: Thomas Haller <thaller@redhat.com>
diff --git a/src/nm-netlink-monitor.c b/src/nm-netlink-monitor.c
index ba8053e..593dec9 100644
--- a/src/nm-netlink-monitor.c
+++ b/src/nm-netlink-monitor.c
@@ -285,7 +285,7 @@ nlh_setup (struct nl_sock *nlh,
{
int err;
- nl_socket_modify_cb (nlh, NL_CB_MSG_IN, NL_CB_CUSTOM, event_msg_recv, cb_data);
+ nl_socket_modify_cb (nlh, NL_CB_MSG_IN, NL_CB_CUSTOM, event_msg_recv, nlh);
if (valid_func)
nl_socket_modify_cb (nlh, NL_CB_VALID, NL_CB_CUSTOM, valid_func, cb_data);
--
cgit v0.10.2

View File

@ -1,7 +1,7 @@
%define majver %(echo %version | cut -d. -f 1-2) %define majver %(echo %version | cut -d. -f 1-2)
Name: NetworkManager Name: NetworkManager
Version: 0.9.8.10 Version: 0.9.8.10
Release: 2mamba Release: 3mamba
Summary: A hardware level network management tool integrated with D-Bus Summary: A hardware level network management tool integrated with D-Bus
Group: System/Kernel and Hardware Group: System/Kernel and Hardware
Vendor: openmamba Vendor: openmamba
@ -15,6 +15,7 @@ Source1: NetworkManager-0.8.2-polkit-localauthority.patch
Patch0: %{name}-0.8.2-initscript.patch Patch0: %{name}-0.8.2-initscript.patch
Patch7: %{name}-0.9.4.0-wpa_supplicant_longer_timeout.patch Patch7: %{name}-0.9.4.0-wpa_supplicant_longer_timeout.patch
Patch12: %{name}-0.9.4.0-upstream-fixes-2.patch Patch12: %{name}-0.9.4.0-upstream-fixes-2.patch
Patch13: NetworkManager-0.9.8.10-libnl-3.2.25.patch
License: GPL License: GPL
## AUTOBUILDREQ-BEGIN ## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel BuildRequires: glibc-devel
@ -90,6 +91,7 @@ This package includes the %{name} API documentation.
%patch0 -p1 %patch0 -p1
%patch7 -p1 %patch7 -p1
#%patch12 -p1 #%patch12 -p1
%patch13 -p1
%build %build
%configure \ %configure \
@ -234,6 +236,9 @@ exit 0
%{_datadir}/gtk-doc/html/libnm-util/* %{_datadir}/gtk-doc/html/libnm-util/*
%changelog %changelog
* Sun Aug 24 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 0.9.8.10-3mamba
- added a patch to fix segfault with libnl 3.2.25
* Mon Jun 30 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 0.9.8.10-2mamba * Mon Jun 30 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 0.9.8.10-2mamba
- rebuilt with --with-session-tracking=systemd - rebuilt with --with-session-tracking=systemd