summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonny Davies <woodchip@gentoo.org>2002-06-07 20:45:48 +0000
committerDonny Davies <woodchip@gentoo.org>2002-06-07 20:45:48 +0000
commit9db291824f22a1a7559721085000dd7e98785fad (patch)
treeb20f34be690b65ab68b7742db0134607e999f62a /net-misc/dante
parentnew version (diff)
downloadgentoo-2-9db291824f22a1a7559721085000dd7e98785fad.tar.gz
gentoo-2-9db291824f22a1a7559721085000dd7e98785fad.tar.bz2
gentoo-2-9db291824f22a1a7559721085000dd7e98785fad.zip
#3250 and some new patches
Diffstat (limited to 'net-misc/dante')
-rw-r--r--net-misc/dante/ChangeLog11
-rw-r--r--net-misc/dante/dante-1.1.12.ebuild50
-rw-r--r--net-misc/dante/files/dante-1.1.12-exit-code.patch66
-rw-r--r--net-misc/dante/files/dante-1.1.12-gcc-3.1.patch11
-rw-r--r--net-misc/dante/files/dante-1.1.12-percent-in-log.patch25
-rw-r--r--net-misc/dante/files/dante-1.1.12-pre1-pam-syslog.patch42
-rw-r--r--net-misc/dante/files/digest-dante-1.1.121
7 files changed, 205 insertions, 1 deletions
diff --git a/net-misc/dante/ChangeLog b/net-misc/dante/ChangeLog
index 75a7b67367ff..cc67202236b8 100644
--- a/net-misc/dante/ChangeLog
+++ b/net-misc/dante/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for net-misc/dante
# Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL
-# $Header: /var/cvsroot/gentoo-x86/net-misc/dante/ChangeLog,v 1.2 2002/05/01 04:38:03 woodchip Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/dante/ChangeLog,v 1.3 2002/06/07 20:45:48 woodchip Exp $
+
+*dante-1.1.12 (7 Jun 2002)
+
+ 7 Jun 2002; Donny Davies <woodchip@gentoo.org> dante-1.1.12.ebuild,
+ dante-1.1.12-exit-code.patch, dante-1.1.12-gcc-3.1.patch,
+ dante-1.1.12-percent-in-log.patch, dante-1.1.12-pre1-pam-syslog.patch :
+
+ Updato to latest release, closing #3250 with some patches to fix
+ build issues.
*dante-1.1.9-r1 (1 May 2002)
diff --git a/net-misc/dante/dante-1.1.12.ebuild b/net-misc/dante/dante-1.1.12.ebuild
new file mode 100644
index 000000000000..96137e8cbada
--- /dev/null
+++ b/net-misc/dante/dante-1.1.12.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2002 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-misc/dante/dante-1.1.12.ebuild,v 1.1 2002/06/07 20:45:48 woodchip Exp $
+
+S=${WORKDIR}/${P}
+DESCRIPTION="A free socks4,5 and msproxy implemetation"
+SRC_URI="ftp://ftp.inet.no/pub/socks/${P}.tar.gz"
+HOMEPAGE="http://www.inet.no/dante/"
+RDEPEND="virtual/glibc sys-libs/pam tcpd? ( sys-apps/tcp-wrappers )"
+DEPEND="${RDEPEND} sys-devel/perl"
+LICENSE="BSD"
+SLOT="0"
+
+src_unpack() {
+ unpack ${A} ; cd ${S}
+ patch -p1 <${FILESDIR}/${P}-exit-code.patch || die
+ patch -p1 <${FILESDIR}/${P}-pre1-pam-syslog.patch || die
+ patch -p0 <${FILESDIR}/${P}-percent-in-log.patch || die
+ patch -p1 <${FILESDIR}/${P}-gcc-3.1.patch || die
+}
+
+src_compile() {
+ local myconf
+ use tcpd || myconf="--disable-libwrap"
+ [ -n "$DEBUGBUILD" ] || myconf="${myconf} --disable-debug"
+ einfo "myconf is $myconf"
+ ./configure \
+ --prefix=/usr \
+ --mandir=/usr/share/man \
+ --with-socks-conf=/etc/socks/socks.conf \
+ --with-sockd-conf=/etc/socks/sockd.conf \
+ --host=${CHOST} ${myconf} || die "bad ./configure"
+ emake || die "compile problem"
+}
+
+src_install() {
+ make DESTDIR=${D} install || die
+ # bor: comment libdl.so out it seems to work just fine without it
+ perl -pe 's/(libdl\.so)//' -i ${D}/usr/bin/socksify
+ dodir /etc/socks
+ dodoc BUGS CREDITS LICENSE NEWS README SUPPORT TODO VERSION
+ docinto txt
+ cd doc
+ dodoc README* *.txt SOCKS4.*
+ docinto example
+ cd ../example
+ dodoc *.conf
+ exeinto /etc/init.d
+ newexe ${FILESDIR}/dante-sockd-init dante-sockd
+}
diff --git a/net-misc/dante/files/dante-1.1.12-exit-code.patch b/net-misc/dante/files/dante-1.1.12-exit-code.patch
new file mode 100644
index 000000000000..4ac00f85203d
--- /dev/null
+++ b/net-misc/dante/files/dante-1.1.12-exit-code.patch
@@ -0,0 +1,66 @@
+--- dante-1.1.12/sockd/sockd.c.orig Mon Apr 15 13:33:09 2002
++++ dante-1.1.12/sockd/sockd.c Mon Apr 15 13:36:51 2002
+@@ -208,7 +208,6 @@
+
+ close(p);
+ }
+- newprocinit();
+
+ /*
+ * Check system limits against what we need.
+@@ -293,6 +292,22 @@
+ return EXIT_FAILURE;
+ }
+
++ time(&sockscf.stat.boot);
++
++ if ((sockscf.state.motherpidv = (pid_t *)malloc(
++ sizeof(*sockscf.state.motherpidv) * sockscf.option.serverc)) == NULL)
++ serrx(EXIT_FAILURE, "%s", NOMEM);
++
++ /*
++ * Would have liked to move the daemon() call to after the "running"
++ * message below, but we want to know who our children are.
++ */
++ if (sockscf.option.daemon)
++ if (daemon(1, 0) != 0)
++ serr(EXIT_FAILURE, "daemon()");
++
++ newprocinit();
++
+ #if !HAVE_DISABLED_PIDFILE
+ socks_seteuid(NULL, sockscf.uid.privileged);
+ if ((fp = fopen(SOCKD_PIDFILE, "w")) == NULL) {
+@@ -308,7 +323,7 @@
+ }
+ #endif /* !HAVE_DISABLED_PIDFILE */
+
+- time(&sockscf.stat.boot);
++ *sockscf.state.motherpidv = sockscf.state.pid; /* main server. */
+
+ /* fork of requested number of servers. Start at one 'cause we are "it". */
+ for (p = 1; p < sockscf.option.serverc; ++p) {
+@@ -809,22 +824,13 @@
+ if (argc > 0)
+ serrx(EXIT_FAILURE, "%s: unknown argument %s", function, *argv);
+
+- if (sockscf.option.daemon)
+- if (daemon(1, 0) != 0)
+- serr(EXIT_FAILURE, "%s: daemon()", function);
+-
+ if (sockscf.option.configfile == NULL)
+ sockscf.option.configfile = SOCKD_CONFIGFILE;
+
+ optioninit();
+
+ genericinit();
+-
+- if ((sockscf.state.motherpidv = (pid_t *)malloc(
+- sizeof(*sockscf.state.motherpidv) * sockscf.option.serverc)) == NULL)
+- serrx(EXIT_FAILURE, "%s: %s", function, NOMEM);
+- *sockscf.state.motherpidv = sockscf.state.pid; /* main server. */
+-
++
+ fixsettings();
+
+ if (verifyonly) {
diff --git a/net-misc/dante/files/dante-1.1.12-gcc-3.1.patch b/net-misc/dante/files/dante-1.1.12-gcc-3.1.patch
new file mode 100644
index 000000000000..b313639afd78
--- /dev/null
+++ b/net-misc/dante/files/dante-1.1.12-gcc-3.1.patch
@@ -0,0 +1,11 @@
+--- dante-1.1.12/sockd/accesscheck.c~ Fri Apr 12 13:31:05 2002
++++ dante-1.1.12/sockd/accesscheck.c Wed May 15 10:14:55 2002
+@@ -153,7 +153,7 @@
+ serrx(EXIT_FAILURE,
+ "the PAM library/module code on your system seems to be messing "
+ "with our descriptors, can't cope with that. Get the PAM code "
+- "on your system fixed")
++ "on your system fixed");
+ #endif /* DIAGNOSTIC */
+ break;
+ }
diff --git a/net-misc/dante/files/dante-1.1.12-percent-in-log.patch b/net-misc/dante/files/dante-1.1.12-percent-in-log.patch
new file mode 100644
index 000000000000..97b38d5e7ec8
--- /dev/null
+++ b/net-misc/dante/files/dante-1.1.12-percent-in-log.patch
@@ -0,0 +1,25 @@
+Index: lib/serr.c
+===================================================================
+RCS file: /share/inferno/src/socks/lib/serr.c,v
+retrieving revision 1.5
+diff -u -r1.5 serr.c
+--- lib/serr.c 12 Dec 2001 14:42:13 -0000 1.5
++++ lib/serr.c 18 Apr 2002 09:20:30 -0000
+@@ -74,7 +74,7 @@
+ bufused += snprintfn(&buf[bufused], sizeof(buf) - bufused,
+ ": %s (errno = %d)", strerror(errno), errno);
+
+- slog(LOG_ERR, buf);
++ slog(LOG_ERR, "%s", buf);
+
+ /* LINTED expression has null effect */
+ va_end(ap);
+@@ -147,7 +147,7 @@
+ bufused += snprintfn(&buf[bufused], sizeof(buf) - bufused,
+ ": %s (errno = %d)", strerror(errno), errno);
+
+- slog(LOG_ERR, buf);
++ slog(LOG_ERR, "%s", buf);
+
+ /* LINTED expression has null effect */
+ va_end(ap);
diff --git a/net-misc/dante/files/dante-1.1.12-pre1-pam-syslog.patch b/net-misc/dante/files/dante-1.1.12-pre1-pam-syslog.patch
new file mode 100644
index 000000000000..b158d8828109
--- /dev/null
+++ b/net-misc/dante/files/dante-1.1.12-pre1-pam-syslog.patch
@@ -0,0 +1,42 @@
+--- dante-1.1.12/sockd/auth_pam.c.orig Tue Feb 5 11:40:52 2002
++++ dante-1.1.12/sockd/auth_pam.c Fri Mar 8 23:15:31 2002
+@@ -58,6 +58,10 @@
+ static int
+ _pam_conversation(int num_msg, const struct pam_message **msgs,
+ struct pam_response **rsps, void *priv_data);
++static int
++_real_pam_passwordcheck( int s, const struct sockaddr *src,
++const struct sockaddr *dst, const struct authmethod_pam_t *auth,
++char *emsg, size_t emsgsize);
+
+ typedef struct
+ {
+@@ -72,8 +76,28 @@
+
+ __END_DECLS
+
++/*
++ * At least one known PAM implementation reopens syslog internally
++ * that messes up logging inside of dante
++ * Very simple workaround is to reopen syslog after calling PAM
++ */
+ int
+ pam_passwordcheck(s, src, dst, auth, emsg, emsgsize)
++ int s;
++ const struct sockaddr *src, *dst;
++ const struct authmethod_pam_t *auth;
++ char *emsg;
++ size_t emsgsize;
++{
++ int ret;
++
++ ret = _real_pam_passwordcheck(s,src,dst,auth,emsg,emsgsize);
++ newprocinit();
++ return ret;
++}
++
++static int
++_real_pam_passwordcheck(s, src, dst, auth, emsg, emsgsize)
+ int s;
+ const struct sockaddr *src, *dst;
+ const struct authmethod_pam_t *auth;
diff --git a/net-misc/dante/files/digest-dante-1.1.12 b/net-misc/dante/files/digest-dante-1.1.12
new file mode 100644
index 000000000000..766e29de63ea
--- /dev/null
+++ b/net-misc/dante/files/digest-dante-1.1.12
@@ -0,0 +1 @@
+MD5 1be7318e0197522c9301066708ac1482 dante-1.1.12.tar.gz 804725