#include <string.h>
-#if _GNU_SOURCE
+#if defined(strerror_r)
#undef strerror_r
-#define strerror_r isc_string_strerror_r
#endif
+#define strerror_r isc_string_strerror_r
#ifdef _GNU_SOURCE
#undef _GNU_SOURCE
-#include <string.h>
#endif
+#include <string.h>
#include "isc/string.h" // IWYU pragma: keep
int
isc_string_strerror_r(int errnum, char *buf, size_t buflen) {
+#if defined(_WIN32) || defined(_WIN64)
+ return (strerror_s(buf, buflen, errnum));
+#else
return (strerror_r(errnum, buf, buflen));
+#endif
}
#include "errno2result.h"
#include <isc/result.h>
+#include <isc/strerr.h>
#include <isc/string.h>
#include <isc/util.h>
#if defined(_WIN32) || defined(_WIN64)
/* We are on Windows */
# define strtok_r strtok_s
-# define strerror_r(errnum, buf, buflen) strerror_s(buf, buflen, errnum)
#define ISC_STRERRORSIZE 128
#include <isc/result.h>
#include <isc/strerr.h>
#include <isc/string.h>
-#include <isc/strerror.h>
#include <isc/types.h>
#include <isc/util.h>
<ClCompile Include="stdtime.c">
<Filter>Win32 Source Files</Filter>
</ClCompile>
- <ClCompile Include="strerror.c">
- <Filter>Win32 Source Files</Filter>
- </ClCompile>
<ClCompile Include="syslog.c">
<Filter>Win32 Source Files</Filter>
</ClCompile>
<ClCompile Include="..\httpd.c">
<Filter>Library Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\inet_ntop.c">
- <Filter>Library Source Files</Filter>
- </ClCompile>
- <ClCompile Include="..\inet_pton.c">
- <Filter>Library Source Files</Filter>
- </ClCompile>
<ClCompile Include="..\iterated_hash.c">
<Filter>Library Source Files</Filter>
</ClCompile>
<ClCompile Include="..\hmacsha.c" />
<ClCompile Include="..\ht.c" />
<ClCompile Include="..\httpd.c" />
- <ClCompile Include="..\inet_ntop.c" />
- <ClCompile Include="..\inet_pton.c" />
<ClCompile Include="..\iterated_hash.c" />
<ClCompile Include="..\lex.c" />
<ClCompile Include="..\lfsr.c" />
<ClCompile Include="socket.c" />
<ClCompile Include="stdio.c" />
<ClCompile Include="stdtime.c" />
- <ClCompile Include="strerror.c" />
<ClCompile Include="syslog.c" />
<ClCompile Include="thread.c" />
<ClCompile Include="time.c" />
#include <isc/msgs.h>
#include <isc/net.h>
#include <isc/once.h>
-#include <isc/strerror.h>
+#include <isc/strerr.h>
#include <isc/string.h>
#include <isc/util.h>
#include <isc/region.h>
#include <isc/socket.h>
#include <isc/stats.h>
-#include <isc/strerror.h>
+#include <isc/strerr.h>
#include <isc/string.h>
#include <isc/syslog.h>
#include <isc/task.h>