Commit Graph

54 Commits

Author SHA1 Message Date
Thomas Ries
62b4f95e8d - deal with wildcard Contact header for unREGISTER
- enhanced security tests to survive the PROTOS test
2004-03-22 20:26:05 +00:00
Thomas Ries
b2ef7599c8 - added ./autogen.sh
- proxy_rewrite_invitation_body: check success of
  starting RTP relay before rewriting SDP body
- proxy_rewrite_invitation_body: don't fail on
  Contact header with no user part.
- security_check_sip: CSeq header must be present.
2004-03-21 11:15:23 +00:00
Thomas Ries
9225138b91 - Hack for Grandstream SIP phones and SUBSCRIBE response
now SELECTIVE for Grandstream phones (kphone did not seem
   to like 404 answers... How picky these little thingies are...)
2004-02-16 21:17:13 +00:00
Thomas Ries
abf4b77229 - Hack for Grandstream SIP phones and SUBSCRIBE response 2004-02-14 16:29:07 +00:00
Thomas Ries
e75d1c8f79 - Removed superfluous backslashes for line continuation 2004-02-14 10:07:31 +00:00
Thomas Ries
9df56bc3b8 - logging routines now use a MUTEX to be thread safe.
- fix: local UA to UA RTP proxying did not proplery handle HOLD/unHOLDing
  a call
2004-02-07 17:37:50 +00:00
Thomas Ries
c9d86d78d7 - Fix for local-UA to local-UA RTP proxying, symmetric
RTP was not working.
2004-02-07 16:54:09 +00:00
Thomas Ries
ed67096584 - minor cleanup
- removed some old linphone-bug-workaround hack
2004-02-06 00:40:45 +00:00
Thomas Ries
af152d2bf4 - Added handling of Max-Forwards header
- a detected via loop results in an 482 Loop detected
2004-02-01 16:55:37 +00:00
Thomas Ries
2315f495d4 - Allow 2 of my vias in header to let 2 UA's sitting
behind the same siproxd to have conversation together
  UA1 -->--\       /-->--\
            siproxd       Registrar
  UA2 --<--/       \--<--/
- Redone code for evaluation if a received packet
  if coming from inbound or outbound interface
- RTP stream are now identified by call_id AND
  USERNAME of the contact header. This provides
  support for RTP proxying between 2 UAs sitting on the
  inbound network. -> Calls between local UAs going via
  siproxd should now work.
  UA1 -->--\
            siproxd
  UA2 --<--/
- Rewriting of SUBSCRIBE should now work.
- Removed obsolete prototypes from rtpproxy.h
- If the RTP stream in one direction is found to be
  stopped (sendto()) also stop the opposite direction
2004-02-01 01:44:42 +00:00
Thomas Ries
f4ce99e003 - If RTP proxy is disabled, don't rewrite incomming
SDP bodies (patch from Robert Högberg)
2004-01-30 21:58:51 +00:00
Thomas Ries
ba2b99a635 - new doc/RFC3261_compliance.txt and comments in the
code that refer to the RFC.
2004-01-29 20:11:12 +00:00
Thomas Ries
f521d4b78a - don't die on INVITE requests that include no Contac
header - which is legal. (patch by Robert Hoegberg)
2004-01-28 22:12:28 +00:00
Thomas Ries
230c3d3ffb - fix: doing strlen(bodybuff) after having free()d it
found by dmalloc memory poisoning
- fix: new branch id hash calculation was not working properly
  (dont check return status in osip_xxx_to_str() functions -
  the docu does not say anything about them (looks like 0 == success)
  but better check the returnet string pointer value -> NULL = failed)
  This resulted in a memory leak an imporper calculated MD5 hash.
2004-01-28 01:06:28 +00:00
Thomas Ries
17d7438b5c - SIP request: remove a Route-header pointing to myself.
This was an issue with Linphone 0.12.1. Thanks to
  Robert Hoegberg for a patch.
2004-01-27 23:38:29 +00:00
Thomas Ries
115b6b9ee0 - ./configure option: --enable-static to build
a completely statically linked executable
- REGISTER takes honors the expires parameter
  of the contact header
- Contact header of REGISTER response must be
  rewritten back to the local (true) URL
2004-01-23 00:02:18 +00:00
Thomas Ries
b910e74318 - possibility to log call establishment
- eliminated MOREDEBUG conditional
2003-12-21 14:36:45 +00:00
Thomas Ries
02ce749229 - full duplex RTP proxy (many thanks to Chris Ross for
his work on this). Up to now, only the RTP *Relay*
  has been tested (works with KPhone, BudgeTone)
- fix: SIP phones that allocate a random port for
  incomming SIP traffic should now work (like BudgeTone)
- fix: some SIP phones do change the RTP port number
  during a session (like KPhone during HOLD/unHOLD)
2003-12-17 21:22:50 +00:00
Thomas Ries
c88a45dd20 - use even port numbers for RTP traffic
- some minor fixes
2003-12-15 17:31:59 +00:00
Thomas Ries
acbdb707ec - some changes & enhancements inspired by Cris Ross:
* 183 Trying *may* contain SDP data
  * compare_url: now does compare the scheme,
    if a host is not resolveable hostnames will be
    compares as strings
2003-12-05 18:16:28 +00:00
Thomas Ries
0170015955 - have registrations persistent across restarts of
the daemon ('registration_file' config option)
2003-12-04 21:18:19 +00:00
Thomas Ries
e67b823457 - Integrated a patch from Chris Ross:
* have siproxd compile on Solaris and BSD/OS (more to come)
  * ./configure option --with-libosip-prefix
  * properly handle getopt_long()/getopt()
- First attempt of iptables support. Routines to add/remove
  DNAT entries must still be done.
2003-11-19 19:36:30 +00:00
Thomas Ries
c472d8d1b4 - rtpproxy bugfix: On repetitive INVITES, the UDP media
port could end up as -1 in the rewritten packet.
2003-11-02 20:14:03 +00:00
Thomas Ries
0f2e1a72c7 - siproxd can use another outbound proxy itself
- Linux 2.4.x: siproxd with RTP relay could hang
  on termination. Fixed.
2003-11-01 10:27:54 +00:00
Thomas Ries
a492248d4d - fixed other memleak in proxy.c (every invitation body rewritten
has lost ~4kB of memory)
2003-10-19 17:36:53 +00:00
Thomas Ries
1aada28a60 - included compiling support for DMALLOC debugging
- fixed memory leak in proxy.c (39 bytes got lost
  every proxied message)
2003-10-19 10:31:37 +00:00
Thomas Ries
f33e23775a - added INFO() for incomming SIP Calls 2003-10-08 20:34:24 +00:00
Thomas Ries
c2d9091dd0 - Siproxd now also works as outbound proxy 'only',
means that local UAs may register themselfes to a
  3rd party registrar and use siproxd only as oubound
  proxy for masquerading purpose.
- fixed some errors with callid handling (NULL pointers)
2003-10-04 15:39:39 +00:00
Thomas Ries
196e6efe6d - released 0.3.6
- code cleanup for UDP masquerading tunnels
2003-09-22 20:33:16 +00:00
Thomas Ries
b6b97c0c46 rel 3.3.4 2003-08-05 17:33:01 +00:00
Thomas Ries
de208ab818 - released 3.3.3
- rewritten rewrite_invite_request
- more debug output in RTP proxy
2003-07-06 16:54:00 +00:00
Thomas Ries
bb1e4b63f0 more debug output (MOREDEBUG) 2003-04-23 16:21:23 +00:00
Thomas Ries
d3c28ae5bc release 0.3.2 2003-04-05 14:17:40 +00:00
Thomas Ries
c5fc06836a - should now be able to deal with an outbound interface
that is "temporary" DOWN (dial up internet access)
  if outbounf IF is down, send back a response to
  inbound UAs "408 Request Timeout".
- always log to syslog, also when running in foreground
- changed some WARNINGS into DEBUG statements
- re-arranged some code
- rtpproxy: prepared for proper thread termination on exit
- introduced short term caching for get_ip_by_ifname
- fixed in check for socket() return status
2003-04-01 20:35:59 +00:00
Thomas Ries
d7029ce354 - released 0.3.1
- fix in configure.in for statically linking to libosip
- fix in rewriting SIP messages, figure out proper
   destination if *not* rewriting the SIP URI
- another NULL pointer related crash (no UA header present)
2003-03-29 17:14:56 +00:00
Thomas Ries
731b43e13d libosip2 support 2003-03-29 10:05:29 +00:00
Thomas Ries
e7eef98133 fixes 2003-03-28 23:06:14 +00:00
Thomas Ries
d829f79971 - more intensive testst for NULL pointers
- added knowledge base for SIP URI rewriting (UA dependent)
2003-03-28 22:51:23 +00:00
Thomas Ries
cdd05e2706 - replaced get_ip_by_ifname by a simpler routine
(needs to be *BSD tested yet!)
- removed old hostname based config of in/outbound interfaces
- experimental feature: additional masquerading of UA registrered
  host parts of their SIP URL
2003-03-09 20:49:50 +00:00
Thomas Ries
160eb69fef New Feature: RTP proxy can handle multiple media streams within the
same SIP session.
2003-01-28 19:35:02 +00:00
Thomas Ries
5bbdef20f0 - Bugfix: MSN Messenger issue - compare_url
- some more detailed debug output
2003-01-21 23:18:31 +00:00
Thomas Ries
051c9dab99 Release 0.2.5 2002-12-06 00:13:51 +00:00
Thomas Ries
0de2129a42 release 0.2.4 2002-11-23 17:42:42 +00:00
Thomas Ries
2d25da2fda BSD compatibility 2002-11-23 13:33:28 +00:00
Thomas Ries
f1134e5042 grrr - missed one 2002-11-08 20:51:13 +00:00
Thomas Ries
6bb397118a cosmetics and some better error handling w/ strings and data structures
(NULL ptrs)
2002-11-08 20:48:16 +00:00
Thomas Ries
0bc24c3b73 release 0.2.2 2002-10-12 16:40:26 +00:00
Thomas Ries
d9173e19b6 Release 0.2.1 2002-09-27 23:26:44 +00:00
Thomas Ries
c3e10ec745 this is 0.1.3
- Bugfixes in the SIP proxy part
 - Performance imporvement in RTP proxy part
 - some documentation updates
 - include ./scripts subdirectory in the distribution,
   was an error in the autoconf/automake setup
2002-09-11 17:12:30 +00:00
Thomas Ries
038f5ef904 and another one... copy paste error in determination if
request comming from inside or outside.
2002-09-07 21:50:13 +00:00