# This is an exclusion file for the ifdex tool, which is used to generate
# and filter reports about #if guards in order to locate configuration symbols
# and plain old cruft.
#
# The ifdex tool is available at http://www.catb.org/~esr/ifdex/
#
# Should be used together with waf's config.h output, which ifdex can
# interpret to exclude most of its config symbols. Thus, from the toplevel
# directory:
#
# ifdex -X build/config.h -X devel/ifdex-ignores .
#
# No output from this command means all symbols are accounted for

# These are potential feature configuration symbols
ENABLE_ONCORE_SHMEM	# Should OnCore report via shmem?
ENABLE_KILL_ON_TRAP	# Die on seccomp trap
MSSNTP_PATH		# Set a default path for the MSSNTP feature.
NTP_VAR			# Path to NTP statistics directory

# Formerly used on some embedded systems. Keep around in case of re-port
NO_MAIN_ALLOWED		# Used to be set by VxWorks.

# System capabilities that waf should detect but does not.
# Presently they're either forced on in waf or never set at all
OS_MISSES_SPECIFIC_ROUTE_UPDATES

# Refclock-specific configuration (NTP Classic never set these)
ENABLE_PPS720		# Enable use of PCL720 with TrueTime refclock
NEOCLOCK4X_FIRMWARE	# Only used in the Neoclock4x driver
TRIM_POLLRATE		# In the parse driver

# Other
NEED_SRANDOMDEV		# Random-number initialization - never set by NTP Classic
NTPD_PRIO		# Priority to set the daemon to

# Fine-grained debugging and tracing, not presently settable from waf
DEBUG
USEBACKTRACE	        # Use backtrace code, set by --enable-debug-gdb
DEBUG_PARSELIB		# Enable debugging in the parse library.
NTP_DEBUG_LISTS		# Debug list handling
DEBUG_PPS720		# Only in refclock_true.c

# This is from a Python compatibility hack
PY_MAJOR_VERSION

# This is from a library header
MOD_TIMETICK
NTP_API

# From the Linux PPS header
PPS_API_VERS

# Linux symbols related to time.  CLOCK_MONOTONIC is POSIX.
# Only used in the attic
CLOCK_BOOTTIME
CLOCK_MONOTONIC
CLOCK_MONOTONIC_RAW
CLOCK_REALTIME_COARSE

# OpenSSL
OPENSSL_VERSION_NUMBER
LIBRESSL_VERSION_NUMBER

# Things WAF sets that don't get #undefs if they're not set
ENABLE_EARLY_DROPROOT
ENABLE_LEAP_SMEAR
ENABLE_MSSNTP
ENABLE_LEAP_TESTING
HAVE_LINUX_CAPABILITY
HAVE_SECCOMP_H
HAVE_SOLARIS_PRIVS
WORDS_BIGENDIAN

# Constants in time and calendar logic
DAY_GPS_STARTS
DAY_NTP_STARTS
DSTMINUTES

# Conditionals for unit tests
TEST_LIBNTP
TEST_NTPD
TEST_NTPDIG
TEST_LIBPARSE

# Purely internal symbols
CONFIG_H
BITSPERCHAR		# Only used in the Arcron refclock
BACKTRACE_MAXFRAME	# Internal to the ISC backtrace code
BACKTRACE_LIBC
BACKTRACE_GCC
BACKTRACE_DISABLED
CMOCK			# Internal to the Unity test framework
CONFIG_FILE		# Only used in ntp_config.h
DEVOLATILE		# Only used in work_thread.c
ENABLE_NLS		# Autogenerated into C by Bison.
FD_CHUNK		# Used for fd allocation in socket.c
FD_PREFERRED_SOCKBOUNDARY
GUARD_.*		# Idempotency guards
INC_MONLIST		# Exposed from ntp_monitor.c for hysterical raisins
INIT_MONLIST		# Exposed from ntp_monitor.c for hysterical raisins
ISC_CHECK_ALL
ISC_CHECK_ENSURE
ISC_CHECK_INSIST
ISC_CHECK_INVARIANT
ISC_CHECK_NONE
ISC_CHECK_REQUIRE
ISC_FIX_TV_USEC
ISC_MUTEX_PROFTABLESIZE
JSMN_PARENT_LINKS
JSMN_STRICT
LIB_BUFLENGTH		# Only referenced by #if as a sanity check
LOG_NTP
MIN			# Minimum macro
MRU_MAXDEPTH_DEF	# Exposed from ntp_monitor.c for hysterical raisins
NEOCLOCK4X_FIRMWARE_VERSION_A	# Only used in the Neoclock4x driver
NMEA_WRITE_SUPPORT	# Only used in the NMEA refclock
NTIME_MSG
OTIME_MSG
FLASH_CODES_UNUSED
NOTUSED
ONCORE_VERBOSE_.*	# Debugging symbols internal to the OnCore refclock
PI			# Math constant used by the sim code
RUN_TEST		# Internal to Unity
__ghs__			# Unity
THREAD_MINSTACKSIZE
UINTPTR_MAX		# Unity
UINTPTR_MAX0		# Unity
INTPTR_MAX0		# Unity
UNITY_.*		# Unity test framework internal macros
UNUSED_ARG		# Used to quiet compiler warnings
UNUSED_LOCAL		# Used to quiet compiler warnings
UPDATE_GRACE		# ntp_io.c only
USE_COMPILETIME_PIVOT	# Use build date in disambiguating time.

USE_SCM_BINTIME		# to grab timestamp for recv packet
USE_SCM_TIMESTAMP	# "
USE_SCM_TIMESTAMPNS	# "

USE_IPV6_MULTICAST_SUPPORT
USE_LIFC_FAMILY
USE_LIFC_FLAGS
USE_RANDOMIZE_RESPONSES
USE_PCM_STYLE_SOUND
USE_ROUTING_SOCKET
YY_YY_NTP_PARSER_TAB_H_INCLUDED
calloc			# In Unity
close			# In Windows port config
free			# In Unity and ntpd/ntp_parser.tab.c
malloc			# In Unity and ntpd/ntp_parser.tab.c
in_addr6		# In Windows port config
lifr_addrlen		# ISC interface-iterator code
mac			# Avoid name conflict.
ntohl			# In Windows port config
realloc			# Internal to Unity
sem_timedwait		# In worker-thread code
short			# In ntpd/ntp_parser.tab.c
size_t			# In ntpd/ntp_parser.tab.c
timercmp		# Only used in include/parse.h
isinf
isnan
yydebug
_ALLOCA_H
__UNUSED__
_STRING_H		# In ntpd/ntp_parser.tab.c 
__BUILTIN_VA_ARG_INCR	# In ntpd/ntp_parser.tab.c 
__SIZE_TYPE__		# In ntpd/ntp_parser.tab.c 
EREALLOC_.*
INTPTR_MAX		# Unity
__TMS470__		# Unity
HAVE_STRUCT_TIMEX_MODES
HAVE_STRUCT_TIMEX_TIME_TICK
HAVE_STRUCT_NTPTIMEVAL_TAI
HAVE_STRUCT_NTPTIMEVAL_TIME_TV_NSEC
CMAC_VERSION_CUTOFF	# Cruft from the attic
DoSLOW			# Cruft from the attic

# seccomp-related symbols that may not be available on all systems
__NR_mmap
__NR_openat
__NR_prlimit64

# Exposed by some versions of glibc
NI_MAXSERV

# Inaccessible port guards
SYS_CYGWIN32

# end
