- various pre-release updates
authorAndrei Pelinescu-Onciul <andrei@iptel.org>
Thu, 16 Dec 2004 17:39:46 +0000 (17:39 +0000)
committerAndrei Pelinescu-Onciul <andrei@iptel.org>
Thu, 16 Dec 2004 17:39:46 +0000 (17:39 +0000)
- use_domain set to 0 by default in all the modules
- experimental sparc32 non-SMP support (thanks to Michael Grigoni)

12 files changed:
AUTHORS
CREDITS [new file with mode: 0644]
Makefile.defs
NEWS
README-MODULES
fastlock.h
mem/f_malloc.h
mem/q_malloc.h
modules/tm/t_funcs.c
modules/tm/tm.c
ser.8
ser.cfg.5

diff --git a/AUTHORS b/AUTHORS
index 45e4be9..c486ea3 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -22,6 +22,16 @@ C: dcm
 E: mierla@fokus.fraunhofer.de
 D:
 
+N: Gabriel Vasile
+C: gabriel
+E:
+D:
+
+N: Greg Fausak
+C: lgfausak
+E:
+D:
+
 N: Jan Janak
 C: janakj
 E: jan@iptel.org
@@ -29,6 +39,12 @@ W: http://iptel.org/~janakj
 P: F8190A31   FCC0 3F4A 1ACB 84C2 505C  573E CC03 B08E F819 0A31
 D:
 
+N: Jamey Hicks
+C: jamey
+E: 
+D:
+
+
 N: Jiri Kuthan
 C: jiri
 E:
diff --git a/CREDITS b/CREDITS
new file mode 100644 (file)
index 0000000..cd1c8db
--- /dev/null
+++ b/CREDITS
@@ -0,0 +1,36 @@
+Current ser core team in alphabetical order as of 23 November 2004:
+
+Andrei Pelinescu - Onciul
+Bogdan Andrei Iancu
+Daniel-Constantin Mierla
+Jan Janak
+Jiri Kuthan
+
+
+Contributors:
+
+Adrian Georgescu
+Dan Pascu
+Greg Fausak
+Jamey Hicks
+Juha Heinanen
+Maxim Sobolev
+Miklos Tirpak
+Nils Ohlmeier
+Ramona-Elena Modroiu
+Raphael Coeffic
+
+
+Emeritus contributors (old ser contributors now off doing other things):
+
+Gabriel Vasile
+Ricardo Baratto
+Stelios Sidiroglou-Douskos
+
+
+Outstanding email support (ser users which helped a lot other people on 
+                           ser's mailing lists):
+
+Java Rockx
+Klaus Darilion
+Zeus Ng
index fa2bc1d..95f14c3 100644 (file)
@@ -52,7 +52,7 @@ MAIN_NAME=ser
 VERSION = 0
 PATCHLEVEL = 8
 SUBLEVEL =   99
-EXTRAVERSION = -dev26
+EXTRAVERSION = -dev27
 
 RELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
 OS = $(shell uname -s | sed -e s/SunOS/solaris/ | tr "[A-Z]" "[a-z]")
@@ -400,6 +400,12 @@ ifeq       ($(CC_NAME), gcc)
 endif
 endif
 
+ifeq ($(ARCH), sparc)
+       # smp no supported on sparc32
+       DEFS+= -DNOSMP 
+       use_fast_lock=yes
+endif
+
 ifeq ($(ARCH), arm)
        use_fast_lock=yes
 endif
@@ -592,7 +598,7 @@ else
 $(error                        Unsupported compiler ($(CC):$(CC_NAME)), try gcc)
 endif          #CC_NAME, suncc
 endif          #CC_NAME, gcc
-endif  #ARCH, sparc
+endif  #ARCH, sparc64
 
        #if ipaq/netwinder
 ifeq   ($(ARCH), arm)
@@ -855,6 +861,15 @@ ifeq ($(OS), openbsd)
        LIBS= -lfl 
        OPENBSD_IS_AOUT= $(shell echo "$(OSREL)" | \
                                sed -e 's/^3\.[0-3][^0-9]*$$/yes/' |sed -e 's/^[0-2]\..*/yes/')
+# exception: on sparc openbsd 3.2 is elf and not aout
+ifeq ($(OSREL), 3.2)
+ifeq   ($(ARCH), sparc)
+               OPENBSD_IS_AOUT:=no
+endif
+ifeq   ($(ARCH), sparc64)
+               OPENBSD_IS_AOUT:=no
+endif
+endif
        
 ifeq ($(OPENBSD_IS_AOUT), yes)
                DEFS+=-DDLSYM_PREFIX='"_"'
diff --git a/NEWS b/NEWS
index 4bf0fde..e8f8515 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -8,8 +8,9 @@ $Id$
 
 new archs:
  - mips2/cobalt experimental support
- - x86_64 experimental support
+ - x86_64 support
  - OS X (darwin) support
+ - sparc32 single cpu highly experimental support
 
 modules:
  - enum - support for more than one NAPTR
@@ -47,7 +48,7 @@ modules:
 
 new modules:
  - avp / avp_db / avp_radius - load and check avps per caller or callee
- - avopos - flexible module for operations with avps and database, introducing
+ - avpops - flexible module for operations with avps and database, introducing
    a pseudo-varible support in SER configuration file
  - cpl-c - implementation of Call Processing Language
  - dispatcher - implements a dispatcher for incoming requests using hashes
index 1460f54..b722a5c 100644 (file)
@@ -52,10 +52,38 @@ Maturity:   beta
 Depends on: auth
 Purpose:    Radius support for digest authentication
 
+Name:       avp
+Owner:      jiri
+Use:        regular
+Maturity:   beta
+Depends on: -
+Purpose:    Loads and checks avps per caller or callee
+
+Name:       avp_db
+Owner:      janakj
+Use:        regular
+Maturity:   beta
+Depends on: mysql avp
+Purpose:    Database support for avps
+
+Name:       avp_db
+Owner:      janakj
+Use:        regular
+Maturity:   beta
+Depends on: avp
+Purpose:    Radius support for avps
+
+Name:       avpops
+Owner:      ramona
+Use:        regular
+Maturity:   beta
+Depends on: 
+Purpose:    avp operations, pseudo-variable support
+
 Name:       cpl-c
 Owner:      bogdan
-Use:        experimental
-Maturity:   alpha
+Use:        regular
+Maturity:   beta
 Depends on: -
 Purpose:    Call Processing Language
 
@@ -66,6 +94,19 @@ Maturity:   alpha
 Depends on: -
 Purpose:    Database emulation in plaintext files
 
+Name:       dispatcher
+Owner:      dcm
+Use:        experimental
+Maturity:   alpha
+Depends on: -
+Purpose:    Implements a dispatcher for incoming requests using hashes
+
+Name:       diversion
+Owner:      janakj
+Use:        experimental
+Maturity:   alpha
+Depends on: -
+Purpose:    Support for the Diversion extensions (draft-levy-sip-diversion-08)
 
 Name:       exec
 Owner:      jiri
@@ -88,6 +129,20 @@ Maturity:   alpha
 Depends on: -
 Purpose:    Execution of external commands
 
+Name:       flatstore
+Owner:      janakj
+Use:        experimental
+Maturity:   beta
+Depends on: -
+Purpose:    Very fast accounting in flat text files
+
+Name:       gflags
+Owner:      jiri
+Use:        experimental
+Maturity:   beta
+Depends on: -
+Purpose:    global flags that can be changed by fifo commands
+
 Name:       group
 Owner:      janakj
 Use:        regular
@@ -130,6 +185,13 @@ Maturity:   stable
 Depends on: -
 Purpose:    MySQL database support
 
+Name:       options
+Owner:      calrissian
+Use:        experimental
+Maturity:   beta
+Depends on: -
+Purpose:    Answers server options requests
+
 Name:       pa
 Owner:      janakj
 Use:        experimental
@@ -181,11 +243,18 @@ Purpose:    SMS gateway
 
 Name:       snmp
 Owner:      ric
-Use:        experimental
-Maturity:   alpha
+Use:        removed
+Maturity:   removed
 Depends on: -
 Purpose:    SNMP Management
 
+Name:       speeddial
+Owner:      ramona
+Use:        regular
+Maturity:   beta
+Depends on: -
+Purpose:    On-server speed dial facilities
+
 Name:       textops
 Owner:      andrei
 Use:        regular
@@ -207,6 +276,13 @@ Maturity:   stable
 Depends on: database
 Purpose:    Various URI checks
 
+Name:       uri_db
+Owner:      janakj
+Use:        experimental
+Maturity:   beta
+Depends on: mysql uri
+Purpose:    URI checking using DB
+
 Name:       uri_radius
 Owner:      janakj
 Use:        experimental
@@ -223,8 +299,8 @@ Purpose:    User location support
 
 Name:       vm
 Owner:      rco
-Use:        experimental
-Maturity:   alpha
+Use:        removed (functionality moved in tm)
+Maturity:   removed
 Depends on: tm
 Purpose:    Voicemail interface
 
@@ -279,3 +355,9 @@ Maturity:   beta
 Depends on:    -
 Purpose:       hosts.allow-like ACLs
 
+Name:       postgress
+Owner:      lgfausak
+Use:        experimental
+Maturity:   beta
+Depends on: -
+Purpose:    Postgress DB support
index 9f674da..b3435b4 100644 (file)
@@ -36,6 +36,8 @@
  *  2003-01-16  added PPC locking code contributed by Dinos Dorkofikis
  *               <kdor@intranet.gr>
  *  2004-09-12  added MIPS locking for ISA>=2 (>r3000)  (andrei)
+ *  2004-12-16  for now use the same locking code for sparc32 as for sparc64
+ *               (it will work only if NOSMP is defined) (andrei)
  *
  */
 
@@ -80,7 +82,7 @@ inline static int tsl(fl_lock_t* lock)
                " xchg %b1, %0" : "=q" (val), "=m" (*lock) : "0" (val) : "memory"
        );
 #endif /*NOSMP*/
-#elif defined __CPU_sparc64
+#elif defined(__CPU_sparc64) || defined(__CPU_sparc)
        asm volatile(
                        "ldstub [%1], %0 \n\t"
 #ifndef NOSMP
@@ -161,7 +163,7 @@ inline static void release_lock(fl_lock_t* lock)
                " movb $0, (%0)" : /*no output*/ : "r"(lock): "memory"
                /*" xchg %b0, %1" : "=q" (val), "=m" (*lock) : "0" (val) : "memory"*/
        ); 
-#elif defined __CPU_sparc64
+#elif defined(__CPU_sparc64) || defined(__CPU_sparc)
        asm volatile(
 #ifndef NOSMP
                        "membar #LoadStore | #StoreStore \n\t" /*is this really needed?*/
index e47b8b4..3f8ffef 100644 (file)
@@ -44,7 +44,7 @@
 /* defs*/
 
 #ifdef DBG_F_MALLOC
-#ifdef __CPU_sparc64
+#if defined(__CPU_sparc64) || defined(__CPU_sparc)
 /* tricky, on sun in 32 bits mode long long must be 64 bits aligned
  * but long can be 32 bits aligned => malloc should return long long
  * aligned memory */
index 8ce10e9..6c86675 100644 (file)
@@ -43,7 +43,7 @@
 
 /* defs*/
 #ifdef DBG_QM_MALLOC
-#ifdef __CPU_sparc64
+#if defined(__CPU_sparc64) || defined(__CPU_sparc)
 /* tricky, on sun in 32 bits mode long long must be 64 bits aligned
  * but long can be 32 bits aligned => malloc should return long long
  * aligned memory */
index d6ff826..310a9c2 100644 (file)
@@ -360,7 +360,9 @@ int avp2timer(unsigned int* timer, int_str param)
 
        avp = search_first_avp(AVP_VAL_STR | AVP_NAME_STR, param, &val_istr);
        if (!avp) {
-               DBG("avp2timer: AVP '%.*s' not found\n", param.s->len, ZSW(param.s->s));
+               /*
+                DBG("avp2timer: AVP '%.*s' not found\n", param.s->len, ZSW(param.s->s));
+                */
                return 1;
        }
        
index 9026662..ee99808 100644 (file)
@@ -269,7 +269,7 @@ static param_export_t params[]={
        {"restart_fr_on_each_reply", INT_PARAM, &restart_fr_on_each_reply        },
        {"fr_timer_avp",        STR_PARAM, &fr_timer_param.s                     },
        {"fr_inv_timer_avp",    STR_PARAM, &fr_inv_timer_param.s                 },
-       {"tw_append",           STR_PARAM|USE_FUNC_PARAM, parse_tw_append        },
+       {"tw_append",           STR_PARAM|USE_FUNC_PARAM, (void*)parse_tw_append },
        {0,0,0}
 };
 
diff --git a/ser.8 b/ser.8
index 2bd1161..c03a8ec 100644 (file)
--- a/ser.8
+++ b/ser.8
@@ -13,9 +13,6 @@ ser \- very fast and configurable sip proxy
 .BI \-f " config\-file"
 ] [
 .BI \-l " address"
-[ 
-.BI \-p " port"
-] ]...
 ] [
 .BI \-n " processes\-no"
 ] [
@@ -36,6 +33,8 @@ ser \- very fast and configurable sip proxy
 .BI \-P " pid\-file"
 ] [
 .BI \-i " fifo\-path"
+] [
+.BI \-x " socket\-path"
 ]
 
 .SH DESCRIPTION
@@ -90,15 +89,13 @@ Reads the configuration from
 ).
 .TP
 .BI \-l " address"
-Listens on the specified address. Multiple 
-.B \-l
-mean listening on multiple addresses. The default behaviour is to listen on all the ipv4 interfaces.
-.TP
-.BI \-p " port"
-Listens on the specified port (default 5060). It applies to the last address specified with
+Listens on the specified address/interface. Multiple 
 .B \-l
-and to all the following that do not have a corresponding 
-.B \-p.
+mean listening on multiple addresses. The address format is 
+[proto:]address[:port], where proto = udp|tcp and
+address = host|ip_address|interface_name. Example: -l localhost, 
+-l udp:127.0.0.1:5080, -l eth0:5062.
+The default behaviour is to listen on all the ipv4 interfaces.
 .TP
 .BI \-n " processes\-no"
 Specifies the number of children processes forked per interface (default 8).
@@ -143,6 +140,13 @@ process.
 Creates a fifo, usefull for monitoring
 .B ser
 status.
+.TP
+.BI \-x " socket\-path"
+Creates a unix socket, usefull for monitoring
+.B ser
+status ( same as
+.BI \-i " fifo\-path" 
+but using instead unix sockets).
 
 
 .SH FILES
@@ -174,6 +178,3 @@ Mailing lists:
 serusers@iptel.org - ser user community
 .nf 
 serdev@iptel.org - ser development, new features and unstable version
-.PP
-For help/support, write an email to <serhelp@iptel.org>.
-
index 9d6fc17..1c3a289 100644 (file)
--- a/ser.cfg.5
+++ b/ser.cfg.5
@@ -49,6 +49,4 @@ Mailing lists:
 serusers@iptel.org - ser user community
 .nf 
 serdev@iptel.org - ser development, new features and unstable version
-.PP
-For help/support, write an email to <serhelp@iptel.org>.