ISSUES
9cda3e2d
 #
 # $Id$
 #
 
 This is a collection of issues which have shown up
ef44c8e6
 since the version 0.8.8 was released. The issues are
 ordered by numbers of ser versions to which they relate,
 beginning with the newest release. Issues related to
 operating systems are summarized in the bottom.
034a9e6e
 --------------------------------------------------------------
5bfdfbc1
 Desc: tls triggered crash on system with kerberos enabled openssl libs
 Ser version:  0.10.x, 0.9.x
 Reason:  there is a bug in the openssl kerberos code (kssl.c): 
          libc malloc/free/calloc are used instead of the OPENSSL
          versions. In ser ssl connections move between processes and
          if normal mallocs are used (instead of ser shm versions) a
          crash will occur eventually.
          Quick openssl kerberos support check: 
              grep OPENSSL_NO_KRB5 openssl/opensslconf.h
          If the above command returns no result => openssl is compiled with
          kerberos support.
 Workaround: use openssl versions not compiled with kerberos support or
             try a late ser 0.10.x version compiled on the target machine
             (its very important to compile against the same openssl library
              as the one on the target machine)
 CVS status: fixed / workarround enabled
 --------------------------------------------------------------
d18ca80c
 Desc: ser crashes on startup if a group is specified (-g or group=)
 Ser version:  <=0.8.12
 Reason:  bad copy & paste :-)
 Patch: http://www.mobile-ip.de/~andrei/ser/main_group.patch
 Workaround: update from cvs or  apply the corresponding patch
 CVS status: fixed
 --------------------------------------------------------------
bfec97f8
 Desc: textops search REs like "^From" fail to match on RH8
b6519f52
 Ser version: all
bfec97f8
 Reason: there is a bug in RH8 libc, this kind of REs will never match
         in case insensitive mode
 Test:  compile test/re_test.c (gcc re_test.c -o re_test) and try
         echo -e "From:\nTo:" |./re_test -v '^From'
        if your system is ok you should see 1 match, if not (and 
        your libc has this bug), 0 matches.
53c7e0f1
 Workaround: ?upgrade?
b6519f52
 --------------------------------------------------------------
bfec97f8
 Desc: textops REs match newline in constructs such [^@]
 Ser version: all 
 Reason: there is a bug in newer linux libc versions (at least in
          Debian libc6 2.3.x, Gentoo 1.4 lib 2.3.2, RH8, RH9, Fedora)
 Test:  compile test/re_test.c (gcc re_test.c -o re_test) and try
         echo -e "From:\nTo:" |./re_test -v '[^.]+'
        if your system is ok you should see 2 matches, if not (and 
        your libc has this bug), only 1 match.
53c7e0f1
 Workaround: - use an older or fixed libc6 or avoid [^something]
bfec97f8
              - rewrite [^something] as [^something[:cntrl:]]
05cb1667
 ---------------------------------------------------------------
0ccb83ad
 Desc: memory leaks occurs if SIP requests are processed in which
       a Via header field occurs in end of header and includes
       a parameter
 Ser version: 0.8.10
 Reason: parameter fragment is not linked to a list when EoH is
         encountered
 Patch: http://www.iptel.org/ser/issues/via_ml_0810.patch
 CVS Status: fixed
 ---------------------------------------------------------------
57cc441b
 Desc: ser segfaults on receipt of some messages (occurs
       rather rarely with a very high number of messages, 
       typically during stress tests)
 Ser version: 0.8.10 and before
 Reason: valid TM label value 0 is considered mistakenly 
         a special value
fd5502b1
 Workaround: turn syn_branch config option off
57cc441b
 Patch: http://www.iptel.org/ser/issues/hash_fix.patch
 CVS Status: fixed
 ---------------------------------------------------------------
5b06d792
 Desc: serctl returns "read: Illegal option -s" for "add user"
 Ser version: 0.8.10 and before
 Reason: serctl's use of some shell script commands not portable
 Workaround: download serctl 1.45 and set SUBSCRIBER_COLUMN back
             to user_id
 Download: http://cvs.berlios.de/cgi-bin/viewcvs.cgi/*checkout*/ser/sip_router/scripts/sc?rev=1.45
 CVS Status: fixed
 ---------------------------------------------------------------
d2d8b5b0
 Desc: 3261 ACKs for 200s are consumed by stateful processing
 Ser version: 0.8.10
 Reason: 200/ACKs which happen to have the same transaction ID
         as original INVITE were not distinguished from hbh
         ACKs and consequently absorbed
 Patch: http://www.iptel.org/ser/issues/tid3261ack.patch
 Workaround: apply the patch to 0.8.10 sources
 CVS status: fixed
 ---------------------------------------------------------------
05cb1667
 Desc: on sparc machines, usage of mysql library causes a bus error
 Ser version: 0.8.10
 Reason: ser is compiled with DBG_QM_MALLOC, which mistakenly uses
         only alignment of four (ROUNDTO) -- insufficient for sparc
         boxes, mysql library uses long long
 Workaround: recompile with DBG_QM_MALLOC turned off or ROUNDTO redefined
             to 8
 CVS status: fixed
 ---------------------------------------------------------------
8884f2f1
 Desc: nonce validation doesn't work correctly on big endian machines.
 BugId: 498
 Ser version: 0.8.10
 Patch: http://iptel.org/~janakj/nonce.c.patch
 Workaround: Apply the patch to 0.8.10 sources
 CVS status: fixed
 ---------------------------------------------------------------
6cd519d2
 Desc: ser 0.8.10 memory leak when an INVITE containing Route
ccd900e3
       header fields is received.
6cd519d2
       Symptoms: ser reports No memory left or crashes with BUG: qm_*: fragm.
ccd900e3
 BugId:n/a
 Ser version: 0.8.10
 Patch: http://iptel.org/~janakj/invroute.patch
 Workaround: Apply the patch to 0.8.10 sources
 CVS status: fixed
 ---------------------------------------------------------------
b36e1b8e
 Desc: ser 0.8.10 fails to remove consumed verified credentials properly
       and leaves characters in forwarded messages when consume_credentials
       is used
 BugId:n/a
 Ser version: 0.8.10
 Module:     http://www.iptel.org/~jiri/ser/auth.tar.gz
 Workaround: compile the auth module newly from sources above or
             don't remove credentials (they only harm in terms of
             packet size)
 CVS status: fixed
ef44c8e6
 ---------------------------------------------------------------
 Desc: ser 0.8.10 and earlier versions crash if contact list
       excessively long
 BugId: n/a
 Ser version: 0.8.8, 0.8.9, 0.8.10
 Patch: http://www.iptel.org/ser/security/secalert-002-0_8_10.patch
 Workaround: apply the patch to 0.8.10 sources
217977ec
 CVS status: fixed 
ef44c8e6
 ---------------------------------------------------------------
dca064ee
 Desc:  ser 0.8.10 won't compile with bison 1.75
 BugId:  n/a
 Ser version: 0.8.8, 0.8.9, 0.8.10 
 Patch: 
  0.8.10 http://www.mobile-ip.de/~andrei/ser/0.8.10/ser-0.8.10-bison-1.75.patch
  0.8.9  http://www.mobile-ip.de/~andrei/ser/0.8.9/ser-0.8.9-bison-1.75.patch
 Workaround: update from cvs,  apply the corresponding patch or downgrade bison
 CVS status: fixed
ef44c8e6
 ---------------------------------------------------------------
 
 =================================================================================
 * ser 0.8.10 released, all the issues below this are fixed in ser 0.8.10, all the
 * issues above are not :-)
 =================================================================================
 
1b3ee291
 Desc:  ser 0.8.9 won't log to stderr or syslog unless dontfork is set
         (introduced when trying to fix bug 376)
 BugId:  n/a
 Ser version: =0.8.9 (0.8.8 is ok)
 Patch: http://www.mobile-ip.de/~andrei/ser/0.8.9/ser-0.8.9_log.patch
 Workaround: update from cvs or apply the patch.
 CVS status: fixed
 ---------------------------------------------------------------
87c4ba68
 Desc: local domain mismatch resulting in infinite loops
       (With default configuration and domain names in a request
       URI's, ser may not match "owned domain" in the
       script's uri==myself condition, consider the request to
 	  be for outside domain, and forward it to itself, resulting
 	  in an infinite loop and "482" returned back to UAC.)
 BugId: n/a
 Reason: aliases do not support reverse DNS lookups yet
 Workaround: Start ser with "alias=hostname" in config file
30f13a1b
 CVS status: fixed
87c4ba68
 ---------------------------------------------------------------
49a5db59
 Desc: sendto problems on FreeBSD
       (when using tm sendto fails because of bad sockaddr len passed
         to it)
 BugId: n/a
 Workaround:  update from cvs or  apply the following patch: 
1b3ee291
    http://www.mobile-ip.de/~andrei/ser/0.8.9/update_sock_struct_from_ip.patch
49a5db59
 CVS status:  fixed
 ---------------------------------------------------------------
0194ab8c
 Desc: full ipv6 addresses (w/o ::) are converted to 0:0:0:0:0:0:0
       (ser will listen on :: instead of the specified address)
 BugId: n/a
 Workaround: use ipv6 addresses w/ :: or compile ser without -DDNS_IP_HACK 
             (Makefile.defs).
 CVS status: fixed
ef44c8e6
 
 ================================================================================
 * ser 0.8.9 released, all the issues below this are fixed in ser 0.8.9, all the
 * issues above are not :-)
 ================================================================================
 
9cda3e2d
 Desc: in default configuration, SER prints '127.0.0.1' in
       Warning header field of all replies
 BugId: 372
 Workaround: use listen=<ip_address> in your configuration file;
       that will make SER listen only on one interface (and not
       on '127.0.0.1' in parallel) and advertise correct IP
       address
 Bug reason: multiple listening address ignored in message
       translator
 CVS status: fixed
 ---------------------------------------------------------------
 Desc: serctl add ... returns "user exists"
 BugId: 374
53c7e0f1
 Workaround: either use serweb for adding new users or update
9cda3e2d
       the serctl utility from CVS; the fixed version is at
       http://www.iptel.org/ser/issues/374/
 Bug reason: phplib_id ignored in sc
 CVS Status: fixed
 ---------------------------------------------------------------
cf1568fe
 Desc: SMS, MSILO & JABBER modules fail to load because of unresolved
 dependency on im.so
9cda3e2d
 BugId: 375
cf1568fe
 Workaround: change the makefiles & recompile  
 Bug reason: removal of RTLD_GLOBAL from dlopen.
 CVS status: fixed 
9cda3e2d
 ---------------------------------------------------------------
cf1568fe
 Desc: when forking & std_error=yes no open FD is closed
 BugId: 376
 CVS status: fixed
 ---------------------------------------------------------------
815782b1
 Desc: exec module missing in binary RPM distro
 BugId: -
 CVS status: fixed
 Workaround: compile from source distribution
 ---------------------------------------------------------------
cf1568fe
 Desc: when debug=3 & iptel.cfg is used mysql module fails in submit_query.
 Workaround: use debug=9 or use log_stderr
 Reason: unknown
 BugId: 377
 Cvs status: not fixed
 
 
ef44c8e6
 ================================================================================
 * OS-related issues
 ================================================================================
 
 ----------------------------------------------------------------
 Desc:  ser won't run on linux kernels <2.4  (fails with EINVAL when
53c7e0f1
       initializing the shared memory)
ef44c8e6
 BugId:  n/a
 Ser version: 0.8.8, 0.8.9, 0.8.10 
 Workaround: Upgrade to a 2.4.* kernel (older kernels don't support shared 
             mmaping of /dev/zero ) or recompile ser with SYSV shm instead of
             mmap (remove -DSHM_MMAP from Makefile.defs)
 CVS status: n/a
 ---------------------------------------------------------------
 Desc: Solaris resolver memory leak
 	  (getipnodebyname on Solaris has a memory leak. unpatched
 	  solaris 8 installations will fail after processing 
 	  ~ 360000 requests)
 BugId: n/a
 CVS status: n/a
 Workaround: patch your Solaris OS
 ---------------------------------------------------------------