Mercurial > hgrepos > FreeBSD > ports > net > turnserver
changeset 1:1a06bf451a04 origin
ADD: net/turnserver: the original upstream version 4.5.1.1_2 from the ports tree as of 2020-03-26
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Thu, 26 Mar 2020 21:26:40 +0100 |
| parents | |
| children | a1a8a51bb1ac f271ad092ec7 |
| files | Makefile distinfo files/pkg-message.in files/turnserver.in pkg-descr pkg-plist |
| diffstat | 6 files changed, 307 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile Thu Mar 26 21:26:40 2020 +0100 @@ -0,0 +1,146 @@ +# $FreeBSD: head/net/turnserver/Makefile 507877 2019-08-02 13:30:40Z jbeich $ + +PORTNAME= turnserver +PORTVERSION= 4.5.1.1 +PORTREVISION= 2 +CATEGORIES= net +MASTER_SITES= http://turnserver.open-sys.org/downloads/extradocs/:xdocs \ + http://coturn.net/turnserver/extradocs/:xdocs +PKGNAMEPREFIX= +DISTFILES= turn.extra.docs-2.0.0.1.tar.gz:xdocs + +MAINTAINER= bhughes@FreeBSD.org +COMMENT= STUN/TURN Server; IPv6, DTLS support; RFCs 5389, 5766, 6062, 6156 + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +LIB_DEPENDS= libevent.so:devel/libevent + +USES= gettext-runtime perl5 shebangfix ssl +SHEBANG_FILES= examples/scripts/restapi/shared_secret_maintainer.pl +HAS_CONFIGURE= yes +CONFIGURE_ENV+= PTHREAD_LIBS=-pthread TURN_DISABLE_RPATH=1 +# MongoDB support is disabled until devel/mongo-c-driver is updated +CONFIGURE_ENV+= TURN_NO_MONGO=1 +TEST_TARGET= test + +USE_GITHUB= yes +GH_ACCOUNT= coturn +GH_PROJECT= coturn + +SUB_FILES= pkg-message +USE_RC_SUBR= turnserver + +MANPAGES= turnserver.1 turnadmin.1 turnutils.1 turnutils_peer.1 \ + turnutils_stunclient.1 turnutils_uclient.1 coturn.1 \ + turnutils_oauth.1 turnutils_natdiscovery.1 + +DOCS= html TurnNetworks.pdf +PORTREADMEDOCS= LICENSE README.turnserver README.turnadmin README.turnutils INSTALL +PORTDOCS= ${DOCS} ${PORTREADMEDOCS} postinstall.txt schema.sql schema.mongo.sh \ + schema.userdb.redis schema.stats.redis + +_BIN_UTILS= peer stunclient uclient oauth natdiscovery + +_ETC_EXAMPLES= turnserver.conf turn_client_cert.pem \ + turn_client_pkey.pem turn_server_cert.pem turn_server_pkey.pem +_SCRIPT_EXAMPLES= peer.sh \ + basic/relay.sh basic/dos_attack.sh \ + basic/tcp_client_c2c_tcp_relay.sh basic/udp_c2c_client.sh \ + basic/udp_client.sh basic/tcp_client.sh \ + loadbalance/master_relay.sh loadbalance/slave_relay_1.sh loadbalance/slave_relay_2.sh \ + loadbalance/udp_c2c.sh loadbalance/tcp_c2c_tcp_relay.sh \ + longtermsecure/secure_dtls_client.sh longtermsecure/secure_relay.sh \ + longtermsecure/secure_tls_client_cert.sh longtermsecure/secure_dtls_client_cert.sh \ + longtermsecure/secure_relay_cert.sh \ + longtermsecure/secure_tcp_client_c2c_tcp_relay.sh longtermsecure/secure_tcp_client.sh \ + longtermsecure/secure_tls_client_c2c_tcp_relay.sh longtermsecure/secure_tls_client.sh \ + longtermsecure/secure_udp_c2c.sh longtermsecure/secure_udp_client.sh \ + longtermsecure/secure_sctp_client.sh \ + longtermsecure/secure_dos_attack.sh \ + longtermsecuredb/secure_relay_with_db_psql.sh \ + longtermsecuredb/secure_relay_with_db_mysql.sh \ + longtermsecuredb/secure_relay_with_db_mysql_ssl.sh \ + longtermsecuredb/secure_relay_with_db_mongo.sh \ + longtermsecuredb/secure_relay_with_db_redis.sh \ + longtermsecuredb/secure_relay_with_db_sqlite.sh \ + restapi/secure_relay_secret.sh \ + restapi/secure_relay_secret_with_db_mysql.sh \ + restapi/secure_relay_secret_with_db_psql.sh \ + restapi/secure_relay_secret_with_db_redis.sh \ + restapi/secure_relay_secret_with_db_mongo.sh \ + restapi/secure_relay_secret_with_db_sqlite.sh \ + restapi/secure_udp_client_with_secret.sh \ + restapi/secure_relay_secret_with_db_psql.sh \ + restapi/shared_secret_maintainer.pl \ + selfloadbalance/secure_dos_attack.sh \ + selfloadbalance/secure_relay.sh + +OPTIONS_DEFINE= DOCS EXAMPLES MYSQL PGSQL REDIS SQLITE +OPTIONS_DEFAULT= MYSQL PGSQL REDIS SQLITE +OPTIONS_SUB= yes + +MYSQL_DESC= MySQL database support +MYSQL_USES= mysql +MYSQL_CONFIGURE_ENV_OFF= TURN_NO_MYSQL=1 + +PGSQL_DESC= PostgreSQL database support +PGSQL_USES= pgsql +PGSQL_CONFIGURE_ENV_OFF= TURN_NO_PQ=1 + +REDIS_DESC= Redis support for user database and for status and statistics reporting +REDIS_LIB_DEPENDS= libhiredis.so:databases/hiredis +REDIS_CONFIGURE_ENV_OFF= TURN_NO_HIREDIS=1 + +SQLITE_DESC= SQLite database support +SQLITE_USES= sqlite +SQLITE_CONFIGURE_ENV_OFF= TURN_NO_SQLITE=1 + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/bin/turnserver ${STAGEDIR}${PREFIX}/bin/turnserver + ${INSTALL_PROGRAM} ${WRKSRC}/bin/turnadmin ${STAGEDIR}${PREFIX}/bin/turnadmin +.for f in ${_BIN_UTILS} + ${INSTALL_PROGRAM} ${WRKSRC}/bin/turnutils_${f} ${STAGEDIR}${PREFIX}/bin/ +.endfor + (cd ${WRKSRC}/man/man1 && ${INSTALL_MAN} ${MANPAGES} \ + ${STAGEDIR}${PREFIX}/man/man1) + ${MKDIR} ${STAGEDIR}${DATADIR} + (cd ${WRKSRC}/turndb && ${INSTALL_DATA} schema.sql schema.userdb.redis \ + schema.stats.redis ${STAGEDIR}${DATADIR}) + (cd ${WRKSRC}/turndb && ${INSTALL_SCRIPT} testredisdbsetup.sh schema.mongo.sh \ + testmongosetup.sh ${STAGEDIR}${DATADIR}) + ${INSTALL_DATA} ${WRKSRC}/lib/libturnclient.a ${STAGEDIR}${PREFIX}/lib + ${INSTALL_DATA} ${WRKSRC}/examples/etc/turnserver.conf \ + ${STAGEDIR}${PREFIX}/etc/turnserver.conf.default + ${MKDIR} ${STAGEDIR}${PREFIX}/include/turn + (cd ${WRKSRC}/include/turn && ${COPYTREE_SHARE} "client ns_turn_defs.h" \ + ${STAGEDIR}${PREFIX}/include/turn) + +do-install-SQLITE-on: + ${MKDIR} ${STAGEDIR}${PREFIX}/var/db + ${INSTALL_DATA} ${WRKSRC}/sqlite/turndb ${STAGEDIR}${PREFIX}/var/db/turndb + +do-install-EXAMPLES-on: +.for dir in basic loadbalance longtermsecure longtermsecuredb restapi selfloadbalance + ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/scripts/${dir} +.endfor + ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/etc + ${INSTALL_DATA} ${WRKSRC}/examples/scripts/readme.txt \ + ${STAGEDIR}${EXAMPLESDIR}/scripts + (cd ${WRKSRC}/examples/etc && ${INSTALL_DATA} ${_ETC_EXAMPLES} \ + ${STAGEDIR}${EXAMPLESDIR}/etc) +.for f in ${_SCRIPT_EXAMPLES} + ${INSTALL_SCRIPT} ${WRKSRC}/examples/scripts/${f} \ + ${STAGEDIR}${EXAMPLESDIR}/scripts/${f} +.endfor + +do-install-DOCS-on: + ${MKDIR} ${STAGEDIR}${DOCSDIR} + (cd ${WRKDIR}/turndocs/docs && ${COPYTREE_SHARE} "${DOCS}" ${STAGEDIR}${DOCSDIR}) + (cd ${WRKSRC} && ${INSTALL_DATA} ${PORTREADMEDOCS} ${STAGEDIR}${DOCSDIR}) + ${INSTALL_DATA} ${PKGMESSAGE} ${STAGEDIR}${DOCSDIR}/postinstall.txt + (cd ${WRKSRC}/turndb && ${INSTALL_DATA} schema.sql schema.mongo.sh \ + schema.userdb.redis schema.stats.redis ${STAGEDIR}${DOCSDIR}) + +.include <bsd.port.mk>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/distinfo Thu Mar 26 21:26:40 2020 +0100 @@ -0,0 +1,5 @@ +TIMESTAMP = 1551644566 +SHA256 (turn.extra.docs-2.0.0.1.tar.gz) = 3a86600fd0a30ce7aeb547e80402ce68ea9959f7dd58697e5b47fda6e33ab9ce +SIZE (turn.extra.docs-2.0.0.1.tar.gz) = 485379 +SHA256 (coturn-coturn-4.5.1.1_GH0.tar.gz) = 8eabe4c241ad9a74655d8516c69b1fa3275e020e7f7fca50a6cb822809e7c220 +SIZE (coturn-coturn-4.5.1.1_GH0.tar.gz) = 420069
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/files/pkg-message.in Thu Mar 26 21:26:40 2020 +0100 @@ -0,0 +1,42 @@ +[ +{ type: install + message: <<EOM +1) You can start and stop the turnserver manually. But, if you want +to enable turnserver as an automatically started system service, +you have to: + + a) Create and edit %%PREFIX%%/etc/turnserver.conf file. + Use %%PREFIX%%/etc/turnserver.conf.default as an example. + + b) For user accounts settings: set up SQLite or PostgreSQL or + MySQL or Redis database for user accounts. + Use %%DATADIR%%/schema.sql as an SQL database schema, + or use %%DATADIR%%/schema*redis as Redis database description. + + If SQLite is used, then %%PREFIX%%/var/db/turndb is the default database + location. + + d) add line turnserver_enable="YES" to /etc/rc.conf. + + e) If you are using a non-default PREFIX (other than /usr/local), + then edit /usr/local/etc/rc.d/turnserver file, according to + your system settings. + + f) Restart the system or run the command: + $ %%PREFIX%%/etc/rc.d/turnserver start + +2) If you do not want the turnserver to be a system service, + then you can start/stop it "manually", using the "turnserver" + executable with appropriate options (see the documentation). + +3) To create database schema, use schema in file %%DATADIR%%/schema.sql. +The TURN Server supports (optionally) SQLite, MySQL, PostgreSQL, Redis. + +4) For additional information, run: + + $ man turnserver + $ man turnadmin + $ man turnutils +EOM +} +]
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/files/turnserver.in Thu Mar 26 21:26:40 2020 +0100 @@ -0,0 +1,31 @@ +#!/bin/sh +# +# $FreeBSD: head/net/turnserver/files/turnserver.in 319998 2013-06-05 14:48:56Z gabor $ +# +# PROVIDE: turnserver +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# turnserver_enable (bool): Set to NO by default. +# Set it to YES to enable turnserver. +# turnserver_config (path): Set to %%PREFIX%%/etc/turnserver.conf +# by default. + +. /etc/rc.subr + +name=turnserver +rcvar=turnserver_enable + +load_rc_config $name + +: ${turnserver_enable:=no} +: ${turnserver_config=%%PREFIX%%/etc/turnserver.conf} + +command="%%PREFIX%%/bin/${name}" +command_args="--daemon -c ${turnserver_config}" +required_files=${turnserver_config} + +run_rc_command "$1"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pkg-descr Thu Mar 26 21:26:40 2020 +0100 @@ -0,0 +1,4 @@ +This a BSD-licensed version of the Coturn TURN Server implementation, +with IPv6 and DTLS extensions. + +WWW: http://code.google.com/p/coturn/
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pkg-plist Thu Mar 26 21:26:40 2020 +0100 @@ -0,0 +1,79 @@ +bin/turnserver +bin/turnadmin +bin/turnutils_natdiscovery +bin/turnutils_oauth +bin/turnutils_peer +bin/turnutils_stunclient +bin/turnutils_uclient +lib/libturnclient.a +%%SQLITE%%var/db/turndb +etc/turnserver.conf.default +man/man1/turnserver.1.gz +man/man1/turnadmin.1.gz +man/man1/turnutils.1.gz +man/man1/turnutils_natdiscovery.1.gz +man/man1/turnutils_oauth.1.gz +man/man1/turnutils_peer.1.gz +man/man1/turnutils_stunclient.1.gz +man/man1/turnutils_uclient.1.gz +man/man1/coturn.1.gz +%%DATADIR%%/schema.sql +%%DATADIR%%/schema.userdb.redis +%%DATADIR%%/schema.stats.redis +%%DATADIR%%/schema.mongo.sh +%%DATADIR%%/testredisdbsetup.sh +%%DATADIR%%/testmongosetup.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/etc/turnserver.conf +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/etc/turn_client_cert.pem +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/etc/turn_client_pkey.pem +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/etc/turn_server_cert.pem +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/etc/turn_server_pkey.pem +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/readme.txt +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/peer.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/basic/relay.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/basic/dos_attack.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/basic/tcp_client_c2c_tcp_relay.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/basic/udp_c2c_client.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/basic/udp_client.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/basic/tcp_client.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/loadbalance/master_relay.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/loadbalance/slave_relay_1.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/loadbalance/slave_relay_2.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/loadbalance/udp_c2c.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/loadbalance/tcp_c2c_tcp_relay.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_dtls_client.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_dtls_client_cert.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_tls_client_cert.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_relay.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_relay_cert.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_tcp_client_c2c_tcp_relay.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_tcp_client.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_tls_client_c2c_tcp_relay.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_tls_client.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_udp_c2c.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_udp_client.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_sctp_client.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecure/secure_dos_attack.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecuredb/secure_relay_with_db_psql.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecuredb/secure_relay_with_db_mysql.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecuredb/secure_relay_with_db_mysql_ssl.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecuredb/secure_relay_with_db_mongo.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecuredb/secure_relay_with_db_redis.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/longtermsecuredb/secure_relay_with_db_sqlite.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/restapi/secure_relay_secret.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/restapi/secure_relay_secret_with_db_mysql.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/restapi/secure_relay_secret_with_db_mongo.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/restapi/secure_relay_secret_with_db_psql.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/restapi/secure_relay_secret_with_db_redis.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/restapi/secure_relay_secret_with_db_sqlite.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/restapi/secure_udp_client_with_secret.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/restapi/shared_secret_maintainer.pl +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/selfloadbalance/secure_dos_attack.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scripts/selfloadbalance/secure_relay.sh +include/turn/ns_turn_defs.h +include/turn/client/TurnMsgLib.h +include/turn/client/ns_turn_ioaddr.h +include/turn/client/ns_turn_msg.h +include/turn/client/ns_turn_msg_addr.h +include/turn/client/ns_turn_msg_defs.h +include/turn/client/ns_turn_msg_defs_experimental.h
