mirror of
https://github.com/curl/curl.git
synced 2026-08-26 00:43:52 +03:00
addrinfo: add curl macro to avoid redefining foreign symbols
Before this patch curl code was redefining `getaddrinfo` and `freeaddrinfo` system symbols to plug in its debug wrappers. This was causing pains to avoid applying the redefinitions to system headers defining these functions, and to the local debug wrappers. Especially in unity builds. It also required workarounds for systems where these symbols are already macros. Introduce curl-namespaced macros for these functions and use them. This allows to drop all workarounds and makes it work in all envs, local targets and unity/bundle combinations. Also drop GHA/windows workaround and use the same unity batch across all jobs. Follow-up to29e4eda631#16272 Ref: #16272 Ref:71cf0d1fca#14772 Ref:3efba94f77#14765 Ref:f7d5f47059#14399 Closes #16274
This commit is contained in:
parent
7241953ba5
commit
de0693f249
11 changed files with 16 additions and 60 deletions
|
|
@ -153,28 +153,6 @@ CURL_EXTERN int curl_dbg_fclose(FILE *file, int line, const char *source);
|
|||
__LINE__, __FILE__)
|
||||
#endif
|
||||
|
||||
#ifndef CURL_NO_GETADDRINFO_OVERRIDE
|
||||
#ifdef HAVE_GETADDRINFO
|
||||
#if defined(getaddrinfo) && defined(__osf__)
|
||||
/* OSF/1 and Tru64 have getaddrinfo as a define already, so we cannot define
|
||||
our macro as for other platforms. Instead, we redefine the new name they
|
||||
define getaddrinfo to become! */
|
||||
#define ogetaddrinfo(host,serv,hint,res) \
|
||||
curl_dbg_getaddrinfo(host, serv, hint, res, __LINE__, __FILE__)
|
||||
#else
|
||||
#undef getaddrinfo
|
||||
#define getaddrinfo(host,serv,hint,res) \
|
||||
curl_dbg_getaddrinfo(host, serv, hint, res, __LINE__, __FILE__)
|
||||
#endif
|
||||
#endif /* HAVE_GETADDRINFO */
|
||||
|
||||
#ifdef HAVE_FREEADDRINFO
|
||||
#undef freeaddrinfo
|
||||
#define freeaddrinfo(data) \
|
||||
curl_dbg_freeaddrinfo(data, __LINE__, __FILE__)
|
||||
#endif /* HAVE_FREEADDRINFO */
|
||||
#endif /* !CURL_NO_GETADDRINFO_OVERRIDE */
|
||||
|
||||
/* sclose is probably already defined, redefine it! */
|
||||
#undef sclose
|
||||
#define sclose(sockfd) curl_dbg_sclose(sockfd,__LINE__,__FILE__)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue