Merge pull request #411 from portsip/improving-dum-logs Improve logs in DUM for easier tracking error
sip5060.net / en es
Merge pull request #411 from portsip/improving-dum-logs Improve logs in DUM for easier tracking error
Improve logs in DUM for easier tracking error In ClientInviteSession, moving the log statement above the sendBye(); Currently placing the log after sendBye can lead to confusion, as it makes it unclear why the BYE was sent unless we continue checking later logs. Typically, when troubleshooting, we focus on the logs which are before the event, so having the log before the sendBye() call provides better context and clarity.
Prevent crashes if a UAS Invite Dialog ends up in the same DialogSet as a UAC Invite Dialog - Scenario: outboud INVITE is sent, then inbound inbound inbound is receive (no To tag) who's CallId and From tag matches the outbound INVITE, if AppDialogSet::end is then called, we call Dialog::cancel on all dialogs, and this can crash if the Dialog is NOT a ClientInviteSession - Fix up Dialog::cancel so that it won't crash in the above scenario - If we receive an UAS INVITE in a UAC INVITE DialogSet, then reject it with a 400 (BadRequest) - same for SUBSCRIPTON dialogs
-bump version for next release to be
Improve logging in DialogUsageManager::sendUsingOutboundIfAppropriate
- fix linux build error (missing include)
- fix linux build issue, missing include
Refine ConnectionTerminated error notifications - add SSL error queue messages to ConnectionTerminated additionalFailureStrings when certificate validation fails outside of callback (ie: dh params errors) Misc - basicClient sample program to default to workfing dir for certs on windows - modify basicClient sample program to allow wildcard certs - cleanup some formatting in Security.cxx - remove error log in BaseSecurity::hasCert when first connecting to a new Tls domain
Propogate SSL Certificate Validation errors to ConnecitonTerminated event/message - Add AdditionalFailureStrings to ConnectionTerminated event/message - remove BaseSecurity SSLVerifyErrorFuncPtr added in last commit (no longer needed) Misc - cleanup code formatting in DtlsTransport
Merge branch 'master' of https://github.com/resiprocate/resiprocate
Allow applications to get TLS connection/handshake errors - Expand ConnectionTerminated event message to include a failureString with additional diagnostic information - Add static callback so that application can see SSL verify callback errors (BaseSecurity::SSLVerifyErrorFuncPtr) Other Related Changes: - reduce number of log statements during SSL/TLS errors - but maintain same level of information - cleaned up Security.cxx verifyCallback - cleaned up TlsConnection::handleOpenSSLErrorQueue logging - cleaned up code formatting in TlsConnection - refactored Transport::error, so that error string can be extracted without logging - found and fixed 2 memory leaks from SSL_get_peer_certificate calls (DtlsSocket and TlsConnection - missing X509_free calls)
Merge pull request #405 from portsip/Optimize-lock Optimize lock scopes for improved efficiency
Fix GCC compiler warning: ISO C++ forbids converting a string constant to ‘char*’
Revert changes in InMemorySyncRegDb, we need to ensure the log in the lock scope.
- Optimize lock scopes for improved efficiency
If SSL_read fails after SSL_pending returns > 0, then keep bytes from original read if error code is retryable
Fix NameAddr parsing bug when angle brackets are included in quoted parameters -add unit test for fixed condition
resip-ares DNS Fixes - ares__send_query: make sure if a query goes over TCP that it times out correctly - ares read_tcp_data and ares__send_query - if malloc fails don't continue to use memory - ares open_tcp_socket - simplify code surrounding USE_IPV6 preprocessor define (reduce duplication)
- log connection terminate message contents in DialogUsageManager
Allow applications to see low level connection error information - add transport FailureReason and FailureSubCode to ConnectionTerminated messaging - make sure we store certificate validation errors in mFailureSubCode - make sure we get the client cert validation error in scenarios where a client cert isn't available for querying - BasicClientUserAgent - log new information available in ConnectionTerminated message
Dns Cleanup and Fixes - AresDns - added helper method dnsRRTypeToString - DnsResult - reduce number of log statements leaving detail the same (or better) - DnsAAAARecord and DnsHostRecord - throw if name fails to parse - RRList - cleanup DNSCache logging - reduce complexity and ensure cached failure lookups are logged as well - RRCache - add verbose cache logging, need to define VERBOSE_DNS_STACK_LOGS - DnsStub - fix bug in typeToData - DnsStub - ensure we won't infinite loop on CName lookups
-bump contrib\srtp\CMakeLists.txt cmake_minumum_required version to match base resip CMakeList.txt
Dns fixes - fix memory leak in DNStub logic - ares_gethostbyname.c and ares_parse_ptr_reply.c - code formating cleanup only - ares_parse_a_reply - bring over a leak fix from c-ares - ares_process.c - remove useless code - ares_send.c - bring over fix from c-ares - returns correct error code when we are out of servers, and avoids extra allocations - RRList::update - make sure we don't use ULONG_MAX as TTL
Apply fixes from static code analysis (Coverity) - fix some potential resource/memory leaks - repro/WebAdmin - recon/SdpHelperResip - resip/TcpBaseTransport - return/TurnAsyncSocket - rutil/Stun - repro/GeoProximityTargetSorter - fix some potential unintialized access issues - dum/ClientSubscription - dum/ServerPublication - resip/ConnectionBase - resip/InternalTransport - resip/TransactionState - rutil/Stun - fix some large object copies - dum/DialogUsageManager - rend/RendPres - resip/SipConfigParse
-fix memory leak introduced in last commit
Fix potential DNS crashes - if we fail to parse a DNS record when adding to the cache, then avoid caching it - if a DNS record ends up in cache with no destination records, then ensure we don't try to access non-existing record - ensure items removed from cache are properly removed from LRU list
Merge pull request #400 from portsip/Use-find-to-instead-of-the-count - Replace set with unordered_set in BasicDomainMatcher and ExtendedDomainMatcher. - Use find() instead of count() for element existence checks in STL containers. - Optimize locking in DnsInterface::isSupported(). - Early return in ExtendedDomainMatcher::isMyDomain() when mDomainSuffixList is empty, preventing unnecessary domain case conversions.
- Replace set with unordered_set in BasicDomainMatcher and ExtendedDomainMatcher. - Use find() instead of count() for element existence checks in STL containers. - Optimize locking in DnsInterface::isSupported(). - Early return in ExtendedDomainMatcher::isMyDomain() when mDomainSuffixList is empty, preventing unnecessary domain case conversions.
Merge pull request #398 from ddowhy/master Fix inconsistent include guards in DictionaryValue.hxx
Fix inconsistent include guards in DictionaryValue.hxx this patch fixes inconsistent include guards for DictionaryValue.hxx
-update linux CI to use ubuntu-22.04, since 20.04 will be decommissioned in April
-fix DNS parsing bug if NULLs are embedded into domain name
Add notes on how resip-ares differs from c-ares
Allow contrib/Netxx to be manually built/installed in linux and be picked up by Cmake
Fix linux build warnings - ParserContainer.hxx: remove deprecated std::iterator use - GeoProximitTargetSorter: replace deprecated std::random_shuffle - misc signed/unsigned warnings - tfm/SequenceSet - remove this pointer check (never null)
Ensure a STUN error attribute is at least minimum size - reformat both STUN message source files
Merge remote-tracking branch 'remotes/origin/sgodin-windows-ci-work'
Merge branch 'master' of https://github.com/resiprocate/resiprocate
- add build artifacts to .gitignore - update README.md instructions for windows
-update README.md with new windows/sipXtapi instructions
-correct CI names
Add CMake option for sipXtapi use to setup env for VS GUI builds or command line builds (SIPXTAPI_PROJS_IN_VS_GUI) - use cmake external project function to fetch sipXtapi from GIT - Copy over sipXtapi plugin DLL's to binary dir for exe's based on recon - enable sipXtapi in windows-ci build
- allow recon(sipXtapi) on windows to find codec dll's in same directory as the executable
- fix up openssl imported location to work with post build copy steps - merge in Gregor's testStack fix - enable testStack and sanityTests in windows CI
Merge pull request #389 from resiprocate/robust-string-view fix: detect std::string_view availability at configure time
fix: detect std::string_view availability at configure time Allowing the binary layout of a class to differ between library compilation and usage is a pretty bad idea and leads to hard-to-find memory corruption bugs. Instead of detecting support for std::string_view at compile time we now check for it at configure time and record the decision into the config.h file. That way both: library and users use the same class layout. The downside of this approach is that the checked-in Visual Studio project files don't support any such detection and thus cannot use the feature. But in the long-term those files should vanish and CMake be used exclusively.
Merge pull request #392 from resiprocate/improve-nuget build(nuget): simplify and fix nuget interaction
build(nuget): simplify and fix nuget interaction
Merge pull request #391 from resiprocate/windows-ci ci: add Windows build
ci: add Windows build
Don't assert a poorly behaving client can cause this, ie: client sends an ACK in response to response on a non-INVITE transaction -thanks to John Gregg for reporting this
Merge pull request #388 from resiprocate/config-header fix: use correct config header
ci: only run push or pull_request build
fix: use correct config header
fix: allow compilation without SSL
fix: avoid ambiguity with size_t Fixes: 495defc80f7bd048df96e2fad5ee8f7485813eb6
build(netxx): fix CMake FPHSA argument casing
ci: fix oss-fuzz build
-fix up cmake command in README
- update README.md