summaryrefslogtreecommitdiff
path: root/include/ntp_workimpl.h
blob: a86c2cd0bff0e60702e078c119674f696de52692 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/*
 * ntp_workimpl.h - selects worker child implementation
 */
#ifndef NTP_WORKIMPL_H
#define NTP_WORKIMPL_H

/*
 * Some systems do not support fork() and don't have an alternate
 * threads implementation of ntp_intres.  Such systems are limited
 * to using numeric IP addresses.
 */
#if defined(SYS_WINNT)
# define WORK_THREAD
#elif defined(ISC_PLATFORM_USETHREADS) && \
      defined(HAVE_SEM_TIMEDWAIT) && \
      (defined(HAVE_GETCLOCK) || defined(HAVE_CLOCK_GETTIME))
# define WORK_THREAD
# define WORK_PIPE
#elif defined(VMS) || defined(SYS_VXWORKS)
  /* empty */
#elif defined(HAVE_WORKING_FORK)
# define WORK_FORK
# define WORK_PIPE
#endif

#if defined(WORK_FORK) || defined(WORK_THREAD)
# define WORKER
#endif

#endif	/* !NTP_WORKIMPL_H */