If SSL_read fails after SSL_pending returns > 0, then keep bytes from original read if error code is retryable
sip5060.net / en es
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
- enable c-ares by default for linux systems so that TFM will build correctly - convert README to markdown format
- add markdown version of license
- regen and update AUTHORS file
-remove old README contents and move README.cmake.txt to README file
-markdown format wasn't right, just link to GitHub wiki page instead
-remove out of date INSTALL file -rename COPYING in an attempt to get GitHub to display markdown
Update COPYING
- remove pcre dependency from tfm projects
- remove no longer needed pcre and fmt libraries from contrib - adjust deprecated Visual Studio solution and project files to remove pcre and fmt - remove VS 2017 solution and project files, leaving VS2019 and VS2022 in place for now, however CMake is the new supported/maintined build system for Visual Studio
-fix up limpc console character reading code for windows and restore linux code to previous
- fix linux build error - supress tfmrepro error log
Adopt size_t in more places and remove compiler warnings - change Data::size_type from uint32_t to size_t to more inline with C++ API standard - also helps remove 64-bit compilation warnings - ares.h - fix include order issue that was causing redefinition errors or NO_ERROR on windows builds
- CMake: ensure dum ends up in dum folder not resip folder - CMake: link rend with resip not dum - CMake: WIN32 define _WIN32_WINNT=0x0601 to avoid asio warnings - CMake: WIN32 recon with sipXtapi define _CRT_SECURE_NO_WARNINGS to avoid compiler warnings
- fix complication issue on Windows with new Uri.cxx changes
Cherry pick spelling erorr corrections from https://github.com/resiprocate/resiprocate/pull/338