]> granicus.if.org Git - ejabberd/commitdiff
Add firewalling port range definition
authorChristophe Romain <christophe.romain@process-one.net>
Tue, 1 Apr 2008 09:07:29 +0000 (09:07 +0000)
committerChristophe Romain <christophe.romain@process-one.net>
Tue, 1 Apr 2008 09:07:29 +0000 (09:07 +0000)
SVN Revision: 1264

ChangeLog
src/ejabberdctl.cfg.example
src/ejabberdctl.template

index e9f4dc1d516e8fab68409b5f86279e379426c67d..ec4ad801e0e219aa99010f2d5a36d85acdc70091 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-04-01  Christophe Romain <christophe.romain@process-one.net>
+
+       * src/ejabberdctl.template: Add firewalling port range definition
+       * src/ejabberdctl.cfg.example: Likewise
+
 2008-03-31  Badlop  <badlop@process-one.net>
 
        * src/ejabberd_listener.erl: Remove code of the unused listening
index 91f50346de769f5a8846ca96c464f5f0ef7524dc..661d8ce771f6a0a4741e35c6711d86ef1355bca5 100644 (file)
 #
 #ERL_MAX_PORTS=32000
 
+# FIREWALL_WINDOW: Range of allowed ports to pass through a firewall
+#
+# If Ejabberd is configured to run in cluster, and a firewall is blocking ports,
+# it's possible to make Erlang use a defined range of port (instead of dynamic ports)
+# for node communication.
+#
+# Default: not defined
+# Example: 4200-4210
+#
+#FIREWALL_WINDOW=
+
 # PROCESSES: Maximum number of Erlang processes
 #
 # Erlang consumes a lot of lightweight processes. If there is a lot of activity
index f50b98580a7de5598c06c79a1eca624961104f16..0ff23bc09bc78a995f405a0cbf89cea31969a5fb 100644 (file)
@@ -39,7 +39,13 @@ done
 NAME=-name
 [ "$ERLANG_NODE" = "${ERLANG_NODE%.*}" ] && NAME=-sname
 
-ERLANG_OPTS="+K $POLL -smp $SMP +P $ERL_PROCESSES"
+if [ "$FIREWALL_WINDOW" = "" ] ; then
+    KERNEL_OPTS=""
+else
+    KERNEL_OPTS="-kernel inet_dist_listen_min ${FIREWALL_WINDOW%-*} net_dist_listen_max ${FIREWALL_WINDOW#*-}"
+fi
+
+ERLANG_OPTS="+K $POLL -smp $SMP +P $ERL_PROCESSES $KERNEL_OPTS"
 
 # define additional environment variables
 EJABBERD_EBIN=$ROOTDIR/var/lib/ejabberd/ebin