opensips/enum-isn.txt

Wed, 10 Feb 2010 21:25:01 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 10 Feb 2010 21:25:01 +0100
changeset 18
8ec65b8f6e2c
parent 13
b63f281afe6b
permissions
-rw-r--r--

Extend uac_auth() of the UAC module to workaround CSEQ problems.
This logic is meant to complement that of changeset 17, which
added rich authentication credentials to the gw table and its
associated logic in the LCR module.

michael@13 1 ISN (ITAD Subscriber Number) lookup integration contribution code
michael@13 2
michael@13 3 Contribution
michael@13 4
michael@13 5 This contribution introduces ISN formatting logic into the OpenSIPS
michael@13 6 ENUM module, allowing it to perform NAPTR based ISN lookups on the
michael@13 7 user part of the Request-URI in addition to the existing ENUM lookups.
michael@13 8
michael@13 9 Rationale
michael@13 10
michael@13 11 This extends the utility of the existing E.164 formatting logic which
michael@13 12 previously caused valid ISN lookups to fail (although the OpenSIPS
michael@13 13 documentation did suggest that lookups to freenum.org would succeed.)
michael@13 14
michael@13 15 Compliance
michael@13 16
michael@13 17 The author believes that the introduced logic complies with the
michael@13 18 relevant ITAD standards as defined by RFC 3872 and RFC 2871, however
michael@13 19 it seems that at this time ISN is rather loosely defined according to
michael@13 20 nonstandard documentation provided by freenum.org.
michael@13 21
michael@13 22 Location
michael@13 23
michael@13 24 http://scm.europalab.com/contrib/opensips/
michael@13 25 http://scm.europalab.com/contrib/file/tip/opensips/
michael@13 26
michael@13 27 Instructions
michael@13 28
michael@13 29 To integrate this contributed logic into the source code tree of
michael@13 30 a OpenSIPS distribution, download the unified diff and use the
michael@13 31 patch(1) command:
michael@13 32
michael@13 33 $ cd /tmp && mkdir enum-patch && cd enum-patch
michael@13 34 $ wget http://scm.europalab.com/contrib/raw-file/tip/opensips/enum-isn.diff
michael@13 35 $ tar zxf /tmp/opensips-<version>-tls.tar.gz
michael@13 36 $ cd opensips-<version>-tls
michael@13 37 $ patch -p0 <../enum-isn.diff
michael@13 38
michael@14 39 Testing
michael@14 40
michael@14 41 A basic test of this contribution
michael@14 42 Once compiled and installed, a basic test of this contributed software
michael@14 43 involves calling the new exported function in the routing script of the
michael@14 44 OpenSIPS configuration file:
michael@14 45
michael@14 46 # dial '1234*256' from a UAC first
michael@14 47 isn_query();
michael@14 48 t_relay();
michael@14 49
michael@14 50 According to the freenum.org cookbook, the ISN '1234*256' is being
michael@14 51 provided for testing. After dialing the caller hears monkeys screaming.
michael@14 52
michael@13 53 Disclaimer
michael@13 54
michael@13 55 This software contribution is based on source code from OpenSIPS SVN
michael@13 56 revision 6511. The author makes no guarantees as to this contribution.
michael@13 57 A user who downloads and executes it does so at his own risk.
michael@13 58
michael@13 59 Michael Schloh von Bennewitz
michael@13 60 http://michael.schloh.com/
michael@13 61 Monday, 18. January 2010

mercurial