Index: head/net-im/jabberd/Makefile =================================================================== --- head/net-im/jabberd/Makefile (revision 482836) +++ head/net-im/jabberd/Makefile (revision 482837) @@ -1,154 +1,152 @@ # Created by: Dmitry Sivachenko # $FreeBSD$ PORTNAME= jabberd PORTVERSION= 2.6.1 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= net-im MASTER_SITES= https://github.com/jabberd2/jabberd2/releases/download/${PORTNAME}-${DISTVERSION}/ \ LOCAL/matthew/${PORTNAME} MAINTAINER= mm@FreeBSD.org COMMENT= Online presence and instant messaging server LICENSE= GPLv2 LIB_DEPENDS= libexpat.so:textproc/expat2 \ libgsasl.so:security/gsasl \ libidn.so:dns/libidn \ libudns.so:dns/udns -BUILD_DEPENDS= autoconf-archive>=0:devel/autoconf-archive - USES= autoreconf compiler:c11 iconv libtool perl5 ssl tar:xz OPTIONS_DEFINE= MYSQL PGSQL LDAP BDB SQLITE PAM PIPE ANON FS DEBUG REQUIRES \ DOCS SUPERSEDED EXPERIMENTAL OPTIONS_DEFAULT=MYSQL DEBUG OPTIONS_SUB= yes GNU_CONFIGURE= yes INSTALL_TARGET= install-strip USE_PERL5= run USE_RC_SUBR= jabberd USE_LDCONFIG= ${PREFIX}/lib/jabberd CONFIGURE_ARGS= --localstatedir=/var \ --sysconfdir=${PREFIX}/etc/jabberd \ --enable-ssl --enable-mio=kqueue \ --disable-tests \ --with-sasl=gsasl \ --with-extra-include-path="${LOCALBASE}/include ${EIP}" \ --with-extra-library-path="${LOCALBASE}/lib ${ELP}" JABBER_USER= jabber JABBER_GROUP= jabber USERS= ${JABBER_USER} GROUPS= ${JABBER_GROUP} JABBER_ETCDIR= "${PREFIX}/etc/jabberd" JABBER_RUNDIR= "/var/jabberd" PLIST_SUB+= JABBER_USER=${JABBER_USER} \ JABBER_GROUP=${JABBER_GROUP} \ JABBER_ETCDIR="${JABBER_ETCDIR}" \ JABBER_RUNDIR="${JABBER_RUNDIR}" SUB_LIST+= JABBER_USER=${JABBER_USER} \ JABBER_RUNDIR="${JABBER_RUNDIR}" \ PERL="${PERL}" PORTDOCS= * DOCFILES= AUTHORS ChangeLog NEWS README README.config \ README.protocol TODO _REQUIRE= LOGIN ELP+= ${OPENSSLLIB} EIP+= ${OPENSSLINC} DEBUG_CONFIGURE_ENABLE= debug PGSQL_USES= pgsql PGSQL_CONFIGURE_ENABLE= pgsql SQLITE_CONFIGURE_ENABLE=sqlite SQLITE_LIB_DEPENDS= libsqlite3.so:databases/sqlite3 MYSQL_USE= MYSQL=yes MYSQL_CONFIGURE_ENABLE= mysql BDB_USES= bdb BDB_CONFIGURE_ENABLE= db BDB_CONFIGURE_ON= --oldincludedir=/nonexistant LDAP_USE= OPENLDAP=yes LDAP_CONFIGURE_ENABLE= ldap FS_CONFIGURE_ENABLE= fs FS_DESC= Filesystem storage (only for testing) PAM_CONFIGURE_ENABLE= pam PIPE_CONFIGURE_ENABLE= pipe PIPE_DESC= Enable pipe (auth/reg) ANON_CONFIGURE_ENABLE= anon ANON_DESC= Enable anonymous (auth/reg) SUPERSEDED_CONFIGURE_ENABLE= superseded SUPERSEDED_DESC= Enable superseded features (ns_TIME) EXPERIMENTAL_CONFIGURE_ENABLE= experimental EXPERIMENTAL_DESC= Enable experimental features (TLS-Everywhere) .include .if ${PORT_OPTIONS:MPGSQL} _REQUIRE+= postgresql .endif .if ${PORT_OPTIONS:MMYSQL} EIP+=${LOCALBASE}/include/mysql ELP+=${LOCALBASE}/lib/mysql _REQUIRE+= mysql .endif .if ${PORT_OPTIONS:MBDB} EIP+=${BDB_INCLUDE_DIR} ELP+=${BDB_LIB_DIR} .endif .if ${PORT_OPTIONS:MLDAP} _REQUIRE+= slapd .endif .if ${PORT_OPTIONS:MREQUIRES} SUB_LIST+= REQUIRE="${_REQUIRE}" .else SUB_LIST+= REQUIRE="LOGIN" .endif REQUIRES_DESC= Add backend requires to startup script post-patch: .for FILE in c2s.xml jabberd.cfg router-filter.xml router-users.xml \ router.xml s2s.xml sm.xml templates/roster.xml @${MV} ${WRKSRC}/etc/${FILE}.dist.in ${WRKSRC}/etc/${FILE}.sample.in .endfor post-install: .for DIR in db logs pid @${MKDIR} ${STAGEDIR}${JABBER_RUNDIR}/${DIR} .endfor @${CHMOD} -R go= ${STAGEDIR}${JABBER_RUNDIR} .if ${PORT_OPTIONS:MDOCS} @${MKDIR} ${STAGEDIR}${DOCSDIR} .for FILE in ${DOCFILES} ${INSTALL_DATA} ${WRKSRC}/${FILE} ${STAGEDIR}${DOCSDIR} .endfor .for FILE in db-setup.mysql db-setup.pgsql db-setup.sqlite ${INSTALL_DATA} ${WRKSRC}/tools/${FILE} ${STAGEDIR}${DOCSDIR} .endfor .endif .include Index: head/net-im/jabberd/files/patch-configure.ac =================================================================== --- head/net-im/jabberd/files/patch-configure.ac (revision 482836) +++ head/net-im/jabberd/files/patch-configure.ac (revision 482837) @@ -1,14 +1,25 @@ --- configure.ac.orig 2017-07-01 15:27:52 UTC +++ configure.ac -@@ -406,9 +406,9 @@ if test "x-$want_ssl" != "x-no" ; then +@@ -74,10 +74,6 @@ if test "x-$want_mio_debug" = "x-yes" ; then + AC_DEFINE(MIO_DEBUG,1,[Define to 1 if you want to enable managed IO debug output.]) + fi + +-# Colorized build output +-AX_CHECK_COMPILE_FLAG([-fdiagnostics-color], [CFLAGS="${CFLAGS} -fdiagnostics-color"], +- [AX_CHECK_COMPILE_FLAG([-fcolor-diagnostics], [CFLAGS="${CFLAGS} -fcolor-diagnostics"])]) +- + # Two-step header checking. First check for headers which don't + # require any other headers. + AC_HEADER_DIRENT +@@ -406,9 +402,9 @@ if test "x-$want_ssl" != "x-no" ; then fi AC_CHECK_HEADERS(openssl/crypto.h) if test "x-$ac_cv_header_openssl_crypto_h" = "x-yes" ; then - AC_CHECK_LIB(crypto, CRYPTO_lock) + AC_CHECK_LIB(crypto, HMAC_Update) fi - if test "x-$ac_cv_lib_crypto_CRYPTO_lock" = "x-yes" ; then + if test "x-$ac_cv_lib_crypto_HMAC_Update" = "x-yes" ; then AC_CHECK_HEADERS(openssl/ssl.h) fi if test "x-$ac_cv_header_openssl_ssl_h" = "x-yes" ; then Index: head/net-im/jabberd/files/patch-storage__authreg_mysql.c =================================================================== --- head/net-im/jabberd/files/patch-storage__authreg_mysql.c (revision 482836) +++ head/net-im/jabberd/files/patch-storage__authreg_mysql.c (revision 482837) @@ -1,29 +1,29 @@ ---- storage/authreg_mysql.c.orig 2018-10-22 23:49:34 UTC +--- storage/authreg_mysql.c.orig 2016-05-22 15:52:07 UTC +++ storage/authreg_mysql.c -@@ -489,6 +489,8 @@ DLLEXPORT int ar_init(authreg_t ar) { +@@ -487,6 +487,8 @@ DLLEXPORT int ar_init(authreg_t ar) { MYSQL *conn; mysqlcontext_t mysqlcontext; int fail = 0; + /* enable reconnect */ + my_bool reconnect= 1; /* configure the database context with field names and SQL statements */ mysqlcontext = (mysqlcontext_t) malloc( sizeof( struct mysqlcontext_st ) ); -@@ -620,6 +622,7 @@ DLLEXPORT int ar_init(authreg_t ar) { +@@ -618,6 +620,7 @@ DLLEXPORT int ar_init(authreg_t ar) { mysql_options(conn, MYSQL_READ_DEFAULT_GROUP, "jabberd"); mysql_options(conn, MYSQL_SET_CHARSET_NAME, "utf8"); + mysql_options(conn, MYSQL_OPT_RECONNECT, (void *)&reconnect); /* connect with CLIENT_INTERACTIVE to get a (possibly) higher timeout value than default */ if(mysql_real_connect(conn, host, user, pass, dbname, atoi(port), NULL, CLIENT_INTERACTIVE) == NULL) { -@@ -628,9 +631,6 @@ DLLEXPORT int ar_init(authreg_t ar) { +@@ -626,9 +629,6 @@ DLLEXPORT int ar_init(authreg_t ar) { } mysql_query(conn, "SET NAMES 'utf8'"); - - /* Set reconnect flag to 1 (set to 0 by default from mysql 5 on) */ - conn->reconnect = 1; ar->user_exists = _ar_mysql_user_exists; if (MPC_PLAIN == mysqlcontext->password_type) {