summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorjym <jym>2009-10-30 19:55:30 +0000
committerjym <jym>2009-10-30 19:55:30 +0000
commit436754706983497aa09fb1276296270f7ed75243 (patch)
tree8b82e23533437514d100f796896cf85f3b803e3d /net
parentd9d9d839c617fb371f2cf531fdee0d32867e94e2 (diff)
downloadpkgsrc-436754706983497aa09fb1276296270f7ed75243.tar.gz
Initial import of cntlm 0.35.1 into the NetBSD package system.
Cntlm is an NTLM/NTLMv2 authenticating HTTP proxy. It takes the address of your proxy or proxies (host1..N and port1..N) and opens a listening socket, forwarding each request to the parent proxy (moving in a circular list if the active parent stops working). Along the way, a connection to the parent is created anew and authenticated or, if available, previously cached connection is reused to achieve higher efficiency and faster responses. When the chain is set up, cntlm should be used as a proxy in your applications. Cntlm also integrates transparent TCP/IP port forwarding (tunneling) through the parent (incl. authentication). It can be used against most ISA servers, and helps to provide ease of integration for programs not supporting NTLM authentication directly, via cntlm's builtin SOCKS5 proxy.
Diffstat (limited to 'net')
-rw-r--r--net/cntlm/DESCR9
-rw-r--r--net/cntlm/Makefile47
-rw-r--r--net/cntlm/PLIST5
-rw-r--r--net/cntlm/distinfo5
-rw-r--r--net/cntlm/files/cntlm.sh54
5 files changed, 120 insertions, 0 deletions
diff --git a/net/cntlm/DESCR b/net/cntlm/DESCR
new file mode 100644
index 00000000000..e28030adeda
--- /dev/null
+++ b/net/cntlm/DESCR
@@ -0,0 +1,9 @@
+Cntlm is an NTLM/NTLMv2 authenticating HTTP proxy. It takes the address of your
+proxy or proxies (host1..N and port1..N) and opens a listening socket,
+forwarding each request to the parent proxy (moving in a circular list if the
+active parent stops working). Along the way, a connection to the parent is
+created anew and authenticated or, if available, previously cached connection
+is reused to achieve higher efficiency and faster responses. When the chain is
+set up, cntlm should be used as a proxy in your applications. Cntlm also
+integrates transparent TCP/IP port forwarding (tunneling) through the parent
+(incl. authentication).
diff --git a/net/cntlm/Makefile b/net/cntlm/Makefile
new file mode 100644
index 00000000000..677ae93dcbf
--- /dev/null
+++ b/net/cntlm/Makefile
@@ -0,0 +1,47 @@
+# $NetBSD: Makefile,v 1.1.1.1 2009/10/30 19:55:30 jym Exp $
+#
+
+DISTNAME= cntlm-0.35.1
+CATEGORIES= net
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=cntlm/}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://cntlm.sourceforge.net/
+COMMENT= NTLM/NTLMv2 authenticating HTTP proxy
+LICENSE= gnu-gpl-v2
+
+HAS_CONFIGURE= yes
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+CNTLM_USER?= cntlm
+CNTLM_GROUP?= cntlm
+CNTLM_CONFDIR= ${PKG_SYSCONFDIR}
+PKG_USERS= ${CNTLM_USER}:${CNTLM_GROUP}
+PKG_GROUPS= ${CNTLM_GROUP}
+
+BUILD_MAKE_FLAGS+= SYSCONFDIR=${CNTLM_CONFDIR:Q}
+BUILD_TARGET= cntlm
+
+FILES_SUBST+= CNTLM_USER=${CNTLM_USER:Q}
+FILES_SUBST+= PREFIX=${PREFIX:Q}
+FILES_SUBST+= PKG_SYSCONFDIR=${PKG_SYSCONFDIR:Q}
+
+EGDIR= ${PREFIX}/share/examples/${PKGBASE}
+RCD_SCRIPTS+= cntlm
+
+CONF_FILES_PERMS+= ${EGDIR}/cntlm.conf ${PKG_SYSCONFDIR}/cntlm.conf \
+ ${CNTLM_USER} ${CNTLM_GROUP} 0600
+INSTALLATION_DIRS+= ${EGDIR}
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/cntlm \
+ ${DESTDIR}${PREFIX}/bin
+ ${INSTALL_MAN} ${WRKSRC}/doc/cntlm.1 \
+ ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/
+ ${INSTALL_DATA} ${WRKSRC}/doc/cntlm.conf \
+ ${DESTDIR}${EGDIR}/cntlm.conf
+
+# url2pkg-marker (please do not remove this line.)
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/net/cntlm/PLIST b/net/cntlm/PLIST
new file mode 100644
index 00000000000..2118dd86b01
--- /dev/null
+++ b/net/cntlm/PLIST
@@ -0,0 +1,5 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2009/10/30 19:55:30 jym Exp $
+bin/cntlm
+man/man1/cntlm.1
+share/examples/cntlm/cntlm.conf
+share/examples/rc.d/cntlm
diff --git a/net/cntlm/distinfo b/net/cntlm/distinfo
new file mode 100644
index 00000000000..3bc118e5eaf
--- /dev/null
+++ b/net/cntlm/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1.1.1 2009/10/30 19:55:30 jym Exp $
+
+SHA1 (cntlm-0.35.1.tar.gz) = 4bf9f75b0f5fdb4469b5e81013c40ac166c9d235
+RMD160 (cntlm-0.35.1.tar.gz) = 65a2b97a6ec8340b41acbd0f29dc1096148a02ac
+Size (cntlm-0.35.1.tar.gz) = 74188 bytes
diff --git a/net/cntlm/files/cntlm.sh b/net/cntlm/files/cntlm.sh
new file mode 100644
index 00000000000..f2144de51be
--- /dev/null
+++ b/net/cntlm/files/cntlm.sh
@@ -0,0 +1,54 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: cntlm.sh,v 1.1.1.1 2009/10/30 19:55:30 jym Exp $
+#
+# PROVIDE: cntlm
+# REQUIRE: DAEMON
+#
+# You will need to set some variables in /etc/rc.conf to start cntlm:
+#
+# cntlm=YES
+#
+# The following variables are optional:
+#
+# cntlm_flags="" # Additional flags to pass to cntlm
+#
+# "cntlm_flags" contains options for the cntlm daemon. See cntlm(1) for
+# possible options.
+
+if [ -f /etc/rc.subr ]; then
+ . /etc/rc.subr
+fi
+
+name="cntlm"
+rcvar=${name}
+
+cntlm_config="@PKG_SYSCONFDIR@/${name}.conf"
+cntlm_user="@CNTLM_USER@"
+pidfile="@VARBASE@/run/${name}.pid"
+
+command="@PREFIX@/bin/${name}"
+command_args="-U $cntlm_user -P $pidfile -c $cntlm_config "
+required_files="$cntlm_config"
+
+start_precmd="cntlm_prestartcmd"
+stop_postcmd="cntlm_poststopcmd"
+
+cntlm_prestartcmd() {
+ touch $pidfile
+ chown $cntlm_user $pidfile
+}
+
+cntlm_poststopcmd() {
+ if [ -f $pidfile ]; then
+ rm -f $pidfile
+ fi
+}
+
+if [ -f /etc/rc.subr ]; then
+ load_rc_config $name
+ run_rc_command "$1"
+else
+ @ECHO@ -n ' ${name}'
+ ${command} ${cntlm_flags} ${command_args}
+fi