(long overdue) import of ejabberd 1.1.3

ejabberd is a free and open source instant messaging server written in
Erlang. ejabberd is cross-platform, distributed, fault-tolerant, and
based on open standards to achieve real-time communication
(Jabber/XMPP).

submitted by viq <viq at viq.ath.cx> a long time ago,
with tweaks by various people on ports@, martynas@ and me

ok martynas@
This commit is contained in:
jasper 2007-09-17 21:19:06 +00:00
parent a7a7925bf6
commit 6eceb3c9e1
8 changed files with 312 additions and 0 deletions

82
net/ejabberd/Makefile Normal file
View File

@ -0,0 +1,82 @@
# $OpenBSD: Makefile,v 1.1.1.1 2007/09/17 21:19:06 jasper Exp $
COMMENT= jabber server written in Erlang
DISTNAME= ejabberd-1.1.3
CATEGORIES= net chat
HOMEPAGE= http://ejabberd.jabber.ru/
# GPL
PERMIT_PACKAGE_CDROM= Yes
PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_DISTFILES_FTP= Yes
WANTLIB= expat crypto ssl z
MASTER_SITES= http://www.process-one.net/downloads/ejabberd/1.1.3/
MODULES= converters/libiconv
BUILD_DEPENDS= :erlang-*:lang/erlang
RUN_DEPENDS= :erlang-*:lang/erlang
MAKE_FLAGS+= EJABBERDDIR=${PREFIX}/lib/ejabberd \
LOGDIR=${EJLOGDIR} \
ETCDIR=${SYSCONFDIR}/ejabberd
FAKE_FLAGS+= EJABBERDDIR=${WRKINST}/${PREFIX}/lib/ejabberd \
LOGDIR=${WRKINST}${EJLOGDIR} \
ETCDIR=${WRKINST}/${PREFIX}/share/examples/ejabberd
USE_X11= Yes
USE_GMAKE= Yes
CONFIGURE_STYLE= gnu
SHARED_ONLY= Yes
CONFIGURE_ARGS+= --with-expat=${X11BASE} \
--enable-mod_pubsub \
--enable-mod_irc \
--enable-mod_muc \
--enable-eldap \
--enable-web \
--enable-tls \
--enable-odbc \
--enable-ejabberd_zlib \
--disable-roster-gateway-workaround \
--disable-mssql
CONFIGURE_ENV= HOME=${WRKDIST}
JABBERDUSER= _ejabberd
JABBERDGROUP= _ejabberd
EJDBDIR= /var/db/ejabberd
EJLOGDIR= /var/log/ejabberd
WRKSRC= ${WRKDIST}/src
NO_REGRESS= Yes
post-install:
${INSTALL_SCRIPT} ${FILESDIR}/ejabberd ${PREFIX}/sbin/
${INSTALL_SCRIPT} ${FILESDIR}/ejabberdctl ${PREFIX}/bin/
${INSTALL_DATA} ${FILESDIR}/ejabberd.inetrc ${PREFIX}/share/examples/ejabberd/
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/ejabberd
cd ${WRKDIST}/examples && \
find . -type d -exec ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/ejabberd/{} \; && \
find . ! -type d -exec ${INSTALL_DATA} {} ${PREFIX}/share/examples/ejabberd/{} \;
${INSTALL_DATA} ${WRKSRC}/odbc/pg.sql ${PREFIX}/share/examples/ejabberd/
${INSTALL_DATA} ${WRKSRC}/odbc/mysql.sql ${PREFIX}/share/examples/ejabberd/
cd ${WRKDIST}/doc && \
find . -type d -exec ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/ejabberd/{} \; && \
find . -name '*.html' -exec ${INSTALL_DATA} {} ${PREFIX}/share/doc/ejabberd/{} \; && \
find . -name '*.png' -exec ${INSTALL_DATA} {} ${PREFIX}/share/doc/ejabberd/{} \;
perl -pi -e "s,!!LOCALBASE!!,${LOCALBASE},g;" \
-e "s,!!SYSCONFDIR!!,${SYSCONFDIR},g;" \
-e "s,!!EJDBDIR!!,${EJDBDIR},g;" \
-e "s,!!EJLOGDIR!!,${EJLOGDIR},g;" \
-e "s,!!JABBERDUSER!!,${JABBERDUSER},g;" \
${PREFIX}/sbin/ejabberd
perl -pi -e "s,!!LOCALBASE!!,${LOCALBASE},g;" \
-e "s,!!EJDBDIR!!,${EJDBDIR},g;" \
-e "s,!!JABBERDUSER!!,${JABBERDUSER},g;" \
${PREFIX}/bin/ejabberdctl
.include <bsd.port.mk>

5
net/ejabberd/distinfo Normal file
View File

@ -0,0 +1,5 @@
MD5 (ejabberd-1.1.3.tar.gz) = vbOZZaFHUG/BlNWigRcXKg==
RMD160 (ejabberd-1.1.3.tar.gz) = mbTHOuKe+YFPXFcvjjs6gtlg9e4=
SHA1 (ejabberd-1.1.3.tar.gz) = ZrAMpS+k9PTgl7Dol8O1ouRSZgM=
SHA256 (ejabberd-1.1.3.tar.gz) = O4rGdnP6bAi8JTgtPpkXHrxx1HWYmetacw5lEXJW5wM=
SIZE (ejabberd-1.1.3.tar.gz) = 826057

31
net/ejabberd/files/ejabberd Executable file
View File

@ -0,0 +1,31 @@
#!/bin/sh
PREFIX="!!LOCALBASE!!"
EJLIBDIR="${PREFIX}/lib/ejabberd"
EJDBDIR="!!EJDBDIR!!"
EJLOGDIR="!!EJLOGDIR!!"
CONFDIR="!!SYSCONFDIR!!/ejabberd"
configfile="${CONFDIR}/ejabberd.cfg"
detached="-detached"
while getopts fc: opt
do
case "$opt" in
c) configfile="$OPTARG";;
f) detached="";;
\?) # unknown flag
echo >&2 \
"usage: $0 [-c configfile] [-f]"
exit 1;;
esac
done
shift `expr $OPTIND - 1`
exec su -l !!JABBERDUSER!! ${PREFIX}/bin/erl \
-kernel inetrc \"${CONFDIR}/ejabberd.inetrc\" \
-noinput -pa ${EJLIBDIR}/ebin \
-sname ejabberd -s ejabberd \
-ejabberd config \"${configfile}\" \
log_path \"${EJLOGDIR}/ejabberd.log\" \
-sasl sasl_error_logger \{file,\"${EJLOGDIR}/sasl.log\"\} \
-mnesia dir \"$EJDBDIR\" ${detached}

View File

@ -0,0 +1 @@
{file, resolv, "/etc/resolv.conf"}.

27
net/ejabberd/files/ejabberdctl Executable file
View File

@ -0,0 +1,27 @@
#!/bin/sh
PREFIX="!!LOCALBASE!!"
EJLIBDIR="${PREFIX}/lib/ejabberd"
ID=`id -g`
EJID=`id -g !!JABBERDUSER!!`
export HOME="!!EJDBDIR!!"
if [ "$ID" -ne 0 -a "$ID" -ne "$EJID" ]; then
echo "this command can only be run by root and the _ejabberd user" >&2
exit 1
fi
if [ X"$1" == "X" ]; then
echo "not enough arguments" >&2
exit 2
fi
echo "$1" | grep -q "@"
if [ $? -ne 0 ]; then
nodename="ejabberd@`hostname -s`"
else
nodename=""
fi
if [ $ID -eq 0 ]; then
exec su -l !!JABBERDUSER!! ${PREFIX}/bin/erl -noinput -pa ${EJLIBDIR}/ebin -sname ejabberdctl -s ejabberd_ctl -extra $nodename $@
else
exec ${PREFIX}/bin/erl -noinput -pa ${EJLIBDIR}/ebin -sname ejabberdctl -s ejabberd_ctl -extra $nodename $@
fi

4
net/ejabberd/pkg/DESCR Normal file
View File

@ -0,0 +1,4 @@
ejabberd is a free and open source instant messaging server written in
Erlang. ejabberd is cross-platform, distributed, fault-tolerant, and
based on open standards to achieve real-time communication
(Jabber/XMPP).

View File

@ -0,0 +1,6 @@
@comment $OpenBSD: PFRAG.shared,v 1.1.1.1 2007/09/17 21:19:06 jasper Exp $
lib/ejabberd/priv/lib/ejabberd_zlib_drv.so
lib/ejabberd/priv/lib/expat_erl.so
lib/ejabberd/priv/lib/iconv_erl.so
lib/ejabberd/priv/lib/stringprep_drv.so
lib/ejabberd/priv/lib/tls_drv.so

156
net/ejabberd/pkg/PLIST Normal file
View File

@ -0,0 +1,156 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2007/09/17 21:19:06 jasper Exp $
@newgroup _ejabberd:594
@newuser _ejabberd:594:_ejabberd:daemon:ejabberd account:/var/db/ejabberd:/bin/sh
%%SHARED%%
bin/ejabberdctl
lib/ejabberd/
lib/ejabberd/ebin/
lib/ejabberd/ebin/ELDAPv3.beam
lib/ejabberd/ebin/XmppAddr.beam
lib/ejabberd/ebin/acl.beam
lib/ejabberd/ebin/adhoc.beam
lib/ejabberd/ebin/cyrsasl.beam
lib/ejabberd/ebin/cyrsasl_anonymous.beam
lib/ejabberd/ebin/cyrsasl_digest.beam
lib/ejabberd/ebin/cyrsasl_plain.beam
lib/ejabberd/ebin/ejabberd.app
lib/ejabberd/ebin/ejabberd.beam
lib/ejabberd/ebin/ejabberd_admin.beam
lib/ejabberd/ebin/ejabberd_app.beam
lib/ejabberd/ebin/ejabberd_auth.beam
lib/ejabberd/ebin/ejabberd_auth_anonymous.beam
lib/ejabberd/ebin/ejabberd_auth_external.beam
lib/ejabberd/ebin/ejabberd_auth_internal.beam
lib/ejabberd/ebin/ejabberd_auth_ldap.beam
lib/ejabberd/ebin/ejabberd_auth_odbc.beam
lib/ejabberd/ebin/ejabberd_c2s.beam
lib/ejabberd/ebin/ejabberd_config.beam
lib/ejabberd/ebin/ejabberd_ctl.beam
lib/ejabberd/ebin/ejabberd_hooks.beam
lib/ejabberd/ebin/ejabberd_http.beam
lib/ejabberd/ebin/ejabberd_http_poll.beam
lib/ejabberd/ebin/ejabberd_listener.beam
lib/ejabberd/ebin/ejabberd_local.beam
lib/ejabberd/ebin/ejabberd_logger_h.beam
lib/ejabberd/ebin/ejabberd_odbc.beam
lib/ejabberd/ebin/ejabberd_odbc_sup.beam
lib/ejabberd/ebin/ejabberd_receiver.beam
lib/ejabberd/ebin/ejabberd_router.beam
lib/ejabberd/ebin/ejabberd_s2s.beam
lib/ejabberd/ebin/ejabberd_s2s_in.beam
lib/ejabberd/ebin/ejabberd_s2s_out.beam
lib/ejabberd/ebin/ejabberd_service.beam
lib/ejabberd/ebin/ejabberd_sm.beam
lib/ejabberd/ebin/ejabberd_sup.beam
lib/ejabberd/ebin/ejabberd_tmp_sup.beam
lib/ejabberd/ebin/ejabberd_update.beam
lib/ejabberd/ebin/ejabberd_web.beam
lib/ejabberd/ebin/ejabberd_web_admin.beam
lib/ejabberd/ebin/ejabberd_zlib.beam
lib/ejabberd/ebin/ejd2odbc.beam
lib/ejabberd/ebin/eldap.beam
lib/ejabberd/ebin/eldap_filter.beam
lib/ejabberd/ebin/extauth.beam
lib/ejabberd/ebin/gen_iq_handler.beam
lib/ejabberd/ebin/gen_mod.beam
lib/ejabberd/ebin/iconv.beam
lib/ejabberd/ebin/idna.beam
lib/ejabberd/ebin/jd2ejd.beam
lib/ejabberd/ebin/jlib.beam
lib/ejabberd/ebin/mod_adhoc.beam
lib/ejabberd/ebin/mod_announce.beam
lib/ejabberd/ebin/mod_configure.beam
lib/ejabberd/ebin/mod_configure2.beam
lib/ejabberd/ebin/mod_disco.beam
lib/ejabberd/ebin/mod_echo.beam
lib/ejabberd/ebin/mod_irc.beam
lib/ejabberd/ebin/mod_irc_connection.beam
lib/ejabberd/ebin/mod_last.beam
lib/ejabberd/ebin/mod_last_odbc.beam
lib/ejabberd/ebin/mod_muc.beam
lib/ejabberd/ebin/mod_muc_log.beam
lib/ejabberd/ebin/mod_muc_room.beam
lib/ejabberd/ebin/mod_offline.beam
lib/ejabberd/ebin/mod_offline_odbc.beam
lib/ejabberd/ebin/mod_privacy.beam
lib/ejabberd/ebin/mod_private.beam
lib/ejabberd/ebin/mod_pubsub.beam
lib/ejabberd/ebin/mod_register.beam
lib/ejabberd/ebin/mod_roster.beam
lib/ejabberd/ebin/mod_roster_odbc.beam
lib/ejabberd/ebin/mod_service_log.beam
lib/ejabberd/ebin/mod_shared_roster.beam
lib/ejabberd/ebin/mod_stats.beam
lib/ejabberd/ebin/mod_time.beam
lib/ejabberd/ebin/mod_vcard.beam
lib/ejabberd/ebin/mod_vcard_ldap.beam
lib/ejabberd/ebin/mod_vcard_odbc.beam
lib/ejabberd/ebin/mod_version.beam
lib/ejabberd/ebin/odbc_queries.beam
lib/ejabberd/ebin/randoms.beam
lib/ejabberd/ebin/sha.beam
lib/ejabberd/ebin/shaper.beam
lib/ejabberd/ebin/stringprep.beam
lib/ejabberd/ebin/tls.beam
lib/ejabberd/ebin/translate.beam
lib/ejabberd/ebin/xml.beam
lib/ejabberd/ebin/xml_stream.beam
lib/ejabberd/priv/
lib/ejabberd/priv/lib/
lib/ejabberd/priv/msgs/
lib/ejabberd/priv/msgs/cs.msg
lib/ejabberd/priv/msgs/de.msg
lib/ejabberd/priv/msgs/es.msg
lib/ejabberd/priv/msgs/fr.msg
lib/ejabberd/priv/msgs/nl.msg
lib/ejabberd/priv/msgs/pl.msg
lib/ejabberd/priv/msgs/pt-br.msg
lib/ejabberd/priv/msgs/pt.msg
lib/ejabberd/priv/msgs/ru.msg
lib/ejabberd/priv/msgs/sk.msg
lib/ejabberd/priv/msgs/sv.msg
lib/ejabberd/priv/msgs/uk.msg
sbin/ejabberd
share/doc/ejabberd/
share/doc/ejabberd/dev.html
share/doc/ejabberd/disco.png
share/doc/ejabberd/discorus.png
share/doc/ejabberd/features.html
share/doc/ejabberd/guide.html
share/doc/ejabberd/logo.png
share/doc/ejabberd/webadmmain.png
share/doc/ejabberd/webadmmainru.png
share/doc/ejabberd/yozhikheader.png
share/examples/ejabberd/
@sample ${SYSCONFDIR}/ejabberd/
share/examples/ejabberd/ejabberd.cfg
@sample ${SYSCONFDIR}/ejabberd/ejabberd.cfg
share/examples/ejabberd/ejabberd.inetrc
@sample ${SYSCONFDIR}/ejabberd/ejabberd.inetrc
share/examples/ejabberd/extauth/
share/examples/ejabberd/extauth/check_pass_null.pl
share/examples/ejabberd/mtr/
share/examples/ejabberd/mtr/ejabberd
share/examples/ejabberd/mtr/ejabberd-netbsd.sh
share/examples/ejabberd/mtr/ejabberd.cfg
share/examples/ejabberd/mysql.sql
share/examples/ejabberd/pg.sql
share/examples/ejabberd/transport-configs/
share/examples/ejabberd/transport-configs/configs/
share/examples/ejabberd/transport-configs/configs/aim-transport.xml
share/examples/ejabberd/transport-configs/configs/ile.xml
share/examples/ejabberd/transport-configs/configs/jabber-gg-transport.xml
share/examples/ejabberd/transport-configs/configs/jit.xml
share/examples/ejabberd/transport-configs/configs/msn-transport.xml
share/examples/ejabberd/transport-configs/configs/yahoo-transport-2.xml
share/examples/ejabberd/transport-configs/init-scripts/
share/examples/ejabberd/transport-configs/init-scripts/aim-transport
share/examples/ejabberd/transport-configs/init-scripts/ile
share/examples/ejabberd/transport-configs/init-scripts/jabber-gg-transport
share/examples/ejabberd/transport-configs/init-scripts/jit
share/examples/ejabberd/transport-configs/init-scripts/msn-transport
share/examples/ejabberd/transport-configs/init-scripts/yahoo-transport-2
@owner _ejabberd
@group _ejabberd
@sample /var/log/ejabberd/
@sample /var/db/ejabberd/