diff options
author | Michał Górny <mgorny@gentoo.org> | 2021-01-31 10:14:14 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2021-01-31 10:16:28 +0100 |
commit | 2fe2484bb7f9de72413eb25deb02e4212d81c8d0 (patch) | |
tree | 372e217b80423d895fe0a733f3708ddd40f0b8db /net-misc/minidlna | |
parent | sys-apps/pkgcore: Bump to 0.11.2 (diff) | |
download | gentoo-2fe2484bb7f9de72413eb25deb02e4212d81c8d0.tar.gz gentoo-2fe2484bb7f9de72413eb25deb02e4212d81c8d0.tar.bz2 gentoo-2fe2484bb7f9de72413eb25deb02e4212d81c8d0.zip |
net-misc/minidlna: Fix socket leak
Closes: https://bugs.gentoo.org/768030
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'net-misc/minidlna')
-rw-r--r-- | net-misc/minidlna/files/minidlna-1.3.0-fd-leak.patch | 28 | ||||
-rw-r--r-- | net-misc/minidlna/minidlna-1.3.0-r1.ebuild (renamed from net-misc/minidlna/minidlna-1.3.0.ebuild) | 5 |
2 files changed, 31 insertions, 2 deletions
diff --git a/net-misc/minidlna/files/minidlna-1.3.0-fd-leak.patch b/net-misc/minidlna/files/minidlna-1.3.0-fd-leak.patch new file mode 100644 index 000000000000..eec2bcd020e7 --- /dev/null +++ b/net-misc/minidlna/files/minidlna-1.3.0-fd-leak.patch @@ -0,0 +1,28 @@ +diff --git a/upnpevents.c b/upnpevents.c +index 4de6ce8..1126fa7 100644 +--- a/upnpevents.c ++++ b/upnpevents.c +@@ -290,18 +290,17 @@ upnp_event_create_notify(struct subscriber *sub) + addr.sin_family = AF_INET; + inet_aton(obj->addrstr, &addr.sin_addr); + addr.sin_port = htons(port); +- DPRINTF(E_DEBUG, L_HTTP, "%s: '%s' %hu '%s'\n", "upnp_event_notify_connect", ++ DPRINTF(E_DEBUG, L_HTTP, "%s: '%s' %hu '%s'\n", "upnp_event_create_notify", + obj->addrstr, port, obj->path); + obj->state = EConnecting; ++ obj->ev = (struct event ){ .fd = s, .rdwr = EVENT_WRITE, ++ .process = upnp_event_process_notify, .data = obj }; ++ event_module.add(&obj->ev); + if(connect(s, (struct sockaddr *)&addr, sizeof(addr)) < 0) { + if(errno != EINPROGRESS && errno != EWOULDBLOCK) { +- DPRINTF(E_ERROR, L_HTTP, "%s: connect(): %s\n", "upnp_event_notify_connect", strerror(errno)); ++ DPRINTF(E_ERROR, L_HTTP, "%s: connect(): %s\n", "upnp_event_create_notify", strerror(errno)); + obj->state = EError; + } +- } else { +- obj->ev = (struct event ){ .fd = s, .rdwr = EVENT_WRITE, +- .process = upnp_event_process_notify, .data = obj }; +- event_module.add(&obj->ev); + } + + return; diff --git a/net-misc/minidlna/minidlna-1.3.0.ebuild b/net-misc/minidlna/minidlna-1.3.0-r1.ebuild index 06bcef995db2..3acb5fe49508 100644 --- a/net-misc/minidlna/minidlna-1.3.0.ebuild +++ b/net-misc/minidlna/minidlna-1.3.0-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -9,7 +9,7 @@ DESCRIPTION="DLNA/UPnP-AV compliant media server" HOMEPAGE="https://sourceforge.net/projects/minidlna/" SRC_URI=" https://downloads.sourceforge.net/project/minidlna/${PN}/${PV}/${P}.tar.gz - https://dev.gentoo.org/~xmw/minidlna-gentoo-artwork.patch.xz" + mirror://gentoo/minidlna-gentoo-artwork.patch.xz" LICENSE="BSD GPL-2" SLOT="0" @@ -38,6 +38,7 @@ CONFIG_CHECK="~INOTIFY_USER" PATCHES=( "${WORKDIR}"/minidlna-gentoo-artwork.patch "${FILESDIR}"/${P}-fno-common.patch + "${FILESDIR}"/${P}-fd-leak.patch ) src_prepare() { |