summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Shchepin <alexey@process-one.net>2003-09-04 18:17:39 +0000
committerAlexey Shchepin <alexey@process-one.net>2003-09-04 18:17:39 +0000
commit8d260c02fba439fd870cc3e26307dd0e3ee17f44 (patch)
tree6d7e09e9045cf136f19d27e891991adcc8bb8238
parent* src/ejabberd_s2s_in.erl: Fixed "id" attribute processing (diff)
* examples/mtr/*: Example config and scripts for NetBSD (thanks to
Marshall T. Rose) SVN Revision: 136
-rw-r--r--ChangeLog5
-rw-r--r--examples/mtr/ejabberd73
-rw-r--r--examples/mtr/ejabberd-netbsd.sh81
-rw-r--r--examples/mtr/ejabberd.cfg70
4 files changed, 229 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 0275a27c..29774dfd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2003-09-04 Alexey Shchepin <alexey@sevcom.net>
+
+ * examples/mtr/*: Example config and scripts for NetBSD (thanks to
+ Marshall T. Rose)
+
2003-09-03 Alexey Shchepin <alexey@sevcom.net>
* src/ejabberd_s2s_in.erl: Fixed "id" attribute processing
diff --git a/examples/mtr/ejabberd b/examples/mtr/ejabberd
new file mode 100644
index 00000000..2e95ae69
--- /dev/null
+++ b/examples/mtr/ejabberd
@@ -0,0 +1,73 @@
+#!/bin/sh
+#
+# PROVIDE: ejabberd
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+
+HOME=/usr/pkg/jabber D=/usr/pkg/jabber/ejabberd export HOME
+
+name="ejabberd"
+rcvar=$name
+
+if [ -r /etc/rc.conf ]
+then
+ . /etc/rc.conf
+else
+ eval ${rcvar}=YES
+fi
+
+# $flags from environment overrides ${rcvar}_flags
+if [ -n "${flags}" ]
+then
+ eval ${rcvar}_flags="${flags}"
+fi
+
+checkyesno()
+{
+ eval _value=\$${1}
+ case $_value in
+ [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) return 0 ;;
+ [Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0) return 1 ;;
+ *)
+ echo "\$${1} is not set properly."
+ return 1
+ ;;
+ esac
+}
+
+cmd=${1:-start}
+case ${cmd} in
+force*)
+ cmd=${cmd#force}
+ eval ${rcvar}=YES
+ ;;
+esac
+
+if checkyesno ${rcvar}
+then
+else
+ exit 0
+fi
+
+case ${cmd} in
+start)
+ if [ -x $D/src ]; then
+ echo "Starting ${name}."
+ cd $D/src
+ su jabber -c "/usr/pkg/bin/erl -sname ejabberd -s ejabberd -heart -detached &" \
+ 1>/dev/null 2>&1
+ fi
+ ;;
+stop)
+ echo "rpc:call('ejabberd@`hostname -s`', init, stop, [])." | \
+ su jabber -c "erl -sname ejabberdstop"
+ ;;
+restart)
+ echo "rpc:call('ejabberd@`hostname -s`', init, restart, [])." | \
+ su jabber -c "erl -sname ejabberdrestart"
+ ;;
+*)
+ echo "Usage: $0 {start|stop|restart}"
+ exit 1
+esac
diff --git a/examples/mtr/ejabberd-netbsd.sh b/examples/mtr/ejabberd-netbsd.sh
new file mode 100644
index 00000000..9896c9bc
--- /dev/null
+++ b/examples/mtr/ejabberd-netbsd.sh
@@ -0,0 +1,81 @@
+#!/bin/sh
+
+echo '1. fetch, compile, and install erlang'
+
+if [ ! pkg_info erlang 1>/dev/null 2>&1 ]; then
+ cd /usr/pkgsrc/lang/erlang
+ make fetch-list|sh
+ make
+ make install
+fi
+if pkg_info erlang | grep -q erlang-9.1nb1; then
+else
+ echo "erlang-9.1nb1 not installed" 1>&2
+ exit 1
+fi
+
+
+echo '2. install crypt_drv.so'
+
+if [ ! -d /usr/pkg/lib/erlang/lib/crypto-1.1.2.1/priv/lib ] ; then
+ mkdir -p /usr/pkg/lib/erlang/lib/crypto-1.1.2.1/priv/lib
+fi
+if [ ! -f /usr/pkg/lib/erlang/lib/crypto-1.1.2.1/priv/lib/crypto_drv.so ]; then
+ cp work/otp*/lib/crypto/priv/*/*/crypto_drv.so \
+ /usr/pkg/lib/erlang/lib/crypto-1.1.2.1/priv/lib
+fi
+
+
+echo '3. compile and install elibcrypto.so'
+
+if [ ! -f /usr/pkg/lib/erlang/lib/crypto-1.1.2.1/priv/lib/elibcrypto.so ]; then
+cd /usr/pkgsrc/lang/erlang/work/otp_src_R9B-1/lib/crypto/c_src
+ld -r -u CRYPTO_set_mem_functions -u MD5 -u MD5_Init -u MD5_Update \
+ -u MD5_Final -u SHA1 -u SHA1_Init -u SHA1_Update -u SHA1_Final \
+ -u des_set_key -u des_ncbc_encrypt -u des_ede3_cbc_encrypt \
+ -L/usr/lib -lcrypto -o ../priv/obj/i386--netbsdelf/elibcrypto.o
+cc -shared \
+ -L/usr/pkgsrc/lang/erlang/work/otp_src_R9B-1/lib/erl_interface/obj/i386--netbsdelf \
+ -o ../priv/obj/i386--netbsdelf/elibcrypto.so \
+ ../priv/obj/i386--netbsdelf/elibcrypto.o -L/usr/lib -lcrypto
+cp ../priv/obj/i386--netbsdelf/elibcrypto.so \
+ /usr/pkg/lib/erlang/lib/crypto-1.1.2.1/priv/lib
+fi
+
+
+echo '4. compile and install ssl_esock'
+
+if [ ! -f /usr/pkg/lib/erlang/lib/ssl-2.3.5/priv/bin/ssl_esock ]; then
+ cd /usr/pkg/lib/erlang/lib/ssl-2.3.5/priv/obj/
+ make
+fi
+
+
+echo '5. initial ejabberd configuration'
+
+cd /usr/pkg/jabber/ejabberd/src
+./configure
+
+
+echo '6. edit ejabberd Makefiles'
+
+for M in Makefile mod_*/Makefile; do
+ if [ ! -f $M.orig ]; then
+ mv $M $M.orig
+ sed -e s%/usr/local%/usr/pkg%g < $M.orig > $M
+ fi
+done
+
+
+echo '7. compile ejabberd'
+
+gmake
+for A in mod_irc mod_muc mod_pubsub; do
+ (cd $A; gmake)
+done
+
+
+echo ''
+echo 'now edit ejabberd.cfg'
+echo ''
+echo 'to start ejabberd: erl -sname ejabberd -s ejabberd'
diff --git a/examples/mtr/ejabberd.cfg b/examples/mtr/ejabberd.cfg
new file mode 100644
index 00000000..89ca966e
--- /dev/null
+++ b/examples/mtr/ejabberd.cfg
@@ -0,0 +1,70 @@
+% $Id$
+
+%override_acls.
+
+{acl, admin, {user, "mrose"}}.
+{acl, admin, {user, "test"}}.
+{acl, admin, {user, "mrose", "jabber.dbc.mtview.ca.us"}}.
+{acl, admin, {user, "test", "jabber.dbc.mtview.ca.us"}}.
+
+{acl, jabberorg, {server, "jabber.org"}}.
+{acl, mrose, {user, "mrose", "jabber.dbc.mtview.ca.us"}}.
+
+
+{shaper, normal, {maxrate, 1000}}.
+
+
+{access, disco_admin, [{allow, admin},
+ {deny, all}]}.
+
+{access, configure, [{allow, admin}]}.
+
+{access, c2s, [{deny, blocked},
+ {allow, all}]}.
+
+
+{access, c2s_shaper, [{none, admin},
+ {normal, all}]}.
+
+{access, muc_admin, [{allow, admin}]}.
+
+
+{host, "jabber.dbc.mtview.ca.us"}.
+
+{listen, [{5222, ejabberd_c2s, [{access, c2s},
+ {shaper, c2s_shaper}]},
+ {5223, ejabberd_c2s, [{access, c2s},
+ {ssl, [{certfile, "/etc/openssl/certs/ejabberd.pem"}]}]},
+ {5269, ejabberd_s2s_in, []},
+ {8888, ejabberd_service, [{host,
+ "conference.jabber.dbc.mtview.ca.us",
+ [{password, "asdqwe"}]}]}
+ ]}.
+
+% This value (5569) is only for debugging, must be 5269
+{outgoing_s2s_port, 5269}.
+
+{modules, [
+ {mod_register, []},
+ {mod_roster, []},
+ {mod_privacy, []},
+ {mod_configure, []},
+ {mod_disco, []},
+ {mod_stats, []},
+ {mod_vcard, []},
+ {mod_offline, []},
+ {mod_echo, [{host, "echo.jabber.dbc.mtview.ca.us"}]},
+ {mod_private, []},
+% {mod_irc, []},
+ {mod_muc, []},
+ {mod_pubsub, []},
+ {mod_time, [{iqdisc, no_queue}]},
+ {mod_version, []}
+ ]}.
+
+
+
+
+% Local Variables:
+% mode: erlang
+% End: