// Specialized configuration for FACE Safety Profiles // See http://www.opengroup.org/face for more info about the Future Airborne // Capability Environment // Using this header: // In ace/config.h, #define ACE_FACE_SAFETY_BASE or ACE_FACE_SAFETY_EXTENDED // Optionally #define ACE_FACE_DEV // ACE_FACE_DEV is a development mode setting which produces an ACE library // that allows debug logging (doesn't enforce ACE_NDEBUG) and ACE_OS::getenv(). // Maintaining this header: // This version of the header is written for FACE technical standard 2.1. // See Appendix A for a chart of POSIX calls that are excluded from the // various profiles. // The top half of this file is only included if the user enables Safety Base, // so these are exclusions that apply to Base but not to Extended. // The bottom half is included for either profile, so it contains restrictions // that are common to both Based and Extended. // Keep macro definitions in sorted order. Macros set by this file that are // also set by some platform-specific config-*.h are "protected" from double // definition by this construct: //# ifndef ACE_LACKS_X //# define ACE_LACKS_X //# endif // Macros that are undefined in this file are similarly guarded: //# ifdef ACE_HAS_X //# undef ACE_HAS_X //# endif #ifdef ACE_FACE_SAFETY_BASE # ifndef ACE_FACE_SAFETY_EXTENDED # define ACE_FACE_SAFETY_EXTENDED # endif # ifndef ACE_HAS_ALLOC_HOOKS # define ACE_HAS_ALLOC_HOOKS # endif // Due to ACE_LACKS_PTHREAD_KEY_DELETE, ACE must explicitly clear out TSS // when keyfree would have normally occurred. This prevents the system's // TSS destructors running later, which could be after libACE unloading. # ifndef ACE_HAS_BROKEN_THREAD_KEYFREE # define ACE_HAS_BROKEN_THREAD_KEYFREE # endif # ifndef ACE_HAS_REACTOR_NOTIFICATION_QUEUE # define ACE_HAS_REACTOR_NOTIFICATION_QUEUE # endif // TSS emulation required with ACE_LACKS_PTHREAD_JOIN # ifndef ACE_HAS_TSS_EMULATION # define ACE_HAS_TSS_EMULATION # endif # define ACE_LACKS_ABORT # define ACE_LACKS_EXIT # define ACE_LACKS__EXIT # define ACE_LACKS_FREE # define ACE_LACKS_PTHREAD_EXIT # define ACE_LACKS_PTHREAD_JOIN # define ACE_LACKS_PTHREAD_KEY_DELETE # define ACE_LACKS_PTHREAD_MUTEX_DESTROY # define ACE_LACKS_REALLOC # define ACE_LACKS_SEM_DESTROY # define ACE_LACKS_SEM_UNLINK # define ACE_LACKS_SETPID # define ACE_LACKS_SLEEP # define ACE_LACKS_SSCANF # define ACE_LACKS_VA_FUNCTIONS # define ACE_LACKS_VFPRINTF # ifndef ACE_LACKS_ACCEPT # define ACE_LACKS_ACCEPT # endif # ifndef ACE_LACKS_BSEARCH # define ACE_LACKS_BSEARCH # endif # ifndef ACE_LACKS_DUP2 # define ACE_LACKS_DUP2 # endif # ifndef ACE_LACKS_EXEC # define ACE_LACKS_EXEC # endif # ifndef ACE_LACKS_FCNTL # define ACE_LACKS_FCNTL # endif # ifndef ACE_LACKS_FORK # define ACE_LACKS_FORK # endif # ifndef ACE_LACKS_GETEGID # define ACE_LACKS_GETEGID # endif # if !defined ACE_LACKS_GETENV && !defined ACE_FACE_DEV # define ACE_LACKS_GETENV # endif # ifndef ACE_LACKS_GETEUID # define ACE_LACKS_GETEUID # endif # ifndef ACE_LACKS_GETGID # define ACE_LACKS_GETGID # endif # ifndef ACE_LACKS_GETPID # define ACE_LACKS_GETPID # endif # ifndef ACE_LACKS_GETPPID # define ACE_LACKS_GETPPID # endif # ifndef ACE_LACKS_GETUID # define ACE_LACKS_GETUID # endif # ifndef ACE_LACKS_KILL # define ACE_LACKS_KILL # endif # ifndef ACE_LACKS_LISTEN # define ACE_LACKS_LISTEN # endif # ifndef ACE_LACKS_LSTAT # define ACE_LACKS_LSTAT # endif # ifndef ACE_LACKS_MKFIFO # define ACE_LACKS_MKFIFO # endif # ifndef ACE_LACKS_PIPE # define ACE_LACKS_PIPE # endif # ifndef ACE_LACKS_PTHREAD_KILL # define ACE_LACKS_PTHREAD_KILL # endif # ifndef ACE_LACKS_PTHREAD_CANCEL # define ACE_LACKS_PTHREAD_CANCEL # endif # ifndef ACE_LACKS_PTHREAD_CLEANUP # define ACE_LACKS_PTHREAD_CLEANUP # endif # ifndef ACE_LACKS_RAISE # define ACE_LACKS_RAISE # endif # ifndef ACE_LACKS_SETDETACH # define ACE_LACKS_SETDETACH # endif # ifndef ACE_LACKS_SETEGID # define ACE_LACKS_SETEGID # endif # ifndef ACE_LACKS_SETEUID # define ACE_LACKS_SETEUID # endif # ifndef ACE_LACKS_SETGID # define ACE_LACKS_SETGID # endif # ifndef ACE_LACKS_SETSCHED # define ACE_LACKS_SETSCHED # endif # ifndef ACE_LACKS_SETUID # define ACE_LACKS_SETUID # endif # ifndef ACE_LACKS_STRFTIME # define ACE_LACKS_STRFTIME # endif # ifndef ACE_LACKS_STRTOLL # define ACE_LACKS_STRTOLL # endif # ifndef ACE_LACKS_SYSCONF # define ACE_LACKS_SYSCONF # endif # ifndef ACE_LACKS_UNAME # define ACE_LACKS_UNAME # endif # ifndef ACE_LACKS_VSNPRINTF # define ACE_LACKS_VSNPRINTF # endif # ifndef ACE_LACKS_WAITPID # define ACE_LACKS_WAITPID # endif # if !defined ACE_FACE_DEV && !defined ACE_NDEBUG # define ACE_NDEBUG # endif # define ACE_STDIO_USE_STDLIB_FOR_VARARGS #endif // ACE_FACE_SAFETY_BASE #ifdef ACE_FACE_SAFETY_EXTENDED # if defined ACE_WIN32 # error "FACE Safety profile not compatible with win32" # endif # ifndef ACE_EMULATE_POSIX_DEVCTL # define ACE_EMULATE_POSIX_DEVCTL 1 # endif # ifdef ACE_HAS_AIO_CALLS # undef ACE_HAS_AIO_CALLS # endif # ifdef ACE_HAS_DEV_POLL # undef ACE_HAS_DEV_POLL # endif # ifdef ACE_HAS_EVENT_POLL # undef ACE_HAS_EVENT_POLL # endif # ifdef ACE_HAS_ICONV # undef ACE_HAS_ICONV # endif # ifdef ACE_HAS_P_READ_WRITE # undef ACE_HAS_P_READ_WRITE # endif # ifdef ACE_HAS_RECURSIVE_MUTEXES # undef ACE_HAS_RECURSIVE_MUTEXES # endif # ifdef ACE_HAS_SCANDIR # undef ACE_HAS_SCANDIR # endif # ifdef ACE_HAS_STREAM_PIPES # undef ACE_HAS_STREAM_PIPES # endif # ifdef ACE_HAS_STRNLEN # undef ACE_HAS_STRNLEN # endif # ifdef ACE_HAS_SVR4_GETTIMEOFDAY # undef ACE_HAS_SVR4_GETTIMEOFDAY # endif # ifdef ACE_HAS_SYSV_IPC # undef ACE_HAS_SYSV_IPC # endif # ifdef ACE_HAS_TIMEZONE_GETTIMEOFDAY # undef ACE_HAS_TIMEZONE_GETTIMEOFDAY # endif # ifdef ACE_HAS_VFWPRINTF # undef ACE_HAS_VFWPRINTF # endif # ifdef ACE_HAS_VOIDPTR_GETTIMEOFDAY # undef ACE_HAS_VOIDPTR_GETTIMEOFDAY # endif # ifdef ACE_HAS_VSWPRINTF # undef ACE_HAS_VSWPRINTF # endif # ifdef ACE_HAS_VWPRINTF # undef ACE_HAS_VWPRINTF # endif # ifdef ACE_HAS_WCHAR # undef ACE_HAS_WCHAR # endif # ifdef ACE_HAS_XPG4_MULTIBYTE_CHAR # undef ACE_HAS_XPG4_MULTIBYTE_CHAR # endif # define ACE_LACKS_CTIME # define ACE_LACKS_FDOPEN # define ACE_LACKS_FGETPOS # define ACE_LACKS_FPUTC # define ACE_LACKS_FPUTS # define ACE_LACKS_FSCANF # define ACE_LACKS_FSETPOS # define ACE_LACKS_GETC # define ACE_LACKS_GETTIMEOFDAY # define ACE_LACKS_IF_NAMEINDEX # define ACE_LACKS_IF_NAMETOINDEX # define ACE_LACKS_IOCTL # define ACE_LACKS_LOCALECONV # define ACE_LACKS_MUNMAP # define ACE_LACKS_OPENLOG # define ACE_LACKS_PRAGMA_ONCE # define ACE_LACKS_PTHREAD_MUTEXATTR_SETTYPE # define ACE_LACKS_PUTC # define ACE_LACKS_PUTS # define ACE_LACKS_RAND # define ACE_LACKS_REWIND # define ACE_LACKS_SHM_UNLINK # define ACE_LACKS_SIGNAL # define ACE_LACKS_SRAND # define ACE_LACKS_STDERR # define ACE_LACKS_STDIN # define ACE_LACKS_STDOUT # define ACE_LACKS_STRTOK # define ACE_LACKS_UNGETC # define ACE_LACKS_VA_COPY # define ACE_LACKS_VPRINTF # define ACE_LACKS_VSPRINTF # ifndef ACE_LACKS_ACE_IOSTREAM # define ACE_LACKS_ACE_IOSTREAM # endif # ifndef ACE_LACKS_ALPHASORT # define ACE_LACKS_ALPHASORT # endif # ifndef ACE_LACKS_ASCTIME # define ACE_LACKS_ASCTIME # endif # ifndef ACE_LACKS_CONDATTR_PSHARED # define ACE_LACKS_CONDATTR_PSHARED # endif # ifndef ACE_LACKS_CUSERID # define ACE_LACKS_CUSERID # endif # ifndef ACE_LACKS_DUP # define ACE_LACKS_DUP # endif # ifndef ACE_LACKS_EXECVP # define ACE_LACKS_EXECVP # endif # ifndef ACE_LACKS_GAI_STRERROR # define ACE_LACKS_GAI_STRERROR # endif # ifndef ACE_LACKS_GETHOSTBYADDR # define ACE_LACKS_GETHOSTBYADDR # endif # ifndef ACE_LACKS_GETHOSTBYADDR_R # define ACE_LACKS_GETHOSTBYADDR_R # endif # ifndef ACE_LACKS_GETHOSTBYNAME # define ACE_LACKS_GETHOSTBYNAME # endif # ifndef ACE_LACKS_GETHOSTENT # define ACE_LACKS_GETHOSTENT # endif # ifndef ACE_LACKS_GETOPT # define ACE_LACKS_GETOPT # endif # ifndef ACE_LACKS_GETPGID # define ACE_LACKS_GETPGID # endif # ifndef ACE_LACKS_GETPROTOBYNAME # define ACE_LACKS_GETPROTOBYNAME # endif # ifndef ACE_LACKS_GETPROTOBYNUMBER # define ACE_LACKS_GETPROTOBYNUMBER # endif # ifndef ACE_LACKS_GETSERVBYNAME # define ACE_LACKS_GETSERVBYNAME # endif # ifndef ACE_LACKS_GMTIME # define ACE_LACKS_GMTIME # endif # ifndef ACE_LACKS_INET_ADDR # define ACE_LACKS_INET_ADDR # endif # ifndef ACE_LACKS_INET_ATON # define ACE_LACKS_INET_ATON # endif # ifndef ACE_LACKS_INET_NTOA # define ACE_LACKS_INET_NTOA # endif # ifndef ACE_LACKS_IOSTREAM_TOTALLY # define ACE_LACKS_IOSTREAM_TOTALLY # endif # ifndef ACE_LACKS_ISASCII # define ACE_LACKS_ISASCII # endif # ifndef ACE_LACKS_ISATTY # define ACE_LACKS_ISATTY # endif # ifndef ACE_LACKS_ISBLANK # define ACE_LACKS_ISBLANK # endif # ifndef ACE_LACKS_ISWASCII # define ACE_LACKS_ISWASCII # endif # ifndef ACE_LACKS_ISWBLANK # define ACE_LACKS_ISWBLANK # endif # ifndef ACE_LACKS_ISWCTYPE # define ACE_LACKS_ISWCTYPE # endif # ifndef ACE_LACKS_LOCALTIME # define ACE_LACKS_LOCALTIME # endif # ifndef ACE_LACKS_LOG2 # define ACE_LACKS_LOG2 # endif # ifndef ACE_LACKS_MADVISE # define ACE_LACKS_MADVISE # endif # ifndef ACE_LACKS_MKSTEMP # define ACE_LACKS_MKSTEMP # endif # ifndef ACE_LACKS_MKTEMP # define ACE_LACKS_MKTEMP # endif # ifndef ACE_LACKS_MPROTECT # define ACE_LACKS_MPROTECT # endif # ifndef ACE_LACKS_MSYNC # define ACE_LACKS_MSYNC # endif # ifndef ACE_LACKS_MUTEXATTR_PSHARED # define ACE_LACKS_MUTEXATTR_PSHARED # endif # ifndef ACE_LACKS_PERROR # define ACE_LACKS_PERROR # endif # ifndef ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR # define ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR # endif # ifndef ACE_LACKS_PTHREAD_CANCEL # define ACE_LACKS_PTHREAD_CANCEL # endif # ifndef ACE_LACKS_PUTENV # define ACE_LACKS_PUTENV # endif # ifndef ACE_LACKS_PWD_FUNCTIONS # define ACE_LACKS_PWD_FUNCTIONS # endif # ifndef ACE_LACKS_QSORT # define ACE_LACKS_QSORT # endif # ifndef ACE_LACKS_READLINK # define ACE_LACKS_READLINK # endif # ifndef ACE_LACKS_READV # define ACE_LACKS_READV # endif # ifndef ACE_LACKS_RECVMSG # define ACE_LACKS_RECVMSG # endif # ifndef ACE_LACKS_REALPATH # define ACE_LACKS_REALPATH # endif # ifndef ACE_LACKS_RLIMIT # define ACE_LACKS_RLIMIT # endif # ifndef ACE_LACKS_RWLOCK_T # define ACE_LACKS_RWLOCK_T # endif # ifndef ACE_LACKS_SBRK # define ACE_LACKS_SBRK # endif # ifndef ACE_LACKS_SEEKDIR # define ACE_LACKS_SEEKDIR # endif # ifndef ACE_LACKS_SENDMSG # define ACE_LACKS_SENDMSG # endif # ifndef ACE_LACKS_SETLOGMASK # define ACE_LACKS_SETLOGMASK # endif # ifndef ACE_LACKS_SETPGID # define ACE_LACKS_SETPGID # endif # ifndef ACE_LACKS_SETREGID # define ACE_LACKS_SETREGID # endif # ifndef ACE_LACKS_SETREUID # define ACE_LACKS_SETREUID # endif # ifndef ACE_LACKS_SETSID # define ACE_LACKS_SETSID # endif # ifndef ACE_LACKS_SIGPROCMASK # define ACE_LACKS_SIGPROCMASK # endif # ifndef ACE_LACKS_SOCKETPAIR # define ACE_LACKS_SOCKETPAIR # endif # ifndef ACE_LACKS_STD_WSTRING # define ACE_LACKS_STD_WSTRING # endif # ifndef ACE_LACKS_STRCASECMP # define ACE_LACKS_STRCASECMP # endif # ifndef ACE_LACKS_STRDUP # define ACE_LACKS_STRDUP # endif # ifndef ACE_LACKS_STRERROR # define ACE_LACKS_STRERROR # endif # ifndef ACE_LACKS_STRPTIME # define ACE_LACKS_STRPTIME # endif # ifndef ACE_LACKS_STRTOLL # define ACE_LACKS_STRTOLL # endif # ifndef ACE_LACKS_STRTOULL # define ACE_LACKS_STRTOULL # endif # ifndef ACE_LACKS_SWAB # define ACE_LACKS_SWAB # endif # ifndef ACE_LACKS_SYMLINKS # define ACE_LACKS_SYMLINKS # endif # ifndef ACE_LACKS_SYSTEM # define ACE_LACKS_SYSTEM # endif # ifndef ACE_LACKS_SYS_SHM_H # define ACE_LACKS_SYS_SHM_H # endif # ifndef ACE_LACKS_TELLDIR # define ACE_LACKS_TELLDIR # endif # ifndef ACE_LACKS_TMPNAM # define ACE_LACKS_TMPNAM # endif # ifndef ACE_LACKS_TEMPNAM # define ACE_LACKS_TEMPNAM # endif # ifndef ACE_LACKS_TRUNCATE # define ACE_LACKS_TRUNCATE # endif # ifndef ACE_LACKS_UNIX_SYSLOG # define ACE_LACKS_UNIX_SYSLOG # endif # ifndef ACE_LACKS_WAIT # define ACE_LACKS_WAIT # endif # ifndef ACE_LACKS_WCSCAT # define ACE_LACKS_WCSCAT # endif # ifndef ACE_LACKS_WCSCHR # define ACE_LACKS_WCSCHR # endif # ifndef ACE_LACKS_WCSCMP # define ACE_LACKS_WCSCMP # endif # ifndef ACE_LACKS_WCSCPY # define ACE_LACKS_WCSCPY # endif # ifndef ACE_LACKS_WCSCSPN # define ACE_LACKS_WCSCSPN # endif # ifndef ACE_LACKS_WCSDUP # define ACE_LACKS_WCSDUP # endif # ifndef ACE_LACKS_WCSLEN # define ACE_LACKS_WCSLEN # endif # ifndef ACE_LACKS_WCSNCAT # define ACE_LACKS_WCSNCAT # endif # ifndef ACE_LACKS_WCSNCMP # define ACE_LACKS_WCSNCMP # endif # ifndef ACE_LACKS_WCSNCPY # define ACE_LACKS_WCSNCPY # endif # ifndef ACE_LACKS_WCSNLEN # define ACE_LACKS_WCSNLEN # endif # ifndef ACE_LACKS_WCSPBRK # define ACE_LACKS_WCSPBRK # endif # ifndef ACE_LACKS_WCSRCHR # define ACE_LACKS_WCSRCHR # endif # ifndef ACE_LACKS_WCSRTOMBS # define ACE_LACKS_WCSRTOMBS # endif # ifndef ACE_LACKS_WCSSPN # define ACE_LACKS_WCSSPN # endif # ifndef ACE_LACKS_WCSSTR # define ACE_LACKS_WCSSTR # endif # ifndef ACE_LACKS_WCSTOK # define ACE_LACKS_WCSTOK # endif # ifndef ACE_LACKS_WCSLEN # define ACE_LACKS_WCSLEN # endif # ifndef ACE_LACKS_WRITEV # define ACE_LACKS_WRITEV # endif // due to ACE_LACKS_GETHOSTBYNAME: # ifndef ACE_LOCALHOST # define ACE_LOCALHOST ACE_TEXT ("127.0.0.1") # endif # ifdef ACE_USES_GPROF # undef ACE_USES_GPROF # endif #endif // ACE_FACE_SAFETY_EXTENDED