From f8cc31726897eda895c9e1e107cd5d1680edd9b2 Mon Sep 17 00:00:00 2001 From: pescuma Date: Sat, 23 Oct 2010 17:59:05 +0000 Subject: sip: files that I forgot to commit git-svn-id: http://pescuma.googlecode.com/svn/trunk/Miranda@227 c086bb3d-8645-0410-b8da-73a8550f86e7 --- Protocols/SIP/SIPProto.cpp | 67 +++++++++++++++++++++++++++++++++------------- Protocols/SIP/sip.dsp | 8 +++--- 2 files changed, 52 insertions(+), 23 deletions(-) (limited to 'Protocols') diff --git a/Protocols/SIP/SIPProto.cpp b/Protocols/SIP/SIPProto.cpp index cc7c5c4..e6dbb89 100644 --- a/Protocols/SIP/SIPProto.cpp +++ b/Protocols/SIP/SIPProto.cpp @@ -557,11 +557,18 @@ int SIPProto::Connect() if (!IsEmpty(opts.stun.host)) { - TCHAR tmp[1024]; - mir_sntprintf(tmp, MAX_REGS(tmp), _T("%s:%d"), - CleanupSip(opts.stun.host), - FirstGtZero(opts.stun.port, PJ_STUN_PORT)); - stun = TcharToSip(tmp).detach(); + if (_tcsncmp(opts.stun.host, _T("sip:"), 4) == 0) + { + stun = TcharToSip(opts.stun.host).detach(); + } + else + { + TCHAR tmp[1024]; + mir_sntprintf(tmp, MAX_REGS(tmp), _T("%s:%d"), + CleanupSip(opts.stun.host), + FirstGtZero(opts.stun.port, PJ_STUN_PORT)); + stun = TcharToSip(tmp).detach(); + } cfg.stun_srv_cnt = 1; cfg.stun_srv[0] = pj_str(stun); @@ -569,12 +576,18 @@ int SIPProto::Connect() if (!IsEmpty(opts.dns.host)) { - TCHAR tmp[1024]; - mir_sntprintf(tmp, MAX_REGS(tmp), _T("%s:%d"), - CleanupSip(opts.dns.host), - FirstGtZero(opts.dns.port, 53)); - dns = TcharToSip(tmp).detach(); - + if (_tcsncmp(opts.dns.host, _T("sip:"), 4) == 0) + { + dns = TcharToSip(opts.dns.host).detach(); + } + else + { + TCHAR tmp[1024]; + mir_sntprintf(tmp, MAX_REGS(tmp), _T("%s:%d"), + CleanupSip(opts.dns.host), + FirstGtZero(opts.dns.port, 53)); + dns = TcharToSip(tmp).detach(); + } cfg.nameserver_count = 1; cfg.nameserver[0] = pj_str(dns); } @@ -660,20 +673,36 @@ int SIPProto::Connect() if (!IsEmpty(opts.registrar.host)) { - BuildURI(tmp, MAX_REGS(tmp), NULL, - CleanupSip(opts.registrar.host), - FirstGtZero(opts.registrar.port, 5060)); - registrar = TcharToSip(tmp).detach(); + if (_tcsncmp(opts.registrar.host, _T("sip:"), 4) == 0) + { + registrar = TcharToSip(opts.registrar.host).detach(); + } + else + { + int port = FirstGtZero(opts.registrar.port, 5060); + BuildURI(tmp, MAX_REGS(tmp), NULL, + CleanupSip(opts.registrar.host), + port == 5060 ? 0 : port); + registrar = TcharToSip(tmp).detach(); + } cfg.reg_uri = pj_str(registrar); } if (!IsEmpty(opts.proxy.host)) { - BuildURI(tmp, MAX_REGS(tmp), NULL, - CleanupSip(opts.proxy.host), - FirstGtZero(opts.proxy.port, 5060)); - proxy = TcharToSip(tmp).detach(); + if (_tcsncmp(opts.proxy.host, _T("sip:"), 4) == 0) + { + proxy = TcharToSip(opts.proxy.host).detach(); + } + else + { + int port = FirstGtZero(opts.proxy.port, 5060); + BuildURI(tmp, MAX_REGS(tmp), NULL, + CleanupSip(opts.proxy.host), + port == 5060 ? 0 : port); + proxy = TcharToSip(tmp).detach(); + } cfg.proxy_cnt = 1; cfg.proxy[0] = pj_str(proxy); diff --git a/Protocols/SIP/sip.dsp b/Protocols/SIP/sip.dsp index cc83e5a..80d6ac3 100644 --- a/Protocols/SIP/sip.dsp +++ b/Protocols/SIP/sip.dsp @@ -46,7 +46,7 @@ RSC=rc.exe # PROP Target_Dir "" # ADD BASE CPP /nologo /MD /W3 /GX /O1 /YX /FD /c # SUBTRACT BASE CPP /Fr -# ADD CPP /nologo /G4 /MT /W3 /GX /O2 /Ob0 /I "../../include" /I "sdk" /I "lib/pjsip/pjlib/include" /I "lib/pjsip/pjlib-util/include" /I "lib\pjsip\pjmedia\include" /I "lib\pjsip\pjnath\include" /I "lib\pjsip\pjsip\include" /D "WIN32" /D "W32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /Fr /YX /FD /c +# ADD CPP /nologo /G4 /MT /W3 /GX /O2 /Ob0 /I "../../include" /I "sdk" /I "lib/pjsip/pjlib/include" /I "lib/pjsip/pjlib-util/include" /I "lib\pjsip\pjmedia\include" /I "lib\pjsip\pjnath\include" /I "lib\pjsip\pjsip\include" /D PJ_WIN32=1 /D "WIN32" /D "W32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /Fr /YX /FD /c # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD BASE RSC /l 0x417 /d "NDEBUG" @@ -75,7 +75,7 @@ LINK32=link.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /G4 /MT /W3 /GX /O2 /Ob0 /I "../../include" /FR /YX /FD /c -# ADD CPP /nologo /G4 /MDd /W3 /GX /ZI /Od /I "../../include" /I "sdk" /I "lib/pjsip/pjlib/include" /I "lib/pjsip/pjlib-util/include" /I "lib\pjsip\pjmedia\include" /I "lib\pjsip\pjnath\include" /I "lib\pjsip\pjsip\include" /D "WIN32" /D "W32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /FR /YX /FD /c +# ADD CPP /nologo /G4 /MDd /W3 /GX /ZI /Od /I "../../include" /I "sdk" /I "lib/pjsip/pjlib/include" /I "lib/pjsip/pjlib-util/include" /I "lib\pjsip\pjmedia\include" /I "lib\pjsip\pjnath\include" /I "lib\pjsip\pjsip\include" /D PJ_WIN32=1 /D "WIN32" /D "W32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /FR /YX /FD /c # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD BASE RSC /l 0x417 /d "NDEBUG" @@ -104,7 +104,7 @@ LINK32=link.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /G4 /MTd /W3 /GX /ZI /Od /I "../../include" /FR /YX /FD /c -# ADD CPP /nologo /G4 /MDd /W3 /GX /ZI /Od /I "../../include" /I "sdk" /I "lib/pjsip/pjlib/include" /I "lib/pjsip/pjlib-util/include" /I "lib\pjsip\pjmedia\include" /I "lib\pjsip\pjnath\include" /I "lib\pjsip\pjsip\include" /D "WIN32" /D "W32" /D "_DEBUG" /D "_WINDOWS" /D "_UNICODE" /D "UNICODE" /D "_USRDLL" /FR /YX /FD /c +# ADD CPP /nologo /G4 /MDd /W3 /GX /Zi /Od /I "../../include" /I "sdk" /I "lib/pjsip/pjlib/include" /I "lib/pjsip/pjlib-util/include" /I "lib\pjsip\pjmedia\include" /I "lib\pjsip\pjnath\include" /I "lib\pjsip\pjsip\include" /D PJ_WIN32=1 /D "WIN32" /D "W32" /D "_DEBUG" /D "_WINDOWS" /D "_UNICODE" /D "UNICODE" /D "_USRDLL" /FR /YX /FD /c # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD BASE RSC /l 0x417 /d "NDEBUG" @@ -133,7 +133,7 @@ LINK32=link.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /G4 /MT /W3 /GX /O2 /Ob0 /I "../../include" /Fr /YX /FD /c -# ADD CPP /nologo /G4 /MT /W3 /GX /O2 /Ob0 /I "../../include" /I "sdk" /I "lib/pjsip/pjlib/include" /I "lib/pjsip/pjlib-util/include" /I "lib\pjsip\pjmedia\include" /I "lib\pjsip\pjnath\include" /I "lib\pjsip\pjsip\include" /D "WIN32" /D "W32" /D "NDEBUG" /D "_WINDOWS" /D "_UNICODE" /D "UNICODE" /D "_USRDLL" /Fr /YX /FD /c +# ADD CPP /nologo /G4 /MT /W3 /GX /O2 /Ob0 /I "../../include" /I "sdk" /I "lib/pjsip/pjlib/include" /I "lib/pjsip/pjlib-util/include" /I "lib\pjsip\pjmedia\include" /I "lib\pjsip\pjnath\include" /I "lib\pjsip\pjsip\include" /D PJ_WIN32=1 /D "WIN32" /D "W32" /D "NDEBUG" /D "_WINDOWS" /D "_UNICODE" /D "UNICODE" /D "_USRDLL" /Fr /YX /FD /c # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 # ADD BASE RSC /l 0x417 /d "NDEBUG" -- cgit v1.2.3