resiprocate / resiprocate Goto Github PK
View Code? Open in Web Editor NEWC++ implementation of SIP, ICE, TURN and related protocols.
Home Page: https://www.resiprocate.org
License: Other
C++ implementation of SIP, ICE, TURN and related protocols.
Home Page: https://www.resiprocate.org
License: Other
----------------------------------------------------------- IMPORTANT - the notes below relate to the legacy build system from reSIProcate <= 1.7.x - now, with reSIProcate 1.8.x and beyond, please see: http://www.resiprocate.org/AutotoolsBuild and http://www.resiprocate.org/Configuration_Options ----------------------------------------------------------- Notes for the legacy build system: The legacy reSIProcate build system is derived from the VOCAL build system (http://www.vovida.org). Adding New Files to a module ---------------------------- Example: Adding a new file Foo.cxx to the stack 1) Edit resip/stack/Makefile 2) Add Foo.cxx to the SRC list Example: Adding a new file Bar.cxx to rutil 1) Edit rutil/Makefile 2) Add Bar.cxx to the SRC list Notes: - All files noted in SRC list will be added to the target library - Adding a new header file does not need to be noted in the Makefile - To add something to the compile line add to CXXFLAGS. e.g. CXXFLAGS += -DMYSPECIALDEFINE - To add something to the link line add to LDFLAGS and/or LDLIBS e.g. LDFLAGS += -L/usr/local/myspeciallibdir e.g. LDLIBS += -lmyspeciallib Creating an application based on the stack: Option 1: (Using the resip build system) For example applications using the resip build system look at resip/stack/test or at repro. ########################################################################################### # Create a Makefile in the directory with the units with the following template # This should be the path to the build directory of resip (in the sip subdirectory) BUILD = ../../build # Includes macros include $(BUILD)/Makefile.pre # Add any options that need to be passed to the C++ compiler here #CXXFLAGS += -DMYSPECIALDEFINE # Add any options that need to be passed to the C compiler here #CFLAGS += -DMYOTHERDEFINE # Add any options that need to be passed to the linker here #LDFLAGS += -L/usr/local/mydir # Add any libraries that need to be passed to the linker here #LDLIBS += -lmylib # All of these packages are prerequisites for resiprocate PACKAGES += RESIP RUTIL OPENSSL ARES PTHREAD # Add an entry to TESTPROGRAMS for each target that has a main in it # On linux this will generate an executable in bin.debug.Linux.i686/main TESTPROGRAMS += main.cxx # Add each of the C++ or C files that other than the main # Each main target (from TESTPROGRAMS) will be linked with all of the files in SRC SRC = TestSupport.cxx # Includes macros include $(BUILD)/Makefile.post ########################################################################################### Option 2: (Using a third party build system) Prerequisites: - Install ares library from contrib/ares - cd contrib/ares - ./configure - make - make install Pass the following flags to C++ compiler: Assumptions: - have pthreads - have openssl installed - have ares installed - resiprocate library is built and installed # Linux Example CXXFLAGS += -Wall -fPIC -Wno-deprecated -march=i686 \ -D_REENTRANT -DUSE_SSL -DNEW_MSG_HEADER_SCANNER -DUSE_IPV6 -DUSE_ARES \ -I/usr/kerberos/include -I$(RESIP_DIR)/lib.debug.Linux.i686 LDFLAGS += -L$(RESIP_DIR)/lib.debug.Linux.i686 LDLIBS += -lresip -lrutil -lssl -lcrypto -lares -lpthread
The MultipartMixedContents::operator= method iterates over its own mContents vector as the source vector for cloning instead rhs's one and resulting in an empty MultipartMixedContents destination object.
MultipartMixedContents&
MultipartMixedContents::operator=(const MultipartMixedContents& rhs)
{
if (this != &rhs)
{
Contents::operator=(rhs);
clear();
for (vector<Contents*>::iterator i = mContents.begin();
i != mContents.end(); ++i)
{
mContents.push_back( (*i)->clone() );
}
}
return *this;
}
In Windows 10 after disabling and re-enabling the microphone the microphone volume is not restored to the original level. This can be verified in Windows by looking at the volume bar in Sound Settings > Input > Device porperties > Volume; after unmuting the volume level is set to 7.
ConversationManager::muteMicrophone(true);
ConversationManager::muteMicrophone(false);
resiprocate: 1.12
sipXtapi: repo: sipXtapi-svn-mirror@e8e4ad0
OS: Windows 10 Pro build 19042
Hi,
I found an example on how to approach creation of repro plugins to introduce new functionality, but as I compiled, enabled and loaded new plugin, I saw it being added to the very end of the RequestProcessor chain.
While running some basic SIP tests, I was unable to execute my plugin logic as INVITE never reached it due to the fact that LocationServer monkey was dropping request with 404 Not Found
response.
ReproRunner.cxx:1217 | RequestProcessor chain: [StrictRouteFixup, IsTrustedNode, AmIResponsible, StaticRoute, LocationServer]
ExamplePlugin.cpp:30 | ExamplePlugin: onRequestProcessorChainPopulated called
...
ProcessorChain.cxx:95 | Chain invoking RequestProcessor: LocationServer
monkeys/LocationServer.cxx:32 | Monkey handling request: LocationServer; reqcontext = numtrans=1 final=0 req=SipReq: INVITE [email protected] tid=PjJmPUk.YN4OAXO.a48A8BMau70sLfyfi1 cseq=4318 INVITE [email protected] / 4318 from(wire)
Helper.cxx:374 | Helper::makeResponse(SipReq: INVITE [email protected] tid=PjJmPUk.YN4OAXO.a48A8BMau70sLfyfi1 cseq=4318 INVITE [email protected] / 4318 from(wire) code=404 reason=
RequestContext.cxx:941 | tid of orig req: PjJmPUk.YN4OAXO.a48A8BMau70sLfyfi1
RequestContext.cxx:976 | Ensuring orig tid matches tid of response: PjJmPUk.YN4OAXO.a48A8BMau70sLfyfi1 == PjJmPUk.YN4OAXO.a48A8BMau70sLfyfi1
RequestContext.cxx:983 | Sending final response.
From docs I can see that:
LocationServer - Fetches locations from the RegistrationPersistenceManager instance (shared with the
registrar) to proxy requests to.
I have disabled both Registrar and PresenceServer:
DisableRegistrar = true
EnablePresenceServer = false
but LocationServer monkey still intercepts requests before they reach my plugin.
Hi, I'm currently evaluating resip/repro as a foundation for the custom SIP routing proxy. I've been studying repro overview document to get a better idea about what comes out of the box with repro and I have a question related to the "Monkey/Baboon/Lemur" concepts:
I understand that sequential forking can be achieved using QValueTargetHandler
.
My question is:
The reason I'm asking this question is because I need to be able to implement a routing logic where next target may depend on the previous target response (think of a conditional fallback routing). To implement this using concepts from the above diagram, I imagine I would need to:
Hi,
We've developed a product using the libraries Resiprocate and SipXTapi. The application works for some month.
We've found a problem with the Microphone during the calls, after some update of the Windows 10 SO.
Making some test with an older release Windows 7 SO, the microphone during a call works as expected.
I've seen the same problem both in Win32 and in X64.
The problem seems to be related to the function WaveInOpen.
I attach some log rows of the SipX library where we think there is the problem:
DEBUG | 20220317-151946.551 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: CpTopologyGraphFactoryImpl::CpTopologyGraphFactoryImpl MpInputDeviceManager constructed
INFO | 20220317-151946.551 | midasip | RECON | 9288 | SipXHelper.cxx:41 | SIPxua:Anon:8040: CpTopologyGraphFactoryImpl: enabling local audio
DEBUG | 20220317-151946.592 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::MpidWinMM: Got IMMDeviceEnumerator!
DEBUG | 20220317-151946.593 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::MpidWinMM: windeviceId[0]: {0.0.1.00000000}.{73212a37-94b6-458c-8af6-be7845b479fb} name: Microphone (Realtek(R) Audio)
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::registerDeviceEnumerator: RegisterEndpointNotificationCallback succeeded!
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::MpidWinMM:(name="Microphone (Realtek(R) Audio)")
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::MpidWinMM found "Microphone (Realtek(R) Audio)" at: 0
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpInputDeviceManager::addDevice
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpInputDeviceManager::addDevice dev: Microphone (Realtek(R) Audio) id: 1
INFO | 20220317-151946.605 | midasip | RECON | 9288 | SipXHelper.cxx:41 | SIPxua:Anon:8040: CpTopologyGraphFactoryImpl::CpTopologyGraphFactoryImpl mpInputDeviceManager->addDevice returned deviceId: 1
DEBUG | 20220317-151946.609 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpodWinMM::MpodWinMM(Speakers (Realtek(R) Audio))
ERR | 20220317-151946.609 | midasip | RECON | 9288 | SipXHelper.cxx:47 | SIPxua:Anon:8040: MpidWinMM::getWinDeviceEnumeratpr CoInitialize failed with error: 0000000000000001
DEBUG | 20220317-151946.609 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::registerDeviceEnumerator: RegisterEndpointNotificationCallback succeeded!
DEBUG | 20220317-151946.612 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpOutputDeviceManager::addDevice dev: Speakers (Realtek(R) Audio) id: 1
INFO | 20220317-151946.612 | midasip | RECON | 9288 | SipXHelper.cxx:41 | SIPxua:Anon:8040: CpTopologyGraphFactoryImpl::CpTopologyGraphFactoryImpl mpOutputDeviceManager->addDevice returned deviceId: 1
DEBUG | 20220317-151946.612 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpAudioInputConnection::enable() mEnableCounter=0
DEBUG | 20220317-151946.683 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::enableDevice failed (line 454): res = MMSYSERR_INVALPARAM (11):
Invalid parameter passed.
Thanks,
Andrea
1, Target refresh in the wrong invitesession state causes abort
(this was described in detail in the mailing list but was not concluded, see
https://list.resiprocate.org/archive/resiprocate-devel/msg09021.html
https://list.resiprocate.org/archive/resiprocate-devel/msg09022.html
https://list.resiprocate.org/archive/resiprocate-devel/msg09023.html
)
2, In case of SDP-less reINVITE, after receiving an offer, but failing to call provideAnswer() immediately (because for example, in case of a B2BUA, the other leg has to answer first), meanwhile receiving an UPDATE, InviteSession triggers an assert.
Both cases can be remedied by a well-placed 491.
When creating the 503 response the value for Retry-After is incorrect.
It is set to getExpectedWaitForIncoming()/1000. However, getExpectedWaitForIncoming() is already reported in seconds. The final division to 1000 will change the value to 0.
std::unique_ptr<SendData> tryLater(make503(*message, getExpectedWaitForIncoming()/1000));
Hello,
When i add a member method "void setLocalContact(const NameAddr& contact);" in DialogUsage class, and i build the library successfully but linking failed:
undefined reference to `resip::DialogUsage::setLocalContact(resip::NameAddr const&)'
please help me and thanks.
DialogUsage.hxx
void setLocalContact(const NameAddr& contact);
DialogUsage.cxx:
void DialogUsage::setLocalContact(const NameAddr& contact) { mDialog.mLocalContact = contact; }
How can i set a user profile use TCP? another profile use UDP?
#172
Hi,
We've developed a product using the libraries Resiprocate and SipXTapi. The application works for some month.
We've found a problem with the Microphone during the calls, after some update of the Windows 10 SO.
Making some test with an older release Windows 7 SO, the microphone during a call works as expected.
The problem seems to be related to the function WaveInOpen.
I attach some log rows of the SipX library where we think there is the problem:
DEBUG | 20220317-151946.551 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: CpTopologyGraphFactoryImpl::CpTopologyGraphFactoryImpl MpInputDeviceManager constructed
INFO | 20220317-151946.551 | midasip | RECON | 9288 | SipXHelper.cxx:41 | SIPxua:Anon:8040: CpTopologyGraphFactoryImpl: enabling local audio
DEBUG | 20220317-151946.592 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::MpidWinMM: Got IMMDeviceEnumerator!
DEBUG | 20220317-151946.593 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::MpidWinMM: windeviceId[0]: {0.0.1.00000000}.{73212a37-94b6-458c-8af6-be7845b479fb} name: Microphone (Realtek(R) Audio)
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::registerDeviceEnumerator: RegisterEndpointNotificationCallback succeeded!
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::MpidWinMM:(name="Microphone (Realtek(R) Audio)")
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::MpidWinMM found "Microphone (Realtek(R) Audio)" at: 0
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpInputDeviceManager::addDevice
DEBUG | 20220317-151946.604 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpInputDeviceManager::addDevice dev: Microphone (Realtek(R) Audio) id: 1
INFO | 20220317-151946.605 | midasip | RECON | 9288 | SipXHelper.cxx:41 | SIPxua:Anon:8040: CpTopologyGraphFactoryImpl::CpTopologyGraphFactoryImpl mpInputDeviceManager->addDevice returned deviceId: 1
DEBUG | 20220317-151946.609 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpodWinMM::MpodWinMM(Speakers (Realtek(R) Audio))
ERR | 20220317-151946.609 | midasip | RECON | 9288 | SipXHelper.cxx:47 | SIPxua:Anon:8040: MpidWinMM::getWinDeviceEnumeratpr CoInitialize failed with error: 0000000000000001
DEBUG | 20220317-151946.609 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::registerDeviceEnumerator: RegisterEndpointNotificationCallback succeeded!
DEBUG | 20220317-151946.612 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpOutputDeviceManager::addDevice dev: Speakers (Realtek(R) Audio) id: 1
INFO | 20220317-151946.612 | midasip | RECON | 9288 | SipXHelper.cxx:41 | SIPxua:Anon:8040: CpTopologyGraphFactoryImpl::CpTopologyGraphFactoryImpl mpOutputDeviceManager->addDevice returned deviceId: 1
DEBUG | 20220317-151946.612 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpAudioInputConnection::enable() mEnableCounter=0
DEBUG | 20220317-151946.683 | midasip | RECON | 9288 | SipXHelper.cxx:37 | SIPxua:Anon:8040: MpidWinMM::enableDevice failed (line 454): res = MMSYSERR_INVALPARAM (11):
Invalid parameter passed.
Thanks,
Andrea
I am building resiprocate for Android architectures using the android-custom-ndk
script.
The build is successful.
But when I use the above resiprocate build with example Android app(Just to send a register message), it throws errors
ConnectionBase.cxx:83 | No compression library available:
Connection.cxx:45 | Connection::Connection: new connection created to who: [ V4 0.0.0.0:0 UNKNOWN_TRANSPORT ], is server = 0
ConnectionManager.cxx:34 | ConnectionManager::ConnectionManager() called
InternalTransport.cxx:101 | Failed to create socket: Operation not permitted
BaseException.cxx:20 | BaseException at InternalTransport.cxx:102 Can't create TcpBaseTransport
This is how I am adding transport
m_stack->addTransport(TLS,5061,V4,StunEnabled,Data::Empty,Data::Empty,Data::Empty,SecurityTypes::SSLv23, 0, "","", SecurityTypes::Optional, false, wsConnectionValidator, wsCookieFactory);
We have updated android-custom-ndk
script file to include SIGCOMP flag
`autoreconf -i
./configure
--libdir=/libs/${MOD_NAME}
--host=${CROSS_COMPILE}
--with-sysroot=${SYSROOT}
--enable-android
--with-ssl
--with-sigcomp
"$@"`
After building and opening to resiprocate source code in IDE we see that the code inside #ifdef USE_SIGCOMP
doesn't get highlighted meaning the above flag USE_SIGCOMP
is not set.
Can someone help me to find out a way to enable this macro flag or is there anything else I am missing on.
Thanks
Two accounts registered to repro, one call other, faild with 480 Temporarily Unavailable
accounts info:
AOR | Contact | User Agent | Instance ID | Reg ID | QValue | Path | Sync'd? | Expires In | |
---|---|---|---|---|---|---|---|---|---|
sip:[email protected] | sip:[email protected]:25090;transport=udp | sip mock | 0 | 1 | false | 254s | |||
sip:[email protected] | sip:[email protected]:35090;ob | MicroSIP/3.20.7 | 0 | 1 | false | 259s |
I use default sample repro.config, maybe need modify configure??
PS
ip phone's "Instance ID" is NULL, i test use the linphone ,which instanceId is not null, can call other account
Hi,
I've been trying to install on Debian 10 following the instructions here. I've had a few issues:
debuild -rfakeroot -i -us -uc -b --no-lintian
gives dpkg-buildpackage: error: unknown option or argument --no-lintian
.debuild -rfakeroot -i -us -uc -b
give a list of dependancies: build-essential debhelper gperf libasio-dev libboost-dev libc-ares-dev libdb++-dev libpopt-dev libssl1.0-dev default-libmysqlclient-dev libpq-dev libradcli-dev libcppunit-dev autotools-dev libpcre3-dev libsipxtapi-dev libsrtp-dev libcajun-dev python-cxx-dev dh-autoreconf pkg-config libtelepathy-qt5-dev libgloox-dev libqpid-proton-cpp-dev
. The packages libssl1.0-dev
and libsrtp-dev
are no longer available in Debian 10 - they've been replaced with libssl-dev
and libsrtp2-dev
. After installing those instead and running debuild -rfakeroot -i -us -uc -b -d
, installation fails after a while with:In file included from ../../reflow/FlowManager.hxx:11,
from ../../resip/recon/ConversationManager.hxx:23,
from ../../resip/recon/UserAgent.hxx:8,
from Connection.cxx:23:
../../reflow/MediaStream.hxx:19:10: fatal error: srtp/srtp.h: No such file or directory
#include <srtp/srtp.h>
^~~~~~~~~~~~~
compilation terminated.
...
dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned exit status 2
debuild: fatal error at line 1182:
dpkg-buildpackage -rfakeroot -us -uc -ui -i -b -d failed
I'm aware that issue 1 is probably just a documentation issue on rtcquickstart.org, and has nothing to do with resiprocate. I'm including it just to document my issues.
Thank you!
EDIT: Just noticed that there is a separate debian/1_1.12.0-1
tag. Attempting installation with that now.
EDIT: Install looks like it's worked, but rtcquickstart.org seems to say configuration should now be in /etc/repro
, and I can't find anything there.
EDIT: Didn't realise I had to install created packages! Doing that now ...
EDIT: After installing the created packages, I now have /etc/repro populated and the repro command line utility. I'm going to finish this install, and if all goes smoothly, I'll close this issue.
EDIT: And ... I have a working reSIProcate install! Thank you for being there! Sometimes your just need to speak your thoughts to help you think :)
Thank you to all!
Hi!
I am developing Monocodus, and we are integrating a variety of code checkers into CI.
The tool spawns checkers’ outputs right into pull requests interfaces, which could be useful for you:
https://github.com/monocodus-demonstrations/resiprocate/pull/3
I would really like to get some feedback on our service from you. Please take some time to try it out — it’s free, and I hope it’s going to be useful for you.
Thanks.
I've got a crash when using the WSS transport, but hard to replicate it, I've compared it with a normal log, it's strange that the stack is still called Connection::performReads() after ConnectionBase::~ConnectionBase 0000003171199410.
Update: we can simulate this crash by simply letting the nBytes = -1
after int nBytes = write(data.data + mSendPos, int(data.size() - mSendPos));
in the Connection::performWrite()
, say the resip stack will crashed anyway if the write is failed with WSS transport.
Below is the log:
DEBUG | 20220116-114058.399 | callmanager.exe | RESIP:TRANSPORT | 9636 | TcpBaseTransport.cxx:330 | Processing write for [ V4 95.147.149.9:58104 WSS flowKey=15808 transportKey=5 ]
DEBUG | 20220116-114058.399 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionManager.cxx:65 | Found fd 15808
DEBUG | 20220116-114058.402 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:507 | Transportwrite--Up fall through to write
DEBUG | 20220116-114058.477 | callmanager.exe | RESIP:TRANSACTION | 3656 | TuSelector.cxx:70 | Send to TU: DialogUsageManager size=0
DumTimeout::Retransmit1xx: duration=60 seq=1
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | TcpBaseTransport.cxx:196 | 000000312DC1A480 Received TCP connection from: [ V4 195.194.50.201:18349 WSS transportKey=5 ] mTuple: [ V4 0.0.0.0:10443 WSS transportKey=5 ] as fd=25724
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionManager.cxx:93 | Could not find a connection for [ V4 195.194.50.201:18349 WSS transportKey=5 ]
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionBase.cxx:71 | ConnectionBase::ConnectionBase, who: [ V4 195.194.50.201:18349 WSS transportKey=5 ] 0000003171199410
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionBase.cxx:84 | No compression library available: 0000003171199410
INFO | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | Connection.cxx:45 | Connection::Connection: new connection created to who: [ V4 195.194.50.201:18349 WSS flowKey=25724 transportKey=5 ], is server = 1
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionManager.cxx:187 | ConnectionManager::addConnection() 25724:[ V4 195.194.50.201:18349 WSS flowKey=25724 transportKey=5 ], totalConnections=1847
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionManager.cxx:248 | recycling connections not used in last 21600 seconds
INFO | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:73 | Creating TLS connection for domain sri.net [ V4 195.194.50.201:18349 WSS transportKey=5 ] on 25724
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:80 | Trying to form TLS connection - acting as server
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsBaseTransport.cxx:105 | Using TlsDomain-transport SSL_CTX
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:113 | Not expecting client certificate
DEBUG | 20220116-114058.527 | callmanager.exe | RESIP:TRANSPORT | 9636 | WssConnection.cxx:20 | Creating WSS connection [ V4 195.194.50.201:18349 WSS transportKey=5 ] on 25724
DEBUG | 20220116-114058.552 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionBase.cxx:1058 | Creating buffer for CONN_BASE: 0000003171199410 [ V4 195.194.50.201:18349 WSS flowKey=25724 transportKey=5 ]
INFO | 20220116-114058.552 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:205 | TLS handshake starting (Server mode)
INFO | 20220116-114058.552 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:221 | TLS connected
DEBUG | 20220116-114058.574 | callmanager.exe | RESIP:TRANSACTION | 3656 | TuSelector.cxx:70 | Send to TU: DialogUsageManager size=0
DumTimeout::StaleCall: duration=180 seq=2
INFO | 20220116-114058.633 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:338 | TLS connected
INFO | 20220116-114058.633 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:696 | TLS sessions set up with TLSv1.3 TLSv1.3 TLS_AES_256_GCM_SHA384
DEBUG | 20220116-114058.633 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:702 | No peer certificate in TLS connection
INFO | 20220116-114058.633 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:369 | TLS handshake done for peer
DEBUG | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionBase.cxx:711 | WebSocket upgrade accepted, cookie count = 0
DEBUG | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:507 | Transportwrite--Up fall through to write
ERR | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:51 | Got TLS SSL_write error=5 ret=-1
WARNING | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:54 | no reason found with ERR_get_error_line
INFO | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | Connection.cxx:270 | Write failed on socket: 25724, closing connection
ERR | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:164 | Unexpected error in SSL_shutdown
ERR | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:51 | Got TLS SSL_shutdown error=5 ret=-1
WARNING | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | TlsConnection.cxx:54 | no reason found with ERR_get_error_line
DEBUG | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionManager.cxx:217 | ConnectionManager::removeConnection()
DEBUG | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | ConnectionBase.cxx:115 | ConnectionBase::~ConnectionBase 0000003171199410
DEBUG | 20220116-114058.634 | callmanager.exe | RESIP:TRANSPORT | 9636 | Connection.cxx:428 | Connection::performReads() read=589
DEBUG | 20220116-114058.677 | callmanager.exe | RESIP:TRANSACTION | 3656 | TuSelector.cxx:70 | Send to TU: DialogUsageManager size=0
I'm trying to build a project with both resip and boost included.
I ran into a class that wants to use both objects based on resip code using its asio copy and boost asio code.
This causes multiple declaration errors.
How should I best get around this problem.
After calling setOverrideHostAndPort on the UAS, the default values (not overrides) are used in the Contact header when responding to an OPTIONS request. This is problematic when running resiprocate in a containerized enviroment where the local IP address is non routable externally and therefore should not be included in the SIP messages. I realize OPTIONS is out of dialog however advertising inside IP addresses is not desirable.
To test the following code was added to BasicCall.cxx:661
resip::Uri hostPort;
hostPort.host() = "10.10.10.8";
hostPort.port() = 12010;
dumUas->getMasterProfile()->setOverrideHostAndPort(hostPort);
UAS Contact header from test:
sip:127.0.0.1:12010
Is this behavior expected for OPTIONS? It works fine for other messages.
The behavior seems to conflict with the ServerOutOfDialogReq::answerOptions() comment about the master profile settings:
// Return Options response based on current MasterProfile settings - application may need to add SDP Contents before
// sending
Thank you
I use reSiprocate 1.12.0 with c++17, and compilation failed with lots of errors , i.e. :
no template named 'auto_ptr' in namespace 'std'
I notice that the 1.13.0 is coming soon, so the temporary solution is that i checkout the master instead of 1.12.0.
my question is:
What is the day do 1.13.0 version to release?
Or can i use the master version to our release version?
As below DialogUsageManager::makeInviteSession function(There have three similar functions), we can make the "id" as reference in this DialogId id = sessionToReplace->getDialogId();
SharedPtr<SipMessage>
DialogUsageManager::makeInviteSession(const NameAddr& target,
InviteSessionHandle sessionToReplace,
const SharedPtr<UserProfile>& userProfile,
const Contents* initialOffer,
AppDialogSet* ads)
{
SharedPtr<SipMessage> inv = makeInviteSession(target, userProfile, initialOffer, ads);
// add replaces header
resip_assert(sessionToReplace.isValid());
if(sessionToReplace.isValid())
{
CallId replaces;
// DialogId id = sessionToReplace->getDialogId();
**const DialogId & id = sessionToReplace->getDialogId();** // We can use this
replaces.value() = id.getCallId();
replaces.param(p_toTag) = id.getRemoteTag();
replaces.param(p_fromTag) = id.getLocalTag();
inv->header(h_Replaces) = replaces;
}
return inv;
}
We want my uas(sip server) have different registered behavior for some especially uac(sip client).
For example:
(1) No authenticate
(a)uac A register to uas,
(b)uas response uac sip 200 ok.
(2)authenticate
(a)uac B register to uas
(b)uas response uac sip 401 Unauthorized
(c)uac response uas register to authenticate
(d)uas response uac sip 200 ok
We want uas can support (1)(2) behavior at same times.but when we call setServerAuthManager,All register will used (2) behavior.All register will used (1) behavior when not call setServerAuthManager.
How can tell me,How can i do?please....
When trying to explicitly disable support for a package using the '--without-PACKAGE' syntax, it will actually enable support for the package. For example if you run:
./configure --without-openssl
, the build will be configured to try to build with OpenSSL support.
crash when timeout. i find 17308 is release before timeout.
#0 0x0000000009564207 in raise () from /lib64/libc.so.6
#1 0x00000000095658f8 in abort () from /lib64/libc.so.6
#2 0x0000000008d6f7d5 in __gnu_cxx::__verbose_terminate_handler() () from /lib64/libstdc++.so.6
#3 0x0000000008d6d746 in ?? () from /lib64/libstdc++.so.6
#4 0x0000000008d6d773 in std::terminate() () from /lib64/libstdc++.so.6
#5 0x0000000008d6e2df in __cxa_pure_virtual () from /lib64/libstdc++.so.6
#6 0x000000000821f302 in resip::operator<< (strm=..., handled=...) at Handled.cxx:31
#7 0x000000000821cab0 in resip::DumTimeout::encode (this=0x342a57c0, strm=...) at DumTimeout.cxx:139
#8 0x00000000086c472e in resip::operator<< (strm=..., msg=...) at Message.cxx:40
#9 0x000000000876953d in resip::TuSelector::add (this=0xd0e62f8, msg=0x342a57c0,
usage=resip::TimeLimitFiforesip::Message::InternalElement) at TuSelector.cxx:67
#10 0x0000000008733e4b in resip::TuSelectorTimerQueue::addToFifo (this=0xd109eb8, msg=0x342a57c0,
d=resip::TimeLimitFiforesip::Message::InternalElement) at TimerQueue.cxx:179
#11 0x0000000008733ab8 in resip::BaseTimeLimitTimerQueue::process (this=0xd109eb8) at TimerQueue.cxx:137
#12 0x0000000008728f80 in resip::SipStack::process (this=0xd0e61e0, fdset=...) at SipStack.cxx:734
#13 0x000000000872be07 in resip::InterruptableStackThread::thread (this=0xd12df80) at InterruptableStackThread.cxx:41
#14 0x0000000008abb553 in threadIfThreadWrapper (threadParm=0xd12df80) at ThreadIf.cxx:51
#15 0x0000000006dbddd5 in start_thread () from /lib64/libpthread.so.0
#16 0x000000000962bead in clone () from /lib64/libc.so.6
I found it doesn't work when start a call without registration
I my scenario, there is no sip server . each device start p2p call
not sure if it is appropriate asking such question here , do we have a forum ?
Helper::makeRawResponse does not append the CR LF sequence at the end of the start line of the message.
I was trying to use reSIProcate as a SIP client on an iOS device. I m able to compile it for iOS arch and make SIP registrations and call using TLS, but I wanted to use SIP over WebSockets for registration.
However, while testing the same I am facing an issue with the WebSocket handshake. I wanted to check whether the SIP over WebSockets is supported for reSIProcate clients or is it just limited to the repro server?
Currently, I m getting this error in logs :
STACK | 20210127-190252.428 | | RESIP:TRANSPORT | 0x700007414000 | /Users/demo/demo-resip/resiprocate/resip/stack/ssl/TlsConnection.cxx:483 | SSL bytesRead=615
ERR | 20210127-190252.428 | | RESIP:TRANSPORT | 0x700007414000 | /Users/demo/demo-resip/resiprocate/resip/stack/ConnectionBase.cxx:645 | demo--> connection base [ V4 10.20.30.40:5063 WSS targetDomain=org.demo.com flowKey=25 transportKey=1 ] | 0x0 | 0x0
ERR | 20210127-190252.429 | | RESIP:TRANSPORT | 0x700007414000 | /Users/demo/demo-resip/resiprocate/resip/stack/ConnectionBase.cxx:796 | No SecWebSocketKey header
ERR | 20210127-190252.429 | | RESIP:TRANSPORT | 0x700007414000 | /Users/demo/demo-resip/resiprocate/resip/stack/ConnectionBase.cxx:712 | Failed to parse WebSocket initialization request
DEBUG | 20210127-190252.429 | | RESIP:TRANSPORT | 0x700007414000 | /Users/demo/demo-resip/resiprocate/resip/stack/Connection.cxx:433 | Closing connection bytesRead=-1
DEBUG | 20210127-190252.429 | | RESIP:TRANSPORT | 0x700007414000 | /Users/demo/demo-resip/resiprocate/resip/stack/ConnectionManager.cxx:217 | ConnectionManager::removeConnection()
DEBUG | 20210127-190252.429 | | RESIP:TRANSPORT | 0x700007414000 | /Users/demo/demo-resip/resiprocate/resip/stack/ConnectionBase.cxx:115 | ConnectionBase::~ConnectionBase 0x7fc93f611d10
INFO | 20210127-190252.429 | | RESIP:TRANSACTION | 0x700007391000 | /Users/demo/demo-resip/resiprocate/resip/stack/TuSelector.cxx:102 | Sending ConnectionTerminated [ V4 10.20.30.40:5063 WSS targetDomain=org.demo.com flowKey=25 transportKey=1 ] to TUs
DEBUG | 20210127-190252.466 | | RESIP:DUM | 0x70000751a000 | /Users/demo/demo-resip/resiprocate/resip/dum/DialogUsageManager.cxx:1477 | connection terminated message
Hi , I build a resiprocate using resip-1.12.0, Compiling environment using msys + mingw4.8.7, There are many duplicate definitions in compilation, as follows
$ g++ -v
Using built-in specs.
COLLECT_GCC=c:\Qt\4.8.7\mingw482_32\bin\g++.exe
COLLECT_LTO_WRAPPER=c:/Qt/4.8.7/mingw482_32/bin/../libexec/gcc/i686-w64-mingw32/4.8.2/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: ../../../src/gcc-4.8.2/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 --prefix=/mingw32 --with-sysroot=/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32 --with-gxx-include-dir=/mingw32/i686-w64-mingw32/include/c++ --enable-shared --enable-static --disable-multilib --enable-languages=ada,c,c++,fortran,objc,obj-c++,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-cloog-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with-tune=generic --with-libiconv --with-system-zlib --with-gmp=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpfr=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-mpc=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-isl=/c/mingw482/prerequisites/i686-w64-mingw32-static --with-cloog=/c/mingw482/prerequisites/i686-w64-mingw32-static --enable-cloog-backend=isl --with-pkgversion='i686-posix-dwarf-rev3, Built by MinGW-W64 project' --with-bugurl=http://sourceforge.net/projects/mingw-w64 CFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -I/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/include -I/c/mingw482/prerequisites/i686-zlib-static/include -I/c/mingw482/prerequisites/i686-w64-mingw32-static/include' CPPFLAGS= LDFLAGS='-pipe -L/c/mingw482/i686-482-posix-dwarf-rt_v3-rev3/mingw32/opt/lib -L/c/mingw482/prerequisites/i686-zlib-static/lib -L/c/mingw482/prerequisites/i686-w64-mingw32-static/lib -Wl,--large-address-aware'
Thread model: posix
gcc version 4.8.2 (i686-posix-dwarf-rev3, Built by MinGW-W64 project)
Lin@DESKTOP-AO6HH3C /e/ThirdPartyLibrary/src/resiprocate-1.12.0
$ make
make all-recursive
make[1]: Entering directory /e/ThirdPartyLibrary/src/resiprocate-1.12.0' Making all in rutil make[2]: Entering directory
/e/ThirdPartyLibrary/src/resiprocate-1.12.0/rutil'
Making all in dns/ares
make[3]: Entering directory /e/ThirdPartyLibrary/src/resiprocate-1.12.0/rutil/dns/ares' make[3]: Nothing to be done for
all'.
make[3]: Leaving directory /e/ThirdPartyLibrary/src/resiprocate-1.12.0/rutil/dns/ares' Making all in . make[3]: Entering directory
/e/ThirdPartyLibrary/src/resiprocate-1.12.0/rutil'
depbase=echo hep/HepAgent.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'
;
/bin/sh ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DRESIP_OSTYPE_MINGW -DRESIP_ARCH_I686 -DRESIP_LARCH_IA32 -D_REENTRANT -DRESIP_TOOLCHAIN_GNU -I .. -I ../rutil/dns/ares -g -O2 -Wall -Wno-deprecated -I/e/ThirdPartyLibrary/src/resiprocate-1.12.0/rutil/dns/ares -MT hep/HepAgent.lo -MD -MP -MF $depbase.Tpo -c -o hep/HepAgent.lo hep/HepAgent.cxx &&
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DRESIP_OSTYPE_MINGW -DRESIP_ARCH_I686 -DRESIP_LARCH_IA32 -D_REENTRANT -DRESIP_TOOLCHAIN_GNU -I .. -I ../rutil/dns/ares -g -O2 -Wall -Wno-deprecated -I/e/ThirdPartyLibrary/src/resiprocate-1.12.0/rutil/dns/ares -MT hep/HepAgent.lo -MD -MP -MF hep/.deps/HepAgent.Tpo -c hep/HepAgent.cxx -DDLL_EXPORT -DPIC -o hep/.libs/HepAgent.o
In file included from ../rutil/hep/ResipHep.hxx:5:0,
from hep/HepAgent.cxx:7:
../rutil/msvc/stdint.h:34:2: error: #error "Use this header only with Microsoft Visual C++ compilers!"
#error "Use this header only with Microsoft Visual C++ compilers!"
^
In file included from ../rutil/hep/ResipHep.hxx:18:0,
from hep/HepAgent.cxx:7:
../rutil/compat.hxx:330:0: warning: "_TRUNCATE" redefined [enabled by default]
#define _TRUNCATE -1
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/crtdefs.h:10:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/wchar.h:9,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/cwchar:44,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/postypes.h:40,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/char_traits.h:40,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:40,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/_mingw.h:514:0: note: this is the location of the previous definition
#define _TRUNCATE ((size_t)-1)
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:38:0: warning: "EWOULDBLOCK" redefined [enabled by default]
#define EWOULDBLOCK WSAEWOULDBLOCK
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:166:0: note: this is the location of the previous definition
#define EWOULDBLOCK 140
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:39:0: warning: "EINPROGRESS" redefined [enabled by default]
#define EINPROGRESS WSAEINPROGRESS
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:158:0: note: this is the location of the previous definition
#define EINPROGRESS 112
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:40:0: warning: "EALREADY" redefined [enabled by default]
#define EALREADY WSAEALREADY
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:106:0: note: this is the location of the previous definition
#define EALREADY 103
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:41:0: warning: "ENOTSOCK" redefined [enabled by default]
#define ENOTSOCK WSAENOTSOCK
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:146:0: note: this is the location of the previous definition
#define ENOTSOCK 128
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:42:0: warning: "EDESTADDRREQ" redefined [enabled by default]
#define EDESTADDRREQ WSAEDESTADDRREQ
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:118:0: note: this is the location of the previous definition
#define EDESTADDRREQ 109
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:43:0: warning: "EMSGSIZE" redefined [enabled by default]
#define EMSGSIZE WSAEMSGSIZE
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:126:0: note: this is the location of the previous definition
#define EMSGSIZE 115
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:44:0: warning: "EPROTOTYPE" redefined [enabled by default]
#define EPROTOTYPE WSAEPROTOTYPE
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:191:0: note: this is the location of the previous definition
#define EPROTOTYPE 136
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:45:0: warning: "ENOPROTOOPT" redefined [enabled by default]
#define ENOPROTOOPT WSAENOPROTOOPT
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:142:0: note: this is the location of the previous definition
#define ENOPROTOOPT 123
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:46:0: warning: "EPROTONOSUPPORT" redefined [enabled by default]
#define EPROTONOSUPPORT WSAEPROTONOSUPPORT
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:178:0: note: this is the location of the previous definition
#define EPROTONOSUPPORT 135
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:48:0: warning: "EOPNOTSUPP" redefined [enabled by default]
#define EOPNOTSUPP WSAEOPNOTSUPP
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:162:0: note: this is the location of the previous definition
#define EOPNOTSUPP 130
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:50:0: warning: "EAFNOSUPPORT" redefined [enabled by default]
#define EAFNOSUPPORT WSAEAFNOSUPPORT
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:82:0: note: this is the location of the previous definition
#define EAFNOSUPPORT 102
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:51:0: warning: "EADDRINUSE" redefined [enabled by default]
#define EADDRINUSE WSAEADDRINUSE
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:86:0: note: this is the location of the previous definition
#define EADDRINUSE 100
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:52:0: warning: "EADDRNOTAVAIL" redefined [enabled by default]
#define EADDRNOTAVAIL WSAEADDRNOTAVAIL
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:90:0: note: this is the location of the previous definition
#define EADDRNOTAVAIL 101
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:53:0: warning: "ENETDOWN" redefined [enabled by default]
#define ENETDOWN WSAENETDOWN
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:130:0: note: this is the location of the previous definition
#define ENETDOWN 116
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:54:0: warning: "ENETUNREACH" redefined [enabled by default]
#define ENETUNREACH WSAENETUNREACH
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:138:0: note: this is the location of the previous definition
#define ENETUNREACH 118
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:55:0: warning: "ENETRESET" redefined [enabled by default]
#define ENETRESET WSAENETRESET
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:134:0: note: this is the location of the previous definition
#define ENETRESET 117
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:56:0: warning: "ECONNABORTED" redefined [enabled by default]
#define ECONNABORTED WSAECONNABORTED
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:102:0: note: this is the location of the previous definition
#define ECONNABORTED 106
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:57:0: warning: "ECONNRESET" redefined [enabled by default]
#define ECONNRESET WSAECONNRESET
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:114:0: note: this is the location of the previous definition
#define ECONNRESET 108
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:58:0: warning: "ENOBUFS" redefined [enabled by default]
#define ENOBUFS WSAENOBUFS
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:98:0: note: this is the location of the previous definition
#define ENOBUFS 119
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:59:0: warning: "EISCONN" redefined [enabled by default]
#define EISCONN WSAEISCONN
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:94:0: note: this is the location of the previous definition
#define EISCONN 113
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:60:0: warning: "ENOTCONN" redefined [enabled by default]
#define ENOTCONN WSAENOTCONN
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:150:0: note: this is the location of the previous definition
#define ENOTCONN 126
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:63:0: warning: "ETIMEDOUT" redefined [enabled by default]
#define ETIMEDOUT WSAETIMEDOUT
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:183:0: note: this is the location of the previous definition
#define ETIMEDOUT 138
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:64:0: warning: "ECONNREFUSED" redefined [enabled by default]
#define ECONNREFUSED WSAECONNREFUSED
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:110:0: note: this is the location of the previous definition
#define ECONNREFUSED 107
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:65:0: warning: "ELOOP" redefined [enabled by default]
#define ELOOP WSAELOOP
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:187:0: note: this is the location of the previous definition
#define ELOOP 114
^
In file included from ../rutil/GenericIPAddress.hxx:11:0,
from ../rutil/hep/HepAgent.hxx:5,
from hep/HepAgent.cxx:8:
../rutil/Socket.hxx:68:0: warning: "EHOSTUNREACH" redefined [enabled by default]
#define EHOSTUNREACH WSAEHOSTUNREACH
^
In file included from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/pthread.h:63:0,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr-default.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/i686-w64-mingw32/bits/gthr.h:148,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/ext/atomicity.h:35,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/bits/basic_string.h:39,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/string:52,
from c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/c++/stdexcept:39,
from hep/HepAgent.cxx:5:
c:/Qt/4.8.7/mingw482_32/i686-w64-mingw32/include/errno.h:122:0: note: this is the location of the previous definition
#define EHOSTUNREACH 110
^
make[3]: *** [hep/HepAgent.lo] Error 1
make[3]: Leaving directory /e/ThirdPartyLibrary/src/resiprocate-1.12.0/rutil' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory
/e/ThirdPartyLibrary/src/resiprocate-1.12.0/rutil'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/e/ThirdPartyLibrary/src/resiprocate-1.12.0'
make: *** [all] Error 2
Hi,
Trying to wrap my head around all the components of reSIProcate, and looking especially at recon and reconserver. But the above link, results in:
The wiki page took too long to render.
This wiki page’s content is too large to render on this page.
Hi,
We are using 1.12 version of resiprocate library. we are using this library for SIP protocol monitoring client.
Our SIP protocol monitoring client is working fine on all non windows platforms like RHEL,Solaris,zlinux. But its failing on AIX platform at below code in resip\stack\TransportSelector.cxx file:
else if(transport->transport()==UDP)
{
resip_assert(dynamic_cast<UdpTransport*>(transport));
}
Below error is getting reported in our client error logs:
Assertion failed: dynamic_cast<UdpTransport*>(transport), file TransportSelector.cxx, line 185
Could you let us know what could be an issue for only AIX platform?
Thanks and Regards,
Nilam Khamkar
add Transport UDP and TCP in 5060 port. when we want post a DumCommmand by SipStack:
example:
SipStack.post(reqCatalog,0,DialogUsageManager class);
It find my code use udp to send this applicationMessage.We want used TCP to send this message(uac used tcp to register to my server). Can you help me how to used tcp to send.
ERR | 20210405-101509.530 | SIP | RESIP | -274996104 | ssl/Security.cxx:268 | Error calling stat() for
I get above error when I provide the path to root certificates in Mac OS while building an android app
Following is the list of things that I have tried.
Provided full path (including certificate file name)
Provided full path of the directory containing the certificate.
Intialized the Security constructor so that it picks the certificate form the default directory (~/.sipCerts)
security = new Security(".");
In all the above three cases it is unable to stat the cert file.
In the third case it looks inside (/.sipCerts) instead of (~/.sipCerts) for Mac System.
Below is the detailed log
`2021-04-05 10:17:27.135 9270-9270/? I/ample.testresi: Not late-enabling -Xcheck:jni (already on)
2021-04-05 10:17:27.159 9270-9270/? I/ample.testresi: Unquickening 12 vdex files!
2021-04-05 10:17:27.161 9270-9270/? W/ample.testresi: Unexpected CPU variant for X86 using defaults: x86
2021-04-05 10:17:27.495 9270-9270/com.example.testresip D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2021-04-05 10:17:27.496 9270-9270/com.example.testresip D/NetworkSecurityConfig: No Network Security Config specified, using platform default
2021-04-05 10:17:27.530 9270-9314/com.example.testresip D/libEGL: loaded /vendor/lib/egl/libEGL_emulation.so
2021-04-05 10:17:27.552 9270-9314/com.example.testresip D/libEGL: loaded /vendor/lib/egl/libGLESv1_CM_emulation.so
2021-04-05 10:17:27.564 9270-9314/com.example.testresip D/libEGL: loaded /vendor/lib/egl/libGLESv2_emulation.so
2021-04-05 10:17:27.737 9270-9270/com.example.testresip W/ample.testresi: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (greylist, reflection, allowed)
2021-04-05 10:17:27.738 9270-9270/com.example.testresip W/ample.testresi: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (greylist, reflection, allowed)
2021-04-05 10:17:27.797 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.797 | SIP | RESIP | -274996104 | ssl/Security.cxx:1160 | BaseSecurity::BaseSecurity
2021-04-05 10:17:27.797 9270-9270/com.example.testresip W/reSIProcate: WARNING | 20210405-101727.797 | SIP | RESIP | -274996104 | ssl/Security.cxx:3119 | unable to load DH parameters (required for PFS): TlsDHParamsFilename not specified
2021-04-05 10:17:27.798 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.798 | SIP | RESIP | -274996104 | ssl/Security.cxx:3168 | ECDH initialized
2021-04-05 10:17:27.798 9270-9270/com.example.testresip W/reSIProcate: WARNING | 20210405-101727.798 | SIP | RESIP | -274996104 | ssl/Security.cxx:3119 | unable to load DH parameters (required for PFS): TlsDHParamsFilename not specified
2021-04-05 10:17:27.798 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.798 | SIP | RESIP | -274996104 | ssl/Security.cxx:3168 | ECDH initialized
2021-04-05 10:17:27.798 9270-9270/com.example.testresip I/reSIProcate: INFO | 20210405-101727.798 | SIP | RESIP:DNS | -274996104 | dns/AresDns.cxx:397 | DNS initialization: found 1 name servers
2021-04-05 10:17:27.798 9270-9270/com.example.testresip I/reSIProcate: INFO | 20210405-101727.798 | SIP | RESIP:DNS | -274996104 | dns/AresDns.cxx:408 | name server: 8.8.8.8
2021-04-05 10:17:27.798 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.798 | SIP | RESIP | -274996104 | Compression.cxx:44 | COMPRESSION SUPPORT NOT COMPILED IN
2021-04-05 10:17:27.798 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.798 | SIP | RESIP | -274996104 | Compression.cxx:47 | Compression configuration object created; algorithm = 0
2021-04-05 10:17:27.799 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.799 | SIP | RESIP:TRANSPORT | -274996104 | TransportSelector.cxx:100 | No compression library available
2021-04-05 10:17:27.799 9270-9270/com.example.testresip I/reSIProcate: INFO | 20210405-101727.799 | SIP | RESIP:DNS | -274996104 | DnsUtil.cxx:170 | local hostname does not contain a domain part localhost
2021-04-05 10:17:27.799 9270-9270/com.example.testresip V/reSIProcate: STACK | 20210405-101727.799 | SIP | RESIP | -274996104 | ssl/Security.cxx:264 | calling stat() for /Full/Path/AndroidStudioProjects/testResip/app/src/main/cpp
2021-04-05 10:17:27.799 9270-9270/com.example.testresip E/reSIProcate: ERR | 20210405-101727.799 | SIP | RESIP | -274996104 | ssl/Security.cxx:268 | Error calling stat() for /Full/Path/AndroidStudioProjects/testResip/app/src/main/cpp: No such file or directory
2021-04-05 10:17:27.799 9270-9270/com.example.testresip I/reSIProcate: INFO | 20210405-101727.799 | SIP | RESIP | -274996104 | ssl/Security.cxx:339 | Files loaded by prefix: 0
2021-04-05 10:17:27.799 9270-9270/com.example.testresip W/reSIProcate: WARNING | 20210405-101727.799 | SIP | RESIP | -274996104 | ssl/Security.cxx:346 | No root certificates found using legacy prefixes, treating mPath as a normal directory of root certs
2021-04-05 10:17:27.799 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.799 | SIP | RESIP:DUM | -274996104 | UserProfile.cxx:145 | Adding credential: realm=phone.plivo.com user=test
2021-04-05 10:17:27.799 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.799 | SIP | RESIP:TRANSPORT | -274996104 | ConnectionBase.cxx:70 | ConnectionBase::ConnectionBase, who: [ V4 0.0.0.0:0 UNKNOWN_TRANSPORT ] 0xe8e91240
2021-04-05 10:17:27.799 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.799 | SIP | RESIP:TRANSPORT | -274996104 | ConnectionBase.cxx:83 | No compression library available: 0xe8e91240
2021-04-05 10:17:27.799 9270-9270/com.example.testresip I/reSIProcate: INFO | 20210405-101727.799 | SIP | RESIP:TRANSPORT | -274996104 | Connection.cxx:45 | Connection::Connection: new connection created to who: [ V4 0.0.0.0:0 UNKNOWN_TRANSPORT ], is server = 0
2021-04-05 10:17:27.799 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.799 | SIP | RESIP:TRANSPORT | -274996104 | ConnectionManager.cxx:34 | ConnectionManager::ConnectionManager() called
2021-04-05 10:17:27.799 9270-9270/com.example.testresip E/reSIProcate: ERR | 20210405-101727.799 | SIP | RESIP:TRANSPORT | -274996104 | InternalTransport.cxx:101 | Failed to create socket: Operation not permitted
2021-04-05 10:17:27.799 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.799 | SIP | RESIP | -274996104 | BaseException.cxx:20 | BaseException at InternalTransport.cxx:102 Can't create TcpBaseTransport
2021-04-05 10:17:27.801 9270-9270/com.example.testresip D/reSIProcate: DEBUG | 20210405-101727.801 | SIP | RESIP:TRANSPORT | -274996104 | ConnectionBase.cxx:114 | ConnectionBase::~ConnectionBase 0xe8e91240
2021-04-05 10:17:27.801 9270-9270/com.example.testresip E/reSIProcate: ERR | 20210405-101727.801 | SIP | RESIP | -274996104 | SipStack.cxx:485 | Failed to create transport: V4 TLS 5061 on ANY: TransportException Can't create TcpBaseTransport @ InternalTransport.cxx:102
2021-04-05 10:17:27.801 9270-9270/com.example.testresip A/libc: Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 9270 (ample.testresip), pid 9270 (ample.testresip)
`
Any leads or help shall be appreciated.
Or any better way of providing the root certs for Android in Mac OS system.
resiprocate/rutil/stun/Stun.cxx
Line 840 in aeab31b
resiprocate/rutil/stun/Stun.cxx
Line 801 in aeab31b
A potential fix is given in https://marc.info/?l=openbsd-ports&m=159129306717060&w=2 . Probably a better solution is to check for arc4random
in configure instead of hardcoding OpenBSD
.
Hi Folks,
I was wondering if there are plans to upgrade or patch C-Ares due to CVE-2021-3672? According to the CVE a "flaw was found in c-ares library, where a missing input validation check of host names returned by DNS (Domain Name Servers) can lead to output of wrong hostnames which might potentially lead to Domain Hijacking." More information can be found at the link here.
This vulnerability impacts ares_expand_name.c, which appears to be used by Resiprocate. The C-Ares project recommends either upgrading to C-Ares 1.17.2 or applying this patch. It looks like Resiprocate uses an older version of C-Ares with some modifications so the patch might be an easier approach.
Best,
Josh
Hi , I build a server using resip-1.10.2 as a sip redirect server to provide load balance. The memory will increase when received more INVITE request. Much worse is that if our server runs a bit slowly, more and more INVITE received in resip is handled slowly. This cause memory increases and the memory will not decrease any more even if there is no new call later. The worstest case is our server occupy 100G memory and is killed the the operation system.
Hope I have describe the question clearly. Could you please help me to figure the root cause of the memory increasing? Is there has a buffer?
our camera register sip server,and refersh every 60 minutes,when refresh,i will send catalog query like below:
`
resip::ClientPagerMessageHandle clientHandle = mDum.makePagerMessage(naTo);
resip::ClientPagerMessage *cpm = clientHandle.get();
resip::SipMessage &request = cpm->getMessageRequest();
bool isvalid = request.isInvalid();
if(isvalid || request.isResponse())
{
return false;
}`
For the most part, it works fine,but it will crash at sometime.
i've get the core,:
or
i looks like:
the SipMessage request is not ok,but how could this happed.
makePagerMessage build SipMessage below:
'void
BaseCreator::makeInitialRequest(const NameAddr& target, const NameAddr& from, MethodTypes method)
{
RequestLine rLine(method);
rLine.uri() = target.uri();
mLastRequest->header(h_RequestLine) = rLine;
mLastRequest->header(h_To) = target;
mLastRequest->header(h_MaxForwards).value() = 70;
mLastRequest->header(h_CSeq).method() = method;
mLastRequest->header(h_CSeq).sequence() = 1;
mLastRequest->header(h_From) = from;
mLastRequest->header(h_From).param(p_tag) = Helper::computeTag(Helper::tagSize);
mLastRequest->header(h_CallId).value() = Helper::computeCallId();'
mRequest(mLastRequest)
it's so simple!!
As we know, C++17 removes std::auto_ptr. It looks like this is used in a few places throughout resiprocate.
I can see a couple of options to move forward:
Both of the suggested options would mean a breaking change where std::auto_ptr is used publicly.
Any opinions or suggestions?
In the resiprocate website there is a link to the API documentation (http://svn.resiprocate.org/dox/), which is currently broken. Is the API documentation available somewhere else online?
windows link success,but link error on center os platform.
/build/lib/libresip.a(DateCategory.o): In function resip::DateCategory::DayOfWeekFromData(resip::Data const&)': /mnt/resiprocate/resip/stack/DateCategory.cxx:199: undefined reference to
resip::DayOfWeekHash::in_word_set(char const*, unsigned int)'
./build/lib/libresip.a(DateCategory.o): In function resip::DateCategory::MonthFromData(resip::Data const&)': /mnt/resiprocate/resip/stack/DateCategory.cxx:216: undefined reference to
resip::MonthHash::in_word_set(char const*, unsigned int)'
./build/lib/libresip.a(DateCategory.o): In function resip::DateCategory::DayOfWeekFromData(resip::Data const&)': /mnt/resiprocate/resip/stack/DateCategory.cxx:199: undefined reference to
resip::DayOfWeekHash::in_word_set(char const*, unsigned int)'
./build/lib/libresip.a(DateCategory.o): In function resip::DateCategory::MonthFromData(resip::Data const&)': /mnt/resiprocate/resip/stack/DateCategory.cxx:216: undefined reference to
resip::MonthHash::in_word_set(char const*, unsigned int)'
./build/lib/libresip.a(Headers.o): In function resip::Headers::getType(char const*, int)': /mnt/resiprocate/resip/stack/Headers.cxx:350: undefined reference to
resip::HeaderHash::in_word_set(char const*, unsigned int)'
./build/lib/libresip.a(MethodTypes.o): In function getMethodType': /mnt/resiprocate/resip/stack/MethodTypes.cxx:62: undefined reference to
resip::MethodHash::in_word_set(char const*, unsigned int)'
./build/lib/libresip.a(MethodTypes.o): In function resip::getMethodType(char const*, int)': /mnt/resiprocate/resip/stack/MethodTypes.cxx:62: undefined reference to
resip::MethodHash::in_word_set(char const*, unsigned int)'
collect2: error: ld returned 1 exit statu
Hallo I am trying to compile rutil but I can't retarget it. Retargeting Project has no effect.
It still wants the old SDK
Greetings
When a SIP message larger than 8192 bytes is received, stack does not handle the message. Instead it prints the following to the log.
INFO | 20220503-085248.385 | | RESIP:TRANSPORT | 29032 | Transport.cxx:151 | The message was too large to fit into the specified buffer and was truncated.
RFC 3261 Section 18.1.1 indicates that implementations should be able to handle messages up to the maximum datagram size, which for UDP is 65535 bytes.
DtlsTransport appears to have the same problem. Albeit in slightly different code.
I can see a couple of potential solutions but I'm interested in other's opinions:
Hi,
Using the sipxTapiConversationManager, I've seen that the muteMicrophone function in windows works only with the jack microphone and not with the USB microphone.
In the logs of resiprocate, there is no trace of errors.
the api doc (http://svn.resiprocate.org/dox/) is unavailable now, could anyone help fix it .
Is it possible to disable deprecated TLS versions (1.0 and 1.1)?
As below DialogUsageManager::makeInviteSession function, we can make the "id" as reference:
SharedPtr<SipMessage>
DialogUsageManager::makeInviteSession(const NameAddr& target,
InviteSessionHandle sessionToReplace,
const SharedPtr<UserProfile>& userProfile,
const Contents* initialOffer,
AppDialogSet* ads)
{
SharedPtr<SipMessage> inv = makeInviteSession(target, userProfile, initialOffer, ads);
// add replaces header
resip_assert(sessionToReplace.isValid());
if(sessionToReplace.isValid())
{
CallId replaces;
// DialogId id = sessionToReplace->getDialogId();
**const DialogId & id = sessionToReplace->getDialogId();** // We can use this
replaces.value() = id.getCallId();
replaces.param(p_toTag) = id.getRemoteTag();
replaces.param(p_fromTag) = id.getLocalTag();
inv->header(h_Replaces) = replaces;
}
return inv;
}
As far as I can tell, current Repro behaviour when Timer C is fired is to cancel ALL client transactions:
// repro/ResponseContext.cxx
void
ResponseContext::processTimerC()
{
if (!mRequestContext.mHaveSentFinalResponse)
{
InfoLog(<<"Canceling client transactions due to timer C.");
cancelAllClientTransactions();
}
}
INFO | 20220118-081343.009 | repro | REPRO:APP | 139697393129024 | RequestContext.cxx:895 | Updating timer C.
INFO | 20220118-081343.009 | repro | REPRO:APP | 139697393129024 | Proxy.cxx:569 | Posting timer C (8sec)
INFO | 20220118-081350.641 | repro | REPRO:APP | 139697393129024 | RequestContext.cxx:660 | RequestContext::process(ApplicationMessage) TimerCMessage(tid=-811889-1-0)
INFO | 20220118-081350.857 | repro | REPRO:APP | 139697393129024 | RequestContext.cxx:660 | RequestContext::process(ApplicationMessage) TimerCMessage(tid=-811889-1-0)
INFO | 20220118-081351.009 | repro | REPRO:APP | 139697393129024 | RequestContext.cxx:660 | RequestContext::process(ApplicationMessage) TimerCMessage(tid=-811889-1-0)
INFO | 20220118-081351.009 | repro | REPRO:APP | 139697393129024 | ResponseContext.cxx:981 | Canceling client transactions due to timer C.
INFO | 20220118-081351.009 | repro | REPRO:APP | 139697393129024 | ResponseContext.cxx:272 | Cancel ALL client transactions: 2 pending, 1 active.
Unless I'm misunderstanding something, that behaviour does not seem to be aligned with RFC3261 which says following:
16.8 Processing Timer C
If timer C should fire, the proxy MUST either reset the timer with
any value it chooses, or terminate the client transaction.
Notice it says terminate the client transaction
(singular).
Reason I'm bringing this up is because I'm trying to configure Repro to behave in a way that after a client transaction is terminated due to Timer C, next target in the delivery list is used to route the call to.
So, to summarise:
Hello everyone !
Need advices on proper usage of ServerAuthManager.
However, servers MUST always send a "qop" parameter in WWW-Authenticate and Proxy-Authenticate header field values.
As of my understanding the base implementation of ServerAuthManager's useAuthInt() returns false by default, which leads to no qop parameter in digest header of response at all. Is there some supposed usage, which conforms to RFC, but still doesn't include qop parameter (i.e. doesn't override base's useAuthInt() to return true) ?
qop="auth,auth-int"
or qop="auth"
or qop="auth-int"
. Would you please suggest if there is a way to somehow realize this kinds scenarios with some methods of ServerAuthManager ? For me it looks like I can get qop="auth,auth-int"
or no qop at all (see point 1 above).Thanks for attention and all hard work on this project.
RFC3261 defines Date header https://datatracker.ietf.org/doc/html/rfc3261#section-20.17 according to RFC1123
RFC1123 defines the date as https://datatracker.ietf.org/doc/html/rfc1123#section-5.2.14
The syntax for the date is hereby changed to: date = 12DIGIT month 24DIGIT
which is a restriction from the underlying RFC822 which included day-name
The DateCategory parser fails if the day-name is not present (strictly it fails because there is no "," when the day-name is not present
NB. RFC3261 is misleading because it provides an example date-string with the day-name and comma, later SIP RFC double down on this confusion by including day-name if they provide a Date header
RFC2822 which obsoletes RFC822 defines the date-string (https://datatracker.ietf.org/doc/html/rfc2822#section-3.3) making day-name comma optional and cleans up the whole mess in the specifications. However, strings without day-name cannot be parsed by ReSIProcate - resulting in failure logging of "skipped over eof" from ParseBuffer.cxx (line 63)
Not sure how the parsing code is expected to handle optional sub-fields so I am unable to fix this myself.
Thanks
Hello,
Looking through codebase I've got the impression that usage of Trickle ICE in SIP (as in RFC8840) is not implemented in reSIProcate at the moment. Would someone kindly confirm that ?
If this is the case than it seems that in order to add support one should implement a class for MIME of application/trickle-ice-sdpfrag, akin to DtmfPayloadContents.hxx, SdpContents.hxx etc. Anything else I completely miss that should be done ?
Thanks.
Regards,
Pavel.
I am trying to compile the Visual Studio solution recon_15_0.sln
from the branch resiprocate-1.12
(the latest stable build).
The solution refers to projects of sipXtapi
with the suffix -msvc8
and extension vcxproj
but those do not exist anywhere in the code of sipXtapi
.
Using the tag 3.3.0~test18
from this repo https://github.com/sipXtapi/sipXtapi (which is outdate btw) I can open the sipX-msvc8.sln
solution file and migrate all the .vcproj
projects to a newer version of VS (2019 in my case) so that the projects -msvc8.vcxproj
are created, but at this point sipXtapi
does not compile.
Otherwise in the solution I can replace the file with the -msvc8
with the .vcxproj
file now provided in the master
branch of sipXtapi
. This however breaks all the references in the projects of the solution.
Wat version of sipXtapi
was used to build resiprocate-1.12? (and from which repo git or svn was it taken)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.