#endif /* ifdef __GNUC__ */
#endif /* if defined(__ICC) || defined(__INTEL_COMPILER) */
#endif /* ifdef __clang__ */
-#ifdef _MSC_VER
- printf("compiled by MSVC %d\n", _MSC_VER);
-#endif /* ifdef _MSC_VER */
#ifdef __SUNPRO_C
printf("compiled by Solaris Studio %x\n", __SUNPRO_C);
#endif /* ifdef __SUNPRO_C */
#endif /* ifdef __GNUC__ */
#endif /* if defined(__ICC) || defined(__INTEL_COMPILER) */
#endif /* ifdef __clang__ */
-#ifdef _MSC_VER
- isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
- NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
- "compiled by MSVC %d", _MSC_VER);
-#endif /* ifdef _MSC_VER */
#ifdef __SUNPRO_C
isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE,
if [ $ret -ne 0 ]; then echo_i "failed"; fi
status=$((status+ret))
else
- echo_i "skipped, not running as root or running on Windows"
+ echo_i "skipped, not running as root"
fi
echo_i "exit status: $status"
if kill_method=="rndc" named will be asked to shutdown by
means of rndc stop.
if kill_method=="sigterm" named will be killed by SIGTERM on
- POSIX systems or by TerminateProcess() on Windows systems.
+ POSIX systems.
:param named_proc: named process instance
:type named_proc: subprocess.Popen
most systems, it is not DNSSEC-aware. :iscman:`dig`, on the other hand, fully
supports the DNSSEC standard and comes as a part of BIND. If you do not
have :iscman:`dig` already installed on your system, install it by downloading
-it from ISC's `website <https://www.isc.org/download>`__. ISC provides pre-compiled
-Windows versions on its website.
+it from ISC's `website <https://www.isc.org/download>`__.
:iscman:`dig` is a flexible tool for interrogating DNS name servers. It
performs DNS lookups and displays the answers that are returned from the
/*
* Restore working directory if possible before cleaning
* up the key directory. This will help with any other
- * cleanup routines and if this code is ever run under
- * Windows as the directory should not be in use when
- * rmdir() is called.
+ * cleanup routines as the directory should not be in use
+ * when rmdir() is called.
*/
if (pwd != NULL && chdir(pwd) != 0) {
fprintf(stderr, "can't restore working directory: %s\n",
* Set / clear a thread specific function 'proc' to be called at the
* end of dns_name_totext().
*
- * Note: Under Windows you need to call "dns_name_settotextfilter(NULL);"
- * prior to exiting the thread otherwise memory will be leaked.
- * For other platforms, which are pthreads based, this is still a good
- * idea but not required.
+ * Note: It's a good practice to call "dns_name_settotextfilter(NULL);"
+ * prior to exiting the thread.
*
* Returns
*\li #ISC_R_SUCCESS
* notify due to the zone
* just being loaded for
* the first time. */
- /*
- * DO NOT add any new zone flags here until all platforms
- * support 64-bit enum values. Currently they fail on
- * Windows.
- */
DNS_ZONEFLG___MAX = UINT64_MAX, /* trick to make the ENUM 64-bit wide */
} dns_zoneflg_t;
*
* Notes:
*
- *\li On Windows, this is shim implementation using SymFromAddr()
*\li On systems with backtrace_symbols(), it's just a thin wrapper
*\li Otherwise, it returns NULL
*\li See platform NOTES for backtrace_symbols
* \brief Returns current number of references.
* \param[in] ref pointer to reference counter.
* \returns current value of reference counter.
- *
- * Undo implicit promotion to 64 bits in our Windows implementation of
- * atomic_load_explicit() by casting to uint_fast32_t.
*/
-#define isc_refcount_current(target) (uint_fast32_t) atomic_load_acquire(target)
+#define isc_refcount_current(target) atomic_load_acquire(target)
/** \def isc_refcount_destroy(ref)
* \brief a destructor that makes sure that all references were cleared.
* \param[in] ref pointer to reference counter.
* \returns previous value of reference counter.
*/
-#if _MSC_VER
-static inline uint_fast32_t
-isc_refcount_increment0(isc_refcount_t *target) {
- uint_fast32_t __v;
- __v = (uint_fast32_t)atomic_fetch_add_relaxed(target, 1);
- INSIST(__v < UINT32_MAX);
- return (__v);
-}
-#else /* _MSC_VER */
#define isc_refcount_increment0(target) \
({ \
uint_fast32_t __v; \
INSIST(__v < UINT32_MAX); \
__v; \
})
-#endif /* _MSC_VER */
/** \def isc_refcount_increment(ref)
* \brief increases reference counter by 1.
* \param[in] ref pointer to reference counter.
* \returns previous value of reference counter.
*/
-#if _MSC_VER
-static inline uint_fast32_t
-isc_refcount_increment(isc_refcount_t *target) {
- uint_fast32_t __v;
- __v = (uint_fast32_t)atomic_fetch_add_relaxed(target, 1);
- INSIST(__v > 0 && __v < UINT32_MAX);
- return (__v);
-}
-#else /* _MSC_VER */
#define isc_refcount_increment(target) \
({ \
uint_fast32_t __v; \
INSIST(__v > 0 && __v < UINT32_MAX); \
__v; \
})
-#endif /* _MSC_VER */
/** \def isc_refcount_decrement(ref)
* \brief decreases reference counter by 1.
* \param[in] ref pointer to reference counter.
* \returns previous value of reference counter.
*/
-#if _MSC_VER
-static inline uint_fast32_t
-isc_refcount_decrement(isc_refcount_t *target) {
- uint_fast32_t __v;
- __v = (uint_fast32_t)atomic_fetch_sub_acq_rel(target, 1);
- INSIST(__v > 0);
- return (__v);
-}
-#else /* _MSC_VER */
#define isc_refcount_decrement(target) \
({ \
uint_fast32_t __v; \
INSIST(__v > 0); \
__v; \
})
-#endif /* _MSC_VER */
#define isc_refcount_decrementz(target) \
do { \
* On Linux, SO_REUSEPORT has different semantics: it _shares_ the port
* rather than steal it from the current listener, so we don't use it
* here, but rather in isc__nm_socket_reuse_lb().
- *
- * On Windows, it also allows a socket to forcibly bind to a port in use
- * by another socket.
*/
#if defined(SO_REUSEPORT) && !defined(__linux__)