aboutsummaryrefslogtreecommitdiff
path: root/net/opensips
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2015-10-01 16:34:41 +0000
committerKurt Jaeger <pi@FreeBSD.org>2015-10-01 16:34:41 +0000
commit4476228211d2032d25d672af8b691f2f62227373 (patch)
tree3a6c5ecdb2b79b8ff197ea5df91d081d04fd450d /net/opensips
parent95caea8001d104757df3b4f9be5fb14f334d3e45 (diff)
downloadports-4476228211d2032d25d672af8b691f2f62227373.tar.gz
ports-4476228211d2032d25d672af8b691f2f62227373.zip
Notes
Diffstat (limited to 'net/opensips')
-rw-r--r--net/opensips/Makefile228
-rw-r--r--net/opensips/distinfo2
-rw-r--r--net/opensips/files/Makefile.conf87
-rw-r--r--net/opensips/files/opensips.cfg.sample517
-rw-r--r--net/opensips/files/opensips.in33
-rw-r--r--net/opensips/files/patch-Makefile50
-rw-r--r--net/opensips/files/patch-Makefile.defs43
-rw-r--r--net/opensips/files/patch-io_wait.h34
-rw-r--r--net/opensips/files/patch-net__net_tcp.c10
-rw-r--r--net/opensips/files/patch-net__net_tcp_proc.c10
-rw-r--r--net/opensips/pkg-descr12
-rw-r--r--net/opensips/pkg-plist598
12 files changed, 1624 insertions, 0 deletions
diff --git a/net/opensips/Makefile b/net/opensips/Makefile
new file mode 100644
index 000000000000..afc2b5692d15
--- /dev/null
+++ b/net/opensips/Makefile
@@ -0,0 +1,228 @@
+# Created by: Euan Thoms <euan@potensol.com>
+# $FreeBSD$
+
+PORTNAME= opensips
+PORTVERSION= 2.1.0
+CATEGORIES= net
+MASTER_SITES= http://opensips.org/pub/opensips/${PORTVERSION}/src/
+# DISTNAME= opensips-${PORTVERSION}
+
+MAINTAINER= euan@potensol.com
+COMMENT= Open SIP Server
+
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+LIB_DEPENDS= libxml2.so:${PORTSDIR}/textproc/libxml2 \
+ libxmlrpc.so:${PORTSDIR}/net/xmlrpc-c-devel \
+ libpcre.so:${PORTSDIR}/devel/pcre \
+ libconfuse.so:${PORTSDIR}/devel/libconfuse \
+ librabbitmq.so:${PORTSDIR}/net/rabbitmq-c-devel \
+ libhiredis.so:${PORTSDIR}/databases/hiredis \
+ libexpat.so:${PORTSDIR}/textproc/expat2 \
+ libjson-c.so:${PORTSDIR}/devel/json-c
+BUILD_DEPENDS= ginstall:${PORTSDIR}/sysutils/coreutils \
+ gtar:${PORTSDIR}/archivers/gtar \
+ gm4:${PORTSDIR}/devel/m4 \
+ redis-server:${PORTSDIR}/databases/redis-devel \
+ python2:${PORTSDIR}/lang/python2 \
+ python:${PORTSDIR}/lang/python
+RUN_DEPENDS= ${LOCALBASE}/bin/bash:${PORTSDIR}/shells/bash \
+ ${LOCALBASE}/bin/python2:${PORTSDIR}/lang/python2 \
+ ${LOCALBASE}/bin/grep:${PORTSDIR}/textproc/gnugrep
+
+#CFLAGS+= -I${LOCALBASE}/include/json-c
+#CPPFLAGS+= -I${LOCALBASE}/include/json-c
+
+GINSTALL= ginstall
+
+WRKSRC= ${WRKDIR}/opensips-${PORTVERSION}
+DOCSDIR= share/doc/opensips
+
+USE_RC_SUBR= opensips
+
+USES= gmake perl5 pkgconfig shebangfix
+USE_GCC= yes
+
+OPTIONS_DEFINE= DEBUG DOCS EXAMPLES GEOIP HTTP LDAP MEMCACHED MYSQL PGSQL RADIUS TESTS TLS UNIXODBC
+OPTIONS_DEFAULT= DOCS EXAMPLES GEOIP HTTP LDAP MEMCACHED PGSQL RADIUS TLS
+OPTIONS_SUB= yes
+
+GEOIP_DESC= Build with GeoIP support
+HTTP_DESC= Enable HTTP transport via libmicrohttpd
+MEMCACHED_DESC= Build with memcached support
+TESTS_DESC= Install smoke tests
+
+LDAP_USE= OPENLDAP=client
+MYSQL_USE= MYSQL=client
+PGSQL_USES+= pgsql
+
+PGSQL_BUILD_DEPENDS+= p5-DBD-Pg>=3.4:${PORTSDIR}/databases/p5-DBD-Pg
+RADIUS_BUILD_DEPENDS+= radiusclient:${PORTSDIR}/net/radiusclient
+HTTP_LIB_DEPENDS+= libmicrohttpd.so:${PORTSDIR}/www/libmicrohttpd
+GEOIP_LIB_DEPENDS+= libGeoIP.so:${PORTSDIR}/net/GeoIP
+MEMCACHED_LIB_DEPENDS+= libmemcached.so:${PORTSDIR}/databases/libmemcached
+UNIXODBC_LIB_DEPENDS+= libodbc.so:${PORTSDIR}/databases/unixODBC
+
+SHEBANG_FILES= scripts/osipsconsole \
+ modules/jabber/doc/jabberreg.pl \
+ modules/sipcapture/examples/partrotate_unixtimestamp.pl \
+ scripts/dbtextdb/__init__.py \
+ scripts/dbtextdb/dbtextdb.py \
+ scripts/dbtextdb/dbtextdb_test.py \
+ packaging/fedora/opensips.m4cfg \
+ packaging/fedora/opensips.init \
+ packaging/rpm/opensips.init \
+ modules/seas/doc/xml2sgml.sh \
+ utils/fifo_relay/fifo_server.php \
+ test/1.sh \
+ test/2.sh \
+ test/3.sh \
+ test/4.sh \
+ test/5.sh \
+ test/6.sh \
+ test/7.sh \
+ test/8.sh \
+ test/9.sh \
+ test/10.sh \
+ test/11.sh \
+ test/12.sh \
+ test/13.sh \
+ test/14.sh \
+ test/15.sh \
+ test/16.sh \
+ test/17.sh \
+ test/18.sh \
+ test/19.sh \
+ test/20.sh \
+ test/21.sh \
+ test/22.sh \
+ test/23.sh \
+ test/24.sh \
+ test/25.sh \
+ test/26.sh \
+ test/27.sh \
+ test/28.sh \
+ test/29.sh \
+ test/30.sh \
+ test/31.sh \
+ test/32.sh \
+ test/33.sh \
+ test/34.sh \
+ test/35.sh
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MGEOIP}
+EXTRA_MODULES+= mmgeoip
+.endif
+
+.if ${PORT_OPTIONS:MHTTP}
+EXTRA_MODULES+= httpd
+.endif
+
+.if ${PORT_OPTIONS:MLDAP}
+EXTRA_MODULES+= ldap h350
+.endif
+
+.if ${PORT_OPTIONS:MMEMCACHED}
+EXTRA_MODULES+= cachedb_memcached
+.endif
+
+.if ${PORT_OPTIONS:MMYSQL}
+EXTRA_MODULES+= db_mysql
+.endif
+
+.if ${PORT_OPTIONS:MPGSQL}
+#USES+= pgsql
+EXTRA_MODULES+= db_postgres
+.endif
+
+.if ${PORT_OPTIONS:MRADIUS}
+EXTRA_MODULES+= aaa_radius
+.endif
+
+.if ${PORT_OPTIONS:MUNIXODBC}
+EXTRA_MODULES+= db_unixodbc
+.endif
+
+OPENSIPS_MAKE_ENV= CC="${CC}" CXX="${CXX}" CPP="${CPP}" _GCC_RUNTIME="${_GCC_RUNTIME}" CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}"
+
+do-configure:
+ (cp files/Makefile.conf ${WRKSRC})
+
+ @${REINPLACE_CMD} -e "s|_PREFIX_|${PREFIX}|" ${WRKSRC}/Makefile.conf
+ @${REINPLACE_CMD} -e "s|_STAGE_DIR_|${STAGEDIR}|" ${WRKSRC}/Makefile.conf
+
+.for i in ${EXTRA_MODULES}
+ @${REINPLACE_CMD} -e "s/\(^include_modules=.*\)/\1 ${i}/" ${WRKSRC}/Makefile.conf
+.endfor
+
+.if ${PORT_OPTIONS:MTLS}
+ @${REINPLACE_CMD} -e "s/^#DEFS+= -DUSE_TLS/DEFS+= -DUSE_TLS/" ${WRKSRC}/Makefile.conf
+ @${ECHO_CMD} "TLS=1" >> ${WRKSRC}/Makefile.conf
+.endif
+
+.if ! ${PORT_OPTIONS:MDEBUG}
+ @${REINPLACE_CMD} -e "s/^#DEFS+= -DNO_DEBUG/DEFS+= -DNO_DEBUG/" ${WRKSRC}/Makefile.conf
+.endif
+
+do-build:
+ cd ${WRKSRC} && ${OPENSIPS_MAKE_ENV} ${GMAKE} ${_MAKE_JOBS} ${ALL_TARGET}
+
+do-install:
+ cd ${WRKSRC} && ${OPENSIPS_MAKE_ENV} ${GMAKE} ${INSTALL_TARGET}
+
+.if ${PORT_OPTIONS:MTESTS}
+ (cp -r ${WRKSRC}/test ${STAGEDIR}${PREFIX}/tests/opensips)
+.endif
+
+.if ${PORT_OPTIONS:MEXAMPLES}
+ (cp -r ${WRKSRC}/examples ${STAGEDIR}${PREFIX}/share/examples/opensips)
+.endif
+
+post-stage:
+ @${REINPLACE_CMD} -e "s|^# MD5=.*|MD5=\"md5\"|" ${STAGEDIR}${PREFIX}/etc/opensips/opensipsctlrc.sample
+ @${REINPLACE_CMD} -e "s|^# GREP=.*|GREP=\"${LOCALBASE}/bin/grep\"|" ${STAGEDIR}${PREFIX}/etc/opensips/opensipsctlrc.sample
+ @${REINPLACE_CMD} -e "s|^# MD5=.*|MD5=\"md5\"|" ${STAGEDIR}${PREFIX}/etc/opensips/osipsconsolerc.sample
+ @${REINPLACE_CMD} -e "s|^# GREP=.*|GREP=\"${LOCALBASE}/bin/egrep\"|" ${STAGEDIR}${PREFIX}/etc/opensips/osipsconsolerc.sample
+ (cp ${FILESDIR}/opensips.cfg.sample ${STAGEDIR}${ETCDIR}/opensips.cfg.sample)
+
+# Strip binaries in sbin
+ @${ECHO_CMD} "Stripping binaries in ${STAGEDIR}${PREFIX}/sbin/"
+
+.for i in opensipsunix opensips osipsconfig
+ @if [ -e ${STAGEDIR}${PREFIX}/sbin/${i} ]; then \
+ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/${i}; \
+ fi
+.endfor
+
+# Strip binaries in lib/opensips/modules
+ @${ECHO_CMD} "Stripping binaries in ${STAGEDIR}${PREFIX}/lib/opensips/modules/"
+
+.for i in aaa_radius.so acc.so alias_db.so auth.so auth_aaa.so auth_db.so auth_diameter.so \
+ avpops.so b2b_entities.so b2b_logic.so b2b_sca.so benchmark.so cachedb_local.so \
+ cachedb_memcached.so cachedb_sql.so call_center.so call_control.so carrierroute.so \
+ cfgutils.so closeddial.so cpl-c.so db_cachedb.so db_flatstore.so db_mysql.so \
+ db_postgres.so db_text.so db_unixodbc.so db_virtual.so dialog.so dialplan.so \
+ dispatcher.so diversion.so dns_cache.so domain.so domainpolicy.so drouting.so \
+ enum.so event_datagram.so event_rabbitmq.so event_route.so event_xmlrpc.so exec.so \
+ gflags.so group.so h350.so httpd.so identity.so imc.so jabber.so json.so ldap.so \
+ load_balancer.so mangler.so mathops.so maxfwd.so mediaproxy.so mi_datagram.so \
+ mi_fifo.so mi_http.so mi_json.so mi_xmlrpc.so mi_xmlrpc_ng.so mmgeoip.so msilo.so \
+ nat_traversal.so nathelper.so options.so path.so pdt.so peering.so perl.so \
+ permissions.so pi_http.so pike.so presence.so presence_callinfo.so \
+ presence_dialoginfo.so presence_mwi.so presence_xcapdiff.so presence_xml.so pua.so \
+ pua_bla.so pua_dialoginfo.so pua_mi.so pua_usrloc.so pua_xmpp.so python.so qos.so \
+ ratelimit.so regex.so registrar.so rest_client.so rls.so rr.so rtpproxy.so \
+ script_helper.so seas.so signaling.so sipcapture.so sipmsgops.so siptrace.so sl.so \
+ sms.so speeddial.so sst.so statistics.so stun.so textops.so tlsops.so tm.so uac.so \
+ uac_auth.so uac_redirect.so uac_registrant.so uri.so userblacklist.so usrloc.so \
+ xcap.so xcap_client.so xmpp.so topology_hiding.so fraud_detection.so rtpengine.so \
+ proto_ws.so
+ @if [ -e ${STAGEDIR}${PREFIX}/lib/opensips/modules/${i} ]; then \
+ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/opensips/modules/${i}; \
+ fi
+.endfor
+
+.include <bsd.port.mk>
diff --git a/net/opensips/distinfo b/net/opensips/distinfo
new file mode 100644
index 000000000000..978fb8fda2d2
--- /dev/null
+++ b/net/opensips/distinfo
@@ -0,0 +1,2 @@
+SHA256 (opensips-2.1.0.tar.gz) = 9dffa61bcf91e17bc6d6d700f669516448875c61accf9c46a67731e260ad958c
+SIZE (opensips-2.1.0.tar.gz) = 8470358
diff --git a/net/opensips/files/Makefile.conf b/net/opensips/files/Makefile.conf
new file mode 100644
index 000000000000..0836ea1c3563
--- /dev/null
+++ b/net/opensips/files/Makefile.conf
@@ -0,0 +1,87 @@
+#aaa_radius= Radius implementation for the AAA API from the core | Radius client development library, tipically radiusclient-ng 0.5.0 or higher
+#b2b_logic= Logic engine of B2BUA, responsible of actually implementing the B2BUA services | xml parsing development library, typically libxml2-dev
+#cachedb_cassandra= Implementation of a cache system designed to work with Cassandra servers | thrift 0.6.1
+#cachedb_couchbase= Implementation of a cache system designed to work with CouchBase servers | libcouchbase >= 2.0
+#cachedb_memcached= Implementation of a cache system designed to work with a memcached server. | Memcached client library, tipically libmemcached
+#cachedb_mongodb= Implementation of a cache system designed to work with a MongoDB server. | libjson and the mongo-c-driver
+#cachedb_redis= Implementation of a cache system designed to work with Redis servers | Redis client library, hiredis
+#carrierroute= Provides routing, balancing and blacklisting capabilities. | libconfuse, a configuration file parser library
+#compression= Implements SIP message compression/decompression and base64 encoding | zlib dev library, tipically zlib1g-dev
+#cpl-c= Implements a CPL (Call Processing Language) interpreter | library for parsing XML files, tipically libxml2 and libxml2-devel
+#db_berkeley= Integrates the Berkeley DB into OpenSIPS | Berkeley embedded database
+#db_http= Provides access to a database that is implemented as a HTTP server. | CURL library - libcurl
+#db_mysql= Provides MySQL connectivity for OpenSIPS | development libraries of mysql-client , tipically libmysqlclient-dev
+#db_oracle= Provides Oracle connectivity for OpenSIPS. | Development library of OCI, tipically instantclient-sdk-10.2.0.3
+#db_perlvdb= Provides a virtualization framework for OpenSIPS's database access. | Perl library development files, tipically libperl-dev
+#db_postgres= Provides Postgres connectivity for OpenSIPS | PostgreSQL library and development library - tipically libpq5 and libpq-dev
+#db_unixodbc= Allows to use the unixodbc package with OpenSIPS | ODBC library and ODBC development library
+#dialplan= Implements generic string translations based on matching and replacement rules | PCRE development library, tipically libpcre-dev
+#emergency= Provides emergency call treatment for OpenSIPS | CURL dev library - tipically libcurl4-openssl-dev
+#event_rabbitmq= Provides the implementation of a RabbitMQ client for the Event Interface | RabbitMQ development library, librabbitmq-dev
+#h350= Enables access to SIP account data stored in an LDAP [RFC4510] directory containing H.350 commObjects | OpenLDAP library & development files, tipically libldap and libldap-dev
+#regex= Offers matching operations against regular expressions using the powerful PCRE library. | Development library for PCRE, tipically libpcre-dev
+#identity= Adds support for SIP Identity (see RFC 4474). | SSL library, tipically libssl
+#jabber= Integrates XODE XML parser for parsing Jabber messages | Expat library.
+#json= Introduces a new type of variable that provides both serialization and de-serialization from JSON format. | JSON library, libjson
+#ldap= Implements an LDAP search interface for OpenSIPS | OpenLDAP library & development files, tipically libldap and libldap-dev
+#lua= Easily implement your own OpenSIPS extensions in Lua | liblua5.1-0-dev, libmemcache-dev and libmysqlclient-dev
+#httpd= Provides an HTTP transport layer implementation for OpenSIPS. | libmicrohttpd
+#mi_xmlrpc_ng= New version of the xmlrpc server that handles xmlrpc requests and generates xmlrpc responses. | parsing/building XML library, tipically libxml
+#mmgeoip= Lightweight wrapper for the MaxMind GeoIP API | libGeoIP
+#osp= Enables OpenSIPS to support secure, multi-lateral peering using the OSP standard | OSP development kit, tipically osptoolkit
+#perl= Easily implement your own OpenSIPS extensions in Perl | Perl library development files, tipically libperl-dev
+#pi_http= Provides a simple web database provisioning interface | XML parsing & building library, tipically libxml-dev
+#proto_sctp= Provides support for SCTP listeners in OpenSIPS | SCTP development library, tipically libsctp-dev
+#proto_tls= Provides support for TLS listeners in OpenSIPS | SSL development library, tipically libssl-dev
+#presence= Handles PUBLISH and SUBSCRIBE messages and generates NOTIFY messages in a general, event independent way | XML parsing & Building library, tipically libxml-dev
+#presence_dialoginfo= Enables the handling of "Event: dialog" (as defined in RFC 4235) | XML parsing & building library, tipically libxml-dev
+#presence_mwi= Does specific handling for notify-subscribe message-summary (message waiting indication) events as specified in RFC 3842 | XML parsing & building library, tipically libxml-dev
+#presence_xml= Does specific handling for notify-subscribe events using xml bodies. | XML parsing & building library, tipically libxml-dev
+#pua= Offers the functionality of a presence user agent client, sending Subscribe and Publish messages. | XML parsing & building library, tipically libxml-dev
+#pua_bla= Enables Bridged Line Appearances support according | XML parsing & building library, tipically libxml-dev
+#pua_dialoginfo= Retrieves dialog state information from the dialog module and PUBLISHes the dialog-information using the pua module. | XML parsing & building library,tipically libxml-dev
+#pua_mi= Offers the possibility to publish presence information and subscribe to presence information via MI transports. | XML parsing & building library,tipically libxml-dev
+#pua_usrloc= Connector between usrloc and pua modules. | XML parsing & building library,tipically libxml-dev
+#pua_xmpp= Gateway for presence between SIP and XMPP. | XML parsing & building library,tipically libxml-dev
+#python= Easily implement your own OpenSIPS extensions in Python | Shared Python runtime library, libpython
+#rest_client= Simple HTTP client | CURL library - libcurl
+#rls= Resource List Server implementation following the specification in RFC 4662 and RFC 4826 | parsing/building XML library, tipically libxml-dev
+#sngtc= Voice Transcoding using the D-series Sangoma transcoding cards | libsngtc_node
+#snmpstats= Provides an SNMP management interface to OpenSIPS | NetSNMP v5.3
+#xcap= XCAP utility functions for OpenSIPS. | libxml-dev
+#xcap_client= XCAP client for OpenSIPS.It fetches XCAP elements, either documents or part of them, by sending HTTP GET requests | libxml-dev and libcurl-dev
+#xmpp= Gateway between OpenSIPS and a jabber server. It enables the exchange of IMs between SIP clients and XMPP(jabber) clients. | parsing/building XML files, tipically libexpat1-devel
+
+exclude_modules= aaa_radius b2b_logic cachedb_cassandra cachedb_couchbase cachedb_memcached cachedb_mongodb cachedb_redis carrierroute compression cpl-c db_berkeley db_http db_mysql db_oracle db_perlvdb db_postgres db_unixodbc dialplan emergency event_rabbitmq h350 regex identity jabber json ldap lua httpd mi_xmlrpc_ng mmgeoip osp perl pi_http presence presence_dialoginfo presence_mwi presence_xml proto_sctp proto_tls pua pua_bla pua_dialoginfo pua_mi pua_usrloc pua_xmpp python rest_client rls sngtc snmpstats xcap xcap_client xmpp
+
+include_modules= b2b_logic carrierroute cpl-c dialplan event_rabbitmq regex identity jabber json mi_xmlrpc_ng perl pi_http presence presence_dialoginfo presence_mwi presence_xml pua pua_bla pua_dialoginfo pua_mi pua_usrloc pua_xmpp python rest_client rls xcap xcap_client xmpp
+
+DEFS+= -DPKG_MALLOC #Uses a faster malloc (exclusive w/ USE_SHM_MEM)
+DEFS+= -DSHM_MMAP #Use mmap instead of SYSV shared memory
+DEFS+= -DUSE_MCAST #Compile in support for IP Multicast
+DEFS+= -DDISABLE_NAGLE #Disabled the TCP NAgle Algorithm ( lower delay )
+DEFS+= -DSTATISTICS #Enables the statistics manager
+DEFS+= -DHAVE_RESOLV_RES #Support for changing some of the resolver parameters
+#DEFS+= -DHP_MALLOC #High performance allocator with fine-grained locking
+DEFS+= -DF_MALLOC #An even faster allocator. Not recommended for debugging
+#DEFS+= -DF_MALLOC_OPTIMIZATIONS #Remove all internal checks in F_MALLOC
+#DEFS+= -DDBG_QM_MALLOC #Allocator used for debugging information
+#DEFS+= -DUSE_SHM_MEM #All PKG allocations are mapped to SHM ( exclusive w/ PKG_MALLOC )
+#DEFS+= -DDBG_F_MALLOC #TODO ?
+#DEFS+= -DNO_DEBUG #Turns off all debug messages
+#DEFS+= -DNO_LOG #Completely turns off all the logging
+#DEFS+= -DVQ_MALLOC #TODO ?
+#DEFS+= -DFAST_LOCK #Uses fast architecture specific locking
+#DEFS+= -DUSE_FUTEX #Uses linux futexs with fast architecture specific locking
+#DEFS+= -DUSE_SYSV_SEM #Uses SYSV sems for locking ( slower & limited number of locks
+#DEFS+= -DUSE_PTHREAD_MUTEX #Uses pthread mutexes
+#DEFS+= -DBUSY_WAIT #Uses busy waiting on the lock
+#DEFS+= -DDBG_LOCK #TODO ?
+#DEFS+= -DNOSMP #Do not use SMP sompliant locking. Faster but won't work on SMP machines
+#DEFS+= -DEXTRA_DEBUG #Compiles in some extra debugging code
+#DEFS+= -DORACLE_USRLOC #Uses Oracle compatible queries for USRLOC
+
+PREFIX=_PREFIX_
+BASEDIR=_STAGE_DIR_
+INSTALL=ginstall -p -v
+TAR=gtar
diff --git a/net/opensips/files/opensips.cfg.sample b/net/opensips/files/opensips.cfg.sample
new file mode 100644
index 000000000000..6635d3e46141
--- /dev/null
+++ b/net/opensips/files/opensips.cfg.sample
@@ -0,0 +1,517 @@
+#
+# $Id$
+#
+# OpenSIPS residential configuration script
+# by OpenSIPS Solutions <team@opensips-solutions.com>
+#
+# This script was generated via "make menuconfig", from
+# the "Residential" scenario.
+# You can enable / disable more features / functionalities by
+# re-generating the scenario with different options.#
+#
+# Please refer to the Core CookBook at:
+# http://www.opensips.org/Resources/DocsCookbooks
+# for a explanation of possible statements, functions and parameters.
+#
+
+
+####### Global Parameters #########
+
+debug=3
+log_stderror=no
+log_facility=LOG_LOCAL0
+
+fork=yes
+children=4
+
+/* uncomment the following lines to enable debugging */
+#debug=6
+#fork=no
+#log_stderror=yes
+
+/* uncomment the next line to enable the auto temporary blacklisting of
+ not available destinations (default disabled) */
+disable_dns_blacklist=yes
+
+/* uncomment the next line to enable IPv6 lookup after IPv4 dns
+ lookup failures (default disabled) */
+#dns_try_ipv6=yes
+
+/* comment the next line to enable the auto discovery of local aliases
+ based on revers DNS on IPs */
+auto_aliases=no
+
+
+listen=udp:127.0.0.1:5060 # CUSTOMIZE ME
+
+#listen=tcp:127.0.0.1:5060 # CUSTOMIZE ME
+#listen=tls:127.0.0.1:5061 # CUSTOMIZE ME
+
+#advertised_address=111.222.333.444 # CUSTOMIZE ME
+
+#alias=111.222.333.444 # CUSTOMIZE ME
+#alias=example.org # CUSTOMIZE ME
+
+db_default_url="postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+
+####### Modules Section ########
+
+#set module path
+mpath="/usr/local/lib/opensips/modules/"
+
+#### SIGNALING module
+loadmodule "signaling.so"
+
+#### StateLess module
+loadmodule "sl.so"
+
+#### Transaction Module
+loadmodule "tm.so"
+modparam("tm", "fr_timeout", 5)
+modparam("tm", "fr_inv_timeout", 30)
+modparam("tm", "restart_fr_on_each_reply", 0)
+modparam("tm", "onreply_avp_mode", 1)
+
+#### Record Route Module
+loadmodule "rr.so"
+/* do not append from tag to the RR (no need for this script) */
+modparam("rr", "append_fromtag", 0)
+
+#### MAX ForWarD module
+loadmodule "maxfwd.so"
+
+#### SIP MSG OPerationS module
+loadmodule "sipmsgops.so"
+
+#### FIFO Management Interface
+loadmodule "mi_fifo.so"
+modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo")
+modparam("mi_fifo", "fifo_mode", 0666)
+
+
+#### URI module
+loadmodule "uri.so"
+modparam("uri", "use_uri_table", 0)
+
+
+
+#### PGSQL module
+loadmodule "db_postgres.so"
+
+#### MYSQL module
+#loadmodule "db_mysql.so"
+
+
+#### HTTPD module
+#loadmodule "httpd.so"
+#modparam("httpd", "port", 8888)
+
+#### USeR LOCation module
+loadmodule "usrloc.so"
+modparam("usrloc", "nat_bflag", "NAT")
+modparam("usrloc", "db_mode", 2)
+modparam("usrloc", "db_url", "postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+modparam("usrloc", "hash_size", 11)
+
+
+#### REGISTRAR module
+loadmodule "registrar.so"
+modparam("registrar", "tcp_persistent_flag", "TCP_PERSISTENT")
+modparam("registrar", "received_avp", "$avp(received_nh)")
+modparam("registrar", "max_contacts", 10)
+
+#### ACCounting module
+loadmodule "acc.so"
+/* what special events should be accounted ? */
+modparam("acc", "early_media", 0)
+modparam("acc", "report_cancels", 0)
+/* by default we do not adjust the direct of the sequential requests.
+ if you enable this parameter, be sure the enable "append_fromtag"
+ in "rr" module */
+modparam("acc", "detect_direction", 0)
+modparam("acc", "failed_transaction_flag", "ACC_FAILED")
+/* account triggers (flags) */
+modparam("acc", "db_flag", "ACC_DO")
+modparam("acc", "db_missed_flag", "ACC_MISSED")
+modparam("acc", "db_url", "postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+
+
+#### AUTHentication modules
+loadmodule "auth.so"
+loadmodule "auth_db.so"
+modparam("auth_db", "calculate_ha1", yes)
+modparam("auth_db", "password_column", "password")
+modparam("auth_db", "db_url", "postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+modparam("auth_db", "load_credentials", "")
+
+
+#### ALIAS module
+loadmodule "alias_db.so"
+modparam("alias_db", "db_url", "postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+
+
+#### DOMAIN module
+loadmodule "domain.so"
+modparam("domain", "db_url", "postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+modparam("domain", "db_mode", 1) # Use caching
+modparam("auth_db|usrloc|uri", "use_domain", 1)
+
+
+#### PRESENCE modules
+loadmodule "xcap.so"
+loadmodule "presence.so"
+loadmodule "presence_xml.so"
+modparam("xcap|presence", "db_url", "postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+modparam("presence_xml", "force_active", 1)
+modparam("presence", "server_address", "sip:127.0.0.1:5060") # CUSTOMIZE ME
+modparam("presence", "subs_htable_size", 11)
+modparam("presence", "pres_htable_size", 11)
+#modparam("presence", "max_expires_subscribe", 600)
+#modparam("presence", "max_expires_publish", 600)
+
+
+#### DIALOG module
+loadmodule "dialog.so"
+modparam("dialog", "dlg_match_mode", 1)
+modparam("dialog", "default_timeout", 21600) # 6 hours timeout
+modparam("dialog", "db_mode", 2)
+modparam("dialog", "db_url", "postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+
+
+#### NAT modules
+loadmodule "nathelper.so"
+modparam("nathelper", "natping_interval", 10)
+modparam("nathelper", "ping_nated_only", 1)
+modparam("nathelper", "received_avp", "$avp(received_nh)")
+
+loadmodule "rtpproxy.so"
+modparam("rtpproxy", "rtpproxy_sock", "udp:localhost:22222") # CUSTOMIZE ME
+
+
+#### DIALPLAN module
+loadmodule "dialplan.so"
+modparam("dialplan", "db_url", "postgres://opensips:opensipsrw@localhost/opensips") # CUSTOMIZE ME
+
+
+
+
+#### MI_HTTP module
+#loadmodule "mi_http.so"
+
+
+loadmodule "proto_udp.so"
+
+#loadmodule "proto_tcp.so"
+#loadmodule "proto_tls.so"
+#modparam("proto_tls","verify_cert", "1")
+#modparam("proto_tls","require_cert", "0")
+#modparam("proto_tls","tls_method", "TLSv1")
+#modparam("proto_tls","certificate", "/usr/local/etc/opensips/tls/user/user-cert.pem")
+#modparam("proto_tls","private_key", "/usr/local/etc/opensips/tls/user/user-privkey.pem")
+#modparam("proto_tls","ca_list", "/usr/local/etc/opensips/tls/user/user-calist.pem")
+
+
+
+####### Routing Logic ########
+
+# main request routing logic
+
+route{
+ force_rport();
+ if (nat_uac_test("23")) {
+ if (is_method("REGISTER")) {
+ fix_nated_register();
+ setbflag(NAT);
+ } else {
+ fix_nated_contact();
+ setflag(NAT);
+ }
+ }
+
+
+ if (!mf_process_maxfwd_header("10")) {
+ sl_send_reply("483","Too Many Hops");
+ exit;
+ }
+
+ if (has_totag()) {
+ # sequential request withing a dialog should
+ # take the path determined by record-routing
+ if (loose_route()) {
+
+ # validate the sequential request against dialog
+ if ( $DLG_status!=NULL && !validate_dialog() ) {
+ xlog("In-Dialog $rm from $si (callid=$ci) is not valid according to dialog\n");
+ ## exit;
+ }
+
+ if (is_method("BYE")) {
+ setflag(ACC_DO); # do accounting ...
+ setflag(ACC_FAILED); # ... even if the transaction fails
+ } else if (is_method("INVITE")) {
+ # even if in most of the cases is useless, do RR for
+ # re-INVITEs alos, as some buggy clients do change route set
+ # during the dialog.
+ record_route();
+ }
+
+ if (check_route_param("nat=yes"))
+ setflag(NAT);
+
+ # route it out to whatever destination was set by loose_route()
+ # in $du (destination URI).
+ route(relay);
+ } else {
+ if (is_method("SUBSCRIBE") && $rd == "127.0.0.1:5060") { # CUSTOMIZE ME
+ # in-dialog subscribe requests
+ route(handle_presence);
+ exit;
+ }
+ if ( is_method("ACK") ) {
+ if ( t_check_trans() ) {
+ # non loose-route, but stateful ACK; must be an ACK after
+ # a 487 or e.g. 404 from upstream server
+ t_relay();
+ exit;
+ } else {
+ # ACK without matching transaction ->
+ # ignore and discard
+ exit;
+ }
+ }
+ sl_send_reply("404","Not here");
+ }
+ exit;
+ }
+
+ # CANCEL processing
+ if (is_method("CANCEL"))
+ {
+ if (t_check_trans())
+ t_relay();
+ exit;
+ }
+
+ t_check_trans();
+
+ if ( !(is_method("REGISTER") ) ) {
+
+ if (is_from_local())
+ {
+
+ # authenticate if from local subscriber
+ # authenticate all initial non-REGISTER request that pretend to be
+ # generated by local subscriber (domain from FROM URI is local)
+ if (!proxy_authorize("", "subscriber")) {
+ proxy_challenge("", "0");
+ exit;
+ }
+ if (!db_check_from()) {
+ sl_send_reply("403","Forbidden auth ID");
+ exit;
+ }
+
+ consume_credentials();
+ # caller authenticated
+
+ } else {
+ # if caller is not local, then called number must be local
+
+ if (!is_uri_host_local()) {
+ send_reply("403","Rely forbidden");
+ exit;
+ }
+ }
+
+ }
+
+ # preloaded route checking
+ if (loose_route()) {
+ xlog("L_ERR",
+ "Attempt to route with preloaded Route's [$fu/$tu/$ru/$ci]");
+ if (!is_method("ACK"))
+ sl_send_reply("403","Preload Route denied");
+ exit;
+ }
+
+ # record routing
+ if (!is_method("REGISTER|MESSAGE"))
+ record_route();
+
+ # account only INVITEs
+ if (is_method("INVITE")) {
+
+ # create dialog with timeout
+ if ( !create_dialog("B") ) {
+ send_reply("500","Internal Server Error");
+ exit;
+ }
+
+ setflag(ACC_DO); # do accounting
+ }
+
+
+ if (!is_uri_host_local()) {
+ append_hf("P-hint: outbound\r\n");
+
+ # if you have some interdomain connections via TLS
+ ## CUSTOMIZE IF NEEDED
+ ##if ($rd=="tls_domain1.net"
+ ## || $rd=="tls_domain2.net"
+ ##) {
+ ## force_send_socket(tls:127.0.0.1:5061); # CUSTOMIZE
+ ##}
+
+ route(relay);
+ }
+
+ # requests for my domain
+
+ if( is_method("PUBLISH|SUBSCRIBE"))
+ route(handle_presence);
+
+ if (is_method("REGISTER"))
+ {
+
+ # authenticate the REGISTER requests
+ if (!www_authorize("", "subscriber"))
+ {
+ www_challenge("", "0");
+ exit;
+ }
+
+ if (!db_check_to())
+ {
+ sl_send_reply("403","Forbidden auth ID");
+ exit;
+ }
+
+ if ( proto==TCP || proto==TLS || 0 ) setflag(TCP_PERSISTENT);
+
+ if (!save("location"))
+ sl_reply_error();
+
+ exit;
+ }
+
+ if ($rU==NULL) {
+ # request with no Username in RURI
+ sl_send_reply("484","Address Incomplete");
+ exit;
+ }
+
+
+ # apply DB based aliases
+ alias_db_lookup("dbaliases");
+
+
+ # apply transformations from dialplan table
+ dp_translate("0","$rU/$rU");
+
+
+
+ # do lookup with method filtering
+ if (!lookup("location","m")) {
+ if (!db_does_uri_exist()) {
+ send_reply("420","Bad Extension");
+ exit;
+ }
+
+ t_newtran();
+ t_reply("404", "Not Found");
+ exit;
+ }
+
+ if (isbflagset(NAT)) setflag(NAT);
+
+ # when routing via usrloc, log the missed calls also
+ setflag(ACC_MISSED);
+ route(relay);
+}
+
+
+route[relay] {
+ # for INVITEs enable some additional helper routes
+ if (is_method("INVITE")) {
+
+ if (isflagset(NAT)) {
+ rtpproxy_offer("ro");
+ }
+
+ t_on_branch("per_branch_ops");
+ t_on_reply("handle_nat");
+ t_on_failure("missed_call");
+ }
+
+ if (isflagset(NAT)) {
+ add_rr_param(";nat=yes");
+ }
+
+ if (!t_relay()) {
+ send_reply("500","Internal Error");
+ };
+ exit;
+}
+
+
+# Presence route
+route[handle_presence]
+{
+ if (!t_newtran())
+ {
+ sl_reply_error();
+ exit;
+ }
+
+ if(is_method("PUBLISH"))
+ {
+ handle_publish();
+ }
+ else
+ if( is_method("SUBSCRIBE"))
+ {
+ handle_subscribe();
+ }
+
+ exit;
+}
+
+
+branch_route[per_branch_ops] {
+ xlog("new branch at $ru\n");
+}
+
+
+onreply_route[handle_nat] {
+ if (nat_uac_test("1"))
+ fix_nated_contact();
+ if ( isflagset(NAT) )
+ rtpproxy_answer("ro");
+ xlog("incoming reply\n");
+}
+
+
+failure_route[missed_call] {
+ if (t_was_cancelled()) {
+ exit;
+ }
+
+ # uncomment the following lines if you want to block client
+ # redirect based on 3xx replies.
+ ##if (t_check_status("3[0-9][0-9]")) {
+ ##t_reply("404","Not found");
+ ## exit;
+ ##}
+
+
+}
+
+
+
+local_route {
+ if (is_method("BYE") && $DLG_dir=="UPSTREAM") {
+
+ acc_db_request("200 Dialog Timeout", "acc");
+
+ }
+}
diff --git a/net/opensips/files/opensips.in b/net/opensips/files/opensips.in
new file mode 100644
index 000000000000..9f120d5ccc48
--- /dev/null
+++ b/net/opensips/files/opensips.in
@@ -0,0 +1,33 @@
+#!/bin/sh
+#
+# $FreeBSD: net/opensips/files/opensips.in
+#
+# PROVIDE: opensips
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+#
+# Add the following line to /etc/rc.conf to enable this service
+# at system startup:
+#
+# opensips_enable (bool): Set to NO by default.
+# Set it to YES to enable opensips.
+#
+
+prefix=/usr/local
+
+. /etc/rc.subr
+
+name=opensips
+rcvar=`set_rcvar`
+
+load_rc_config opensips
+
+opensips_enable=${opensips_enable:-"NO"}
+opensips_shmem_size=${opensips_shmem_size:-"32"}
+opensips_pkmem_size=${opensips_pkmem_size:-"2"}
+
+command="${prefix}/sbin/opensips"
+command_args="-m ${opensips_shmem_size} -M ${opensips_pkmem_size}"
+required_files="${prefix}/etc/opensips/opensipsctlrc"
+
+run_rc_command "${1}"
diff --git a/net/opensips/files/patch-Makefile b/net/opensips/files/patch-Makefile
new file mode 100644
index 000000000000..e9a6e3802e9b
--- /dev/null
+++ b/net/opensips/files/patch-Makefile
@@ -0,0 +1,50 @@
+--- Makefile.orig 2015-04-22 08:20:03 UTC
++++ Makefile
+@@ -39,7 +39,7 @@ auto_gen=lex.yy.c cfg.tab.c #lexx, yac
+ # whether or not to install opensips.cfg or just opensips.cfg.default
+ # (opensips.cfg will never be overwritten by make install, this is usefull
+ # when creating packages)
+-skip_cfg_install?=
++skip_cfg_install=yes
+
+ #extra modules to exclude
+ skip_modules?=
+@@ -540,38 +540,21 @@ install-cfg: $(cfg-prefix)/$(cfg-dir)
+ rm -fr $(cfg-prefix)/$(cfg-dir)$(NAME).cfg.sample0
+ chmod 600 $(cfg-prefix)/$(cfg-dir)$(NAME).cfg.sample
+ chmod 700 $(cfg-prefix)/$(cfg-dir)
+- if [ -z "${skip_cfg_install}" -a \
+- ! -f $(cfg-prefix)/$(cfg-dir)$(NAME).cfg ]; then \
+- mv -f $(cfg-prefix)/$(cfg-dir)$(NAME).cfg.sample \
+- $(cfg-prefix)/$(cfg-dir)$(NAME).cfg; \
+- fi
+ # radius dictionary
+ if [ "$(RADIUSDEPON)" = "yes" ]; then \
+ $(INSTALL_TOUCH) \
+ $(cfg-prefix)/$(cfg-dir)/dictionary.opensips.sample ; \
+ $(INSTALL_CFG) etc/dictionary.opensips \
+ $(cfg-prefix)/$(cfg-dir)/dictionary.opensips.sample ; \
+- if [ ! -f $(cfg-prefix)/$(cfg-dir)/dictionary.opensips ]; then \
+- mv -f $(cfg-prefix)/$(cfg-dir)/dictionary.opensips.sample \
+- $(cfg-prefix)/$(cfg-dir)/dictionary.opensips; \
+- fi; \
+ fi
+ # opensipsctl config
+ $(INSTALL_TOUCH) $(cfg-prefix)/$(cfg-dir)/opensipsctlrc.sample
+ $(INSTALL_CFG) scripts/opensipsctlrc \
+ $(cfg-prefix)/$(cfg-dir)/opensipsctlrc.sample
+- if [ ! -f $(cfg-prefix)/$(cfg-dir)/opensipsctlrc ]; then \
+- mv -f $(cfg-prefix)/$(cfg-dir)/opensipsctlrc.sample \
+- $(cfg-prefix)/$(cfg-dir)/opensipsctlrc; \
+- fi
+ # osipsconsole config
+ $(INSTALL_TOUCH) $(cfg-prefix)/$(cfg-dir)/osipsconsolerc.sample
+ $(INSTALL_CFG) scripts/osipsconsolerc \
+ $(cfg-prefix)/$(cfg-dir)/osipsconsolerc.sample
+- if [ ! -f $(cfg-prefix)/$(cfg-dir)/osipsconsolerc ]; then \
+- mv -f $(cfg-prefix)/$(cfg-dir)/osipsconsolerc.sample \
+- $(cfg-prefix)/$(cfg-dir)/osipsconsolerc; \
+- fi
+ #$(INSTALL_CFG) etc/$(NAME).cfg $(cfg-prefix)/$(cfg-dir)
+ mkdir -p $(cfg-prefix)/$(cfg-dir)/tls ; \
+ mkdir -p $(cfg-prefix)/$(cfg-dir)/tls/rootCA ; \
diff --git a/net/opensips/files/patch-Makefile.defs b/net/opensips/files/patch-Makefile.defs
new file mode 100644
index 000000000000..ded2b7075b85
--- /dev/null
+++ b/net/opensips/files/patch-Makefile.defs
@@ -0,0 +1,43 @@
+--- Makefile.defs.orig 2015-05-07 16:45:43 UTC
++++ Makefile.defs
+@@ -118,6 +118,14 @@ ifeq ($(OS),solaris)
+ ISSMP ?= yes
+ endif
+ else
++ifeq ($(OS),freebsd)
++ SMP_STR = $(shell sysctl kern.smp.active | grep 1)
++ ifeq (,$(SMP_STR))
++ ISSMP ?= no
++ else
++ ISSMP ?= yes
++ endif
++else
+ SMP_STR = $(shell uname -v | grep -i "SMP")
+ ifeq (,$(SMP_STR))
+ ISSMP ?= no
+@@ -125,6 +133,7 @@ else
+ ISSMP ?= yes
+ endif
+ endif
++endif
+
+ OSREL = $(shell uname -r)
+ # numerical version (good for comparisons: A.B.C => A*1000000+B*1000+C)
+@@ -162,6 +171,9 @@ cfg-dir = etc/$(MAIN_NAME)/
+ bin-dir = sbin/
+
+ ARCH_B = $(shell echo $(ARCH) | sed -e 's/.*64.*/64b/')
++ifeq ($(OS),freebsd)
++ LIBDIR ?= lib
++else
+ ifeq ($(ARCH_B),64b)
+ LIBDIR ?= lib64
+ else
+@@ -169,6 +181,7 @@ else
+ # assume 32b - it is not really used further
+ ARCH_B=32b
+ endif
++endif
+
+ lib-dir = $(LIBDIR)/$(MAIN_NAME)
+ modules-dir = $(LIBDIR)/$(MAIN_NAME)/modules/
diff --git a/net/opensips/files/patch-io_wait.h b/net/opensips/files/patch-io_wait.h
new file mode 100644
index 000000000000..c82e39677daa
--- /dev/null
+++ b/net/opensips/files/patch-io_wait.h
@@ -0,0 +1,34 @@
+--- io_wait.h.orig 2015-05-07 14:13:54 UTC
++++ io_wait.h
+@@ -56,6 +56,7 @@
+
+ #include <errno.h>
+ #include <string.h>
++#include "ip_addr.h"
+ #ifdef HAVE_SIGIO_RT
+ #define __USE_GNU /* or else F_SETSIG won't be included */
+ #define _GNU_SOURCE /* define this as well */
+@@ -348,19 +349,21 @@ inline static int io_watch_add( io_wait_
+ goto error;
+ }
+ if (prio > h->max_prio) {
+- LM_BUG("[%s] priority %d requested (max is %d)\n",
++ LM_DBG("[%s] priority %d requested (max is %d)\n",
+ h->name, prio, h->max_prio);
+ goto error;
+ }
++#ifdef HAVE_EPOLL
+ LM_DBG("[%s] io_watch_add op (%d on %d) (%p, %d, %d, %p,%d), fd_no=%d/%d\n",
+ h->name,fd,h->epfd, h,fd,type,data,flags,h->fd_no,h->max_fd_no);
++#endif
+ //fd_array_print;
+ /* hash sanity check */
+ e=get_fd_map(h, fd);
+
+ if (e->flags & flags){
+ if (e->data != data) {
+- LM_BUG("[%s] BUG trying to overwrite entry %d"
++ LM_DBG("[%s] BUG trying to overwrite entry %d"
+ " in the hash(%d, %d, %p,%d) with (%d, %d, %p,%d)\n",
+ h->name,fd, e->fd, e->type, e->data,e->flags, fd, type, data,flags);
+ goto error;
diff --git a/net/opensips/files/patch-net__net_tcp.c b/net/opensips/files/patch-net__net_tcp.c
new file mode 100644
index 000000000000..a6a9392c7fef
--- /dev/null
+++ b/net/opensips/files/patch-net__net_tcp.c
@@ -0,0 +1,10 @@
+--- net/net_tcp.c.orig 2015-04-22 08:20:03 UTC
++++ net/net_tcp.c
+@@ -26,6 +26,7 @@
+
+ #include <sys/types.h>
+ #include <sys/socket.h>
++#include <netinet/in.h>
+ #include <netinet/in_systm.h>
+ #include <netinet/ip.h>
+ #include <netinet/tcp.h>
diff --git a/net/opensips/files/patch-net__net_tcp_proc.c b/net/opensips/files/patch-net__net_tcp_proc.c
new file mode 100644
index 000000000000..cb9b539837f6
--- /dev/null
+++ b/net/opensips/files/patch-net__net_tcp_proc.c
@@ -0,0 +1,10 @@
+--- net/net_tcp_proc.c.orig 2015-04-22 08:20:03 UTC
++++ net/net_tcp_proc.c
+@@ -26,6 +26,7 @@
+
+ #include "../timer.h"
+ #include "../reactor.h"
++#include "../pt.h"
+ #include "tcp_conn.h"
+ #include "tcp_passfd.h"
+
diff --git a/net/opensips/pkg-descr b/net/opensips/pkg-descr
new file mode 100644
index 000000000000..1a10807f91a7
--- /dev/null
+++ b/net/opensips/pkg-descr
@@ -0,0 +1,12 @@
+OpenSIPS (Open SIP Server) is a mature Open Source implementation
+of a SIP server.
+
+It includes application-level functionalities and is the core component
+of any SIP-based VoIP solution. With a very flexible and customizable
+routing engine, OpenSIPS unifies voice, video, IM and presence
+services in a highly efficient way, thanks to its scalable (modular)
+design.
+
+It is reliable and fast, for enterprise or carrier-grade use cases.
+
+WWW: http://www.opensips.org/
diff --git a/net/opensips/pkg-plist b/net/opensips/pkg-plist
new file mode 100644
index 000000000000..2f5d05d5b2ba
--- /dev/null
+++ b/net/opensips/pkg-plist
@@ -0,0 +1,598 @@
+@sample etc/opensips/opensips.cfg.sample
+@sample etc/opensips/opensipsctlrc.sample
+@sample etc/opensips/osipsconsolerc.sample
+%%RADIUS%%@sample etc/opensips/dictionary.opensips.sample
+lib/opensips/modules/acc.so
+lib/opensips/modules/alias_db.so
+lib/opensips/modules/auth.so
+lib/opensips/modules/auth_aaa.so
+lib/opensips/modules/auth_db.so
+lib/opensips/modules/avpops.so
+lib/opensips/modules/b2b_entities.so
+lib/opensips/modules/b2b_logic.so
+lib/opensips/modules/b2b_sca.so
+lib/opensips/modules/benchmark.so
+lib/opensips/modules/cachedb_local.so
+lib/opensips/modules/cachedb_sql.so
+lib/opensips/modules/call_center.so
+lib/opensips/modules/call_control.so
+lib/opensips/modules/carrierroute.so
+lib/opensips/modules/cfgutils.so
+lib/opensips/modules/cpl-c.so
+lib/opensips/modules/db_cachedb.so
+lib/opensips/modules/db_flatstore.so
+lib/opensips/modules/db_text.so
+lib/opensips/modules/db_virtual.so
+lib/opensips/modules/dialog.so
+lib/opensips/modules/dialplan.so
+lib/opensips/modules/dispatcher.so
+lib/opensips/modules/diversion.so
+lib/opensips/modules/dns_cache.so
+lib/opensips/modules/domain.so
+lib/opensips/modules/domainpolicy.so
+lib/opensips/modules/drouting.so
+lib/opensips/modules/enum.so
+lib/opensips/modules/event_datagram.so
+lib/opensips/modules/event_rabbitmq.so
+lib/opensips/modules/event_route.so
+lib/opensips/modules/event_xmlrpc.so
+lib/opensips/modules/exec.so
+lib/opensips/modules/fraud_detection.so
+lib/opensips/modules/gflags.so
+lib/opensips/modules/group.so
+lib/opensips/modules/identity.so
+lib/opensips/modules/imc.so
+lib/opensips/modules/jabber.so
+lib/opensips/modules/json.so
+lib/opensips/modules/load_balancer.so
+lib/opensips/modules/mangler.so
+lib/opensips/modules/mathops.so
+lib/opensips/modules/maxfwd.so
+lib/opensips/modules/mediaproxy.so
+lib/opensips/modules/mi_datagram.so
+lib/opensips/modules/mi_fifo.so
+lib/opensips/modules/mi_http.so
+lib/opensips/modules/mi_json.so
+lib/opensips/modules/mi_xmlrpc_ng.so
+lib/opensips/modules/msilo.so
+lib/opensips/modules/nat_traversal.so
+lib/opensips/modules/nathelper.so
+lib/opensips/modules/options.so
+lib/opensips/modules/path.so
+lib/opensips/modules/pdt.so
+lib/opensips/modules/peering.so
+lib/opensips/modules/perl.so
+lib/opensips/modules/permissions.so
+lib/opensips/modules/pi_http.so
+lib/opensips/modules/pike.so
+lib/opensips/modules/presence.so
+lib/opensips/modules/presence_callinfo.so
+lib/opensips/modules/presence_dialoginfo.so
+lib/opensips/modules/presence_mwi.so
+lib/opensips/modules/presence_xcapdiff.so
+lib/opensips/modules/presence_xml.so
+lib/opensips/modules/proto_ws.so
+lib/opensips/modules/pua.so
+lib/opensips/modules/pua_bla.so
+lib/opensips/modules/pua_dialoginfo.so
+lib/opensips/modules/pua_mi.so
+lib/opensips/modules/pua_usrloc.so
+lib/opensips/modules/pua_xmpp.so
+lib/opensips/modules/python.so
+lib/opensips/modules/qos.so
+lib/opensips/modules/ratelimit.so
+lib/opensips/modules/regex.so
+lib/opensips/modules/registrar.so
+lib/opensips/modules/rest_client.so
+lib/opensips/modules/rls.so
+lib/opensips/modules/rr.so
+lib/opensips/modules/rtpengine.so
+lib/opensips/modules/rtpproxy.so
+lib/opensips/modules/script_helper.so
+lib/opensips/modules/seas.so
+lib/opensips/modules/signaling.so
+lib/opensips/modules/sipcapture.so
+lib/opensips/modules/sipmsgops.so
+lib/opensips/modules/siptrace.so
+lib/opensips/modules/sl.so
+lib/opensips/modules/sms.so
+lib/opensips/modules/speeddial.so
+lib/opensips/modules/sst.so
+lib/opensips/modules/statistics.so
+lib/opensips/modules/stun.so
+lib/opensips/modules/textops.so
+lib/opensips/modules/tm.so
+lib/opensips/modules/topology_hiding.so
+lib/opensips/modules/uac.so
+lib/opensips/modules/uac_auth.so
+lib/opensips/modules/uac_redirect.so
+lib/opensips/modules/uac_registrant.so
+lib/opensips/modules/uri.so
+lib/opensips/modules/userblacklist.so
+lib/opensips/modules/usrloc.so
+lib/opensips/modules/xcap.so
+lib/opensips/modules/xcap_client.so
+lib/opensips/modules/xmpp.so
+%%GEOIP%%lib/opensips/modules/mmgeoip.so
+%%HTTP%%lib/opensips/modules/httpd.so
+%%LDAP%%lib/opensips/modules/h350.so
+%%LDAP%%lib/opensips/modules/ldap.so
+%%MEMCACHED%%lib/opensips/modules/cachedb_memcached.so
+%%MYSQL%%lib/opensips/modules/db_mysql.so
+%%MYSQL%%lib/opensips/opensipsctl/opensipsctl.mysql
+%%MYSQL%%lib/opensips/opensipsctl/opensipsdbctl.mysql
+%%PGSQL%%lib/opensips/modules/db_postgres.so
+%%PGSQL%%lib/opensips/opensipsctl/opensipsctl.pgsql
+%%PGSQL%%lib/opensips/opensipsctl/opensipsdbctl.pgsql
+%%RADIUS%%lib/opensips/modules/aaa_radius.so
+%%UNIXODBC%%lib/opensips/modules/db_unixodbc.so
+lib/opensips/opensipsctl/dbtextdb/dbtextdb.py
+lib/opensips/opensipsctl/opensipsctl.base
+lib/opensips/opensipsctl/opensipsctl.ctlbase
+lib/opensips/opensipsctl/opensipsctl.dbtext
+lib/opensips/opensipsctl/opensipsctl.fifo
+lib/opensips/opensipsctl/opensipsctl.sqlbase
+lib/opensips/opensipsctl/opensipsctl.unixsock
+lib/opensips/opensipsctl/opensipsdbctl.base
+lib/opensips/opensipsctl/opensipsdbctl.dbtext
+lib/opensips/perl/OpenSIPS.pm
+lib/opensips/perl/OpenSIPS/Constants.pm
+lib/opensips/perl/OpenSIPS/LDAPUtils/LDAPConf.pm
+lib/opensips/perl/OpenSIPS/LDAPUtils/LDAPConnection.pm
+lib/opensips/perl/OpenSIPS/Message.pm
+lib/opensips/perl/OpenSIPS/Utils/Debug.pm
+lib/opensips/perl/OpenSIPS/Utils/PhoneNumbers.pm
+lib/opensips/perl/OpenSIPS/VDB.pm
+lib/opensips/perl/OpenSIPS/VDB/Adapter/AccountingSIPtrace.pm
+lib/opensips/perl/OpenSIPS/VDB/Adapter/Alias.pm
+lib/opensips/perl/OpenSIPS/VDB/Adapter/Auth.pm
+lib/opensips/perl/OpenSIPS/VDB/Adapter/Describe.pm
+lib/opensips/perl/OpenSIPS/VDB/Adapter/Speeddial.pm
+lib/opensips/perl/OpenSIPS/VDB/Adapter/TableVersions.pm
+lib/opensips/perl/OpenSIPS/VDB/Column.pm
+lib/opensips/perl/OpenSIPS/VDB/Pair.pm
+lib/opensips/perl/OpenSIPS/VDB/ReqCond.pm
+lib/opensips/perl/OpenSIPS/VDB/Result.pm
+lib/opensips/perl/OpenSIPS/VDB/VTab.pm
+lib/opensips/perl/OpenSIPS/VDB/Value.pm
+man/man5/opensips.cfg.5.gz
+man/man8/opensips.8.gz
+man/man8/opensipsctl.8.gz
+man/man8/opensipsunix.8.gz
+sbin/opensips
+sbin/opensipsctl
+sbin/opensipsdbctl
+sbin/opensipsunix
+sbin/osipsconfig
+sbin/osipsconsole
+%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
+%%PORTDOCS%%%%DOCSDIR%%/INSTALL
+%%PORTDOCS%%%%DOCSDIR%%/NEWS
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/README-MODULES
+%%PORTDOCS%%%%DOCSDIR%%/README.acc
+%%PORTDOCS%%%%DOCSDIR%%/README.alias_db
+%%PORTDOCS%%%%DOCSDIR%%/README.auth
+%%PORTDOCS%%%%DOCSDIR%%/README.auth_aaa
+%%PORTDOCS%%%%DOCSDIR%%/README.auth_db
+%%PORTDOCS%%%%DOCSDIR%%/README.avpops
+%%PORTDOCS%%%%DOCSDIR%%/README.b2b_entities
+%%PORTDOCS%%%%DOCSDIR%%/README.b2b_logic
+%%PORTDOCS%%%%DOCSDIR%%/README.b2b_sca
+%%PORTDOCS%%%%DOCSDIR%%/README.benchmark
+%%PORTDOCS%%%%DOCSDIR%%/README.cachedb_local
+%%PORTDOCS%%%%DOCSDIR%%/README.cachedb_sql
+%%PORTDOCS%%%%DOCSDIR%%/README.call_center
+%%PORTDOCS%%%%DOCSDIR%%/README.call_control
+%%PORTDOCS%%%%DOCSDIR%%/README.carrierroute
+%%PORTDOCS%%%%DOCSDIR%%/README.cfgutils
+%%PORTDOCS%%%%DOCSDIR%%/README.cpl-c
+%%PORTDOCS%%%%DOCSDIR%%/README.db_cachedb
+%%PORTDOCS%%%%DOCSDIR%%/README.db_flatstore
+%%PORTDOCS%%%%DOCSDIR%%/README.db_text
+%%PORTDOCS%%%%DOCSDIR%%/README.db_virtual
+%%PORTDOCS%%%%DOCSDIR%%/README.dialog
+%%PORTDOCS%%%%DOCSDIR%%/README.dialplan
+%%PORTDOCS%%%%DOCSDIR%%/README.dispatcher
+%%PORTDOCS%%%%DOCSDIR%%/README.diversion
+%%PORTDOCS%%%%DOCSDIR%%/README.dns_cache
+%%PORTDOCS%%%%DOCSDIR%%/README.domain
+%%PORTDOCS%%%%DOCSDIR%%/README.domainpolicy
+%%PORTDOCS%%%%DOCSDIR%%/README.drouting
+%%PORTDOCS%%%%DOCSDIR%%/README.enum
+%%PORTDOCS%%%%DOCSDIR%%/README.event_datagram
+%%PORTDOCS%%%%DOCSDIR%%/README.event_rabbitmq
+%%PORTDOCS%%%%DOCSDIR%%/README.event_route
+%%PORTDOCS%%%%DOCSDIR%%/README.event_xmlrpc
+%%PORTDOCS%%%%DOCSDIR%%/README.exec
+%%PORTDOCS%%%%DOCSDIR%%/README.fraud_detection
+%%PORTDOCS%%%%DOCSDIR%%/README.gflags
+%%PORTDOCS%%%%DOCSDIR%%/README.group
+%%PORTDOCS%%%%DOCSDIR%%/README.identity
+%%PORTDOCS%%%%DOCSDIR%%/README.imc
+%%PORTDOCS%%%%DOCSDIR%%/README.jabber
+%%PORTDOCS%%%%DOCSDIR%%/README.json
+%%PORTDOCS%%%%DOCSDIR%%/README.load_balancer
+%%PORTDOCS%%%%DOCSDIR%%/README.mangler
+%%PORTDOCS%%%%DOCSDIR%%/README.mathops
+%%PORTDOCS%%%%DOCSDIR%%/README.maxfwd
+%%PORTDOCS%%%%DOCSDIR%%/README.mediaproxy
+%%PORTDOCS%%%%DOCSDIR%%/README.mi_datagram
+%%PORTDOCS%%%%DOCSDIR%%/README.mi_fifo
+%%PORTDOCS%%%%DOCSDIR%%/README.mi_http
+%%PORTDOCS%%%%DOCSDIR%%/README.mi_json
+%%PORTDOCS%%%%DOCSDIR%%/README.mi_xmlrpc_ng
+%%PORTDOCS%%%%DOCSDIR%%/README.msilo
+%%PORTDOCS%%%%DOCSDIR%%/README.nat_traversal
+%%PORTDOCS%%%%DOCSDIR%%/README.nathelper
+%%PORTDOCS%%%%DOCSDIR%%/README.options
+%%PORTDOCS%%%%DOCSDIR%%/README.path
+%%PORTDOCS%%%%DOCSDIR%%/README.pdt
+%%PORTDOCS%%%%DOCSDIR%%/README.peering
+%%PORTDOCS%%%%DOCSDIR%%/README.perl
+%%PORTDOCS%%%%DOCSDIR%%/README.permissions
+%%PORTDOCS%%%%DOCSDIR%%/README.pi_http
+%%PORTDOCS%%%%DOCSDIR%%/README.pike
+%%PORTDOCS%%%%DOCSDIR%%/README.presence
+%%PORTDOCS%%%%DOCSDIR%%/README.presence_callinfo
+%%PORTDOCS%%%%DOCSDIR%%/README.presence_dialoginfo
+%%PORTDOCS%%%%DOCSDIR%%/README.presence_mwi
+%%PORTDOCS%%%%DOCSDIR%%/README.presence_xcapdiff
+%%PORTDOCS%%%%DOCSDIR%%/README.presence_xml
+%%PORTDOCS%%%%DOCSDIR%%/README.proto_ws
+%%PORTDOCS%%%%DOCSDIR%%/README.pua
+%%PORTDOCS%%%%DOCSDIR%%/README.pua_bla
+%%PORTDOCS%%%%DOCSDIR%%/README.pua_dialoginfo
+%%PORTDOCS%%%%DOCSDIR%%/README.pua_mi
+%%PORTDOCS%%%%DOCSDIR%%/README.pua_usrloc
+%%PORTDOCS%%%%DOCSDIR%%/README.pua_xmpp
+%%PORTDOCS%%%%DOCSDIR%%/README.python
+%%PORTDOCS%%%%DOCSDIR%%/README.qos
+%%PORTDOCS%%%%DOCSDIR%%/README.ratelimit
+%%PORTDOCS%%%%DOCSDIR%%/README.regex
+%%PORTDOCS%%%%DOCSDIR%%/README.registrar
+%%PORTDOCS%%%%DOCSDIR%%/README.rest_client
+%%PORTDOCS%%%%DOCSDIR%%/README.rls
+%%PORTDOCS%%%%DOCSDIR%%/README.rr
+%%PORTDOCS%%%%DOCSDIR%%/README.rtpengine
+%%PORTDOCS%%%%DOCSDIR%%/README.rtpproxy
+%%PORTDOCS%%%%DOCSDIR%%/README.script_helper
+%%PORTDOCS%%%%DOCSDIR%%/README.seas
+%%PORTDOCS%%%%DOCSDIR%%/README.signaling
+%%PORTDOCS%%%%DOCSDIR%%/README.sipcapture
+%%PORTDOCS%%%%DOCSDIR%%/README.sipmsgops
+%%PORTDOCS%%%%DOCSDIR%%/README.siptrace
+%%PORTDOCS%%%%DOCSDIR%%/README.sl
+%%PORTDOCS%%%%DOCSDIR%%/README.sms
+%%PORTDOCS%%%%DOCSDIR%%/README.speeddial
+%%PORTDOCS%%%%DOCSDIR%%/README.sst
+%%PORTDOCS%%%%DOCSDIR%%/README.statistics
+%%PORTDOCS%%%%DOCSDIR%%/README.stun
+%%PORTDOCS%%%%DOCSDIR%%/README.textops
+%%PORTDOCS%%%%DOCSDIR%%/README.tm
+%%PORTDOCS%%%%DOCSDIR%%/README.topology_hiding
+%%PORTDOCS%%%%DOCSDIR%%/README.uac
+%%PORTDOCS%%%%DOCSDIR%%/README.uac_auth
+%%PORTDOCS%%%%DOCSDIR%%/README.uac_redirect
+%%PORTDOCS%%%%DOCSDIR%%/README.uac_registrant
+%%PORTDOCS%%%%DOCSDIR%%/README.uri
+%%PORTDOCS%%%%DOCSDIR%%/README.userblacklist
+%%PORTDOCS%%%%DOCSDIR%%/README.usrloc
+%%PORTDOCS%%%%DOCSDIR%%/README.xcap
+%%PORTDOCS%%%%DOCSDIR%%/README.xcap_client
+%%PORTDOCS%%%%DOCSDIR%%/README.xmpp
+%%PORTDOCS%%%%GEOIP%%%%DOCSDIR%%/README.mmgeoip
+%%PORTDOCS%%%%HTTP%%%%DOCSDIR%%/README.httpd
+%%PORTDOCS%%%%LDAP%%%%DOCSDIR%%/README.h350
+%%PORTDOCS%%%%LDAP%%%%DOCSDIR%%/README.ldap
+%%PORTDOCS%%%%MEMCACHED%%%%DOCSDIR%%/README.cachedb_memcached
+%%PORTDOCS%%%%MYSQL%%%%DOCSDIR%%/README.db_mysql
+%%PORTDOCS%%%%PGSQL%%%%DOCSDIR%%/README.db_postgres
+%%PORTDOCS%%%%RADIUS%%%%DOCSDIR%%/README.aaa_radius
+%%PORTDOCS%%%%UNIXODBC%%%%DOCSDIR%%/README.db_unixodbc
+%%DATADIR%%/dbtext/opensips/acc
+%%DATADIR%%/dbtext/opensips/active_watchers
+%%DATADIR%%/dbtext/opensips/address
+%%DATADIR%%/dbtext/opensips/aliases
+%%DATADIR%%/dbtext/opensips/b2b_entities
+%%DATADIR%%/dbtext/opensips/b2b_logic
+%%DATADIR%%/dbtext/opensips/b2b_sca
+%%DATADIR%%/dbtext/opensips/cachedb
+%%DATADIR%%/dbtext/opensips/carrierfailureroute
+%%DATADIR%%/dbtext/opensips/carrierroute
+%%DATADIR%%/dbtext/opensips/cc_agents
+%%DATADIR%%/dbtext/opensips/cc_calls
+%%DATADIR%%/dbtext/opensips/cc_cdrs
+%%DATADIR%%/dbtext/opensips/cc_flows
+%%DATADIR%%/dbtext/opensips/closeddial
+%%DATADIR%%/dbtext/opensips/cpl
+%%DATADIR%%/dbtext/opensips/dbaliases
+%%DATADIR%%/dbtext/opensips/dialog
+%%DATADIR%%/dbtext/opensips/dialplan
+%%DATADIR%%/dbtext/opensips/dispatcher
+%%DATADIR%%/dbtext/opensips/domain
+%%DATADIR%%/dbtext/opensips/domainpolicy
+%%DATADIR%%/dbtext/opensips/dr_carriers
+%%DATADIR%%/dbtext/opensips/dr_gateways
+%%DATADIR%%/dbtext/opensips/dr_groups
+%%DATADIR%%/dbtext/opensips/dr_rules
+%%DATADIR%%/dbtext/opensips/globalblacklist
+%%DATADIR%%/dbtext/opensips/grp
+%%DATADIR%%/dbtext/opensips/imc_members
+%%DATADIR%%/dbtext/opensips/imc_rooms
+%%DATADIR%%/dbtext/opensips/load_balancer
+%%DATADIR%%/dbtext/opensips/location
+%%DATADIR%%/dbtext/opensips/missed_calls
+%%DATADIR%%/dbtext/opensips/pdt
+%%DATADIR%%/dbtext/opensips/presentity
+%%DATADIR%%/dbtext/opensips/pua
+%%DATADIR%%/dbtext/opensips/re_grp
+%%DATADIR%%/dbtext/opensips/registrant
+%%DATADIR%%/dbtext/opensips/rls_presentity
+%%DATADIR%%/dbtext/opensips/rls_watchers
+%%DATADIR%%/dbtext/opensips/route_tree
+%%DATADIR%%/dbtext/opensips/rtpproxy_sockets
+%%DATADIR%%/dbtext/opensips/silo
+%%DATADIR%%/dbtext/opensips/sip_trace
+%%DATADIR%%/dbtext/opensips/speed_dial
+%%DATADIR%%/dbtext/opensips/subscriber
+%%DATADIR%%/dbtext/opensips/uri
+%%DATADIR%%/dbtext/opensips/userblacklist
+%%DATADIR%%/dbtext/opensips/usr_preferences
+%%DATADIR%%/dbtext/opensips/version
+%%DATADIR%%/dbtext/opensips/watchers
+%%DATADIR%%/dbtext/opensips/xcap
+%%DATADIR%%/menuconfig_templates/opensips_loadbalancer.m4
+%%DATADIR%%/menuconfig_templates/opensips_loadbalancer.m4-e
+%%DATADIR%%/menuconfig_templates/opensips_loadbalancer_def.m4
+%%DATADIR%%/menuconfig_templates/opensips_loadbalancer_def.m4-e
+%%DATADIR%%/menuconfig_templates/opensips_residential.m4
+%%DATADIR%%/menuconfig_templates/opensips_residential.m4-e
+%%DATADIR%%/menuconfig_templates/opensips_residential_def.m4
+%%DATADIR%%/menuconfig_templates/opensips_residential_def.m4-e
+%%DATADIR%%/menuconfig_templates/opensips_trunking.m4
+%%DATADIR%%/menuconfig_templates/opensips_trunking.m4-e
+%%DATADIR%%/menuconfig_templates/opensips_trunking_def.m4
+%%DATADIR%%/menuconfig_templates/opensips_trunking_def.m4-e
+%%DATADIR%%/pi_http/acc-mod
+%%DATADIR%%/pi_http/acc-table
+%%DATADIR%%/pi_http/alias_db-mod
+%%DATADIR%%/pi_http/alias_db-table
+%%DATADIR%%/pi_http/auth_db-mod
+%%DATADIR%%/pi_http/auth_db-table
+%%DATADIR%%/pi_http/avpops-mod
+%%DATADIR%%/pi_http/avpops-table
+%%DATADIR%%/pi_http/b2b-mod
+%%DATADIR%%/pi_http/b2b-table
+%%DATADIR%%/pi_http/b2b_sca-mod
+%%DATADIR%%/pi_http/b2b_sca-table
+%%DATADIR%%/pi_http/cachedb_sql-mod
+%%DATADIR%%/pi_http/cachedb_sql-table
+%%DATADIR%%/pi_http/call_center-mod
+%%DATADIR%%/pi_http/call_center-table
+%%DATADIR%%/pi_http/carrierroute-mod
+%%DATADIR%%/pi_http/carrierroute-table
+%%DATADIR%%/pi_http/closeddial-mod
+%%DATADIR%%/pi_http/closeddial-table
+%%DATADIR%%/pi_http/cpl-mod
+%%DATADIR%%/pi_http/cpl-table
+%%DATADIR%%/pi_http/dialog-mod
+%%DATADIR%%/pi_http/dialog-table
+%%DATADIR%%/pi_http/dialplan-mod
+%%DATADIR%%/pi_http/dialplan-table
+%%DATADIR%%/pi_http/dispatcher-mod
+%%DATADIR%%/pi_http/dispatcher-table
+%%DATADIR%%/pi_http/domain-mod
+%%DATADIR%%/pi_http/domain-table
+%%DATADIR%%/pi_http/domainpolicy-mod
+%%DATADIR%%/pi_http/domainpolicy-table
+%%DATADIR%%/pi_http/drouting-mod
+%%DATADIR%%/pi_http/drouting-table
+%%DATADIR%%/pi_http/group-mod
+%%DATADIR%%/pi_http/group-table
+%%DATADIR%%/pi_http/imc-mod
+%%DATADIR%%/pi_http/imc-table
+%%DATADIR%%/pi_http/load_balancer-mod
+%%DATADIR%%/pi_http/load_balancer-table
+%%DATADIR%%/pi_http/msilo-mod
+%%DATADIR%%/pi_http/msilo-table
+%%DATADIR%%/pi_http/pdt-mod
+%%DATADIR%%/pi_http/pdt-table
+%%DATADIR%%/pi_http/permissions-mod
+%%DATADIR%%/pi_http/permissions-table
+%%DATADIR%%/pi_http/pi_framework-00
+%%DATADIR%%/pi_http/pi_framework-01
+%%DATADIR%%/pi_http/pi_framework-02
+%%DATADIR%%/pi_http/pi_framework.xml
+%%DATADIR%%/pi_http/pi_framework_example.xml
+%%DATADIR%%/pi_http/presence-mod
+%%DATADIR%%/pi_http/presence-table
+%%DATADIR%%/pi_http/registrant-mod
+%%DATADIR%%/pi_http/registrant-table
+%%DATADIR%%/pi_http/registrar-mod
+%%DATADIR%%/pi_http/registrar-table
+%%DATADIR%%/pi_http/rls-mod
+%%DATADIR%%/pi_http/rls-table
+%%DATADIR%%/pi_http/rtpproxy-mod
+%%DATADIR%%/pi_http/rtpproxy-table
+%%DATADIR%%/pi_http/siptrace-mod
+%%DATADIR%%/pi_http/siptrace-table
+%%DATADIR%%/pi_http/speeddial-mod
+%%DATADIR%%/pi_http/speeddial-table
+%%DATADIR%%/pi_http/standard-mod
+%%DATADIR%%/pi_http/standard-table
+%%DATADIR%%/pi_http/uri_db-mod
+%%DATADIR%%/pi_http/uri_db-table
+%%DATADIR%%/pi_http/userblacklist-mod
+%%DATADIR%%/pi_http/userblacklist-table
+%%DATADIR%%/pi_http/usrloc-mod
+%%DATADIR%%/pi_http/usrloc-table
+%%MYSQL%%share/opensips/mysql/acc-create.sql
+%%MYSQL%%share/opensips/mysql/alias_db-create.sql
+%%MYSQL%%share/opensips/mysql/auth_db-create.sql
+%%MYSQL%%share/opensips/mysql/avpops-create.sql
+%%MYSQL%%share/opensips/mysql/b2b-create.sql
+%%MYSQL%%share/opensips/mysql/b2b_sca-create.sql
+%%MYSQL%%share/opensips/mysql/cachedb_sql-create.sql
+%%MYSQL%%share/opensips/mysql/call_center-create.sql
+%%MYSQL%%share/opensips/mysql/carrierroute-create.sql
+%%MYSQL%%share/opensips/mysql/closeddial-create.sql
+%%MYSQL%%share/opensips/mysql/cpl-create.sql
+%%MYSQL%%share/opensips/mysql/dialog-create.sql
+%%MYSQL%%share/opensips/mysql/dialplan-create.sql
+%%MYSQL%%share/opensips/mysql/dispatcher-create.sql
+%%MYSQL%%share/opensips/mysql/domain-create.sql
+%%MYSQL%%share/opensips/mysql/domainpolicy-create.sql
+%%MYSQL%%share/opensips/mysql/drouting-create.sql
+%%MYSQL%%share/opensips/mysql/group-create.sql
+%%MYSQL%%share/opensips/mysql/imc-create.sql
+%%MYSQL%%share/opensips/mysql/load_balancer-create.sql
+%%MYSQL%%share/opensips/mysql/msilo-create.sql
+%%MYSQL%%share/opensips/mysql/pdt-create.sql
+%%MYSQL%%share/opensips/mysql/permissions-create.sql
+%%MYSQL%%share/opensips/mysql/presence-create.sql
+%%MYSQL%%share/opensips/mysql/registrant-create.sql
+%%MYSQL%%share/opensips/mysql/registrar-create.sql
+%%MYSQL%%share/opensips/mysql/rls-create.sql
+%%MYSQL%%share/opensips/mysql/rtpproxy-create.sql
+%%MYSQL%%share/opensips/mysql/siptrace-create.sql
+%%MYSQL%%share/opensips/mysql/speeddial-create.sql
+%%MYSQL%%share/opensips/mysql/standard-create.sql
+%%MYSQL%%share/opensips/mysql/uri_db-create.sql
+%%MYSQL%%share/opensips/mysql/userblacklist-create.sql
+%%MYSQL%%share/opensips/mysql/usrloc-create.sql
+%%PGSQL%%share/opensips/postgres/acc-create.sql
+%%PGSQL%%share/opensips/postgres/alias_db-create.sql
+%%PGSQL%%share/opensips/postgres/auth_db-create.sql
+%%PGSQL%%share/opensips/postgres/avpops-create.sql
+%%PGSQL%%share/opensips/postgres/b2b-create.sql
+%%PGSQL%%share/opensips/postgres/b2b_sca-create.sql
+%%PGSQL%%share/opensips/postgres/cachedb_sql-create.sql
+%%PGSQL%%share/opensips/postgres/call_center-create.sql
+%%PGSQL%%share/opensips/postgres/carrierroute-create.sql
+%%PGSQL%%share/opensips/postgres/closeddial-create.sql
+%%PGSQL%%share/opensips/postgres/cpl-create.sql
+%%PGSQL%%share/opensips/postgres/dialog-create.sql
+%%PGSQL%%share/opensips/postgres/dialplan-create.sql
+%%PGSQL%%share/opensips/postgres/dispatcher-create.sql
+%%PGSQL%%share/opensips/postgres/domain-create.sql
+%%PGSQL%%share/opensips/postgres/domainpolicy-create.sql
+%%PGSQL%%share/opensips/postgres/drouting-create.sql
+%%PGSQL%%share/opensips/postgres/group-create.sql
+%%PGSQL%%share/opensips/postgres/imc-create.sql
+%%PGSQL%%share/opensips/postgres/load_balancer-create.sql
+%%PGSQL%%share/opensips/postgres/msilo-create.sql
+%%PGSQL%%share/opensips/postgres/pdt-create.sql
+%%PGSQL%%share/opensips/postgres/permissions-create.sql
+%%PGSQL%%share/opensips/postgres/presence-create.sql
+%%PGSQL%%share/opensips/postgres/registrant-create.sql
+%%PGSQL%%share/opensips/postgres/registrar-create.sql
+%%PGSQL%%share/opensips/postgres/rls-create.sql
+%%PGSQL%%share/opensips/postgres/rtpproxy-create.sql
+%%PGSQL%%share/opensips/postgres/siptrace-create.sql
+%%PGSQL%%share/opensips/postgres/speeddial-create.sql
+%%PGSQL%%share/opensips/postgres/standard-create.sql
+%%PGSQL%%share/opensips/postgres/uri_db-create.sql
+%%PGSQL%%share/opensips/postgres/userblacklist-create.sql
+%%PGSQL%%share/opensips/postgres/usrloc-create.sql
+%%TESTS%%tests/opensips/1.sh
+%%TESTS%%tests/opensips/10.sh
+%%TESTS%%tests/opensips/11.cfg
+%%TESTS%%tests/opensips/11.sh
+%%TESTS%%tests/opensips/12.cfg
+%%TESTS%%tests/opensips/12.sh
+%%TESTS%%tests/opensips/13.cfg
+%%TESTS%%tests/opensips/13.sh
+%%TESTS%%tests/opensips/14.cfg
+%%TESTS%%tests/opensips/14.sh
+%%TESTS%%tests/opensips/15.sh
+%%TESTS%%tests/opensips/16.sh
+%%TESTS%%tests/opensips/17.sh
+%%TESTS%%tests/opensips/18.sh
+%%TESTS%%tests/opensips/19.cfg
+%%TESTS%%tests/opensips/19.sh
+%%TESTS%%tests/opensips/2.cfg
+%%TESTS%%tests/opensips/2.sh
+%%TESTS%%tests/opensips/20.cfg
+%%TESTS%%tests/opensips/20.sh
+%%TESTS%%tests/opensips/21.cfg
+%%TESTS%%tests/opensips/21.sh
+%%TESTS%%tests/opensips/22.sh
+%%TESTS%%tests/opensips/23.sh
+%%TESTS%%tests/opensips/24.sh
+%%TESTS%%tests/opensips/25.cfg
+%%TESTS%%tests/opensips/25.sh
+%%TESTS%%tests/opensips/26.cfg
+%%TESTS%%tests/opensips/26.sh
+%%TESTS%%tests/opensips/27.sh
+%%TESTS%%tests/opensips/28.cfg
+%%TESTS%%tests/opensips/28.sh
+%%TESTS%%tests/opensips/29.sh
+%%TESTS%%tests/opensips/3.sh
+%%TESTS%%tests/opensips/30.cfg
+%%TESTS%%tests/opensips/30.sh
+%%TESTS%%tests/opensips/31.sh
+%%TESTS%%tests/opensips/32.sh
+%%TESTS%%tests/opensips/33.cfg
+%%TESTS%%tests/opensips/33.sh
+%%TESTS%%tests/opensips/34.cfg
+%%TESTS%%tests/opensips/34.sh
+%%TESTS%%tests/opensips/35.cfg
+%%TESTS%%tests/opensips/35.sh
+%%TESTS%%tests/opensips/4.sh
+%%TESTS%%tests/opensips/5.cfg
+%%TESTS%%tests/opensips/5.sh
+%%TESTS%%tests/opensips/6.sh
+%%TESTS%%tests/opensips/7.cfg
+%%TESTS%%tests/opensips/7.sh
+%%TESTS%%tests/opensips/8.sh
+%%TESTS%%tests/opensips/9.sh
+%%TESTS%%tests/opensips/Makefile
+%%TESTS%%tests/opensips/README
+%%TESTS%%tests/opensips/carrierroute-2.cfg
+%%TESTS%%tests/opensips/carrierroute.cfg
+%%TESTS%%tests/opensips/cpl_ignore.xml
+%%TESTS%%tests/opensips/cpl_test.xml
+%%TESTS%%tests/opensips/failure_route.xml
+%%TESTS%%tests/opensips/include/common
+%%TESTS%%tests/opensips/include/require
+%%TESTS%%tests/opensips/inv_auth.xml
+%%TESTS%%tests/opensips/presence.cfg
+%%TESTS%%tests/opensips/publish.csv
+%%TESTS%%tests/opensips/publish_scenario.xml
+%%TESTS%%tests/opensips/reg_auth.xml
+%%TESTS%%tests/opensips/register.sip
+%%TESTS%%tests/opensips/subscribe_notify.csv
+%%TESTS%%tests/opensips/subscribe_notify_scenario.xml
+%%TESTS%%tests/opensips/unregister.sip
+%%EXAMPLES%%share/examples/opensips/acc-mysql.cfg
+%%EXAMPLES%%share/examples/opensips/acc.cfg
+%%EXAMPLES%%share/examples/opensips/ctd.sh
+%%EXAMPLES%%share/examples/opensips/exec_s3.cfg
+%%EXAMPLES%%share/examples/opensips/exec_s4.cfg
+%%EXAMPLES%%share/examples/opensips/exec_s5.cfg
+%%EXAMPLES%%share/examples/opensips/flag_reply.cfg
+%%EXAMPLES%%share/examples/opensips/fork.cfg
+%%EXAMPLES%%share/examples/opensips/httpd.cfg
+%%EXAMPLES%%share/examples/opensips/logging.cfg
+%%EXAMPLES%%share/examples/opensips/msilo.cfg
+%%EXAMPLES%%share/examples/opensips/nathelper.cfg
+%%EXAMPLES%%share/examples/opensips/pi_framework.xml
+%%EXAMPLES%%share/examples/opensips/pstn.cfg
+%%EXAMPLES%%share/examples/opensips/redirect.cfg
+%%EXAMPLES%%share/examples/opensips/replicate.cfg
+%%EXAMPLES%%share/examples/opensips/serial_183.cfg
+%%EXAMPLES%%share/examples/opensips/web_im/README
+%%EXAMPLES%%share/examples/opensips/web_im/click_to_dial.html
+%%EXAMPLES%%share/examples/opensips/web_im/click_to_dial.php
+%%EXAMPLES%%share/examples/opensips/web_im/send_im.html
+%%EXAMPLES%%share/examples/opensips/web_im/send_im.php
+%%DATADIR%%/dbtext/opensips/dr_partitions
+%%DATADIR%%/dbtext/opensips/fraud_detection
+%%DATADIR%%/pi_http/fraud_detection-mod
+%%DATADIR%%/pi_http/fraud_detection-table
+%%PGSQL%%%%DATADIR%%/postgres/fraud_detection-create.sql
+%%MYSQL%%%%DATADIR%%/mysql/fraud_detection-create.sql
+@dir %%ETCDIR%%/tls/rootCA/certs
+@dir %%ETCDIR%%/tls/rootCA/private
+@dir %%ETCDIR%%/tls/user