aboutsummaryrefslogtreecommitdiffstats
path: root/main/kamailio
diff options
context:
space:
mode:
Diffstat (limited to 'main/kamailio')
-rw-r--r--main/kamailio/APKBUILD105
-rw-r--r--main/kamailio/kamailio-3-backslash.patch (renamed from main/kamailio/kamailio-backslash.patch)4
-rw-r--r--main/kamailio/kamailio.cfg56
-rw-r--r--main/kamailio/kamailio.initd2
-rw-r--r--main/kamailio/kamailio.pre-install4
5 files changed, 103 insertions, 68 deletions
diff --git a/main/kamailio/APKBUILD b/main/kamailio/APKBUILD
index 84355bb18a..fe066f4663 100644
--- a/main/kamailio/APKBUILD
+++ b/main/kamailio/APKBUILD
@@ -1,33 +1,54 @@
# Contributor: Michael Mason <ms13sp@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=kamailio
-pkgver=1.5.4
-pkgrel=1
+pkgver=3.0.2
+pkgrel=4
pkgdesc="Open Source SIP Server"
url="http://www.kamailio.org/"
pkgusers="kamailio"
pkggroups="kamailio"
license="GPL"
depends=
-makedepends="bison flex expat-dev postgresql-dev mysql-dev pcre-dev
+makedepends="bison flex expat-dev postgresql-dev pcre-dev mysql-dev
libxml2-dev curl-dev unixodbc-dev confuse-dev"
-install="$pkgname.pre-install $pkgname.post-install"
-subpackages="$pkgname-doc $pkgname-mysql $pkgname-postgres $pkgname-pcre
- $pkgname-presence $pkgname-mediaproxy $pkgname-unixodbc"
-source="http://www.kamailio.org/pub/kamailio/$pkgver/src/$pkgname-$pkgver-notls_src.tar.gz
+install=
+subpackages="$pkgname-doc $pkgname-postgres $pkgname-presence $pkgname-pcre
+ $pkgname-mediaproxy $pkgname-unixodbc $pkgname-mysql"
+source="http://www.kamailio.org/pub/kamailio/$pkgver/src/kamailio-${pkgver}_src.tar.gz
kamailio.cfg
kamailio.initd
- kamailio-backslash.patch
+ kamailio.pre-install
+ kamailio.post-install
+ kamailio-3-backslash.patch
"
+_builddir="$srcdir"/$pkgname-$pkgver
+
+
+_default="carrierroute xmlrpc tm"
+_presence="presence presence_xml presence_mwi pua pua_bla pua_mi pua_usrloc pua_xmpp rls xcap_client presence_dialoginfo pua_dialoginfo"
+_pcre="dialplan lcr regex"
+_postgres="db_postgres"
+_mysql="db_mysql"
+_mediaproxy="mediaproxy"
+_odbc="db_unixodbc"
+# Makefile does not handle newline
+_modules="$_default $_postgres $_mediaproxy $_odbc $_presence $_mysql $_pcre"
+
+
prepare() {
- cd "$srcdir/$pkgname-$pkgver-notls"
- patch -p1 -i "$srcdir"/kamailio-backslash.patch || return 1
+ cd "$_builddir"
+ patch -p1 -i "$srcdir"/kamailio-3-backslash.patch || return 1
- sed -i -e 's:^cfg-target.*:cfg-target = $(cfg-dir):' \
- -e 's:^cfg-prefix.*:cfg-prefix = $(basedir):' Makefile.defs \
+ sed -i \
+ -e "s:-O9 -funroll-loops:$CFLAGS:g" \
+ Makefile.defs \
|| return 1
- cd scripts
+
+# -e 's:^cfg-target.*:cfg-target = $(cfg-dir):' \
+# -e 's:^cfg-prefix.*:cfg-prefix = $(basedir):' \
+
+ cd utils/kamctl/
sed -i -e 's:/var/run/kamailio.pid:/var/run/kamailio/kamailio.pid:g' \
kamctl.base kamctlrc || return 1
# we actually dont need bash
@@ -37,32 +58,37 @@ prepare() {
cd dbtext/kamailio
sed -i -e 's:email_address(string):email_address(string,null):' subscriber \
|| return 1
+
}
build() {
- cd "$srcdir/$pkgname-$pkgver-notls"
- make prefix=/usr \
- cfg-dir=/etc/kamailio/ \
+ cd "$_builddir"
+
+ # workaround parallel build issue
+ make -C lib/kcore strcommon.o || return 1
+
+ make LOCALBASE=/usr \
+ cfg_target=/etc/kamailio/ \
MODS_MYSQL=yes \
MODS_PCRE=yes \
- MODS_PRESENCE=yes \
MODS_RADIUS= \
TLS= \
- include_modules="db_postgres mediaproxy db_unixodbc carrierroute" \
+ include_modules="$_modules" \
all || return 1
}
package() {
- cd "$srcdir/$pkgname-$pkgver-notls"
- make prefix=/usr \
- cfg-dir=/etc/kamailio/ \
+ cd "$_builddir"
+ make LOCALBASE=/usr \
+ cfg_target=/etc/kamailio/ \
MODS_MYSQL=yes \
MODS_PCRE=yes \
- MODS_PRESENCE=yes \
MODS_RADIUS= \
TLS= \
- include_modules="db_postgres mediaproxy db_unixodbc carrierroute" \
- basedir="$pkgdir" install || return 1
+ include_modules="$_modules" \
+ basedir="$pkgdir" \
+ cfg_prefix="$pkgdir" \
+ install || return 1
# move default config to -doc package and use our own default config
@@ -83,6 +109,14 @@ _mv_mod() {
done
}
+_mv_mod_k() {
+ local moddir=usr/lib/kamailio/modules_k i=
+ mkdir -p "$subpkgdir"/$moddir
+ for i in $@; do
+ mv "$pkgdir"/$moddir/$i.so "$subpkgdir"/$moddir/ || return 1
+ done
+}
+
mysql() {
pkgdesc="MySQL support for kamailio"
@@ -104,29 +138,30 @@ postgres() {
pcre() {
pkgdesc="Regular expressions support for kamailio"
- _mv_mod dialplan lcr regex
+ _mv_mod dialplan lcr
+ _mv_mod_k regex
}
presence() {
- pkgdesc="Precense support for kamailio"
- _mv_mod presence presence_xml presence_mwi pua pua_bla pua_mi \
- pua_usrloc pua_xmpp rls xcap_client presence_dialoginfo \
- pua_dialoginfo
+ pkgdesc="Presence support for kamailio"
+ _mv_mod_k $_presence
}
mediaproxy() {
pkgdesc="Mediaproxy support for kamailio"
depends="kamailio"
- _mv_mod mediaproxy
+ _mv_mod $_mediaproxy
}
unixodbc() {
pkgdesc="UnixODBC support for kamailio"
depends="kamailio"
- _mv_mod db_unixodbc
+ _mv_mod_k $_odbc
}
-md5sums="127233aff2f20566b54f84555602132d kamailio-1.5.4-notls_src.tar.gz
-eb665248ee39cf755a247286affc5cbb kamailio.cfg
-8ac6c260f090aea0ca344f18f9a2a904 kamailio.initd
-3259980a45d9ad3fc6fca83414021d07 kamailio-backslash.patch"
+md5sums="dd039e078a77032a423fb15f9685ad31 kamailio-3.0.2_src.tar.gz
+a3c959ec568c43a905710e7d25cd8c25 kamailio.cfg
+81100c479890a2a8c2628db22fdd1a0c kamailio.initd
+c646af2dd31f5c4289a2f802c873d98f kamailio.pre-install
+3fbaf633ff1620d0d526fc4047c7bed9 kamailio.post-install
+36f81be3a082a81497e261ac8e6c5414 kamailio-3-backslash.patch"
diff --git a/main/kamailio/kamailio-backslash.patch b/main/kamailio/kamailio-3-backslash.patch
index 9cc6036895..f132aebab4 100644
--- a/main/kamailio/kamailio-backslash.patch
+++ b/main/kamailio/kamailio-3-backslash.patch
@@ -1,7 +1,7 @@
diff --git a/scripts/kamdbctl.base b/scripts/kamdbctl.base
index 83f5a8a..5b640be 100644
---- a/scripts/kamdbctl.base
-+++ b/scripts/kamdbctl.base
+--- a/utils/kamctl/kamdbctl.base
++++ b/utils/kamctl/kamdbctl.base
@@ -32,13 +32,13 @@ INSTALL_PRESENCE_TABLES=${INSTALL_PRESENCE_TABLES:-ask}
# Used by dbtext and db_berkeley to define tables to be created, used by
diff --git a/main/kamailio/kamailio.cfg b/main/kamailio/kamailio.cfg
index 9c101a871f..1558cce9ca 100644
--- a/main/kamailio/kamailio.cfg
+++ b/main/kamailio/kamailio.cfg
@@ -1,34 +1,39 @@
-# Demonstration Kamailio Configuration for AlpineLinux
-
+# Sample Kamailio Configuration
+# 23 June 2010 - For Alpine Linux
+# Accepts all registrations; routes calls to any registered AOR
#--------------------------------------------------------
# Section 1: Global Definitions
#--------------------------------------------------------
-debug = 3
+debug = 2
fork = yes
log_stderror = no
-listen = 0.0.0.0
+# listen = 0.0.0.0
port = 5060
children = 4
dns = no
rev_dns = no
-mpath = "/usr/lib/kamailio/modules/"
+mpath = "/usr/lib/kamailio/modules_k/:/usr/lib/kamailio/modules/"
+
#--------------------------------------------------------
# Section 2: Modules
#--------------------------------------------------------
-loadmodule "sl.so"
loadmodule "tm.so"
+loadmodule "sl.so"
+loadmodule "tmx.so"
loadmodule "rr.so"
loadmodule "maxfwd.so"
loadmodule "usrloc.so"
loadmodule "registrar.so"
loadmodule "mi_fifo.so"
+loadmodule "pv.so"
+loadmodule "xlog.so"
#--------------------------------------------------------
-# Section 1: Module Configuration
+# Section 3: Module Configuration
#--------------------------------------------------------
modparam ( "usrloc", "db_mode", 0 )
@@ -36,26 +41,30 @@ modparam ( "rr", "enable_full_lr", 1 )
modparam ( "mi_fifo", "fifo_name", "/tmp/kamailio_fifo")
#--------------------------------------------------------
-# Section 1: Main Route Block
+# Section 4: Main Route Block
#--------------------------------------------------------
route
- {
+ {
+ # Uncomment next line if you want to see
+ # each incoming message
+ xlog( "L_INFO", "$rm: $fu -> $ru" );
+
if (!mf_process_maxfwd_header("10"))
{
sl_send_reply("483", "Too Many Hops");
return;
}
-
- if (msg:len > max_len)
+
+ if (msg:len > 4096)
{
- sl_send_reply("513", "Message Overflow");
+ sl_send_reply("513", "Message too big" );
return;
}
if (method == "REGISTER" )
{
- route(2);
+ route(REGISTER);
return;
}
@@ -66,42 +75,33 @@ route
return;
}
- route(1);
+ route(RELAY);
}
#--------------------------------------------------------
-# Section 1: Secondary Route Blocks
+# Section 5: Secondary Route Blocks
#--------------------------------------------------------
# - Default message handler
-route[1] {
+route[RELAY] {
if (!t_relay()) {
sl_reply_error();
}
}
#- Registration Request
-route[2] {
+route[REGISTER] {
if (!save("location")) {
sl_reply_error();
}
}
#--------------------------------------------------------
-# Section 1: Reply Route Block
+# Section 6: Reply Route Block
#--------------------------------------------------------
#--------------------------------------------------------
-# Section 1: Failure Route Block
+# Section 7: Failure Route Block
#--------------------------------------------------------
-
-
-
-
-
-
-
-
-
diff --git a/main/kamailio/kamailio.initd b/main/kamailio/kamailio.initd
index a70b1781e8..ee4e2ecef1 100644
--- a/main/kamailio/kamailio.initd
+++ b/main/kamailio/kamailio.initd
@@ -4,7 +4,7 @@ daemon=/usr/sbin/kamailio
pidfile=/var/run/kamailio/kamailio.pid
depend() {
- need net logger
+ need net
after firewall
}
diff --git a/main/kamailio/kamailio.pre-install b/main/kamailio/kamailio.pre-install
index f0ed06b7fa..78dfa38bf3 100644
--- a/main/kamailio/kamailio.pre-install
+++ b/main/kamailio/kamailio.pre-install
@@ -1,5 +1,5 @@
#!/bin/sh
-addgroup kamailio 2>/dev/null
-adduser -G kamailio -h /var/run/kamailio -s /bin/false -S -D -H kamailio 2>/dev/null
+adduser -H -h /var/empty -s /bin/false -D kamailio 2>/dev/null
+
exit 0