aboutsummaryrefslogtreecommitdiffstats
path: root/net/balance
diff options
context:
space:
mode:
authorrodrigo <rodrigo@FreeBSD.org>2015-01-27 06:04:39 +0800
committerrodrigo <rodrigo@FreeBSD.org>2015-01-27 06:04:39 +0800
commit93551c0dfc0ac4777a750ba38885d308448f5427 (patch)
tree0222b83f68d9cd15487593ecb3229aa348c10e24 /net/balance
parent93f0f7443a424ffbd53ac0ad9ebb2ad42406d6e2 (diff)
downloadfreebsd-ports-gnome-93551c0dfc0ac4777a750ba38885d308448f5427.tar.gz
freebsd-ports-gnome-93551c0dfc0ac4777a750ba38885d308448f5427.tar.zst
freebsd-ports-gnome-93551c0dfc0ac4777a750ba38885d308448f5427.zip
Resurect net/balance, a generic TCP proxy with round robin features
PR: 193368 Submitted by: Chris Hutchinson <portmaster@bsdforge.com>
Diffstat (limited to 'net/balance')
-rw-r--r--net/balance/Makefile25
-rw-r--r--net/balance/distinfo2
-rw-r--r--net/balance/files/balance.in96
-rw-r--r--net/balance/pkg-descr9
-rw-r--r--net/balance/pkg-plist2
5 files changed, 134 insertions, 0 deletions
diff --git a/net/balance/Makefile b/net/balance/Makefile
new file mode 100644
index 000000000000..f1aa527163d1
--- /dev/null
+++ b/net/balance/Makefile
@@ -0,0 +1,25 @@
+# Created by: Joseph Scott <joseph@randomnetworks.com>
+# $FreeBSD$
+
+PORTNAME= balance
+PORTVERSION= 3.56
+CATEGORIES= net
+MASTER_SITES= http://www.inlab.de/
+
+MAINTAINER= portmaster@BSDforge.com
+COMMENT= Simple but powerful generic TCP proxy with round robin features
+
+LICENSE= GPLv2
+
+ALL_TARGET= balance
+USE_RC_SUBR= balance
+
+pre-build:
+ @${REINPLACE_CMD} -e 's|^CFLAGS|CFLAGS?|' \
+ -e 's|^CC|CC?|' ${WRKSRC}/Makefile
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/balance ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_MAN} ${WRKSRC}/balance.1 ${STAGEDIR}${MANPREFIX}/man/man1
+
+.include <bsd.port.mk>
diff --git a/net/balance/distinfo b/net/balance/distinfo
new file mode 100644
index 000000000000..d3ccb8a7da37
--- /dev/null
+++ b/net/balance/distinfo
@@ -0,0 +1,2 @@
+SHA256 (balance-3.56.tar.gz) = 939a04eb5c89bd1a6b309a30507e36758dd9f1e90c76ed457c2c67b651dde89c
+SIZE (balance-3.56.tar.gz) = 35477
diff --git a/net/balance/files/balance.in b/net/balance/files/balance.in
new file mode 100644
index 000000000000..977bbfc323aa
--- /dev/null
+++ b/net/balance/files/balance.in
@@ -0,0 +1,96 @@
+#!/bin/sh
+#
+# $FreeBSD: head/net/balance/files/balance.in 340872 2014-01-24 00:14:07Z mat $
+#
+
+# PROVIDE: balance
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+
+#
+# Add the following lines to /etc/rc.conf to enable balance:
+#
+#balance_enable="YES"
+#balance_hosts="host1"
+#balance_host1_flags="-a"
+#balance_host1_address="host1.external.example"
+#balance_host1_ports="http 8180"
+#balance_host1_targets="host1.internal.example"
+#
+# See balance(8) for flags
+#
+
+. /etc/rc.subr
+
+name=balance
+rcvar=balance_enable
+command=%%PREFIX%%/bin/balance
+
+start_cmd=start_cmd
+stop_cmd=stop_cmd
+status_cmd=status_cmd
+
+start_cmd()
+{
+ if [ -x "${command}" ]; then
+ for host in ${balance_hosts}; do
+ eval ports=\"\${balance_${host}_ports}\"
+ eval flags=\"\${balance_${host}_flags}\"
+ eval address=\"\${balance_${host}_address}\"
+ eval targets=\"\${balance_${host}_targets}\"
+ if [ "" != "${address}" ]; then
+ flags="${flags} -b ${address}"
+ fi
+ for port in ${ports}; do
+ "${command}" ${flags} ${port} ${targets}
+ done
+ done
+ fi
+}
+
+stop_cmd()
+{
+ if [ -x "${command}" ]; then
+ for host in ${balance_hosts}; do
+ eval ports=\"\${balance_${host}_ports}\"
+ eval address=\"\${balance_${host}_address}\"
+ flags=""
+ if [ "" != "${address}" ]; then
+ flags="-b ${address}"
+ else
+ address='*'
+ fi
+ for port in ${ports}; do
+ echo "balance at ${address}:${port}"
+ "${command}" ${flags} -c kill ${port}
+ done
+ done
+ fi
+}
+
+status_cmd()
+{
+ if [ -x "${command}" ]; then
+ for host in ${balance_hosts}; do
+ eval ports=\"\${balance_${host}_ports}\"
+ eval address=\"\${balance_${host}_address}\"
+ flags=""
+ if [ "" != "${address}" ]; then
+ flags="-b ${address}"
+ else
+ address='*'
+ fi
+ for port in ${ports}; do
+ echo "balance at ${address}:${port}"
+ "${command}" ${flags} -c show ${port}
+ done
+ done
+ fi
+}
+
+# set defaults
+
+balance_enable=${balance_enable:-"NO"}
+
+load_rc_config $name
+run_rc_command "$1"
diff --git a/net/balance/pkg-descr b/net/balance/pkg-descr
new file mode 100644
index 000000000000..2d0d1fab3b65
--- /dev/null
+++ b/net/balance/pkg-descr
@@ -0,0 +1,9 @@
+Balance is a simple but powerful generic tcp proxy with round robin load
+balancing and failover mechanisms. Its behaviour can be controlled at runtime
+using a simple command line syntax.
+
+The latest release now supports the definition of channel groups, connection
+counting, and handling. Boosting the power, and versatility of balance, one
+big step further.
+
+WWW: http://www.inlab.de/balance.html
diff --git a/net/balance/pkg-plist b/net/balance/pkg-plist
new file mode 100644
index 000000000000..41533736cd21
--- /dev/null
+++ b/net/balance/pkg-plist
@@ -0,0 +1,2 @@
+bin/balance
+man/man1/balance.1.gz