diff options
author | garga <garga@FreeBSD.org> | 2011-11-19 22:31:23 +0800 |
---|---|---|
committer | garga <garga@FreeBSD.org> | 2011-11-19 22:31:23 +0800 |
commit | 75f5a5cd27a20ff5884b03245bf461e813b071c8 (patch) | |
tree | 1f0c5f9dd4af48ac8046ec261b2592a8eb1da86b /net/rinetd | |
parent | f2045e522613c452c0c04c09c8c4160faad3a83e (diff) | |
download | freebsd-ports-gnome-75f5a5cd27a20ff5884b03245bf461e813b071c8.tar.gz freebsd-ports-gnome-75f5a5cd27a20ff5884b03245bf461e813b071c8.tar.zst freebsd-ports-gnome-75f5a5cd27a20ff5884b03245bf461e813b071c8.zip |
rinetd fails to close the configuration file (fopen twice, fclose only once)
when reading its configuration. Therefore on every configuration reload
(through SIGHUP) one file descriptor is lost. In an environment where this is
done frequently (e.g. to re-lookup DNS names) the system will run out of file
descriptors soon (kern.maxfiles) until rinetd crashes.
PR: ports/162673
Submitted by: Michael Gmelin <freebsd@grem.de>
Feature safe: yes
Diffstat (limited to 'net/rinetd')
-rw-r--r-- | net/rinetd/Makefile | 2 | ||||
-rw-r--r-- | net/rinetd/files/patch-rinetd.c | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/net/rinetd/Makefile b/net/rinetd/Makefile index 91d7b94db700..ba63e73ff669 100644 --- a/net/rinetd/Makefile +++ b/net/rinetd/Makefile @@ -7,7 +7,7 @@ PORTNAME= rinetd PORTVERSION= 0.62 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= net MASTER_SITES= http://www.boutell.com/rinetd/http/ \ ${MASTER_SITE_GENTOO} diff --git a/net/rinetd/files/patch-rinetd.c b/net/rinetd/files/patch-rinetd.c index c7797d5978ce..fe942d0093de 100644 --- a/net/rinetd/files/patch-rinetd.c +++ b/net/rinetd/files/patch-rinetd.c @@ -8,3 +8,11 @@ initArrays(); readConfiguration(); RegisterPID(); +@@ -646,6 +646,7 @@ + } + } + } ++ fclose(in); + /* Open the log file */ + if (logFile) { + fclose(logFile); |