# 1 "is_local_host.c" # 1 "" # 1 "" # 1 "is_local_host.c" /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ /* * User-visible pieces of the ANSI C standard I/O package. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ccompile.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * Copyright 2015 EveryCity Ltd. All rights reserved. */ /* * This file contains definitions designed to enable different compilers * to be used harmoniously on Solaris systems. */ /* * Allow for version tests for compiler bugs and features. */ # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ccompile.h" /* * analogous to lint's PRINTFLIKEn */ /* * Handle the kernel printf routines that can take '%b' too */ # 78 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ccompile.h" /* * This one's pretty obvious -- the function never returns */ /* * The function is 'extern inline' and expects GNU C89 behaviour, not C99 * behaviour. * * Should only be used on 'extern inline' definitions for GCC. */ /* * The function has control flow such that it may return multiple times (in * the manner of setjmp or vfork) */ /* * This is an appropriate label for functions that do not * modify their arguments, e.g. strlen() */ /* * This is a stronger form of __pure__. Can be used for functions * that do not modify their arguments and don't depend on global * memory. */ /* * This attribute, attached to a variable, means that the variable is meant to * be possibly unused. GCC will not produce a warning for this variable. */ # 138 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ccompile.h" /* * Shorthand versions for readability */ # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ /* * This header file serves to group a set of well known defines and to * set these for each instruction set architecture. These defines may * be divided into two groups; characteristics of the processor and * implementation choices for Solaris on a processor. * * Processor Characteristics: * * _LITTLE_ENDIAN / _BIG_ENDIAN: * The natural byte order of the processor. A pointer to an int points * to the least/most significant byte of that int. * * _STACK_GROWS_UPWARD / _STACK_GROWS_DOWNWARD: * The processor specific direction of stack growth. A push onto the * stack increases/decreases the stack pointer, so it stores data at * successively higher/lower addresses. (Stackless machines ignored * without regrets). * * _LONG_LONG_HTOL / _LONG_LONG_LTOH: * A pointer to a long long points to the most/least significant long * within that long long. * * _BIT_FIELDS_HTOL / _BIT_FIELDS_LTOH: * The C compiler assigns bit fields from the high/low to the low/high end * of an int (most to least significant vs. least to most significant). * * _IEEE_754: * The processor (or supported implementations of the processor) * supports the ieee-754 floating point standard. No other floating * point standards are supported (or significant). Any other supported * floating point formats are expected to be cased on the ISA processor * symbol. * * _CHAR_IS_UNSIGNED / _CHAR_IS_SIGNED: * The C Compiler implements objects of type `char' as `unsigned' or * `signed' respectively. This is really an implementation choice of * the compiler writer, but it is specified in the ABI and tends to * be uniform across compilers for an instruction set architecture. * Hence, it has the properties of a processor characteristic. * * _CHAR_ALIGNMENT / _SHORT_ALIGNMENT / _INT_ALIGNMENT / _LONG_ALIGNMENT / * _LONG_LONG_ALIGNMENT / _DOUBLE_ALIGNMENT / _LONG_DOUBLE_ALIGNMENT / * _POINTER_ALIGNMENT / _FLOAT_ALIGNMENT: * The ABI defines alignment requirements of each of the primitive * object types. Some, if not all, may be hardware requirements as * well. The values are expressed in "byte-alignment" units. * * _MAX_ALIGNMENT: * The most stringent alignment requirement as specified by the ABI. * Equal to the maximum of all the above _XXX_ALIGNMENT values. * * _MAX_ALIGNMENT_TYPE: * The name of the C type that has the value descried in _MAX_ALIGNMENT. * * _ALIGNMENT_REQUIRED: * True or false (1 or 0) whether or not the hardware requires the ABI * alignment. * * _LONG_LONG_ALIGNMENT_32 * The 32-bit ABI supported by a 64-bit kernel may have different * alignment requirements for primitive object types. The value of this * identifier is expressed in "byte-alignment" units. * * _HAVE_CPUID_INSN * This indicates that the architecture supports the 'cpuid' * instruction as defined by Intel. (Intel allows other vendors * to extend the instruction for their own purposes.) * * * Implementation Choices: * * _ILP32 / _LP64: * This specifies the compiler data type implementation as specified in * the relevant ABI. The choice between these is strongly influenced * by the underlying hardware, but is not absolutely tied to it. * Currently only two data type models are supported: * * _ILP32: * Int/Long/Pointer are 32 bits. This is the historical UNIX * and Solaris implementation. Due to its historical standing, * this is the default case. * * _LP64: * Long/Pointer are 64 bits, Int is 32 bits. This is the chosen * implementation for 64-bit ABIs such as SPARC V9. * * _I32LPx: * A compilation environment where 'int' is 32-bit, and * longs and pointers are simply the same size. * * In all cases, Char is 8 bits and Short is 16 bits. * * _SUNOS_VTOC_8 / _SUNOS_VTOC_16 / _SVR4_VTOC_16: * This specifies the form of the disk VTOC (or label): * * _SUNOS_VTOC_8: * This is a VTOC form which is upwardly compatible with the * SunOS 4.x disk label and allows 8 partitions per disk. * * _SUNOS_VTOC_16: * In this format the incore vtoc image matches the ondisk * version. It allows 16 slices per disk, and is not * compatible with the SunOS 4.x disk label. * * Note that these are not the only two VTOC forms possible and * additional forms may be added. One possible form would be the * SVr4 VTOC form. The symbol for that is reserved now, although * it is not implemented. * * _SVR4_VTOC_16: * This VTOC form is compatible with the System V Release 4 * VTOC (as implemented on the SVr4 Intel and 3b ports) with * 16 partitions per disk. * * * _DMA_USES_PHYSADDR / _DMA_USES_VIRTADDR * This describes the type of addresses used by system DMA: * * _DMA_USES_PHYSADDR: * This type of DMA, used in the x86 implementation, * requires physical addresses for DMA buffers. The 24-bit * addresses used by some legacy boards is the source of the * "low-memory" (<16MB) requirement for some devices using DMA. * * _DMA_USES_VIRTADDR: * This method of DMA allows the use of virtual addresses for * DMA transfers. * * _FIRMWARE_NEEDS_FDISK / _NO_FDISK_PRESENT * This indicates the presence/absence of an fdisk table. * * _FIRMWARE_NEEDS_FDISK * The fdisk table is required by system firmware. If present, * it allows a disk to be subdivided into multiple fdisk * partitions, each of which is equivalent to a separate, * virtual disk. This enables the co-existence of multiple * operating systems on a shared hard disk. * * _NO_FDISK_PRESENT * If the fdisk table is absent, it is assumed that the entire * media is allocated for a single operating system. * * _HAVE_TEM_FIRMWARE * Defined if this architecture has the (fallback) option of * using prom_* calls for doing I/O if a suitable kernel driver * is not available to do it. * * _DONT_USE_1275_GENERIC_NAMES * Controls whether or not device tree node names should * comply with the IEEE 1275 "Generic Names" Recommended * Practice. With _DONT_USE_GENERIC_NAMES, device-specific * names identifying the particular device will be used. * * __i386_COMPAT * This indicates whether the i386 ABI is supported as a *non-native* * mode for the platform. When this symbol is defined: * - 32-bit xstat-style system calls are enabled * - 32-bit xmknod-style system calls are enabled * - 32-bit system calls use i386 sizes -and- alignments * * Note that this is NOT defined for the i386 native environment! * * __x86 * This is ONLY a synonym for defined(__i386) || defined(__amd64) * which is useful only insofar as these two architectures share * common attributes. Analogous to __sparc. * * _PSM_MODULES * This indicates whether or not the implementation uses PSM * modules for processor support, reading /etc/mach from inside * the kernel to extract a list. * * _RTC_CONFIG * This indicates whether or not the implementation uses /etc/rtc_config * to configure the real-time clock in the kernel. * * _UNIX_KRTLD * This indicates that the implementation uses a dynamically * linked unix + krtld to form the core kernel image at boot * time, or (in the absence of this symbol) a prelinked kernel image. * * _OBP * This indicates the firmware interface is OBP. * * _SOFT_HOSTID * This indicates that the implementation obtains the hostid * from the file /etc/hostid, rather than from hardware. */ /* * The following set of definitions characterize Solaris on AMD's * 64-bit systems. */ # 305 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" /* * Define the appropriate "processor characteristics" */ # 333 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" /* * Define the appropriate "implementation choices". */ # 351 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" /* * The following set of definitions characterize the Solaris on SPARC systems. * * The symbol __sparc indicates any of the SPARC family of processor * architectures. This includes SPARC V7, SPARC V8 and SPARC V9. * * The symbol __sparcv8 indicates the 32-bit SPARC V8 architecture as defined * by Version 8 of the SPARC Architecture Manual. (SPARC V7 is close enough * to SPARC V8 for the former to be subsumed into the latter definition.) * * The symbol __sparcv9 indicates the 64-bit SPARC V9 architecture as defined * by Version 9 of the SPARC Architecture Manual. * * The symbols __sparcv8 and __sparcv9 are mutually exclusive, and are only * relevant when the symbol __sparc is defined. */ /* * XXX Due to the existence of 5110166, "defined(__sparcv9)" needs to be added * to support backwards builds. This workaround should be removed in s10_71. */ # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 2 /* * Values of _POSIX_C_SOURCE * * undefined not a POSIX compilation * 1 POSIX.1-1990 compilation * 2 POSIX.2-1992 compilation * 199309L POSIX.1b-1993 compilation (Real Time) * 199506L POSIX.1c-1995 compilation (POSIX Threads) * 200112L POSIX.1-2001 compilation (Austin Group Revision) * 200809L POSIX.1-2008 compilation */ /* * The feature test macros __XOPEN_OR_POSIX, _STRICT_STDC, _STRICT_SYMBOLS, * and _STDC_C99 are Sun implementation specific macros created in order to * compress common standards specified feature test macros for easier reading. * These macros should not be used by the application developer as * unexpected results may occur. Instead, the user should reference * standards(5) for correct usage of the standards feature test macros. * * __XOPEN_OR_POSIX Used in cases where a symbol is defined by both * X/Open or POSIX or in the negative, when neither * X/Open or POSIX defines a symbol. * * _STRICT_STDC __STDC__ is specified by the C Standards and defined * by the compiler. For Sun compilers the value of * __STDC__ is either 1, 0, or not defined based on the * compilation mode (see cc(1)). When the value of * __STDC__ is 1 and in the absence of any other feature * test macros, the namespace available to the application * is limited to only those symbols defined by the C * Standard. _STRICT_STDC provides a more readable means * of identifying symbols defined by the standard, or in * the negative, symbols that are extensions to the C * Standard. See additional comments for GNU C differences. * * _STDC_C99 __STDC_VERSION__ is specified by the C standards and * defined by the compiler and indicates the version of * the C standard. A value of 199901L indicates a * compiler that complies with ISO/IEC 9899:1999, other- * wise known as the C99 standard. * * _STDC_C11 Like _STDC_C99 except that the value of __STDC_VERSION__ * is 201112L indicating a compiler that compiles with * ISO/IEXC 9899:2011, otherwise known as the C11 standard. * * _STRICT_SYMBOLS Used in cases where symbol visibility is restricted * by the standards, and the user has not explicitly * relaxed the strictness via __EXTENSIONS__. */ /* * ISO/IEC 9899:1990 and it's revisions, ISO/IEC 9899:1999 and ISO/IEC * 99899:2011 specify the following predefined macro name: * * __STDC__ The integer constant 1, intended to indicate a conforming * implementation. * * Furthermore, a strictly conforming program shall use only those features * of the language and library specified in these standards. A conforming * implementation shall accept any strictly conforming program. * * Based on these requirements, Sun's C compiler defines __STDC__ to 1 for * strictly conforming environments and __STDC__ to 0 for environments that * use ANSI C semantics but allow extensions to the C standard. For non-ANSI * C semantics, Sun's C compiler does not define __STDC__. * * The GNU C project interpretation is that __STDC__ should always be defined * to 1 for compilation modes that accept ANSI C syntax regardless of whether * or not extensions to the C standard are used. Violations of conforming * behavior are conditionally flagged as warnings via the use of the * -pedantic option. In addition to defining __STDC__ to 1, the GNU C * compiler also defines __STRICT_ANSI__ as a means of specifying strictly * conforming environments using the -ansi or -std= options. * * In the absence of any other compiler options, Sun and GNU set the value * of __STDC__ as follows when using the following options: * * Value of __STDC__ __STRICT_ANSI__ * * cc -Xa (default) 0 undefined * cc -Xt (transitional) 0 undefined * cc -Xc (strictly conforming) 1 undefined * cc -Xs (K&R C) undefined undefined * * gcc (default) 1 undefined * gcc -ansi, -std={c89, c99,...) 1 defined * gcc -traditional (K&R) undefined undefined * * The default compilation modes for Sun C compilers versus GNU C compilers * results in a differing value for __STDC__ which results in a more * restricted namespace when using Sun compilers. To allow both GNU and Sun * interpretations to peacefully co-exist, we use the following Sun * implementation _STRICT_STDC_ macro: */ # 150 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" /* * Compiler complies with ISO/IEC 9899:1999 or ISO/IEC 9989:2011 */ # 162 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" /* * Use strict symbol visibility. */ /* * Large file interfaces: * * _LARGEFILE_SOURCE * 1 large file-related additions to POSIX * interfaces requested (fseeko, etc.) * _LARGEFILE64_SOURCE * 1 transitional large-file-related interfaces * requested (seek64, stat64, etc.) * * The corresponding announcement macros are respectively: * _LFS_LARGEFILE * _LFS64_LARGEFILE * (These are set in .) * * Requesting _LARGEFILE64_SOURCE implies requesting _LARGEFILE_SOURCE as * well. * * The large file interfaces are made visible regardless of the initial values * of the feature test macros under certain circumstances: * - If no explicit standards-conforming environment is requested (neither * of _POSIX_SOURCE nor _XOPEN_SOURCE is defined and the value of * __STDC__ does not imply standards conformance). * - Extended system interfaces are explicitly requested (__EXTENSIONS__ * is defined). * - Access to in-kernel interfaces is requested (_KERNEL or _KMEMUSER is * defined). (Note that this dependency is an artifact of the current * kernel implementation and may change in future releases.) */ # 210 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" /* * Large file compilation environment control: * * The setting of _FILE_OFFSET_BITS controls the size of various file-related * types and governs the mapping between file-related source function symbol * names and the corresponding binary entry points. * * In the 32-bit environment, the default value is 32; if not set, set it to * the default here, to simplify tests in other headers. * * In the 64-bit compilation environment, the only value allowed is 64. */ # 238 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" /* * Use of _XOPEN_SOURCE * * The following X/Open specifications are supported: * * X/Open Portability Guide, Issue 3 (XPG3) * X/Open CAE Specification, Issue 4 (XPG4) * X/Open CAE Specification, Issue 4, Version 2 (XPG4v2) * X/Open CAE Specification, Issue 5 (XPG5) * Open Group Technical Standard, Issue 6 (XPG6), also referred to as * IEEE Std. 1003.1-2001 and ISO/IEC 9945:2002. * Open Group Technical Standard, Issue 7 (XPG7), also referred to as * IEEE Std. 1003.1-2008 and ISO/IEC 9945:2009. * * XPG4v2 is also referred to as UNIX 95 (SUS or SUSv1). * XPG5 is also referred to as UNIX 98 or the Single Unix Specification, * Version 2 (SUSv2) * XPG6 is the result of a merge of the X/Open and POSIX specifications * and as such is also referred to as IEEE Std. 1003.1-2001 in * addition to UNIX 03 and SUSv3. * XPG7 is also referred to as UNIX 08 and SUSv4. * * When writing a conforming X/Open application, as per the specification * requirements, the appropriate feature test macros must be defined at * compile time. These are as follows. For more info, see standards(5). * * Feature Test Macro Specification * ------------------------------------------------ ------------- * _XOPEN_SOURCE XPG3 * _XOPEN_SOURCE && _XOPEN_VERSION = 4 XPG4 * _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED = 1 XPG4v2 * _XOPEN_SOURCE = 500 XPG5 * _XOPEN_SOURCE = 600 (or POSIX_C_SOURCE=200112L) XPG6 * _XOPEN_SOURCE = 700 (or POSIX_C_SOURCE=200809L) XPG7 * * In order to simplify the guards within the headers, the following * implementation private test macros have been created. Applications * must NOT use these private test macros as unexpected results will * occur. * * Note that in general, the use of these private macros is cumulative. * For example, the use of _XPG3 with no other restrictions on the X/Open * namespace will make the symbols visible for XPG3 through XPG6 * compilation environments. The use of _XPG4_2 with no other X/Open * namespace restrictions indicates that the symbols were introduced in * XPG4v2 and are therefore visible for XPG4v2 through XPG6 compilation * environments, but not for XPG3 or XPG4 compilation environments. * * _XPG3 X/Open Portability Guide, Issue 3 (XPG3) * _XPG4 X/Open CAE Specification, Issue 4 (XPG4) * _XPG4_2 X/Open CAE Specification, Issue 4, Version 2 (XPG4v2/UNIX 95/SUS) * _XPG5 X/Open CAE Specification, Issue 5 (XPG5/UNIX 98/SUSv2) * _XPG6 Open Group Technical Standard, Issue 6 (XPG6/UNIX 03/SUSv3) * _XPG7 Open Group Technical Standard, Issue 7 (XPG7/UNIX 08/SUSv4) */ /* X/Open Portability Guide, Issue 3 */ # 341 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" /* * _XOPEN_VERSION is defined by the X/Open specifications and is not * normally defined by the application, except in the case of an XPG4 * application. On the implementation side, _XOPEN_VERSION defined with * the value of 3 indicates an XPG3 application. _XOPEN_VERSION defined * with the value of 4 indicates an XPG4 or XPG4v2 (UNIX 95) application. * _XOPEN_VERSION defined with a value of 500 indicates an XPG5 (UNIX 98) * application and with a value of 600 indicates an XPG6 (UNIX 03) * application and with a value of 700 indicates an XPG7 (UNIX 08). * The appropriate version is determined by the use of the * feature test macros described earlier. The value of _XOPEN_VERSION * defaults to 3 otherwise indicating support for XPG3 applications. */ # 368 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" /* * ANSI C and ISO 9899:1990 say the type long long doesn't exist in strictly * conforming environments. ISO 9899:1999 says it does. * * The presence of _LONGLONG_TYPE says "long long exists" which is therefore * defined in all but strictly conforming environments that disallow it. */ # 388 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" /* * The following macro defines a value for the ISO C99 restrict * keyword so that _RESTRICT_KYWD resolves to "restrict" if * an ISO C99 compiler is used, "__restrict" for c++ and "" (null string) * if any other compiler is used. This allows for the use of single * prototype declarations regardless of compiler version. */ # 410 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" /* * The following macro defines a value for the ISO C11 _Noreturn * keyword so that _NORETURN_KYWD resolves to "_Noreturn" if * an ISO C11 compiler is used and "" (null string) if any other * compiler is used. This allows for the use of single prototype * declarations regardless of compiler version. */ /* * The following macro indicates header support for the ANSI C++ * standard. The ISO/IEC designation for this is ISO/IEC FDIS 14882. */ /* * The following macro indicates header support for the C99 standard, * ISO/IEC 9899:1999, Programming Languages - C. */ /* * The following macro indicates header support for the C99 standard, * ISO/IEC 9899:2011, Programming Languages - C. */ /* * The following macro indicates header support for DTrace. The value is an * integer that corresponds to the major version number for DTrace. */ # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 2 /* * Do all of our 'redefine_extname' processing before * declarations of the associated functions are seen. * This is necessary to keep gcc happy. */ /* large file compilation environment setup */ # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" #pragma redefine_extname fopen fopen64 # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" #pragma redefine_extname freopen freopen64 # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" #pragma redefine_extname tmpfile tmpfile64 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" #pragma redefine_extname fgetpos fgetpos64 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" # 56 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" #pragma redefine_extname fsetpos fsetpos64 # 56 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" # 58 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" #pragma redefine_extname fseeko fseeko64 # 58 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" # 59 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" #pragma redefine_extname ftello ftello64 # 59 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" /* In the LP64 compilation environment, all APIs are already large file */ # 82 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * Copyright 2014 PALO, Richard. * * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ /* * An application should not include this header directly. Instead it * should be included only through the inclusion of other Sun headers. * * The contents of this header is limited to identifiers specified in the * C Standard. Any new identifiers specified in future amendments to the * C Standard must be placed in this header. If these new identifiers * are required to also be in the C++ Standard "std" namespace, then for * anything other than macro definitions, corresponding "using" directives * must also be added to . */ /* * User-visible pieces of the ANSI C standard I/O package. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 /* * This file and its contents are supplied under the terms of the * Common Development and Distribution License ("CDDL"), version 1.0. * You may only use this file in accordance with the terms of version * 1.0 of the CDDL. * * A full copy of the text of the CDDL should have accompanied this * source. A copy of the CDDL is also available via the Internet at * http://www.illumos.org/license/CDDL. */ /* * Copyright 2014-2016 PALO, Richard. */ # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_list.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * An application should not include this header directly. Instead it * should be included only through the inclusion of other Sun headers. * * The purpose of this header is to provide the type definitions for * the va_list argument used by a number of printf and printf like * functions. The headers that define these various function prototypes * #include this header directly. These include but are not necessarily * limited to , , , and * . The type definitions included in this header are for * the benefit of consumers of va_list. * * Any application that accepts variable argument lists must as documented, * include either or the preferred . Doing so will * pull in the appropriate compiler protocols defined in * which is in turn is included by and . See comments * in for more detailed information regarding implementation * and compiler specific protocols. */ /* * The common definitions exported by this header or compilers using * this header are: * * the identifier __builtin_va_alist for the variable list pseudo parameter * the type __va_alist_type for the variable list pseudo parameter * the type __va_list defining the type of the variable list iterator * * The feature macros (e.g. __BUILTIN_VA_STRUCT) and compiler macros * (__GNUC__) and processor macros (e.g. __amd64) are intended to be * defined by the compilation system, not the user of the system. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ # 70 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_list.h" 2 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_list.h" typedef __builtin_va_list __gnuc_va_list; /* * XX64 This seems unnecessary .. but is needed because vcmn_err is * defined with __va_list instead of plain old va_list. * Perhaps that should be fixed! */ typedef __builtin_va_list __va_list; # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_tag.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_tag.h" typedef struct __FILE __FILE; # 56 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_impl.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_impl.h" 2 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_impl.h" struct __FILE /* needs to be binary-compatible with old versions */ { int _cnt; /* number of available characters in buffer */ unsigned char *_ptr; /* next character from/to here in buffer */ unsigned char *_base; /* the buffer */ unsigned char _flag; /* the state of the stream */ unsigned char _magic; /* Old home of the file descriptor */ /* Only fileno(3C) can retrieve the value now */ unsigned __orientation:2; /* the orientation of the stream */ unsigned __ionolock:1; /* turn off implicit locking */ unsigned __seekable:1; /* is file seekable? */ unsigned __extendedfd:1; /* enable extended FILE */ unsigned __xf_nocheck:1; /* no extended FILE runtime check */ unsigned __filler:10; }; # 57 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 /* * If feature test macros are set that enable interfaces that use types * defined in , get those types by doing the include. * * Note that in asking for the interfaces associated with this feature test * macro one also asks for definitions of the POSIX types. */ /* * The following typedefs are adopted from ones in (with leading * underscores added to avoid polluting the ANSI C name space). See the * commentary there for further explanation. */ typedef long long __longlong_t; # 93 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" typedef __FILE FILE; typedef unsigned int size_t; /* (historical version) */ typedef __longlong_t fpos_t; # 117 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" /* * The value of _NFILE is defined in the Processor Specific ABI. The value * is chosen for historical reasons rather than for truly processor related * attribute. Note that the SPARC Processor Specific ABI uses the common * UNIX historical value of 20 so it is allowed to fall through. */ # 156 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" extern __FILE __iob[60]; # 191 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" extern int remove(const char *); extern int rename(const char *, const char *); extern FILE *tmpfile(void); extern char *tmpnam(char *); extern int fclose(FILE *); extern int fflush(FILE *); extern FILE *fopen(const char *, const char *); extern FILE *freopen(const char *, const char *, FILE *); extern void setbuf(FILE *, char *); extern int setvbuf(FILE *, char *, int, size_t); /* PRINTFLIKE2 */ extern int fprintf(FILE *, const char *, ...); /* SCANFLIKE2 */ extern int fscanf(FILE *, const char *, ...); /* PRINTFLIKE1 */ extern int printf(const char *, ...); /* SCANFLIKE1 */ extern int scanf(const char *, ...); /* PRINTFLIKE2 */ extern int sprintf(char *, const char *, ...); /* SCANFLIKE2 */ extern int sscanf(const char *, const char *, ...); extern int vfprintf(FILE *, const char *, __va_list); extern int vprintf(const char *, __va_list); extern int vsprintf(char *, const char *, __va_list); extern int fgetc(FILE *); extern char *fgets(char *, int, FILE *); extern int fputc(int, FILE *); extern int fputs(const char *, FILE *); extern int getc(FILE *); extern int putc(int, FILE *); extern int getchar(void); extern int putchar(int); /* * ISO/IEC C11 removed gets from the standard library. Therefore if a strict C11 * environment has been requested, we remove it. */ extern char *gets(char *); extern int puts(const char *); extern int ungetc(int, FILE *); extern size_t fread(void *, size_t, size_t, FILE *); extern size_t fwrite(const void *, size_t, size_t, FILE *); extern int fgetpos(FILE *, fpos_t *); extern int fsetpos(FILE *, const fpos_t *); extern int fseek(FILE *, long, int); extern long ftell(FILE *); extern void rewind(FILE *); extern void clearerr(FILE *); extern int feof(FILE *); extern int ferror(FILE *); extern void perror(const char *); extern int __filbuf(FILE *); extern int __flsbuf(int, FILE *); # 83 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 2 /* * If feature test macros are set that enable interfaces that use types * defined in , get those types by doing the include. * * Note that in asking for the interfaces associated with this feature test * macro one also asks for definitions of the POSIX types. */ /* * Allow global visibility for symbols defined in * C++ "std" namespace in . */ # 147 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" /* * This header needs to be included here because it relies on the global * visibility of FILE and size_t in the C++ environment. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_c99.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * An application should not include this header directly. Instead it * should be included only through the inclusion of other Sun headers. * * The contents of this header is limited to identifiers specified in * the C99 standard and in conflict with the C++ implementation of the * standard header. The C++ standard may adopt the C99 standard at * which point it is expected that the symbols included here will * become part of the C++ std namespace. */ # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_c99.h" /* * The following have been added as a result of the ISO/IEC 9899:1999 * standard. For a strictly conforming C application, visibility is * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h). * For non-strictly conforming C applications, there are no restrictions * on the C namespace. */ # 74 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_c99.h" extern int vfscanf(FILE *, const char *, __va_list); extern int vscanf(const char *, __va_list); extern int vsscanf(const char *, const char *, __va_list); extern int snprintf(char *, size_t, const char *, ...); extern int vsnprintf(char *, size_t, const char *, __va_list); # 152 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 2 # 163 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" typedef __longlong_t off_t; typedef __longlong_t off64_t; # 179 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" typedef __longlong_t fpos64_t; /* * XPG4 requires that va_list be defined in "as described in * ". ANSI-C and POSIX require that the namespace of * not be polluted with this name. */ # 198 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" /* Marked LEGACY in SUSv2 and removed in SUSv3 */ # 213 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" extern unsigned char _sibuf[], _sobuf[]; /* large file compilation environment setup */ # 237 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" extern unsigned char *_bufendtab[]; extern FILE *_lastbuf; /* In the LP64 compilation environment, all APIs are already large file */ # 261 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" typedef int ssize_t; /* (historical version) */ extern char *tmpnam_r(char *); extern int fcloseall(void); extern void setbuffer(FILE *, char *, size_t); extern int setlinebuf(FILE *); /* PRINTFLIKE2 */ extern int asprintf(char **, const char *, ...); /* PRINTFLIKE2 */ extern int vasprintf(char **, const char *, __va_list); /* || defined(_XPG7) */ extern ssize_t getdelim(char **, size_t *, int, FILE *); extern ssize_t getline(char **, size_t *, FILE *); /* * The following are known to POSIX and XOPEN, but not to ANSI-C. */ extern FILE *fdopen(int, const char *); extern char *ctermid(char *); extern int fileno(FILE *); /* * The following are known to POSIX.1c, but not to ANSI-C or XOPEN. */ # 318 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" /* * The following are known to XOPEN, but not to ANSI-C or POSIX. */ extern FILE *popen(const char *, const char *); extern char *tempnam(const char *, const char *); extern int pclose(FILE *); extern int getsubopt(char **, char *const *, char **); /* Marked LEGACY in SUSv2 and removed in SUSv3 */ extern char *cuserid(char *); extern int getopt(int, char *const *, const char *); extern char *optarg; extern int optind, opterr, optopt; extern int getw(FILE *); extern int putw(int, FILE *); /* * The following are defined as part of the Large File Summit interfaces. */ extern int fseeko(FILE *, off_t, int); extern off_t ftello(FILE *); /* * The following are defined as part of the transitional Large File Summit * interfaces. */ extern FILE *fopen64(const char *, const char *); extern FILE *freopen64(const char *, const char *, FILE *); extern FILE *tmpfile64(void); extern int fgetpos64(FILE *, fpos64_t *); extern int fsetpos64(FILE *, const fpos64_t *); extern int fseeko64(FILE *, off64_t, int); extern off64_t ftello64(FILE *); /* * XPG7 symbols */ extern FILE *fmemopen(void *, size_t, const char *); extern FILE *open_memstream(char **, size_t *); # 30 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 /* * Machine dependent definitions moved to . */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machtypes.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machtypes.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/ia32/sys/machtypes.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" /* * Machine dependent types: * * intel ia32 Version */ # 61 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/ia32/sys/machtypes.h" typedef struct _label_t { long val[6]; } label_t; typedef unsigned char lock_t; /* lock work for busy wait */ # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machtypes.h" 2 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 /* * Include fixed width type declarations proposed by the ISO/JTC1/SC22/WG14 C * committee's working draft for the revision of the current ISO C standard, * ISO/IEC 9899:1990 Programming language - C. These are not currently * required by any standard but constitute a useful, general purpose set * of type definitions which is namespace clean with respect to all standards. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * This file, , is part of the Sun Microsystems implementation * of defined in the ISO C standard, ISO/IEC 9899:1999 * Programming language - C. * * Programs/Modules should not directly include this file. Access to the * types defined in this file should be through the inclusion of one of the * following files: * * Provides only the "_t" types defined in this * file which is a subset of the contents of * . (This can be appropriate for * all programs/modules except those claiming * ANSI-C conformance.) * * Provides the Kernel and Driver appropriate * components of . * * For use by applications. * * See these files for more details. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 56 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 2 /* * Basic / Extended integer types * * The following defines the basic fixed-size integer types. * * Implementations are free to typedef them to Standard C integer types or * extensions that they support. If an implementation does not support one * of the particular integer data types below, then it should not define the * typedefs and macros corresponding to that data type. Note that int8_t * is not defined in -Xs mode on ISAs for which the ABI specifies "char" * as an unsigned entity because there is no way to define an eight bit * signed integral. */ typedef char int8_t; typedef short int16_t; typedef int int32_t; typedef long long int64_t; typedef unsigned char uint8_t; typedef unsigned short uint16_t; typedef unsigned int uint32_t; typedef unsigned long long uint64_t; /* * intmax_t and uintmax_t are to be the longest (in number of bits) signed * and unsigned integer types supported by the implementation. */ typedef int64_t intmax_t; typedef uint64_t uintmax_t; /* * intptr_t and uintptr_t are signed and unsigned integer types large enough * to hold any data pointer; that is, data pointers can be assigned into or * from these integer types without losing precision. */ typedef int intptr_t; typedef unsigned int uintptr_t; /* * The following define the fastest integer types that can hold the * specified number of bits. */ typedef char int_fast8_t; typedef int int_fast16_t; typedef int int_fast32_t; typedef long long int_fast64_t; typedef unsigned char uint_fast8_t; typedef unsigned int uint_fast16_t; typedef unsigned int uint_fast32_t; typedef unsigned long long uint_fast64_t; /* * The following define the smallest integer types that can hold the * specified number of bits. */ typedef char int_least8_t; typedef short int_least16_t; typedef int int_least32_t; typedef long long int_least64_t; /* * If these are changed, please update char16_t and char32_t in head/uchar.h. */ typedef unsigned char uint_least8_t; typedef unsigned short uint_least16_t; typedef unsigned int uint_least32_t; typedef unsigned long long uint_least64_t; # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 # 65 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" /* * Strictly conforming ANSI C environments prior to the 1999 * revision of the C Standard (ISO/IEC 9899:1999) do not have * the long long data type. */ typedef long long longlong_t; typedef unsigned long long u_longlong_t; # 85 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" /* * These types (t_{u}scalar_t) exist because the XTI/TPI/DLPI standards had * to use them instead of int32_t and uint32_t because DEC had * shipped 64-bit wide. */ typedef long t_scalar_t; /* historical versions */ typedef unsigned long t_uscalar_t; /* * POSIX Extensions */ typedef unsigned char uchar_t; typedef unsigned short ushort_t; typedef unsigned int uint_t; typedef unsigned long ulong_t; typedef char *caddr_t; /* ? type */ typedef long daddr_t; /* type */ typedef short cnt_t; /* ? type */ typedef int ptrdiff_t; /* (historical version) */ /* * VM-related types */ typedef ulong_t pfn_t; /* page frame number */ typedef ulong_t pgcnt_t; /* number of pages */ typedef long spgcnt_t; /* signed number of pages */ typedef uchar_t use_t; /* use count for swap. */ typedef short sysid_t; typedef short index_t; typedef void *timeout_id_t; /* opaque handle from timeout(9F) */ typedef void *bufcall_id_t; /* opaque handle from bufcall(9F) */ /* * The size of off_t and related types depends on the setting of * _FILE_OFFSET_BITS. (Note that other system headers define other types * related to those defined here.) * * If _LARGEFILE64_SOURCE is defined, variants of these types that are * explicitly 64 bits wide become available. */ # 165 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" typedef u_longlong_t ino_t; /* expanded inode type */ typedef longlong_t blkcnt_t; /* count of file blocks */ typedef u_longlong_t fsblkcnt_t; /* count of file system blocks */ typedef u_longlong_t fsfilcnt_t; /* count of files */ # 178 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" typedef u_longlong_t ino64_t; /* expanded inode type */ typedef longlong_t blkcnt64_t; /* count of file blocks */ typedef u_longlong_t fsblkcnt64_t; /* count of file system blocks */ typedef u_longlong_t fsfilcnt64_t; /* count of files */ typedef long blksize_t; /* used for block sizes */ typedef enum { B_FALSE, B_TRUE } boolean_t; # 205 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" /* * The {u,}pad64_t types can be used in structures such that those structures * may be accessed by code produced by compilation environments which don't * support a 64 bit integral datatype. The intention is not to allow * use of these fields in such environments, but to maintain the alignment * and offsets of the structure. * * Similar comments for {u,}pad128_t. * * Note that these types do NOT generate any stronger alignment constraints * than those available in the underlying ABI. See */ typedef int64_t pad64_t; typedef uint64_t upad64_t; # 232 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" typedef union { long double _q; int32_t _l[4]; } pad128_t; typedef union { long double _q; uint32_t _l[4]; } upad128_t; typedef longlong_t offset_t; typedef u_longlong_t u_offset_t; typedef u_longlong_t len_t; typedef u_longlong_t diskaddr_t; /* * Definitions remaining from previous partial support for 64-bit file * offsets. This partial support for devices greater than 2gb requires * compiler support for long long. */ typedef union { offset_t _f; /* Full 64 bit offset value */ struct { int32_t _l; /* lower 32 bits of offset value */ int32_t _u; /* upper 32 bits of offset value */ } _p; } lloff_t; # 276 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" typedef union { longlong_t _f; /* Full 64 bit disk address value */ struct { int32_t _l; /* lower 32 bits of disk address value */ int32_t _u; /* upper 32 bits of disk address value */ } _p; } lldaddr_t; # 295 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" typedef uint_t k_fltset_t; /* kernel fault set type */ /* * The following type is for various kinds of identifiers. The * actual type must be the same for all since some system calls * (such as sigsend) take arguments that may be any of these * types. The enumeration type idtype_t defined in sys/procset.h * is used to indicate what type of id is being specified -- * a process id, process group id, session id, scheduling class id, * user id, group id, project id, task id or zone id. */ typedef long id_t; /* (historical version) */ typedef id_t lgrp_id_t; /* lgroup ID */ /* * Type useconds_t is an unsigned integral type capable of storing * values at least in the range of zero to 1,000,000. */ typedef uint_t useconds_t; /* Time, in microseconds */ typedef long suseconds_t; /* signed # of microseconds */ /* * Typedefs for dev_t components. */ typedef ulong_t major_t; /* (historical version) */ typedef ulong_t minor_t; /* (historical version) */ /* * The data type of a thread priority. */ typedef short pri_t; /* * The data type for a CPU flags field. (Can be extended to larger unsigned * types, if needed, limited by ability to update atomically.) */ typedef ushort_t cpu_flag_t; /* * For compatibility reasons the following typedefs (prefixed o_) * can't grow regardless of the EFT definition. Although, * applications should not explicitly use these typedefs * they may be included via a system header definition. * WARNING: These typedefs may be removed in a future * release. * ex. the definitions in s5inode.h (now obsoleted) * remained small to preserve compatibility * in the S5 file system type. */ typedef ushort_t o_mode_t; /* old file attribute type */ typedef short o_dev_t; /* old device type */ typedef ushort_t o_uid_t; /* old UID type */ typedef o_uid_t o_gid_t; /* old GID type */ typedef short o_nlink_t; /* old file link type */ typedef short o_pid_t; /* old process id type */ typedef ushort_t o_ino_t; /* old inode type */ /* * POSIX and XOPEN Declarations */ typedef int key_t; /* IPC key type */ typedef ulong_t mode_t; /* (historical version) */ typedef unsigned int uid_t; /* UID type */ typedef uid_t gid_t; /* GID type */ typedef uint32_t datalink_id_t; typedef uint32_t vrid_t; typedef id_t taskid_t; typedef id_t projid_t; typedef id_t poolid_t; typedef id_t zoneid_t; typedef id_t ctid_t; /* * POSIX definitions are same as defined in thread.h and synch.h. * Any changes made to here should be reflected in corresponding * files as described in comments. */ typedef uint_t pthread_t; /* = thread_t in thread.h */ typedef uint_t pthread_key_t; /* = thread_key_t in thread.h */ /* "Magic numbers" tagging synchronization object types */ typedef struct _pthread_mutex { /* = mutex_t in synch.h */ struct { uint16_t __pthread_mutex_flag1; uint8_t __pthread_mutex_flag2; uint8_t __pthread_mutex_ceiling; uint16_t __pthread_mutex_type; uint16_t __pthread_mutex_magic; } __pthread_mutex_flags; union { struct { uint8_t __pthread_mutex_pad[8]; } __pthread_mutex_lock64; struct { uint32_t __pthread_ownerpid; uint32_t __pthread_lockword; } __pthread_mutex_lock32; upad64_t __pthread_mutex_owner64; } __pthread_mutex_lock; upad64_t __pthread_mutex_data; } pthread_mutex_t; typedef struct _pthread_cond { /* = cond_t in synch.h */ struct { uint8_t __pthread_cond_flag[4]; uint16_t __pthread_cond_type; uint16_t __pthread_cond_magic; } __pthread_cond_flags; upad64_t __pthread_cond_data; } pthread_cond_t; /* * UNIX 98 Extension */ typedef struct _pthread_rwlock { /* = rwlock_t in synch.h */ int32_t __pthread_rwlock_readers; uint16_t __pthread_rwlock_type; uint16_t __pthread_rwlock_magic; pthread_mutex_t __pthread_rwlock_mutex; pthread_cond_t __pthread_rwlock_readercv; pthread_cond_t __pthread_rwlock_writercv; } pthread_rwlock_t; /* * SUSV3 */ typedef struct { uint32_t __pthread_barrier_count; uint32_t __pthread_barrier_current; upad64_t __pthread_barrier_cycle; upad64_t __pthread_barrier_reserved; pthread_mutex_t __pthread_barrier_lock; pthread_cond_t __pthread_barrier_cond; } pthread_barrier_t; typedef pthread_mutex_t pthread_spinlock_t; /* * attributes for threads, dynamically allocated by library */ typedef struct _pthread_attr { void *__pthread_attrp; } pthread_attr_t; /* * attributes for mutex, dynamically allocated by library */ typedef struct _pthread_mutexattr { void *__pthread_mutexattrp; } pthread_mutexattr_t; /* * attributes for cond, dynamically allocated by library */ typedef struct _pthread_condattr { void *__pthread_condattrp; } pthread_condattr_t; /* * pthread_once */ typedef struct _once { upad64_t __pthread_once_pad[4]; } pthread_once_t; /* * UNIX 98 Extensions * attributes for rwlock, dynamically allocated by library */ typedef struct _pthread_rwlockattr { void *__pthread_rwlockattrp; } pthread_rwlockattr_t; /* * SUSV3 * attributes for pthread_barrier_t, dynamically allocated by library */ typedef struct { void *__pthread_barrierattrp; } pthread_barrierattr_t; typedef ulong_t dev_t; /* expanded device type */ typedef ulong_t nlink_t; /* (historical version) */ typedef long pid_t; /* (historical version) */ # 537 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" typedef long time_t; /* time of day in seconds */ typedef long clock_t; /* relative time in a specified resolution */ typedef int clockid_t; /* clock identifier type */ typedef int timer_t; /* timer identifier type */ /* BEGIN CSTYLED */ typedef unsigned char unchar; typedef unsigned short ushort; typedef unsigned int uint; typedef unsigned long ulong; /* END CSTYLED */ # 605 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" /* * The following is the value of type id_t to use to indicate the * caller's current id. See procset.h for the type idtype_t * which defines which kind of id is being specified. */ # 620 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" /* * The following value of type pfn_t is used to indicate * invalid page frame number. */ /* BEGIN CSTYLED */ typedef unsigned char u_char; typedef unsigned short u_short; typedef unsigned int u_int; typedef unsigned long u_long; typedef struct _quad { int val[2]; } quad_t; /* used by UFS */ typedef quad_t quad; /* used by UFS */ /* END CSTYLED */ /* * Nested include for BSD/sockets source compatibility. * (The select macros used to be defined here). */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * Implementation-private. This header should not be included * directly by an application. The application should instead * include which includes this header conditionally * depending on which feature test macros are defined. By default, * this header is included by . X/Open and POSIX * standards requirements result in this header being included * by only under a restricted set of conditions. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 2 # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" /* * Time expressed in seconds and nanoseconds */ typedef struct timespec { /* definition per POSIX.4 */ time_t tv_sec; /* seconds */ long tv_nsec; /* and nanoseconds */ } timespec_t; # 81 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" typedef struct timespec timestruc_t; /* definition per SVr4 */ /* * The following has been left in for backward compatibility. Portable * applications should not use the structure name timestruc. */ /* * Timer specification */ typedef struct itimerspec { /* definition per POSIX.4 */ struct timespec it_interval; /* timer period */ struct timespec it_value; /* timer expiration */ } itimerspec_t; # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright (c) 1982, 1986, 1993 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. */ /* * Copyright (c) 2013, 2015 by Delphix. All rights reserved. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 28 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 2 /* * Structure returned by gettimeofday(2) system call, * and used in other calls. */ # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" struct timeval { time_t tv_sec; /* seconds */ suseconds_t tv_usec; /* and microseconds */ }; # 84 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" struct timezone { int tz_minuteswest; /* minutes west of Greenwich */ int tz_dsttime; /* type of dst correction */ }; # 96 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" /* * Needed for longlong_t type. Placement of this due to * including which relies on the presense of the itimerval * structure. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 103 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 2 # 123 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" /* * Operations on timevals. */ # 193 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" /* * Names of the interval timers, and structure * defining a timer setting. */ /* time and when system is running on */ /* behalf of the process. */ /* time profiling of multithreaded */ /* programs. */ struct itimerval { struct timeval it_interval; /* timer interval */ struct timeval it_value; /* current value */ }; # 239 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" /* * Definitions for commonly used resolutions. */ # 257 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" /* * Time expressed as a 64-bit nanosecond counter. */ typedef longlong_t hrtime_t; # 386 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" int adjtime(struct timeval *, struct timeval *); int futimesat(int, const char *, const struct timeval *); int getitimer(int, struct itimerval *); int utimes(const char *, const struct timeval *); int setitimer(int, struct itimerval *, struct itimerval *); /* * gettimeofday() and settimeofday() were included in SVr4 due to their * common use in BSD based applications. They were to be included exactly * as in BSD, with two parameters. However, AT&T/USL noted that the second * parameter was unused and deleted it, thereby making a routine included * for compatibility, incompatible. * * XSH4.2 (spec 1170) defines gettimeofday and settimeofday to have two * parameters. * * This has caused general disagreement in the application community as to * the syntax of these routines. Solaris defaults to the XSH4.2 definition. * The flag _SVID_GETTOD may be used to force the SVID version. */ int settimeofday(struct timeval *, void *); hrtime_t gethrtime(void); hrtime_t gethrvtime(void); # 441 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" int gettimeofday(struct timeval *, void *); /* * The inclusion of is historical and was added for * backward compatibility in delta 1.2 when a number of definitions * were moved out of . More recently, the timespec and * itimerspec structure definitions, along with the _CLOCK_*, CLOCK_*, * _TIMER_*, and TIMER_* symbols were moved to , * which is now included by . This change was due to POSIX * 1003.1b-1993 and X/Open UNIX 98 requirements. For non-POSIX and * non-X/Open applications, including this header will still make * visible these definitions. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * Copyright 2010 Nexenta Systems, Inc. Al rights reserved. * Copyright 2016 Joyent, Inc. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/time_iso.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ /* * Copyright 2014 Garrett D'Amore * Copyright 2014 PALO, Richard. * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * An application should not include this header directly. Instead it * should be included only through the inclusion of other Sun headers. * * The contents of this header is limited to identifiers specified in the * C Standard. Any new identifiers specified in future amendments to the * C Standard must be placed in this header. If these new identifiers * are required to also be in the C++ Standard "std" namespace, then for * anything other than macro definitions, corresponding "using" directives * must also be added to . */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/time_iso.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 /* * This file and its contents are supplied under the terms of the * Common Development and Distribution License ("CDDL"), version 1.0. * You may only use this file in accordance with the terms of version * 1.0 of the CDDL. * * A full copy of the text of the CDDL should have accompanied this * source. A copy of the CDDL is also available via the Internet at * http://www.illumos.org/license/CDDL. */ /* * Copyright 2014-2016 PALO, Richard. */ # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/time_iso.h" 2 # 80 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/time_iso.h" struct tm { /* see ctime(3) */ int tm_sec; int tm_min; int tm_hour; int tm_mday; int tm_mon; int tm_year; int tm_wday; int tm_yday; int tm_isdst; }; extern char *asctime(const struct tm *); extern clock_t clock(void); extern char *ctime(const time_t *); extern double difftime(time_t, time_t); extern struct tm *gmtime(const time_t *); extern struct tm *localtime(const time_t *); extern time_t mktime(struct tm *); extern time_t time(time_t *); extern size_t strftime(char *, size_t, const char *, const struct tm *); # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 2 /* * C11 requires sys/time_impl.h for the definition of the struct timespec. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * Implementation-private. This header should not be included * directly by an application. The application should instead * include which includes this header conditionally * depending on which feature test macros are defined. By default, * this header is included by . X/Open and POSIX * standards requirements result in this header being included * by only under a restricted set of conditions. */ # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 2 /* * Allow global visibility for symbols defined in * C++ "std" namespace in . */ # 87 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" extern struct tm *gmtime_r(const time_t *, struct tm *); extern struct tm *localtime_r(const time_t *, struct tm *); # 105 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" extern char *strptime(const char *, const char *, struct tm *); /* * Neither X/Open nor POSIX allow the inclusion of for the * definition of the sigevent structure. Both require the inclusion * of and when using the timer_create() function. * However, X/Open also specifies that the sigevent structure be defined * in as described in the header . This prevents * compiler warnings for applications that only include and not * also . The sigval union and the sigevent structure is * therefore defined both here and in which gets included * via inclusion of . */ union sigval { int sival_int; /* integer value */ void *sival_ptr; /* pointer value */ }; struct sigevent { int sigev_notify; /* notification mode */ int sigev_signo; /* signal number */ union sigval sigev_value; /* signal value */ void (*sigev_notify_function)(union sigval); pthread_attr_t *sigev_notify_attributes; int __sigev_pad2; }; extern int clock_getres(clockid_t, struct timespec *); extern int clock_gettime(clockid_t, struct timespec *); extern int clock_settime(clockid_t, const struct timespec *); extern int timer_create(clockid_t, struct sigevent *, timer_t *); extern int timer_delete(timer_t); extern int timer_getoverrun(timer_t); extern int timer_gettime(timer_t, struct itimerspec *); extern int timer_settime(timer_t, int, const struct itimerspec *, struct itimerspec *); extern int nanosleep(const struct timespec *, struct timespec *); extern int clock_nanosleep(clockid_t, int, const struct timespec *, struct timespec *); extern void tzset(void); extern char *tzname[2]; /* CLK_TCK marked as LEGACY in SUSv2 and removed in SUSv3 */ extern long _sysconf(int); /* System Private interface to sysconf() */ /* 3 is _SC_CLK_TCK */ extern long timezone; extern int daylight; extern time_t timegm(struct tm *); extern int cftime(char *, char *, const time_t *); extern int ascftime(char *, const char *, const struct tm *); extern long altzone; extern struct tm *getdate(const char *); extern int getdate_err; /* * ctime_r() & asctime_r() prototypes are defined here. */ /* * Previous releases of Solaris, starting at 2.3, provided definitions of * various functions as specified in POSIX.1c, Draft 6. For some of these * functions, the final POSIX 1003.1c standard had a different number of * arguments and return values. * * The following segment of this header provides support for the standard * interfaces while supporting applications written under earlier * releases. The application defines appropriate values of the feature * test macros _POSIX_C_SOURCE and _POSIX_PTHREAD_SEMANTICS to indicate * whether it was written to expect the Draft 6 or standard versions of * these interfaces, before including this header. This header then * provides a mapping from the source version of the interface to an * appropriate binary interface. Such mappings permit an application * to be built from libraries and objects which have mixed expectations * of the definitions of these functions. * * For applications using the Draft 6 definitions, the binary symbol is the * same as the source symbol, and no explicit mapping is needed. For the * standard interface, the function func() is mapped to the binary symbol * _posix_func(). The preferred mechanism for the remapping is a compiler * #pragma. If the compiler does not provide such a #pragma, the header file * defines a static function func() which calls the _posix_func() version; * this has to be done instead of #define since POSIX specifies that an * application can #undef the symbol and still be bound to the correct * implementation. Unfortunately, the statics confuse lint so we fallback to * #define in that case. * * NOTE: Support for the Draft 6 definitions is provided for compatibility * only. New applications/libraries should use the standard definitions. */ # 280 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" extern char *asctime_r(const struct tm *, char *, int); extern char *ctime_r(const time_t *, char *, int); # 292 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" typedef struct _locale *locale_t; extern size_t strftime_l(char *, size_t, const char *, const struct tm *, locale_t); /* * Note, the C11 standard requires that all the various base values that are * passed into timespec_get() be non-zero. Hence why TIME_UTC starts at one. */ extern int timespec_get(struct timespec *, int); # 460 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 2 /* * The inclusion of is needed for the FD_CLR, * FD_ISSET, FD_SET, and FD_SETSIZE macros as well as the * select() prototype defined in the XOpen specifications * beginning with XSH4v2. Placement required after definition * for itimerval. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ # 473 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 2 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 2 # 62 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" /* * The sigset_t type is defined in and duplicated * in as a result of XPG4v2 requirements. XPG6 * now allows the visibility of signal.h in this header, however * an order of inclusion problem occurs as a result of inclusion * of in under certain conditions. * Rather than include here, we've duplicated * the sigset_t type instead. This type is required for the XPG6 * introduced pselect() function also declared in this header. */ typedef struct { /* signal set type */ unsigned int __sigbits[4]; } sigset_t; /* * Select uses bit masks of file descriptors in longs. * These macros manipulate such bit fields. * FD_SETSIZE may be defined by the user, but the default here * should be >= NOFILE (param.h). */ # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" typedef long fd_mask; typedef long fds_mask; /* * The value of _NBBY needs to be consistant with the value * of NBBY in . */ # 136 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" typedef struct fd_set { long fds_bits[(((1024)+(((sizeof (fds_mask) * 8))-1))/((sizeof (fds_mask) * 8)))]; } fd_set; # 159 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *); extern int pselect(int, fd_set *, fd_set *, fd_set *, const struct timespec *, const sigset_t *); # 641 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 /* * _VOID was defined to be either void or char but this is not * required because previous SunOS compilers have accepted the void * type. However, because many system header and source files use the * void keyword, the volatile keyword, and ANSI C function prototypes, * non-ANSI compilers cannot compile the system anyway. The _VOID macro * should therefore not be used and remains for source compatibility * only. */ /* CSTYLED */ # 31 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2015, Joyent, Inc. All rights reserved. */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 2 /* * I/O parameter information. A uio structure describes the I/O which * is to be performed by an operation. Typically the data movement will * be performed by a routine such as uiomove(), which updates the uio * structure to reflect what was done. */ typedef struct iovec { caddr_t iov_base; long iov_len; } iovec_t; # 90 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" /* * Segment flag values. */ typedef enum uio_seg { UIO_USERSPACE, UIO_SYSSPACE, UIO_USERISPACE } uio_seg_t; typedef struct uio { iovec_t *uio_iov; /* pointer to array of iovecs */ int uio_iovcnt; /* number of iovecs */ lloff_t _uio_offset; /* file offset */ uio_seg_t uio_segflg; /* address space (kernel or user) */ uint16_t uio_fmode; /* file mode flags */ uint16_t uio_extflg; /* extended flags */ lloff_t _uio_limit; /* u-limit (maximum byte offset) */ ssize_t uio_resid; /* residual count */ } uio_t; /* * Extended uio_t uioa_t used for asynchronous uio. * * Note: UIOA_IOV_MAX is defined and used as it is in "fs/vncalls.c" * as there isn't a formal definition of IOV_MAX for the kernel. */ typedef struct uioa_page_s { /* locked uio_iov state */ int uioa_pfncnt; /* count of pfn_t(s) in *uioa_ppp */ void **uioa_ppp; /* page_t or pfn_t arrary */ caddr_t uioa_base; /* address base */ size_t uioa_len; /* span length */ } uioa_page_t; typedef struct uioa_s { iovec_t *uio_iov; /* pointer to array of iovecs */ int uio_iovcnt; /* number of iovecs */ lloff_t _uio_offset; /* file offset */ uio_seg_t uio_segflg; /* address space (kernel or user) */ uint16_t uio_fmode; /* file mode flags */ uint16_t uio_extflg; /* extended flags */ lloff_t _uio_limit; /* u-limit (maximum byte offset) */ ssize_t uio_resid; /* residual count */ /* * uioa extended members. */ uint32_t uioa_state; /* state of asynch i/o */ ssize_t uioa_mbytes; /* bytes that have been uioamove()ed */ uioa_page_t *uioa_lcur; /* pointer into uioa_locked[] */ void **uioa_lppp; /* pointer into lcur->uioa_ppp[] */ void *uioa_hwst[4]; /* opaque hardware state */ uioa_page_t uioa_locked[16]; /* Per iov locked pages */ } uioa_t; /* * uio extensions * * PSARC 2009/478: Copy Reduction Interfaces */ typedef enum xuio_type { UIOTYPE_ASYNCIO, UIOTYPE_ZEROCOPY } xuio_type_t; typedef struct xuio { uio_t xu_uio; /* Embedded UIO structure */ /* Extended uio fields */ enum xuio_type xu_type; /* What kind of uio structure? */ union { /* Async I/O Support, intend to replace uioa_t. */ struct { uint32_t xu_a_state; /* state of async i/o */ /* bytes that have been uioamove()ed */ ssize_t xu_a_mbytes; uioa_page_t *xu_a_lcur; /* pointer into uioa_locked[] */ /* pointer into lcur->uioa_ppp[] */ void **xu_a_lppp; void *xu_a_hwst[4]; /* opaque hardware state */ /* Per iov locked pages */ uioa_page_t xu_a_locked[16]; } xu_aio; /* * Copy Reduction Support -- facilate loaning / returning of * filesystem cache buffers. */ struct { int xu_zc_rw; /* read or write buffer */ void *xu_zc_priv; /* fs specific */ } xu_zc; } xu_ext; } xuio_t; # 207 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" /* * I/O direction. */ typedef enum uio_rw { UIO_READ, UIO_WRITE } uio_rw_t; /* * uio_extflg: extended flags * * NOTE: This flag will be used in uiomove to determine if non-temporal * access, ie, access bypassing caches, should be used. Filesystems that * don't initialize this field could experience suboptimal performance due to * the random data the field contains. * * NOTE: This flag is also used by uioasync callers to pass an extended * uio_t (uioa_t), to uioasync enabled consumers. Unlike above all * consumers of a uioa_t require the uio_extflg to be initialized. */ /* * Global uioasync capability shadow state. */ typedef struct uioasync_s { boolean_t enabled; /* Is uioasync enabled? */ size_t mincnt; /* Minimum byte count for use of */ } uioasync_t; # 257 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" extern ssize_t readv(int, const struct iovec *, int); extern ssize_t writev(int, const struct iovec *, int); /* * When in the large file compilation environment, * map preadv/pwritev to their 64 bit offset versions */ # 266 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" #pragma redefine_extname preadv preadv64 # 266 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" # 267 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" #pragma redefine_extname pwritev pwritev64 # 267 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" /* In the LP64 compilation environment, the APIs are already large file */ # 285 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" extern ssize_t preadv(int, const struct iovec *, int, off_t); extern ssize_t pwritev(int, const struct iovec *, int, off_t); /* * preadv64 and pwritev64 should be defined when: * - Using the transitional compilation environment, and not * the large file compilation environment. */ extern ssize_t preadv64(int, const struct iovec *, int, off64_t); extern ssize_t pwritev64(int, const struct iovec *, int, off64_t); # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Portions of this source code were derived from Berkeley 4.3 BSD * under license from the Regents of the University of California. */ # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" typedef uint16_t sa_family_t; /* * Structure used by kernel to store most * addresses. */ struct sockaddr { sa_family_t sa_family; /* address family */ char sa_data[14]; /* up to 14 bytes of direct address */ }; # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/un.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/un.h" /* * Definitions for UNIX IPC domain. */ struct sockaddr_un { sa_family_t sun_family; /* AF_UNIX */ char sun_path[108]; /* path name (gag) */ }; /* * NOTE: If we ever go to BSD-style sun_len + sun_family, this macro needs to * change. * * Also, include a strlen() prototype, and we have to protect it w.r.t. * UNIX{98,03}. And because there's strlen, we need size_t as well. */ # 76 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/un.h" extern size_t strlen(const char *); # 57 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if_dl.h" 1 /* * Copyright 1993-2003 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * Copyright (c) 1990, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #pragma ident "%Z%%M% %I% %E% SMI" /* from UCB 8.1 (Berkeley) 6/10/93 */ /* * A Link-Level Sockaddr may specify the interface in one of two * ways: either by means of a system-provided index number (computed * anew and possibly differently on every reboot), or by a human-readable * string such as "il0" (for managerial convenience). * * Census taking actions, such as something akin to SIOCGCONF would return * both the index and the human name. * * High volume transactions (such as giving a link-level ``from'' address * in a recvfrom or recvmsg call) may be likely only to provide the indexed * form, (which requires fewer copy operations and less space). * * The form and interpretation of the link-level address is purely a matter * of convention between the device driver and its consumers; however, it is * expected that all drivers for an interface of a given if_type will agree. */ /* * Structure of a Link-Level sockaddr: */ struct sockaddr_dl { ushort_t sdl_family; /* AF_LINK */ ushort_t sdl_index; /* if != 0, system given index for interface */ uchar_t sdl_type; /* interface type */ uchar_t sdl_nlen; /* interface name length, no trailing 0 reqd. */ uchar_t sdl_alen; /* link level address length */ uchar_t sdl_slen; /* link layer selector length */ char sdl_data[244]; /* contains both if name and ll address */ }; extern char *_link_ntoa(const unsigned char *, char *, int, int); extern unsigned char *_link_aton(const char *, int *); # 58 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 2 /* * sockaddr_storage: * Common superset of at least AF_INET, AF_INET6 and AF_LINK sockaddr * structures. Has sufficient size and alignment for those sockaddrs. */ /* * Desired maximum size, alignment size and related types. */ /* * To represent desired sockaddr max alignment for platform, a * type is chosen which may depend on implementation platform architecture. * Type chosen based on alignment size restrictions from . * We desire to force up to (but no more than) 64-bit (8 byte) alignment, * on platforms where it is possible to do so. (e.g not possible on ia32). * For all currently supported platforms by our implementation * in , (i.e. sparc, sparcv9, ia32, ia64) * type "double" is suitable for that intent. * * Note: Type "double" is chosen over the more obvious integer type int64_t. * int64_t is not a valid type for strict ANSI/ISO C compilation on ILP32. */ typedef double sockaddr_maxalign_t; /* * Definitions used for sockaddr_storage structure paddings design. */ struct sockaddr_storage { sa_family_t ss_family; /* Address family */ /* Following fields are implementation specific */ char _ss_pad1[((sizeof (sockaddr_maxalign_t)) - sizeof (sa_family_t))]; sockaddr_maxalign_t _ss_align; char _ss_pad2[(256 - (sizeof (sa_family_t)+ ((sizeof (sockaddr_maxalign_t)) - sizeof (sa_family_t)) + (sizeof (sockaddr_maxalign_t))))]; }; /* * To be compatible with the Linux interfaces used, this structure is * placed in socket_impl.h so that an include for will * pickup this structure. This structure is for use with PF_PACKET * sockets. */ struct sockaddr_ll { uint16_t sll_family; uint16_t sll_protocol; int32_t sll_ifindex; uint16_t sll_hatype; uint8_t sll_pkttype; uint8_t sll_halen; uint8_t sll_addr[8]; }; # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netconfig.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netconfig.h" struct netconfig { char *nc_netid; /* network identifier */ unsigned int nc_semantics; /* defined below */ unsigned int nc_flag; /* defined below */ char *nc_protofmly; /* protocol family name */ char *nc_proto; /* protocol name */ char *nc_device; /* device name for network id */ unsigned int nc_nlookups; /* # of entries in nc_lookups */ char **nc_lookups; /* list of lookup directories */ unsigned int nc_unused[8]; /* borrowed for lockd etc. */ }; typedef struct { struct netconfig **nc_head; struct netconfig **nc_curr; } NCONF_HANDLE; /* * Values of nc_semantics */ /* * NOT FOR PUBLIC USE, Solaris internal only. * This value of nc_semantics is strictly for use of Remote Direct * Memory Access provider interfaces in Solaris only and not for * general use. Do not use this value for general purpose user or * kernel programming. If used the behavior is undefined. * This is a PRIVATE interface to be used by Solaris kRPC only. */ /* * Values of nc_flag */ /* * Values of nc_protofmly */ # 114 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netconfig.h" /* * NOT FOR PUBLIC USE, Solaris internal only. * This value of nc_semantics is strictly for use of Remote Direct * Memory Access provider interfaces in Solaris only and not for * general use. Do not use this value for general purpose user or * kernel programming. If used the behavior is undefined. * This is a PRIVATE interface to be used by Solaris kRPC only. */ /* * Values for nc_proto */ /* * Values for nc_proto for "rdma" protofmly */ extern void *setnetconfig(void); extern int endnetconfig(void *); extern struct netconfig *getnetconfig(void *); extern struct netconfig *getnetconfigent(const char *); extern void freenetconfigent(struct netconfig *); extern void *setnetpath(void); extern int endnetpath(void *); extern struct netconfig *getnetpath(void *); extern void nc_perror(const char *); extern char *nc_sperror(void); # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ /* * Copyright (c) 1982, 1986 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that this notice is preserved and that due credit is given * to the University of California at Berkeley. The name of the University * may not be used to endorse or promote products derived from this * software without specific prior written permission. This software * is provided ``as is'' without express or implied warranty. */ /* * Constants and structures defined by the internet system, * according to following documents * * Internet ASSIGNED NUMBERS (RFC1700) and its successors: * http://www.iana.org/assignments/protocol-numbers * http://www.iana.org/assignments/port-numbers * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) * */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Portions of this source code were derived from Berkeley 4.3 BSD * under license from the Regents of the University of California. */ # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 /* * The socklen definitions are reproduced here from sys/socket.h so as to * not introduce that namespace into existing users of netinet/in.h. */ typedef uint32_t socklen_t; typedef void *Psocklen_t; # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * For source compatibility */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/poll.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2014 Garrett D'Amore * * Copyright (c) 1995, 1998 by Sun Microsystems, Inc. * All rights reserved. */ /* * Copyright 2015, Joyent, Inc. */ # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/poll.h" /* * Structure of file descriptor/event pairs supplied in * the poll arrays. */ typedef struct pollfd { int fd; /* file desc to poll */ short events; /* events of interest on fd */ short revents; /* events that occurred on fd */ } pollfd_t; typedef unsigned long nfds_t; /* * Testable select events */ # 70 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/poll.h" /* * Non-testable poll events (may not be specified in events field, * but may be returned in revents field). */ /* * These events will never be specified in revents, but may be specified in * events to control /dev/poll behavior. */ # 152 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/poll.h" int poll(struct pollfd *, nfds_t, int); # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/strmdep.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright (c) 1997-1998 by Sun Microsystems, Inc. * All rights reserved. */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ #pragma ident "%Z%%M% %I% %E% SMI" /* * This file contains all machine-dependent declarations * in STREAMS. */ /* * Copy data from one data buffer to another. * The addresses must be word aligned - if not, use bcopy! */ /* * save the address of the calling function on the 3b2 to * enable tracking of who is allocating message blocks */ /* * macro to check pointer alignment * (true if alignment is sufficient for worst case) */ # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/cred.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Portions of this source code were derived from Berkeley 4.3 BSD * under license from the Regents of the University of California. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/cred.h" 2 /* * The credential is an opaque kernel private data structure defined in * . */ typedef struct cred cred_t; # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright (c) 1991-1998 by Sun Microsystems, Inc. * All rights reserved. */ /* * t_lock.h: Prototypes for disp_locks, plus include files * that describe the interfaces to kernel synch. * objects. */ #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ #pragma ident "%Z%%M% %I% %E% SMI" # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright (c) 1982, 1986, 1993 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. */ /* * Copyright (c) 2013, 2015 by Delphix. All rights reserved. */ # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" 2 # 61 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" typedef lock_t disp_lock_t; /* dispatcher lock type */ /* * SPIN_LOCK() macro indicates whether lock is implemented as a spin lock or * an adaptive mutex, depending on what interrupt levels use it. */ /* * Macro to control loops which spin on a lock and then check state * periodically. Its passed an integer, and returns a boolean value * that if true indicates its a good time to get the scheduler lock and * check the state of the current owner of the lock. */ /* * Externs for CLOCK_LOCK and clock resolution */ extern volatile uint32_t hres_lock; extern hrtime_t hrtime_base; extern int clock_res; /* * The definitions of the symbolic interrupt levels: * * CLOCK_LEVEL => The level at which one must be to block the clock. * * LOCK_LEVEL => The highest level at which one may block (and thus the * highest level at which one may acquire adaptive locks) * Also the highest level at which one may be preempted. * * DISP_LEVEL => The level at which one must be to perform dispatcher * operations. * * The constraints on the platform: * * - CLOCK_LEVEL must be less than or equal to LOCK_LEVEL * - LOCK_LEVEL must be less than DISP_LEVEL * - DISP_LEVEL should be as close to LOCK_LEVEL as possible * * Note that LOCK_LEVEL and CLOCK_LEVEL have historically always been equal; * changing this relationship is probably possible but not advised. * */ # 117 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" /* * The following mask is for the cpu_intr_actv bits corresponding to * high-level PILs. It should equal: * ((((1 << PIL_MAX + 1) - 1) >> LOCK_LEVEL + 1) << LOCK_LEVEL + 1) */ /* * The semaphore code depends on being able to represent a lock plus * owner in a single 32-bit word. (Mutexes used to have a similar * dependency, but no longer.) Thus the owner must contain at most * 24 significant bits. At present only threads and semaphores * must be aware of this vile constraint. Different ISAs may handle this * differently depending on their capabilities (e.g. compare-and-swap) * and limitations (e.g. constraints on alignment and/or KERNELBASE). */ # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 /* * This file and its contents are supplied under the terms of the * Common Development and Distribution License ("CDDL"), version 1.0. * You may only use this file in accordance with the terms of version * 1.0 of the CDDL. * * A full copy of the text of the CDDL should have accompanied this * source. A copy of the CDDL is also available via the Internet at * http://www.illumos.org/license/CDDL. */ /* * Copyright 2014-2016 PALO, Richard. */ # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 2 /* * Fundamental variables; don't change too often. */ /* * _POSIX_VDISABLE has historically been defined in since * an early merge with AT&T source. It has also historically been defined * in . The POSIX standard, IEEE Std. 1003.1-1988 initially * required the existence of _POSIX_VDISABLE in . * Subsequent versions of the IEEE Standard as well as the X/Open * specifications required that _POSIX_VDISABLE be defined in * while still allowing for it's existence in other headers. With the * introduction of XPG6, _POSIX_VDISABLE can only be defined in . */ # 123 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" /* compatibility purposes only */ /* and will be removed in a */ /* later release */ /* * These define the maximum and minimum allowable values of the * configurable parameter NGROUPS_MAX. */ /* * NGROUPS_MAX_DEFAULT: *MUST* match NGROUPS_MAX value in limits.h. */ /* * Default process priority. Keep it in sync with limits.h. */ /* * Fundamental constants of the implementation--cannot be changed easily. */ # 171 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" /* REMOTE -- whether machine is primary, secondary, or regular */ /* * MAXPATHLEN defines the longest permissible path length, * including the terminating null, after expanding symbolic links. * TYPICALMAXPATHLEN is used in a few places as an optimization * with a local buffer on the stack to avoid kmem_alloc(). * MAXSYMLINKS defines the maximum number of symbolic links * that may be expanded in a path name. It should be set high * enough to allow all legitimate uses, but halt infinite loops * reasonably quickly. * MAXNAMELEN is the length (including the terminating null) of * the longest permissible file (component) name. */ /* * MAXLINKNAMELEN defines the longest possible permitted datalink name, * including the terminating NUL. Note that this must not be larger * than related networking constants such as LIFNAMSIZ. */ /* * The following are defined to be the same as * defined in /usr/include/limits.h. They are * needed for pipe and FIFO compatibility. */ # 220 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" /* macros replacing interleaving functions */ /* * File system parameters and macros. * * The file system is made out of blocks of at most MAXBSIZE units, * with smaller units (fragments) only in the last direct block. * MAXBSIZE primarily determines the size of buffers in the buffer * pool. It may be made larger without any effect on existing * file systems; however making it smaller make make some file * systems unmountable. * * Note that the blocked devices are assumed to have DEV_BSIZE * "sectors" and that fragments must be some multiple of this size. */ # 261 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" /* 64 bit versions of btodb and dbtob */ # 276 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" /* * Size of arg list passed in by user. */ # 287 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" /* * Scale factor for scaled integers used to count * %cpu time and load averages. */ /* * Delay units are in microseconds. * * XXX These macros are not part of the DDI! */ # 317 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" /* * The following is to free utilities from machine dependencies within * an architecture. Must be included after definition of DEV_BSIZE. */ # 471 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" /* * The following are assorted machine dependent values which can be * obtained in a machine independent manner through sysconf(2) or * sysinfo(2). In order to guarantee that these provide the expected * value at all times, the System Private interface (leading underscore) * is used. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T * All Rights Reserved * */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * WARNING: This is an implementation-specific header, * its contents are not guaranteed. Applications * should include and not this header. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 2 /* command names for confstr */ /* * command names for large file configuration information */ /* large file compilation environment configuration */ /* transitional large file interface configuration */ /* UNIX 98 */ # 84 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* UNIX 03 */ # 103 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* command names for POSIX sysconf */ /* POSIX.1 names */ # 114 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* SVR4 names */ /* 13 reserved for SVr4-ES/MP _SC_NACLS_MAX */ /* POSIX.4 names */ # 152 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* XPG4 names */ # 174 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* additional XSH4/XCU4 command names for sysconf */ /* additional XPG4v2 (UNIX 95) command names */ /* defined for XTI (XNS Issue 5) */ /* * Hardware specific items * Note that not all items are supported on all architectures */ # 214 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* * POSIX.1c (pthreads) names. These values are defined above * the sub-500 range. See psarc case 1995/257. */ # 235 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* UNIX 98 */ # 244 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* UNIX 03 */ # 285 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* command names for POSIX pathconf */ /* POSIX.1 names */ # 297 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* POSIX.4 names */ /* UNIX 03 names */ # 315 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* UNIX 08 names */ /* * Large File Summit names * * This value matches the MIPS ABI choice, but leaves a large gap in the * value space. */ /* * Extended attributes */ /* * If you add a _PC define above 101, you must change _PC_LAST (and truss). */ /* * Case sensitivity values (related to _PC_CASE_BEHAVIOR) */ /* * The value of 0 is returned when * ACL's are not supported */ # 366 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* * Marked LEGACY in SUSv2 and removed in SUSv3. Though SUSv3 applications * should not rely on this value, it has been aligned with the current * standard to avoid confusion if used. */ # 408 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" /* UNIX 03 names */ # 480 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 2 extern long _sysconf(int); /* System Private interface to sysconf() */ # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mutex.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mutex.h" 2 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mutex.h" /* * Public interface to mutual exclusion locks. See mutex(9F) for details. * * The basic mutex type is MUTEX_ADAPTIVE, which is expected to be used * in almost all of the kernel. MUTEX_SPIN provides interrupt blocking * and must be used in interrupt handlers above LOCK_LEVEL. The iblock * cookie argument to mutex_init() encodes the interrupt level to block. * The iblock cookie must be NULL for adaptive locks. * * MUTEX_DEFAULT is the type usually specified (except in drivers) to * mutex_init(). It is identical to MUTEX_ADAPTIVE. * * MUTEX_DRIVER is always used by drivers. mutex_init() converts this to * either MUTEX_ADAPTIVE or MUTEX_SPIN depending on the iblock cookie. * * Mutex statistics can be gathered on the fly, without rebooting or * recompiling the kernel, via the lockstat driver (lockstat(7D)). */ typedef enum { MUTEX_ADAPTIVE = 0, /* spin if owner is running, otherwise block */ MUTEX_SPIN = 1, /* block interrupts and spin */ MUTEX_DRIVER = 4, /* driver (DDI) mutex */ MUTEX_DEFAULT = 6 /* kernel default mutex */ } kmutex_type_t; typedef struct mutex { void *_opaque[2]; } kmutex_t; # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rwlock.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * Copyright (c) 2013, Joyent, Inc. All rights reserved. */ /* * Public interface to readers/writer locks. See rwlock(9F) for details. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rwlock.h" 2 typedef enum { RW_DRIVER = 2, /* driver (DDI) rwlock */ RW_DEFAULT = 4 /* kernel default rwlock */ } krw_type_t; typedef enum { RW_WRITER, RW_READER, RW_READER_STARVEWRITER } krw_t; typedef struct _krwlock { void *_opaque[1]; } krwlock_t; # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/semaphore.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright (c) 1993-1998 by Sun Microsystems, Inc. * All rights reserved. */ #pragma ident "%Z%%M% %I% %E% SMI" /* * Public interface to semaphores. See semaphore(9F) for details. */ # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/semaphore.h" typedef enum { SEMA_DEFAULT, SEMA_DRIVER } ksema_type_t; typedef struct _ksema { void * _opaque[2]; /* 2 words on 4 byte alignment */ } ksema_t; # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/condvar.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * Copyright (c) 2012 by Delphix. All rights reserved. */ /* * condvar.h: * * definitions for thread synchronization primitives: condition variables * This is the public part of the interface to condition variables. The * private (implementation-specific) part is in /sys/condvar_impl.h. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/condvar.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright (c) 1982, 1986, 1993 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. */ /* * Copyright (c) 2013, 2015 by Delphix. All rights reserved. */ # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/condvar.h" 2 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/condvar.h" /* * Condtion variables. */ typedef struct _kcondvar { ushort_t _opaque; } kcondvar_t; typedef enum { CV_DEFAULT, CV_DRIVER } kcv_type_t; # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" /* * Mutual exclusion locks described in common/sys/mutex.h. * * Semaphores described in common/sys/semaphore.h. * * Readers/Writer locks described in common/sys/rwlock.h. * * Condition variables described in common/sys/condvar.h */ # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/model.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/model.h" # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/model.h" 2 # 69 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/model.h" /* * XXX Ick. This type needs to be visible outside the above guard because * the proc structure is visible outside the _KERNEL | _KMEMUSER guard. * If we can make proc internals less visible, (which we obviously should) * then this can be invisible too. */ typedef unsigned int model_t; # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 /* * Data queue. * * NOTE: The *only* public fields are documented in queue(9S). * Everything else is implementation-private. * * The locking rules for the queue_t structure are extremely subtle and vary * widely depending on the field in question. As such, each field is * annotated according to the following legend: * * Q9S: The field is documented in queue(9S) and may be accessed without * locks by a STREAMS module when inside an entry point (e.g., put(9E)). * However, no fields can be directly modified unless q_lock is held * (which is not possible in a DDI compliant STREAMS module), with the * following exceptions: * * - q_ptr: can be modified as per the rules of the STREAMS module. * The STREAMS framework ignores q_ptr and thus imposes *no* * locking rules on it. * - q_qinfo: can be modified before qprocson(). * * - q_minpsz, q_maxpsz, q_hiwat, q_lowat: can be modified as per the * rules of the STREAMS module. The STREAMS framework never * modifies these fields, and is tolerant of temporarily * stale field values. * * In general, the STREAMS framework employs one of the following * techniques to ensure STREAMS modules can safely access Q9S fields: * * - The field is only modified by the framework when the stream is * locked with strlock() (q_next). * * - The field is modified by the framework, but the modifies are * atomic, and temporarily stale values are harmless (q_count, * q_first, q_last). * * - The field is modified by the framework, but the field's visible * values are either constant or directly under the control * of the STREAMS module itself (q_flag). * * QLK: The field must be accessed or modified under q_lock, except when * the stream has been locked with strlock(). If multiple q_locks must * be acquired, q_locks at higher addresses must be taken first. * * STR: The field can be accessed without a lock, but must be modified under * strlock(). * * SQLK: The field must be accessed or modified under SQLOCK(). * * NOLK: The field can be accessed without a lock, but can only be modified * when the queue_t is not known to any other threads. * * SVLK: The field must be accessed or modified under the service_queue lock. * Note that service_lock must be taken after any needed q_locks, * and that no other lock should be taken while service_lock is held. * * In addition, it is always acceptable to modify a field that is not yet * known to any other threads -- and other special case exceptions exist in * the code. Also, q_lock is used with q_wait to implement a stream head * monitor for reads and writes. */ typedef struct queue { struct qinit *q_qinfo; /* Q9S: Q processing procedure */ struct msgb *q_first; /* Q9S: first message in Q */ struct msgb *q_last; /* Q9S: last message in Q */ struct queue *q_next; /* Q9S: next Q in stream */ struct queue *q_link; /* SVLK: next Q for scheduling */ void *q_ptr; /* Q9S: module-specific data */ size_t q_count; /* Q9S: number of bytes on Q */ uint_t q_flag; /* Q9S: Q state */ ssize_t q_minpsz; /* Q9S: smallest packet OK on Q */ ssize_t q_maxpsz; /* Q9S: largest packet OK on Q */ size_t q_hiwat; /* Q9S: Q high water mark */ size_t q_lowat; /* Q9S: Q low water mark */ struct qband *q_bandp; /* QLK: band flow information */ kmutex_t q_lock; /* NOLK: structure lock */ struct stdata *q_stream; /* NOLK: stream backpointer */ struct syncq *q_syncq; /* NOLK: associated syncq */ unsigned char q_nband; /* QLK: number of bands */ kcondvar_t q_wait; /* NOLK: read/write sleep CV */ struct queue *q_nfsrv; /* STR: next Q with svc routine */ ushort_t q_draining; /* QLK: Q is draining */ short q_struiot; /* QLK: sync streams Q UIO mode */ clock_t q_qtstamp; /* QLK: when Q was enabled */ size_t q_mblkcnt; /* QLK: mblk count */ uint_t q_syncqmsgs; /* QLK: syncq message count */ size_t q_rwcnt; /* QLK: # threads in rwnext() */ pri_t q_spri; /* QLK: Q scheduling priority */ /* * Syncq scheduling */ struct msgb *q_sqhead; /* QLK: first syncq message */ struct msgb *q_sqtail; /* QLK: last syncq message */ struct queue *q_sqnext; /* SQLK: next Q on syncq list */ struct queue *q_sqprev; /* SQLK: prev Q on syncq list */ uint_t q_sqflags; /* SQLK: syncq flags */ clock_t q_sqtstamp; /* SQLK: when Q was scheduled for sq */ /* * NOLK: Reference to the queue's module's implementation * structure. This will be NULL for queues associated with drivers. */ struct fmodsw_impl *q_fp; } queue_t; /* * Queue flags; unused flags not documented in queue(9S) can be recycled. */ # 169 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" /* UNUSED 0x00000200 was QHLIST */ /* UNUSED 0x00000400 was QUNSAFE */ /* all MT type flags */ /* UNUSED 0x00400000 was QHOT */ /* UNUSED 0x00800000 was QNEXTHOT */ /* UNUSED 0x01000000 was _QNEXTLESS */ /* direct interface to/from sockfs */ /* queue sqflags (protected by SQLOCK). */ /* This is also noted by the */ /* q_draining field, but this one is */ /* protected by SQLOCK */ /* * Structure that describes the separate information * for each priority band in the queue. */ typedef struct qband { struct qband *qb_next; /* next band's info */ size_t qb_count; /* number of bytes in band */ struct msgb *qb_first; /* beginning of band's data */ struct msgb *qb_last; /* end of band's data */ size_t qb_hiwat; /* high water mark for band */ size_t qb_lowat; /* low water mark for band */ uint_t qb_flag; /* see below */ size_t qb_mblkcnt; /* mblk counter for runaway msgs */ } qband_t; /* * qband flags */ /* * Maximum number of bands. */ /* * Fields that can be manipulated through strqset() and strqget(). */ typedef enum qfields { QHIWAT = 0, /* q_hiwat or qb_hiwat */ QLOWAT = 1, /* q_lowat or qb_lowat */ QMAXPSZ = 2, /* q_maxpsz */ QMINPSZ = 3, /* q_minpsz */ QCOUNT = 4, /* q_count or qb_count */ QFIRST = 5, /* q_first or qb_first */ QLAST = 6, /* q_last or qb_last */ QFLAG = 7, /* q_flag or qb_flag */ QSTRUIOT = 8, /* q_struiot */ QBAD = 9 } qfields_t; /* * Module information structure */ struct module_info { ushort_t mi_idnum; /* module id number */ char *mi_idname; /* module name */ ssize_t mi_minpsz; /* min packet size accepted */ ssize_t mi_maxpsz; /* max packet size accepted */ size_t mi_hiwat; /* hi-water mark */ size_t mi_lowat; /* lo-water mark */ }; /* * queue information structure (with Synchronous STREAMS extensions) */ struct qinit { int (*qi_putp)(); /* put procedure */ int (*qi_srvp)(); /* service procedure */ int (*qi_qopen)(); /* called on startup */ int (*qi_qclose)(); /* called on finish */ int (*qi_qadmin)(); /* for future use */ struct module_info *qi_minfo; /* module information structure */ struct module_stat *qi_mstat; /* module statistics structure */ int (*qi_rwp)(); /* r/w procedure */ int (*qi_infop)(); /* information procedure */ int qi_struiot; /* stream uio type for struio() */ }; /* * Values for qi_struiot and q_struiot: */ /* * Streamtab (used in cdevsw and fmodsw to point to module or driver) */ struct streamtab { struct qinit *st_rdinit; struct qinit *st_wrinit; struct qinit *st_muxrinit; struct qinit *st_muxwinit; }; /* * Structure sent to mux drivers to indicate a link. */ struct linkblk { queue_t *l_qtop; /* lowest level write queue of upper stream */ /* (set to NULL for persistent links) */ queue_t *l_qbot; /* highest level write queue of lower stream */ int l_index; /* index for lower stream. */ }; /* * Esballoc data buffer freeing routine */ typedef struct free_rtn { void (*free_func)(); caddr_t free_arg; } frtn_t; /* * Data block descriptor * * NOTE: db_base, db_lim, db_ref and db_type are the *only* public fields, * as described in datab(9S). Everything else is implementation-private. */ typedef struct datab { frtn_t *db_frtnp; unsigned char *db_base; unsigned char *db_lim; unsigned char db_ref; unsigned char db_type; unsigned char db_flags; unsigned char db_struioflag; pid_t db_cpid; /* cached pid, needs verification */ void *db_cache; /* kmem cache descriptor */ struct msgb *db_mblk; void (*db_free)(struct msgb *, struct datab *); void (*db_lastfree)(struct msgb *, struct datab *); intptr_t db_cksumstart; intptr_t db_cksumend; intptr_t db_cksumstuff; union { double enforce_alignment; unsigned char data[8]; struct { union { uint32_t u32; uint16_t u16; } cksum_val; /* used to store calculated cksum */ uint16_t flags; uint16_t pad; } cksum; /* * Union used for future extensions (pointer to data ?). */ } db_struioun; struct fthdr *db_fthdr; cred_t *db_credp; /* credential */ } dblk_t; /* * Accessor macros for private dblk_t fields (the rest are in ). */ /* * Used by GLDv2 to store the TCI information. */ /* * Message block descriptor */ typedef struct msgb { struct msgb *b_next; struct msgb *b_prev; struct msgb *b_cont; unsigned char *b_rptr; unsigned char *b_wptr; struct datab *b_datap; unsigned char b_band; unsigned char b_tag; unsigned short b_flag; queue_t *b_queue; /* for sync queues */ } mblk_t; /* * bcache descriptor */ typedef struct bcache { kmutex_t mutex; struct kmem_cache *buffer_cache; struct kmem_cache *dblk_cache; int alloc; int destroy; size_t size; uint_t align; } bcache_t; /* * db_flags values (all implementation private!) */ /* * db_struioflag values: */ /* * Message flags. These are interpreted by the stream head. */ /* write side of stream */ /* UNUSED 0x08 was MSGNOGET (can be recycled) */ /* * Streams message types. */ /* * Data and protocol messages (regular and priority) */ /* * Control messages (regular and priority) */ # 445 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" /* * Control messages (high priority; go to head of queue) */ # 468 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" /* * Queue message class definitions. */ /* * IOCTL structure - this structure is the format of the M_IOCTL message type. */ # 488 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" struct iocblk { int ioc_cmd; /* ioctl command type */ cred_t *ioc_cr; /* full credentials */ uint_t ioc_id; /* ioctl id */ size_t ioc_count; /* count of bytes in data field */ int ioc_error; /* error code */ int ioc_rval; /* return value */ int ioc_fill1; uint_t ioc_flag; /* see below */ int ioc_filler[2]; /* reserved for future use */ }; typedef struct iocblk *IOCP; /* {ioc,cp}_flags values */ /* * Is the ioctl data formatted for our native model? */ /* * structure for the M_COPYIN and M_COPYOUT message types. */ # 531 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" struct copyreq { int cq_cmd; /* ioctl command (from ioc_cmd) */ cred_t *cq_cr; /* full credentials */ uint_t cq_id; /* ioctl id (from ioc_id) */ caddr_t cq_addr; /* address to copy data to/from */ size_t cq_size; /* number of bytes to copy */ uint_t cq_flag; /* must be zero */ mblk_t *cq_private; /* private state information */ int cq_filler[4]; /* reserved for future use */ }; /* * structure for the M_IOCDATA message type. */ # 557 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" struct copyresp { int cp_cmd; /* ioctl command (from ioc_cmd) */ cred_t *cp_cr; /* full credentials */ uint_t cp_id; /* ioctl id (from ioc_id) */ caddr_t cp_rval; /* status of request: 0 -> success */ /* non-zero -> failure */ size_t cp_pad1; uint_t cp_pad2; mblk_t *cp_private; /* private state information */ uint_t cp_flag; /* datamodel IOC_ flags; see above */ int cp_filler[3]; }; /* * Since these structures are all intended to travel in the same message * at different stages of a STREAMS ioctl, this union is used to determine * the message size in strdoioctl(). */ union ioctypes { struct iocblk iocblk; struct copyreq copyreq; struct copyresp copyresp; }; /* * Options structure for M_SETOPTS message. This is sent upstream * by a module or driver to set stream head options. */ struct stroptions { uint_t so_flags; /* options to set */ short so_readopt; /* read option */ ushort_t so_wroff; /* write offset */ ssize_t so_minpsz; /* minimum read packet size */ ssize_t so_maxpsz; /* maximum read packet size */ size_t so_hiwat; /* read queue high water mark */ size_t so_lowat; /* read queue low water mark */ unsigned char so_band; /* band for water marks */ ushort_t so_erropt; /* error option */ ssize_t so_maxblk; /* maximum message block size */ ushort_t so_copyopt; /* copy options (see stropts.h) */ ushort_t so_tail; /* space available at the end */ }; /* flags for stream options set message */ # 673 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" /* * Miscellaneous parameters and flags. */ /* * Values for stream flag in open to indicate module open, clone open, * and the return value for failure. */ /* * Priority definitions for block allocation. */ /* * Value for packet size that denotes infinity */ /* * Flags for flushq() */ /* * Flag for transparent ioctls */ /* * Stream head default high/low water marks */ /* * qwriter perimeter types */ /* * Definitions of Streams macros and function interfaces. */ /* * canenable - check if queue can be enabled by putq(). */ /* * Test if data block type is one of the data messages (i.e. not a control * message). */ /* * Extract queue class of message block. */ /* * Align address on next lower word boundary. */ /* * Find the max size of data block. */ # 68 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 /* * Symbols such as htonl() are required to be exposed through this file, * per XNS Issue 5. This is achieved by inclusion of */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 2 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" /* * macros for conversion between host and (internet) network byte order */ # 74 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" typedef uint16_t in_port_t; typedef uint32_t in_addr_t; extern uint32_t htonl(uint32_t); extern uint16_t htons(uint16_t); extern uint32_t ntohl(uint32_t); extern uint16_t ntohs(uint16_t); # 96 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" extern uint64_t htonll(uint64_t); extern uint64_t ntohll(uint64_t); /* * Macros to reverse byte order */ # 141 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" /* * Macros to convert from a specific byte order to/from native byte order */ # 164 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" /* * Macros to read unaligned values from a specific byte order to * native byte order */ # 204 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" /* * Macros to write unaligned values from native byte order to a specific byte * order. */ # 75 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 /* * Note: IPv4 address data structures usage conventions. * The "in_addr_t" type below (required by Unix standards) * is NOT a typedef of "struct in_addr" and violates the usual * conventions where "struct " and _t are corresponding * typedefs. * To minimize confusion, kernel data structures/usage prefers use * of "ipaddr_t" as atomic uint32_t type and avoid using "in_addr_t" * The user level APIs continue to follow the historic popular * practice of using "struct in_addr". */ typedef uint32_t ipaddr_t; struct in6_addr { union { /* * Note: Static initalizers of "union" type assume * the constant on the RHS is the type of the first member * of union. * To make static initializers (and efficient usage) work, * the order of members exposed to user and kernel view of * this data structure is different. * User environment sees specified uint8_t type as first * member whereas kernel sees most efficient type as * first member. */ uint8_t _S6_u8[16]; /* IPv6 address */ uint32_t _S6_u32[4]; /* IPv6 address */ uint32_t __S6_align; /* Align on 32 bit boundary */ } _S6_un; }; typedef struct in6_addr in6_addr_t; # 144 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * Protocols * * Some of these constant names are copied for the DTrace IP provider in * usr/src/lib/libdtrace/common/{ip.d.in, ip.sed.in}, which should be kept * in sync. */ # 177 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* Transmission Protocol */ # 186 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * Port/socket numbers: network standard functions * * Entries should exist here for each port number compiled into an ON * component, such as snoop. */ # 208 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * Port/socket numbers: host specific functions */ # 229 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * Internet Key Exchange (IKE) ports */ /* * UNIX TCP sockets */ /* * UNIX UDP sockets */ /* * DHCPv6 UDP ports */ /* * Ports < IPPORT_RESERVED are reserved for * privileged processes (e.g. root). * Ports > IPPORT_USERRESERVED are reserved * for servers, not necessarily privileged. */ /* * Link numbers */ /* * IPv4 Internet address * This definition contains obsolete fields for compatibility * with SunOS 3.x and 4.2bsd. The presence of subnets renders * divisions into fixed fields misleading at best. New code * should use only the s_addr field. */ # 293 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" struct in_addr { union { struct { uint8_t s_b1, s_b2, s_b3, s_b4; } S_un_b; struct { uint16_t s_w1, s_w2; } S_un_w; uint32_t S_addr; } S_un; }; /* * Definitions of bits in internet address integers. * On subnets, the decomposition of addresses to host and net parts * is done according to subnet mask, not the masks here. * * Note that with the introduction of CIDR, IN_CLASSA, IN_CLASSB, * IN_CLASSC, IN_CLASSD and IN_CLASSE macros have become "de-facto * obsolete". IN_MULTICAST macro should be used to test if a address * is a multicast address. */ # 348 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * We have removed CLASS E checks from the kernel * But we preserve these defines for userland in order * to avoid compile breakage of some 3rd party piece of software */ # 369 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* Scoped IPv4 prefixes (in host byte-order) */ # 379 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* RFC 3927 IPv4 link local address (i in host byte-order) */ /* Well known 6to4 Relay Router Anycast address defined in RFC 3068 */ /* * Define a macro to stuff the loopback address into an Internet address */ /* * IPv4 Socket address. */ struct sockaddr_in { sa_family_t sin_family; in_port_t sin_port; struct in_addr sin_addr; char sin_zero[8]; }; /* * IPv6 socket address. */ struct sockaddr_in6 { sa_family_t sin6_family; in_port_t sin6_port; uint32_t sin6_flowinfo; struct in6_addr sin6_addr; uint32_t sin6_scope_id; /* Depends on scope of sin6_addr */ uint32_t __sin6_src_id; /* Impl. specific - UDP replies */ }; /* * Macros for accessing the traffic class and flow label fields from * sin6_flowinfo. * These are designed to be applied to a 32-bit value. */ # 438 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* masks */ /* * Note: Macros IN6ADDR_ANY_INIT and IN6ADDR_LOOPBACK_INIT are for * use as RHS of Static initializers of "struct in6_addr" (or in6_addr_t) * only. They need to be different for User/Kernel versions because union * component data structure is defined differently (it is identical at * binary representation level). * * const struct in6_addr IN6ADDR_ANY_INIT; * const struct in6_addr IN6ADDR_LOOPBACK_INIT; */ # 478 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * RFC 2553 specifies the following macros. Their type is defined * as "int" in the RFC but they only have boolean significance * (zero or non-zero). For the purposes of our comment notation, * we assume a hypothetical type "bool" defined as follows to * write the prototypes assumed for macros in our comments better. * * typedef int bool; */ /* * IN6 macros used to test for special IPv6 addresses * (Mostly from spec) * * bool IN6_IS_ADDR_UNSPECIFIED (const struct in6_addr *); * bool IN6_IS_ADDR_LOOPBACK (const struct in6_addr *); * bool IN6_IS_ADDR_MULTICAST (const struct in6_addr *); * bool IN6_IS_ADDR_LINKLOCAL (const struct in6_addr *); * bool IN6_IS_ADDR_SITELOCAL (const struct in6_addr *); * bool IN6_IS_ADDR_V4MAPPED (const struct in6_addr *); * bool IN6_IS_ADDR_V4MAPPED_ANY(const struct in6_addr *); -- Not from RFC2553 * bool IN6_IS_ADDR_V4COMPAT (const struct in6_addr *); * bool IN6_IS_ADDR_MC_RESERVED (const struct in6_addr *); -- Not from RFC2553 * bool IN6_IS_ADDR_MC_NODELOCAL(const struct in6_addr *); * bool IN6_IS_ADDR_MC_LINKLOCAL(const struct in6_addr *); * bool IN6_IS_ADDR_MC_SITELOCAL(const struct in6_addr *); * bool IN6_IS_ADDR_MC_ORGLOCAL (const struct in6_addr *); * bool IN6_IS_ADDR_MC_GLOBAL (const struct in6_addr *); * bool IN6_IS_ADDR_6TO4 (const struct in6_addr *); -- Not from RFC2553 * bool IN6_ARE_6TO4_PREFIX_EQUAL(const struct in6_addr *, * const struct in6_addr *); -- Not from RFC2553 * bool IN6_IS_ADDR_LINKSCOPE (const struct in6addr *); -- Not from RFC2553 */ # 568 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * IN6_IS_ADDR_V4MAPPED - A IPv4 mapped INADDR_ANY * Note: This macro is currently NOT defined in RFC2553 specification * and not a standard macro that portable applications should use. */ # 587 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* Exclude loopback and unspecified address */ # 605 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * Note: * IN6_IS_ADDR_MC_RESERVED macro is currently NOT defined in RFC2553 * specification and not a standard macro that portable applications * should use. */ # 660 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * The IN6_IS_ADDR_MC_SOLICITEDNODE macro is not defined in any standard or * RFC, and shouldn't be used by portable applications. It is used to see * if an address is a solicited-node multicast address, which is prefixed * with ff02:0:0:0:0:1:ff00::/104. */ # 680 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * Macros to a) test for 6to4 IPv6 address, and b) to test if two * 6to4 addresses have the same /48 prefix, and, hence, are from the * same 6to4 site. */ # 699 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * IN6_IS_ADDR_LINKSCOPE * Identifies an address as being either link-local, link-local multicast or * node-local multicast. All types of addresses are considered to be unique * within the scope of a given link. */ /* * Useful utility macros for operations with IPv6 addresses * Note: These macros are NOT defined in the RFC2553 or any other * standard specification and are not standard macros that portable * applications should use. */ /* * IN6_V4MAPPED_TO_INADDR * IN6_V4MAPPED_TO_IPADDR * Assign a IPv4-Mapped IPv6 address to an IPv4 address. * Note: These macros are NOT defined in RFC2553 or any other standard * specification and are not macros that portable applications should * use. * * void IN6_V4MAPPED_TO_INADDR(const in6_addr_t *v6, struct in_addr *v4); * void IN6_V4MAPPED_TO_IPADDR(const in6_addr_t *v6, ipaddr_t v4); * */ /* * IN6_INADDR_TO_V4MAPPED * IN6_IPADDR_TO_V4MAPPED * Assign a IPv4 address address to an IPv6 address as a IPv4-mapped * address. * Note: These macros are NOT defined in RFC2553 or any other standard * specification and are not macros that portable applications should * use. * * void IN6_INADDR_TO_V4MAPPED(const struct in_addr *v4, in6_addr_t *v6); * void IN6_IPADDR_TO_V4MAPPED(const ipaddr_t v4, in6_addr_t *v6); * */ # 770 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * IN6_6TO4_TO_V4ADDR * Extract the embedded IPv4 address from the prefix to a 6to4 IPv6 * address. * Note: This macro is NOT defined in RFC2553 or any other standard * specification and is not a macro that portable applications should * use. * Note: we don't use the IPADDR form of the macro because we need * to do a bytewise copy; the V4ADDR in the 6to4 address is not * 32-bit aligned. * * void IN6_6TO4_TO_V4ADDR(const in6_addr_t *v6, struct in_addr *v4); * */ /* * IN6_V4ADDR_TO_6TO4 * Given an IPv4 address and an IPv6 address for output, a 6to4 address * will be created from the IPv4 Address. * Note: This method for creating 6to4 addresses is not standardized * outside of Solaris. The newly created 6to4 address will be of the form * 2002::::, where SUBNETID will equal 0 and * HOSTID will equal 1. * * void IN6_V4ADDR_TO_6TO4(const struct in_addr *v4, in6_addr_t *v6) * */ # 828 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * IN6_ARE_ADDR_EQUAL (defined in RFC2292) * Compares if IPv6 addresses are equal. * Note: Compares in order of high likelyhood of a miss so we minimize * compares. (Current heuristic order, compare in reverse order of * uint32_t units) * * bool IN6_ARE_ADDR_EQUAL(const struct in6_addr *, * const struct in6_addr *); */ /* * IN6_ARE_PREFIXEDADDR_EQUAL (not defined in RFCs) * Compares if prefixed parts of IPv6 addresses are equal. * * uint32_t IN6_MASK_FROM_PREFIX(int, int); * bool IN6_ARE_PREFIXEDADDR_EQUAL(const struct in6_addr *, * const struct in6_addr *, * int); */ # 879 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * Options for use with [gs]etsockopt at the IP level. * * Note: Some of the IP_ namespace has conflict with and * and is exposed through . (It also requires exposing * options not implemented). The options with potential * for conflicts use #ifndef guards. */ # 919 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * IP_PKTINFO and IP_RECVPKTINFO have same value. Size of argument passed in * is used to differentiate b/w the two. */ /* * Different preferences that can be requested from IPSEC protocols. */ /* * This can be used with the setsockopt() call to set per socket security * options. When the application uses per-socket API, we will reflect * the request on both outbound and inbound packets. */ typedef struct ipsec_req { uint_t ipsr_ah_req; /* AH request */ uint_t ipsr_esp_req; /* ESP request */ uint_t ipsr_self_encap_req; /* Self-Encap request */ uint8_t ipsr_auth_alg; /* Auth algs for AH */ uint8_t ipsr_esp_alg; /* Encr algs for ESP */ uint8_t ipsr_esp_auth_alg; /* Auth algs for ESP */ } ipsec_req_t; /* * MCAST_* options are protocol-independent. The actual definitions * are with the v6 options below; this comment is here to note the * namespace usage. * * #define MCAST_JOIN_GROUP 0x29 * #define MCAST_LEAVE_GROUP 0x2a * #define MCAST_BLOCK_SOURCE 0x2b * #define MCAST_UNBLOCK_SOURCE 0x2c * #define MCAST_JOIN_SOURCE_GROUP 0x2d * #define MCAST_LEAVE_SOURCE_GROUP 0x2e */ /* * SunOS private (potentially not portable) IP_ option names */ /* can be reused 0x44 */ /* * Option values and names (when !_XPG5) shared with */ # 988 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * The following option values are reserved by * * T_IP_OPTIONS 0x107 - IP per-packet options * T_IP_TOS 0x108 - IP per packet type of service */ /* * Default value constants for multicast attributes controlled by * IP*_MULTICAST_LOOP and IP*_MULTICAST_{TTL,HOPS} options. */ /* * Argument structure for IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP. */ struct ip_mreq { struct in_addr imr_multiaddr; /* IP multicast address of group */ struct in_addr imr_interface; /* local IP address of interface */ }; /* * Argument structure for IP_BLOCK_SOURCE, IP_UNBLOCK_SOURCE, * IP_ADD_SOURCE_MEMBERSHIP, and IP_DROP_SOURCE_MEMBERSHIP. */ struct ip_mreq_source { struct in_addr imr_multiaddr; /* IP address of group */ struct in_addr imr_sourceaddr; /* IP address of source */ struct in_addr imr_interface; /* IP address of interface */ }; /* * Argument structure for IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP on * IPv6 addresses. */ struct ipv6_mreq { struct in6_addr ipv6mr_multiaddr; /* IPv6 multicast addr */ unsigned int ipv6mr_interface; /* interface index */ }; /* * Use #pragma pack() construct to force 32-bit alignment on amd64. * This is needed to keep the structure size and offsets consistent * between a 32-bit app and the 64-bit amd64 kernel in structures * where 64-bit alignment would create gaps (in this case, structures * which have a uint32_t followed by a struct sockaddr_storage). */ /* * Argument structure for MCAST_JOIN_GROUP and MCAST_LEAVE_GROUP. */ struct group_req { uint32_t gr_interface; /* interface index */ struct sockaddr_storage gr_group; /* group address */ }; /* * Argument structure for MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, * MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP. */ struct group_source_req { uint32_t gsr_interface; /* interface index */ struct sockaddr_storage gsr_group; /* group address */ struct sockaddr_storage gsr_source; /* source address */ }; /* * Argument for SIOC[GS]MSFILTER ioctls */ struct group_filter { uint32_t gf_interface; /* interface index */ struct sockaddr_storage gf_group; /* multicast address */ uint32_t gf_fmode; /* filter mode */ uint32_t gf_numsrc; /* number of sources */ struct sockaddr_storage gf_slist[1]; /* source address */ }; # 1078 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * Argument for SIOC[GS]IPMSFILTER ioctls (IPv4-specific) */ struct ip_msfilter { struct in_addr imsf_multiaddr; /* IP multicast address of group */ struct in_addr imsf_interface; /* local IP address of interface */ uint32_t imsf_fmode; /* filter mode */ uint32_t imsf_numsrc; /* number of sources in src_list */ struct in_addr imsf_slist[1]; /* start of source list */ }; /* * Multicast source filter manipulation functions in libsocket; * defined in RFC 3678. */ int setsourcefilter(int, uint32_t, struct sockaddr *, socklen_t, uint32_t, uint_t, struct sockaddr_storage *); int getsourcefilter(int, uint32_t, struct sockaddr *, socklen_t, uint32_t *, uint_t *, struct sockaddr_storage *); int setipv4sourcefilter(int, struct in_addr, struct in_addr, uint32_t, uint32_t, struct in_addr *); int getipv4sourcefilter(int, struct in_addr, struct in_addr, uint32_t *, uint32_t *, struct in_addr *); /* * Definitions needed for [gs]etsourcefilter(), [gs]etipv4sourcefilter() */ /* * Argument struct for IP_PKTINFO option */ typedef struct in_pktinfo { unsigned int ipi_ifindex; /* send/recv interface index */ struct in_addr ipi_spec_dst; /* matched source address */ struct in_addr ipi_addr; /* src/dst address in IP hdr */ } in_pktinfo_t; /* * Argument struct for IPV6_PKTINFO option */ struct in6_pktinfo { struct in6_addr ipi6_addr; /* src/dst IPv6 address */ unsigned int ipi6_ifindex; /* send/recv interface index */ }; /* * Argument struct for IPV6_MTUINFO option */ struct ip6_mtuinfo { struct sockaddr_in6 ip6m_addr; /* dst address including zone ID */ uint32_t ip6m_mtu; /* path MTU in host byte order */ }; /* * IPv6 routing header types */ extern socklen_t inet6_rth_space(int type, int segments); extern void *inet6_rth_init(void *bp, socklen_t bp_len, int type, int segments); extern int inet6_rth_add(void *bp, const struct in6_addr *addr); extern int inet6_rth_reverse(const void *in, void *out); extern int inet6_rth_segments(const void *bp); extern struct in6_addr *inet6_rth_getaddr(const void *bp, int index); extern int inet6_opt_init(void *extbuf, socklen_t extlen); extern int inet6_opt_append(void *extbuf, socklen_t extlen, int offset, uint8_t type, socklen_t len, uint_t align, void **databufp); extern int inet6_opt_finish(void *extbuf, socklen_t extlen, int offset); extern int inet6_opt_set_val(void *databuf, int offset, void *val, socklen_t vallen); extern int inet6_opt_next(void *extbuf, socklen_t extlen, int offset, uint8_t *typep, socklen_t *lenp, void **databufp); extern int inet6_opt_find(void *extbufp, socklen_t extlen, int offset, uint8_t type, socklen_t *lenp, void **databufp); extern int inet6_opt_get_val(void *databuf, int offset, void *val, socklen_t vallen); /* * Argument structure for IP_ADD_PROXY_ADDR. * Note that this is an unstable, experimental interface. It may change * later. Don't use it unless you know what it is. */ typedef struct { struct in_addr in_prefix_addr; unsigned int in_prefix_len; } in_prefix_t; /* * IPv6 options */ /* packets. */ /* argument type: uint_t */ /* multicast packets. */ /* argument type: struct in6_addr */ /* multicast packets. */ /* argument type: uint_t */ /* multicast packets on same socket. */ /* argument type: uint_t */ /* argument type: struct ipv6_mreq */ /* argument type: struct ipv6_mreq */ /* * Other XPG6 constants. */ /* decimal notation. */ /* standard colon-hex notation. */ /* * IPV6_ADD_MEMBERSHIP and IPV6_DROP_MEMBERSHIP are being kept * for backward compatibility. They have the same meaning as IPV6_JOIN_GROUP * and IPV6_LEAVE_GROUP respectively. */ /* argument type: struct ipv6_mreq */ /* argument type: struct ipv6_mreq */ /* arg type: "struct in6_pktingo" - */ /* the routing header */ /* the routing header */ /* * This options exists for backwards compatability and should no longer be * used. Use IPV6_RECVDSTOPTS instead. */ /* * enable/disable IPV6_RTHDRDSTOPTS. Now obsolete. IPV6_RECVDSTOPTS enables * the receipt of both headers. */ # 1259 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * enable/disable receipt of both both IPV6_DSTOPTS headers. */ /* * protocol-independent multicast membership options. */ /* 32Bit field for IPV6_SRC_PREFERENCES */ # 1295 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" /* * SunOS private (potentially not portable) IPV6_ option names */ /* unspecified (all zeros) */ /* * Miscellaneous IPv6 constants. */ /* * Extern declarations for pre-defined global const variables */ extern const struct in6_addr in6addr_any; extern const struct in6_addr in6addr_loopback; # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 # 82 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * Definitions related to sockets: types, address families, options. */ # 94 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * Types */ # 110 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * Flags for socket() and accept4() */ /* * Option flags per-socket. */ # 132 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * Socket options are passed using a signed integer, but it is also rare * for more than one to ever be passed at the same time with setsockopt * and only one at a time can be retrieved with getsockopt. * * Since the lower numbers cannot be renumbered for compatibility reasons, * it would seem that we need to start a new number space (0x40000000 - * 0x7fffffff) for those that don't need to be stored as a bit flag * somewhere. This limits the flag options to 30 but that seems to be * plenty, anyway. 0x40000000 is reserved for future use. */ # 159 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * N.B.: The following definition is present only for compatibility * with release 3.0. It will disappear in later releases. */ /* * Additional options, not kept in so_options. */ # 183 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* "Socket"-level control message types: */ # 200 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * Socket filter options */ /* * Structure returned by FIL_LIST */ struct fil_info { int fi_flags; /* see below (FILF_*) */ int fi_pos; /* position (0 is bottom) */ char fi_name[32]; /* filter name */ }; # 237 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * Structure used for manipulating linger option. */ struct linger { int l_onoff; /* option on/off */ int l_linger; /* linger time */ }; /* * Levels for (get/set)sockopt() that don't apply to a specific protocol. */ /* * Address families. * * Some of these constant names are copied for the DTrace IP provider in * usr/src/lib/libdtrace/common/{ip.d.in, ip.sed.in}, which should be kept * in sync. */ # 300 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * Protocol families, same as address families for now. */ # 341 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* * Maximum queue length specifiable by listen. */ /* * Message header for recvmsg and sendmsg calls. */ struct msghdr { void *msg_name; /* optional address */ socklen_t msg_namelen; /* size of address */ struct iovec *msg_iov; /* scatter/gather array */ int msg_iovlen; /* # elements in msg_iov */ caddr_t msg_accrights; /* access rights sent/received */ int msg_accrightslen; }; # 412 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* Added for XPGv2 compliance */ /* with left over data */ /* End of XPGv2 compliance */ # 438 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" /* Added for XPGv2 compliance */ struct cmsghdr { socklen_t cmsg_len; /* data byte count, including hdr */ int cmsg_level; /* originating protocol */ int cmsg_type; /* protocol-specific type */ }; # 528 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" extern int accept(int, struct sockaddr *, Psocklen_t); extern int accept4(int, struct sockaddr *, Psocklen_t, int); extern int bind(int, const struct sockaddr *, socklen_t); extern int connect(int, const struct sockaddr *, socklen_t); extern int getpeername(int, struct sockaddr *, Psocklen_t); extern int getsockname(int, struct sockaddr *, Psocklen_t); extern int getsockopt(int, int, int, void *, Psocklen_t); extern int listen(int, int); /* XXX - fixme??? where do I go */ extern int socketpair(int, int, int, int *); extern ssize_t recv(int, void *, size_t, int); extern ssize_t recvfrom(int, void *, size_t, int, struct sockaddr *, Psocklen_t); extern ssize_t recvmsg(int, struct msghdr *, int); extern ssize_t send(int, const void *, size_t, int); extern ssize_t sendmsg(int, const struct msghdr *, int); extern ssize_t sendto(int, const void *, size_t, int, const struct sockaddr *, socklen_t); extern int setsockopt(int, int, int, const void *, socklen_t); extern int shutdown(int, int); extern int socket(int, int, int); extern int sockatmark(int); # 32 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" 1 /* * Copyright 2014 Garrett D'Amore * * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * BIND 4.9.3: * * Copyright (c) 1980, 1983, 1988, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * Portions Copyright (c) 1993 by Digital Equipment Corporation. * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies, and that * the name of Digital Equipment Corporation not be used in advertising or * publicity pertaining to distribution of the document or software without * specific, written prior permission. * * THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL * WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT * CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS * SOFTWARE. * --Copyright-- * * End BIND 4.9.3 */ /* * Structures returned by network data base library. * All addresses are supplied in host order, and * returned in network order (suitable for use in system calls). */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 77 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ /* * Copyright (c) 1982, 1986 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that this notice is preserved and that due credit is given * to the University of California at Berkeley. The name of the University * may not be used to endorse or promote products derived from this * software without specific prior written permission. This software * is provided ``as is'' without express or implied warranty. */ /* * Constants and structures defined by the internet system, * according to following documents * * Internet ASSIGNED NUMBERS (RFC1700) and its successors: * http://www.iana.org/assignments/protocol-numbers * http://www.iana.org/assignments/port-numbers * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) * */ # 78 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ # 80 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 82 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" 2 # 96 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" struct hostent { char *h_name; /* official name of host */ char **h_aliases; /* alias list */ int h_addrtype; /* host address type */ int h_length; /* length of address */ char **h_addr_list; /* list of addresses from name server */ }; /* * addrinfo introduced with IPv6 for Protocol-Independent Hostname * and Service Name Translation. */ struct addrinfo { int ai_flags; /* AI_PASSIVE, AI_CANONNAME, ... */ int ai_family; /* PF_xxx */ int ai_socktype; /* SOCK_xxx */ int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */ socklen_t ai_addrlen; char *ai_canonname; /* canonical name for hostname */ struct sockaddr *ai_addr; /* binary address */ struct addrinfo *ai_next; /* next structure in linked list */ }; /* * The flag 0x8000 is currently reserved for private use between libnsl and * libsocket. See lib/libsocket/inet/getaddrinfo.c for more information. */ /* addrinfo flags */ /* getipnodebyname() flags */ /* * These were defined in RFC 2553 but not SUSv3 * or RFC 3493 which obsoleted 2553. */ /* addrinfo errors */ # 166 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" /* getnameinfo flags */ /* Not listed in any standards document */ /* getnameinfo max sizes as defined in RFC 2553 obsoleted in RFC 3493 */ /* * Scope delimit character */ /* * Algorithm entry for /etc/inet/ipsecalgs which defines IPsec protocols * and algorithms. */ typedef struct ipsecalgent { char **a_names; /* algorithm names */ int a_proto_num; /* protocol number */ int a_alg_num; /* algorithm number */ char *a_mech_name; /* encryption framework mechanism name */ int *a_block_sizes; /* supported block sizes */ int *a_key_sizes; /* supported key sizes */ int a_key_increment; /* key size increment */ int *a_mech_params; /* mechanism specific parameters */ int a_alg_flags; /* algorithm flags */ } ipsecalgent_t; /* well-known IPsec protocol numbers */ /* * Assumption here is that a network number * fits in 32 bits -- probably a poor one. */ struct netent { char *n_name; /* official name of net */ char **n_aliases; /* alias list */ int n_addrtype; /* net address type */ in_addr_t n_net; /* network # */ }; struct protoent { char *p_name; /* official protocol name */ char **p_aliases; /* alias list */ int p_proto; /* protocol # */ }; struct servent { char *s_name; /* official service name */ char **s_aliases; /* alias list */ int s_port; /* port # */ char *s_proto; /* protocol to use */ }; struct hostent *gethostbyname_r (const char *, struct hostent *, char *, int, int *h_errnop); struct hostent *gethostbyaddr_r (const char *, int, int, struct hostent *, char *, int, int *h_errnop); struct hostent *getipnodebyname(const char *, int, int, int *); struct hostent *getipnodebyaddr(const void *, size_t, int, int *); void freehostent(struct hostent *); struct hostent *gethostent_r(struct hostent *, char *, int, int *h_errnop); struct servent *getservbyname_r (const char *name, const char *, struct servent *, char *, int); struct servent *getservbyport_r (int port, const char *, struct servent *, char *, int); struct servent *getservent_r(struct servent *, char *, int); struct netent *getnetbyname_r (const char *, struct netent *, char *, int); struct netent *getnetbyaddr_r(long, int, struct netent *, char *, int); struct netent *getnetent_r(struct netent *, char *, int); struct protoent *getprotobyname_r (const char *, struct protoent *, char *, int); struct protoent *getprotobynumber_r (int, struct protoent *, char *, int); struct protoent *getprotoent_r(struct protoent *, char *, int); int getnetgrent_r(char **, char **, char **, char *, int); int innetgr(const char *, const char *, const char *, const char *); /* Old interfaces that return a pointer to a static area; MT-unsafe */ struct hostent *gethostbyname(const char *); struct hostent *gethostent(void); struct netent *getnetbyaddr(in_addr_t, int); struct netent *getnetbyname(const char *); struct netent *getnetent(void); struct protoent *getprotobyname(const char *); struct protoent *getprotobynumber(int); struct protoent *getprotoent(void); struct servent *getservbyname(const char *, const char *); struct servent *getservbyport(int, const char *); struct servent *getservent(void); /* gethostbyaddr() second argument is a size_t only in unix95/unix98 */ struct hostent *gethostbyaddr(const void *, socklen_t, int); int endhostent(void); int endnetent(void); int endprotoent(void); int endservent(void); int sethostent(int); int setnetent(int); int setprotoent(int); int setservent(int); # 318 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" int getaddrinfo(const char *, const char *, const struct addrinfo *, struct addrinfo **); void freeaddrinfo(struct addrinfo *); const char *gai_strerror(int); int getnameinfo(const struct sockaddr *, socklen_t, char *, socklen_t, char *, socklen_t, int); int getnetgrent(char **, char **, char **); int setnetgrent(const char *); int endnetgrent(void); int rcmd(char **, unsigned short, const char *, const char *, const char *, int *); int rcmd_af(char **, unsigned short, const char *, const char *, const char *, int *, int); int rresvport_af(int *, int); int rresvport_addr(int *, struct sockaddr_storage *); int rexec(char **, unsigned short, const char *, const char *, const char *, int *); int rexec_af(char **, unsigned short, const char *, const char *, const char *, int *, int); int rresvport(int *); int ruserok(const char *, int, const char *, const char *); /* BIND */ struct hostent *gethostbyname2(const char *, int); void herror(const char *); const char *hstrerror(int); /* End BIND */ /* IPsec algorithm prototype definitions */ struct ipsecalgent *getipsecalgbyname(const char *, int, int *); struct ipsecalgent *getipsecalgbynum(int, int, int *); int getipsecprotobyname(const char *doi_name); char *getipsecprotobynum(int doi_domain); void freeipsecalgent(struct ipsecalgent *ptr); /* END IPsec algorithm prototype definitions */ /* * Error return codes from gethostbyname() and gethostbyaddr() * (when using the resolver) */ extern int h_errno; # 377 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" /* * Error return codes from gethostbyname() and gethostbyaddr() * (left in extern int h_errno). */ # 389 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netdb.h" /* BIND */ /* End BIND */ # 33 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 PALO, Richard. * Copyright 2014 Garrett D'Amore * Copyright (c) 2013 Gary Mills * * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 /* * This file and its contents are supplied under the terms of the * Common Development and Distribution License ("CDDL"), version 1.0. * You may only use this file in accordance with the terms of version * 1.0 of the CDDL. * * A full copy of the text of the CDDL should have accompanied this * source. A copy of the CDDL is also available via the Internet at * http://www.illumos.org/license/CDDL. */ /* * Copyright 2014-2016 PALO, Richard. */ # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T * All Rights Reserved * */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * WARNING: This is an implementation-specific header, * its contents are not guaranteed. Applications * should include and not this header. */ # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 2 /* Symbolic constants for the "access" routine: */ # 61 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" /* Symbolic constants for the "lseek" routine: */ # 86 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" /* Path names: */ /* * compile-time symbolic constants, * Support does not mean the feature is enabled. * Use pathconf/sysconf to obtain actual configuration value. */ /* Values unchanged in UNIX 03 */ /* * POSIX.1b compile-time symbolic constants. */ # 134 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" /* * POSIX.1c compile-time symbolic constants. */ # 155 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" /* New in UNIX 03 */ # 167 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" /* * Support for the POSIX.1 mutex protocol attribute. For realtime applications * which need mutexes to support priority inheritance/ceiling. */ # 187 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" /* * Large File Summit-related announcement macros. The system supports both * the additional and transitional Large File Summit interfaces. (The final * two macros provide a finer granularity breakdown of _LFS64_LARGEFILE.) */ /* large file compilation environment setup */ # 200 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname ftruncate ftruncate64 # 200 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" # 201 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname lseek lseek64 # 201 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" # 202 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname pread pread64 # 202 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" # 203 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname pwrite pwrite64 # 203 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" # 204 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname truncate truncate64 # 204 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" # 205 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname lockf lockf64 # 205 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" # 206 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname tell tell64 # 206 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" # 218 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" /* In the LP64 compilation environment, the APIs are already large file */ # 239 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" extern int access(const char *, int); extern int acct(const char *); extern unsigned alarm(unsigned); /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ extern int brk(void *); extern int chdir(const char *); extern int chown(const char *, uid_t, gid_t); /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ extern int chroot(const char *); extern int close(int); extern char *ctermid(char *); extern char *ctermid_r(char *); /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ extern char *cuserid(char *); extern int dup(int); extern int dup2(int, int); extern int dup3(int, int, int); extern void endusershell(void); extern int execl(const char *, const char *, ...); extern int execle(const char *, const char *, ...); extern int execlp(const char *, const char *, ...); extern int execv(const char *, char *const *); extern int execve(const char *, char *const *, char *const *); extern int execvp(const char *, char *const *); extern void _exit(int) __attribute__((__noreturn__)); /* * The following fattach prototype is duplicated in . The * duplication is necessitated by XPG4.2 which requires the prototype * be defined in . */ extern int fattach(int, const char *); extern int fchdir(int); extern int fchown(int, uid_t, gid_t); extern int fchroot(int); extern int fdatasync(int); /* * The following fdetach prototype is duplicated in . The * duplication is necessitated by XPG4.2 which requires the prototype * be defined in . */ extern int fdetach(const char *); extern pid_t fork(void); extern pid_t fork1(void); extern pid_t forkall(void); extern long fpathconf(int, int); extern int fsync(int); extern int ftruncate(int, off_t); extern char *getcwd(char *, size_t); extern int getdtablesize(void); extern gid_t getegid(void); extern uid_t geteuid(void); extern gid_t getgid(void); extern int getgroups(int, gid_t *); extern long gethostid(void); extern int gethostname(char *, int); # 353 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname getlogin getloginx # 353 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" extern char *getlogin(void); # 372 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ extern int getpagesize(void); extern pid_t getpgid(pid_t); extern pid_t getpid(void); extern pid_t getppid(void); extern pid_t getpgrp(void); char *gettxt(const char *, const char *); extern pid_t getsid(pid_t); extern uid_t getuid(void); extern char *getusershell(void); /* * The following ioctl prototype is duplicated in . The * duplication is necessitated by XPG4.2 which requires the prototype * be defined in . */ extern int ioctl(int, int, ...); extern int isaexec(const char *, char *const *, char *const *); extern int issetugid(void); extern int isatty(int); extern int lchown(const char *, uid_t, gid_t); extern int link(const char *, const char *); extern offset_t llseek(int, offset_t, int); extern int lockf(int, int, off_t); extern off_t lseek(int, off_t, int); extern int nice(int); extern int mincore(caddr_t, size_t, char *); extern long pathconf(const char *, int); extern int pause(void); extern int pipe(int *); extern int pipe2(int *, int); extern ssize_t pread(int, void *, size_t, off_t); extern void profil(unsigned short *, size_t, unsigned long, unsigned int); /* * pthread_atfork() is also declared in as per SUSv3. The * declarations are identical. A change to either one may also require * appropriate namespace updates in order to avoid redeclaration * warnings in the case where both prototypes are exposed via inclusion * of both and . */ extern int pthread_atfork(void (*) (void), void (*) (void), void (*) (void)); extern int ptrace(int, pid_t, int, int); extern ssize_t pwrite(int, const void *, size_t, off_t); /* per RFC 3542; This is also defined in netdb.h */ extern int rcmd_af(char **, unsigned short, const char *, const char *, const char *, int *, int); extern ssize_t read(int, void *, size_t); extern ssize_t readlink(const char *, char *, size_t); extern int rename(const char *, const char *); extern int resolvepath(const char *, char *, size_t); /* per RFC 3542; This is also defined in netdb.h */ extern int rexec_af(char **, unsigned short, const char *, const char *, const char *, int *, int); extern int rmdir(const char *); /* per RFC 3542; This is also defined in netdb.h */ extern int rresvport_af(int *, int); extern void *sbrk(intptr_t); extern int setegid(gid_t); extern int seteuid(uid_t); extern int setgid(gid_t); extern int setgroups(int, const gid_t *); extern int sethostname(char *, int); extern int setpgid(pid_t, pid_t); extern pid_t setpgrp(void); extern int setregid(gid_t, gid_t); extern int setreuid(uid_t, uid_t); extern pid_t setsid(void); extern int setuid(uid_t); extern void setusershell(void); extern unsigned sleep(unsigned); extern int stime(const time_t *); extern int symlink(const char *, const char *); extern void sync(void); # 534 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" extern long sysconf(int); extern pid_t tcgetpgrp(int); extern int tcsetpgrp(int, pid_t); extern off_t tell(int); extern int truncate(const char *, off_t); extern char *ttyname(int); extern useconds_t ualarm(useconds_t, useconds_t); extern int unlink(const char *); extern char *getwd(char *); extern int usleep(useconds_t); extern pid_t vfork(void) __attribute__((__returns_twice__)); #pragma unknown_control_flow(vfork) extern void vhangup(void); extern ssize_t write(int, const void *, size_t); extern void yield(void); /* || defined(_XPG7) */ extern int faccessat(int, const char *, int, int); extern int fchownat(int, const char *, uid_t, gid_t, int); extern int linkat(int, const char *, int, const char *, int); extern ssize_t readlinkat(int, const char *, char *, size_t); extern int renameat(int, const char *, int, const char *); extern int symlinkat(const char *, int, const char *); extern int unlinkat(int, const char *, int); extern int get_nprocs(void); extern int get_nprocs_conf(void); /* transitional large file interface versions */ extern int ftruncate64(int, off64_t); extern off64_t lseek64(int, off64_t, int); extern ssize_t pread64(int, void *, size_t, off64_t); extern ssize_t pwrite64(int, const void *, size_t, off64_t); extern off64_t tell64(int); extern int truncate64(const char *, off64_t); extern int lockf64(int, int, off64_t); /* * getlogin_r() & ttyname_r() prototypes are defined here. */ /* * Previous releases of Solaris, starting at 2.3, provided definitions of * various functions as specified in POSIX.1c, Draft 6. For some of these * functions, the final POSIX 1003.1c standard had a different number of * arguments and return values. * * The following segment of this header provides support for the standard * interfaces while supporting applications written under earlier * releases. The application defines appropriate values of the feature * test macros _POSIX_C_SOURCE and _POSIX_PTHREAD_SEMANTICS to indicate * whether it was written to expect the Draft 6 or standard versions of * these interfaces, before including this header. This header then * provides a mapping from the source version of the interface to an * appropriate binary interface. Such mappings permit an application * to be built from libraries and objects which have mixed expectations * of the definitions of these functions. * * For applications using the Draft 6 definitions, the binary symbol is the * same as the source symbol, and no explicit mapping is needed. For the * standard interface, the function func() is mapped to the binary symbol * _posix_func(). The preferred mechanism for the remapping is a compiler * #pragma. If the compiler does not provide such a #pragma, the header file * defines a static function func() which calls the _posix_func() version; * this has to be done instead of #define since POSIX specifies that an * application can #undef the symbol and still be bound to the correct * implementation. Unfortunately, the statics confuse lint so we fallback to * #define in that case. * * NOTE: Support for the Draft 6 definitions is provided for compatibility * only. New applications/libraries should use the standard definitions. */ # 693 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" # 693 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" #pragma redefine_extname getlogin_r getloginx_r # 693 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" extern char *getlogin_r(char *, int); extern char *ttyname_r(int, char *, int); extern int getentropy(void *, size_t); # 34 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2013 Nexenta Systems, Inc. All rights reserved. * Copyright 2016 Joyent, Inc. */ # 35 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ # 36 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2014, OmniTI Computer Consulting, Inc. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ /* * General socket ioctl definitions. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ioccom.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 1997 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ #pragma ident "%Z%%M% %I% %E% SMI" /* * Ioctl's have the command encoded in the lower word, * and the size of any in or out parameters in the upper * word. The high 2 bits of the upper word are used * to encode the in/out status of the parameter; for now * we restrict parameters to at most 255 bytes. */ /* * The 0x20000000 is so we can distinguish new ioctl's from old. */ # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" 2 /* socket i/o controls */ # 61 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" /* * SIOCADDRT and SIOCDELRT ioctls need to be defined using _IOWN macro to * make them datamodel independent. */ /* For multicast routing. These might change in future release */ /* get vif pkt count */ /* get s,g pkt count */ /* get s,g pkt count */ /* * Obsolete interface ioctls using struct ifreq that are supported * for compatibility. New interface ioctls use struct lifreq. */ # 89 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" /* * Needs to be defined using _IOWRN macro to make it datamodel independent. * Argument is a struct ifconf. */ /* from 4.3BSD */ # 117 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" /* mode on/off */ /* STREAMS based socket emulation */ # 131 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" /* in x25if */ /* in x25if */ /* kernel */ /* SLIP request */ /* kernel */ # 151 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" /* * New interface ioctls that use the struct lifreq. Can be used for * both IPv4 and IPv6. */ # 165 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" /* * Needs to be defined using _IOWRN macro to make it datamodel independent. * Argument is a struct lifconf. */ # 187 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" /* local address and */ /* autoconf */ /* local address and */ /* autoconf */ # 203 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/sockio.h" /* * Address querying ioctls. */ /* My address? */ /* Address on-link? */ /* In this site? */ /* 147-152 were SIOC*{TUNPARAM,IPSECONFIG} ioctls. Feel free to re-use. */ /* * 153 can be reused (was consolidation-private SIOCLIFFAILOVER). */ /* * IP Multipathing ioctls. */ /* * Leave 158 - 160 unused; used to be SIOC*IFARP ioctls. * However, 161 can be reused (was consolidation-private SIOCSLIFOINDEX). */ /* * IOCTLS which provide an interface to the IPv6 address selection policy. */ /* * IOCTL for retrieving sorting info for a list of destination addrs. * Use the _IOWRN macro to make it datamodel independent. Argument * is a struct dstinfo. */ /* * Extended IOCTLS for manipulating ARP cache entries. */ /* * IOCTL private to sockfs. */ /* * IOCTLs for getting and setting zone associated with an interface, and * unplumbing interfaces associated with a given zone. */ /* * IOCTLS for handling SCTP options. */ /* * IOCTLs for getting and setting the source address that is used for packets * going out on the given interface. */ /* * IOCTL used to get all the interfaces that use the the specified interfaces' * source address */ /* * IOCTLs for source specific multicast; get or set a socket's * source filter for a particular multicast group. Argument is * a struct group_filter. Defined in RFC 3678. */ /* * IPv4-specific versions of the above; get or set a socket's source * filter for a particular multicast group, for PF_INET sockets only. * Argument is a struct ip_msfilter. */ /* * 182 can be reused (was consolidation-private SIOCSIPMPFAILBACK). */ /* * SIOCGIFHWADDR and SIOCGLIFHWADDR (below) are available for PF_PACKET, * PF_INET and PF_INET6 sockets. */ /* * Private ioctl for Integrated Load Balancer. The ioctl length varies. */ /* * IOCTL's to get/set module specific or interface specific properties. * Argument is a struct mod_ioc_prop_s. These ioctls are Consolidation Private. */ /* * IOCTL used to check for the given ipif, whether DAD is in progress or * DAD has completed. This ioctl is Consolidation Private. */ /* * IOCTL used to generate an IPv6 address using the given prefix and the * default token for the interface. */ # 37 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 1 /* * Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved. */ /* * Copyright (c) 1982, 1986 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. */ /* if.h 1.26 90/05/29 SMI; from UCB 7.1 6/4/86 */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 17 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ # 20 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ /* * Copyright (c) 1982, 1986 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that this notice is preserved and that due credit is given * to the University of California at Berkeley. The name of the University * may not be used to endorse or promote products derived from this * software without specific prior written permission. This software * is provided ``as is'' without express or implied warranty. */ /* * Constants and structures defined by the internet system, * according to following documents * * Internet ASSIGNED NUMBERS (RFC1700) and its successors: * http://www.iana.org/assignments/protocol-numbers * http://www.iana.org/assignments/port-numbers * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) * */ # 21 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 2 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* * Structures defining a network interface, providing a packet * transport mechanism (ala level 0 of the PUP protocols). * * Each interface accepts output datagrams of a specified maximum * length, and provides higher level routines with input datagrams * received from its medium. * * Output occurs when the routine if_output is called, with three parameters: * (*ifp->if_output)(ifp, m, dst) * Here m is the mbuf chain to be sent and dst is the destination address. * The output routine encapsulates the supplied datagram if necessary, * and then transmits it on its medium. * * On input, each interface unwraps the data received by it, and either * places it on the input queue of a internetwork datagram routine * and posts the associated software interrupt, or passes the datagram to a raw * packet input routine. * * Routines exist for locating interfaces by their addresses * or for locating a interface on a certain network, as well as more general * routing and gateway routines maintaining information used to locate * interfaces. These routines live in the files if.c and route.c */ /* * Structure defining a queue for a network interface. * * (Would like to call this struct ``if'', but C isn't PL/1.) */ struct ifnet { char *if_name; /* name, e.g. ``en'' or ``lo'' */ short if_unit; /* sub-unit for lower level driver */ short if_mtu; /* maximum transmission unit */ short if_flags; /* up/down, broadcast, etc. */ short if_timer; /* time 'til if_watchdog called */ ushort_t if_promisc; /* net # of requests for promisc mode */ int if_metric; /* routing metric (external only) */ struct ifaddr *if_addrlist; /* linked list of addresses per if */ struct ifqueue { struct mbuf *ifq_head; struct mbuf *ifq_tail; int ifq_len; int ifq_maxlen; int ifq_drops; } if_snd; /* output queue */ /* procedure handles */ int (*if_init)(); /* init routine */ int (*if_output)(); /* output routine */ int (*if_ioctl)(); /* ioctl routine */ int (*if_reset)(); /* bus reset routine */ int (*if_watchdog)(); /* timer routine */ /* generic interface statistics */ int if_ipackets; /* packets received on interface */ int if_ierrors; /* input errors on interface */ int if_opackets; /* packets sent on interface */ int if_oerrors; /* output errors on interface */ int if_collisions; /* collisions on csma interfaces */ /* end statistics */ struct ifnet *if_next; struct ifnet *if_upper; /* next layer up */ struct ifnet *if_lower; /* next layer down */ int (*if_input)(); /* input routine */ int (*if_ctlin)(); /* control input routine */ int (*if_ctlout)(); /* control output routine */ struct map *if_memmap; /* rmap for interface specific memory */ }; /* * NOTE : These flags are not directly used within IP. * ip_if.h has definitions derived from this which is used within IP. * If you define a flag here, you need to define one in ip_if.h before * using the new flag in IP. Don't use these flags directly in IP. */ # 119 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* * The IFF_MULTICAST flag indicates that the network can support the * transmission and reception of higher-level (e.g., IP) multicast packets. * It is independent of hardware support for multicasting; for example, * point-to-point links or pure broadcast networks may well support * higher-level multicasts. */ /* * The following flags can't be grabbed or altered by SIOC[GS]IFFLAGS. * Should use SIOC[GS]LIFFLAGS which has a larger flags field. */ # 157 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* * The IFF_XRESOLV flag is an evolving interface and is subject * to change without notice. */ # 175 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* flags that cannot be changed by userland on any interface */ /* flags that cannot be changed by userland on an IPMP interface */ /* flags that can never be set on an IPMP interface */ /* * Output queues (ifp->if_snd) and internetwork datagram level (pup level 1) * input routines have queues of messages stored on ifqueue structures * (defined above). Entries are added to and deleted from these structures * by these macros, which should be called with ipl raised to splimp(). */ # 215 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* * Packets destined for level-1 protocol input routines * have a pointer to the receiving interface prepended to the data. * IF_DEQUEUEIF extracts and returns this pointer when dequeuing the packet. * IF_ADJ should be used otherwise to adjust for its presence. */ # 254 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* * The ifaddr structure contains information about one address * of an interface. They are maintained by the different address families, * are allocated and attached when an address is set, and are linked * together so all addresses for an interface can be located. */ struct ifaddr { struct sockaddr ifa_addr; /* address of interface */ union { struct sockaddr ifu_broadaddr; struct sockaddr ifu_dstaddr; } ifa_ifu; struct ifnet *ifa_ifp; /* back-pointer to interface */ struct ifaddr *ifa_next; /* next address for interface */ }; /* * For SIOCLIF*ND ioctls. * * The lnr_state_* fields use the ND_* neighbor reachability states. * The 3 different fields are for use with SIOCLIFSETND to cover the cases * when * A new entry is created * The entry already exists and the link-layer address is the same * The entry already exists and the link-layer address differs * * Use ND_UNCHANGED to not change any state. */ typedef struct lif_nd_req { struct sockaddr_storage lnr_addr; uint8_t lnr_state_create; /* When creating */ uint8_t lnr_state_same_lla; /* Update same addr */ uint8_t lnr_state_diff_lla; /* Update w/ diff. */ int lnr_hdw_len; int lnr_flags; /* See below */ /* padding because ia32 "long long"s are only 4-byte aligned. */ int lnr_pad0; char lnr_hdw_addr[64]; } lif_nd_req_t; /* * Neighbor reachability states * Used with SIOCLIF*ND ioctls. */ # 313 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* * lnr_flags value of lif_nd_req. * Used with SIOCLIF*ND ioctls. */ /* * the NDF_STATIC entry ensures that an NCE will not be deleted, and is * used by non-ON applications like IPv6 test suites. */ /* For SIOC[GS]LIFLNKINFO */ typedef struct lif_ifinfo_req { uint8_t lir_maxhops; uint32_t lir_reachtime; /* Reachable time in msec */ uint32_t lir_reachretrans; /* Retransmission timer msec */ uint32_t lir_maxmtu; } lif_ifinfo_req_t; /* * Maximum lengths of interface name and IPMP group name; these are the same * for historical reasons. Note that the actual maximum length of a name is * one byte less than these constants since the kernel always sets the final * byte of lifr_name and lifr_groupname to NUL. */ /* * Interface request structure used for socket * ioctl's. All interface ioctl's must have parameter * definitions which begin with ifr_name. The * remainder may be interface specific. * Note: This data structure uses 64bit type uint64_t which is not * a valid type for strict ANSI/ISO C compilation for ILP32. * Applications with ioctls using this structure that insist on * building with strict ANSI/ISO C (-Xc) will need to be LP64. */ struct lifreq { char lifr_name[32]; /* if name, e.g. "en0" */ union { int lifru_addrlen; /* for subnet/token etc */ uint_t lifru_ppa; /* SIOCSLIFNAME */ } lifr_lifru1; uint_t lifr_type; /* IFT_ETHER, ... */ union { struct sockaddr_storage lifru_addr; struct sockaddr_storage lifru_dstaddr; struct sockaddr_storage lifru_broadaddr; struct sockaddr_storage lifru_token; /* With lifr_addrlen */ struct sockaddr_storage lifru_subnet; /* With lifr_addrlen */ int lifru_index; /* interface index */ uint64_t lifru_flags; /* Flags for SIOC?LIFFLAGS */ int lifru_metric; uint_t lifru_mtu; int lif_muxid[2]; /* mux id's for arp and ip */ struct lif_nd_req lifru_nd_req; /* SIOCLIF*ND */ struct lif_ifinfo_req lifru_ifinfo_req; char lifru_groupname[32]; /* SIOC[GS]LIFGROUPNAME */ char lifru_binding[32]; /* SIOCGLIFBINDING */ zoneid_t lifru_zoneid; /* SIOC[GS]LIFZONE */ uint_t lifru_dadstate; /* SIOCGLIFDADSTATE */ } lifr_lifru; # 408 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" }; /* * Argument structure for SIOCT* address testing ioctls. */ struct sioc_addrreq { struct sockaddr_storage sa_addr; /* Address to test */ int sa_res; /* Result - 0/1 */ int sa_pad; }; /* * Argument structure used by mrouted to get src-grp pkt counts using * SIOCGETLSGCNT. See . */ struct sioc_lsg_req { struct sockaddr_storage slr_src; struct sockaddr_storage slr_grp; uint_t slr_pktcnt; uint_t slr_bytecnt; uint_t slr_wrong_if; uint_t slr_pad; }; /* Argument structure for SIOCGLIFDADSTATE ioctl */ typedef enum { DAD_IN_PROGRESS = 0x1, DAD_DONE = 0x2 } glif_dad_state_t; /* * OBSOLETE: Replaced by struct lifreq. Supported for compatibility. * * Interface request structure used for socket * ioctl's. All interface ioctl's must have parameter * definitions which begin with ifr_name. The * remainder may be interface specific. */ struct ifreq { char ifr_name[16]; /* if name, e.g. "en0" */ union { struct sockaddr ifru_addr; struct sockaddr ifru_dstaddr; char ifru_oname[16]; /* other if name */ struct sockaddr ifru_broadaddr; int ifru_index; /* interface index */ uint_t ifru_mtu; short ifru_flags; int ifru_metric; char ifru_data[1]; /* interface dependent data */ char ifru_enaddr[6]; int if_muxid[2]; /* mux id's for arp and ip */ /* Struct for flags/ppa */ struct ifr_ppaflags { short ifrup_flags; /* Space of ifru_flags. */ short ifrup_filler; uint_t ifrup_ppa; } ifru_ppaflags; /* Struct for FDDI ioctl's */ struct ifr_dnld_reqs { uint32_t v_addr; uint32_t m_addr; uint32_t ex_addr; uint32_t size; } ifru_dnld_req; /* Struct for FDDI stats */ struct ifr_fddi_stats { uint32_t stat_size; uint32_t fddi_stats; } ifru_fddi_stat; struct ifr_netmapents { uint32_t map_ent_size, /* size of netmap structure */ entry_number; /* index into netmap list */ uint32_t fddi_map_ent; /* pointer to user structure */ } ifru_netmapent; /* Field for generic ioctl for fddi */ struct ifr_fddi_gen_struct { uint32_t ifru_fddi_gioctl; /* field for gen ioctl */ uint32_t ifru_fddi_gaddr; /* Generic ptr to a field */ } ifru_fddi_gstruct; } ifr_ifru; # 509 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* For setting ppa */ /* FDDI specific */ }; /* Used by SIOCGLIFNUM. Uses same flags as in struct lifconf */ struct lifnum { sa_family_t lifn_family; int lifn_flags; /* request specific interfaces */ int lifn_count; /* Result */ }; /* * Structure used in SIOCGLIFCONF request. * Used to retrieve interface configuration * for machine (useful for programs which * must know all networks accessible) for a given address family. * Using AF_UNSPEC will retrieve all address families. */ struct lifconf { sa_family_t lifc_family; int lifc_flags; /* request specific interfaces */ int lifc_len; /* size of associated buffer */ union { caddr_t lifcu_buf; struct lifreq *lifcu_req; } lifc_lifcu; }; /* * Structure used in SIOCGLIFSRCOF to get the interface * configuration list for those interfaces that use an address * hosted on the interface (set in lifs_ifindex), as the source * address. */ struct lifsrcof { uint_t lifs_ifindex; /* interface of interest */ size_t lifs_maxlen; /* size of buffer: input */ size_t lifs_len; /* size of buffer: output */ union { caddr_t lifsu_buf; struct lifreq *lifsu_req; } lifs_lifsu; }; /* Flags */ /* be used to communicate outside the */ /* node (exclude interfaces which are */ /* IFF_NOXMIT, IFF_NOLOCAL, */ /* IFF_LOOPBACK, IFF_DEPRECATED, or */ /* not IFF_UP). Has priority over */ /* LIFC_NOXMIT. */ /* (must be issued from global zone) */ # 605 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" /* * IPMP group information, for use with SIOCGLIFGROUPINFO. */ typedef struct lifgroupinfo { char gi_grname[32]; /* group name (set by caller) */ char gi_grifname[32]; /* IPMP meta-interface name */ char gi_m4ifname[32]; /* v4 mcast interface name */ char gi_m6ifname[32]; /* v6 mcast interface name */ char gi_bcifname[32]; /* v4 bcast interface name */ boolean_t gi_v4; /* group is plumbed for v4 */ boolean_t gi_v6; /* group is plumbed for v6 */ uint_t gi_nv4; /* # of underlying v4 if's */ uint_t gi_nv6; /* # of underlying v6 if's */ uint_t gi_mactype; /* DLPI mac type of group */ } lifgroupinfo_t; /* * OBSOLETE: Structure used in SIOCGIFCONF request. * Used to retrieve interface configuration * for machine (useful for programs which * must know all networks accessible). */ struct ifconf { int ifc_len; /* size of associated buffer */ union { caddr_t ifcu_buf; struct ifreq *ifcu_req; } ifc_ifcu; }; # 649 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" typedef struct if_data { /* generic interface information */ uchar_t ifi_type; /* ethernet, tokenring, etc */ uchar_t ifi_addrlen; /* media address length */ uchar_t ifi_hdrlen; /* media header length */ uint_t ifi_mtu; /* maximum transmission unit */ uint_t ifi_metric; /* routing metric (external only) */ uint_t ifi_baudrate; /* linespeed */ /* volatile statistics */ uint_t ifi_ipackets; /* packets received on interface */ uint_t ifi_ierrors; /* input errors on interface */ uint_t ifi_opackets; /* packets sent on interface */ uint_t ifi_oerrors; /* output errors on interface */ uint_t ifi_collisions; /* collisions on csma interfaces */ uint_t ifi_ibytes; /* total number of octets received */ uint_t ifi_obytes; /* total number of octets sent */ uint_t ifi_imcasts; /* packets received via multicast */ uint_t ifi_omcasts; /* packets sent via multicast */ uint_t ifi_iqdrops; /* dropped on input, this interface */ uint_t ifi_noproto; /* destined for unsupported protocol */ struct timeval ifi_lastchange; /* last updated */ } if_data_t; /* * Message format for use in obtaining information about interfaces * from the routing socket */ typedef struct if_msghdr { ushort_t ifm_msglen; /* to skip over non-understood messages */ uchar_t ifm_version; /* future binary compatibility */ uchar_t ifm_type; /* message type */ int ifm_addrs; /* like rtm_addrs */ int ifm_flags; /* value of if_flags */ ushort_t ifm_index; /* index for associated ifp */ struct if_data ifm_data; /* statistics and other data about if */ } if_msghdr_t; /* * Message format for use in obtaining information about interface addresses * from the routing socket */ typedef struct ifa_msghdr { ushort_t ifam_msglen; /* to skip over non-understood messages */ uchar_t ifam_version; /* future binary compatibility */ uchar_t ifam_type; /* message type */ int ifam_addrs; /* like rtm_addrs */ int ifam_flags; /* route flags */ ushort_t ifam_index; /* index for associated ifp */ int ifam_metric; /* value of ipif_metric */ } ifa_msghdr_t; /* * The if_nameindex structure holds the interface index value about * a single interface. An array of this structure is used to return * all interfaces and indexes. */ struct if_nameindex { unsigned if_index; /* positive interface index */ char *if_name; /* if name, e.g. "en0" */ }; /* Interface index identification API definitions */ extern unsigned if_nametoindex(const char *); extern char *if_indextoname(unsigned, char *); extern struct if_nameindex *if_nameindex(void); extern void if_freenameindex(struct if_nameindex *); /* * If changing IF_MAX_INDEX to a value greater than UINT16_MAX, check if * struct sockaddr_dl needs to be modified as the interface index is placed * in this structure by the kernel. */ # 38 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ /* * Copyright (c) 1982, 1986 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that this notice is preserved and that due credit is given * to the University of California at Berkeley. The name of the University * may not be used to endorse or promote products derived from this * software without specific prior written permission. This software * is provided ``as is'' without express or implied warranty. */ /* * Constants and structures defined by the internet system, * according to following documents * * Internet ASSIGNED NUMBERS (RFC1700) and its successors: * http://www.iana.org/assignments/protocol-numbers * http://www.iana.org/assignments/port-numbers * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) * */ # 39 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/arpa/inet.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END * * Copyright 2014 Garrett D'Amore * * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * Portions of this source code were derived from Berkeley 4.3 BSD * under license from the Regents of the University of California. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/arpa/inet.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/arpa/inet.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 /* * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * Copyright 2011 Nexenta Systems, Inc. All rights reserved. */ /* * Copyright (c) 1982, 1986 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that this notice is preserved and that due credit is given * to the University of California at Berkeley. The name of the University * may not be used to endorse or promote products derived from this * software without specific prior written permission. This software * is provided ``as is'' without express or implied warranty. */ /* * Constants and structures defined by the internet system, * according to following documents * * Internet ASSIGNED NUMBERS (RFC1700) and its successors: * http://www.iana.org/assignments/protocol-numbers * http://www.iana.org/assignments/port-numbers * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) * */ # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/arpa/inet.h" 2 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/arpa/inet.h" /* * External definitions for * functions in inet(3N) */ extern int inet_net_pton(int, const char *, void *, size_t); extern boolean_t inet_matchaddr(const void *, const char *); extern int inet_pton(int, const char *, void *); extern const char *inet_ntop(int, const void *, char *, socklen_t); extern in_addr_t inet_addr(const char *); /* * With the introduction of CIDR the * following 4 routines are now considered to be Obsolete */ extern in_addr_t inet_lnaof(struct in_addr); extern struct in_addr inet_makeaddr(in_addr_t, in_addr_t); extern in_addr_t inet_netof(struct in_addr); extern in_addr_t inet_network(const char *); extern char *inet_neta(ulong_t, char *, size_t); extern char *inet_net_ntop(int, const void *, int, char *, size_t); extern char *inet_cidr_ntop(int, const void *, int, char *, size_t); extern int inet_cidr_pton(int, const char *, void *, int *); extern char *inet_ntoa(struct in_addr); extern int inet_aton(const char *, struct in_addr *); extern uint_t inet_nsap_addr(const char *, uchar_t *, int); extern char *inet_nsap_ntoa(int, const uchar_t *, char *); # 40 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/errno.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ /* * Copyright 1999-2003 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" /* * Error codes */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2000 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ /* All Rights Reserved */ /* * University Copyright- Copyright (c) 1982, 1986, 1988 * The Regents of the University of California * All Rights Reserved * * University Acknowledgment- Portions of this document are derived from * software developed by the University of California, Berkeley, and its * contributors. */ #pragma ident "%Z%%M% %I% %E% SMI" /* * Error codes */ # 102 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" /* Filesystem Quotas */ /* Convergent Error Returns */ # 116 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" /* Interprocess Robust Locks */ /* stream problems */ # 136 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" /* Interprocess Robust Locks */ # 148 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" /* shared library problems */ # 162 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" /* BSD Networking Software */ /* argument errors */ # 174 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" /* protocol family */ /* operational errors */ /* of reset */ /* XENIX has 135 - 142 */ # 198 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" /* SUN Network File System */ # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/errno.h" 2 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/errno.h" extern int *___errno(); # 41 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * Copyright (c) 2013 Gary Mills * * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * Copyright 2014 PALO, Richard. * * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ /* * An application should not include this header directly. Instead it * should be included only through the inclusion of other Sun headers. * * The contents of this header is limited to identifiers specified in the * C Standard. Any new identifiers specified in future amendments to the * C Standard must be placed in this header. If these new identifiers * are required to also be in the C++ Standard "std" namespace, then for * anything other than macro definitions, corresponding "using" directives * must also be added to . */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 /* * This file and its contents are supplied under the terms of the * Common Development and Distribution License ("CDDL"), version 1.0. * You may only use this file in accordance with the terms of version * 1.0 of the CDDL. * * A full copy of the text of the CDDL should have accompanied this * source. A copy of the CDDL is also available via the Internet at * http://www.illumos.org/license/CDDL. */ /* * Copyright 2014-2016 PALO, Richard. */ # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 2 unsigned char __mb_cur_max(void); # 65 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" typedef struct { int quot; int rem; } div_t; typedef struct { long quot; long rem; } ldiv_t; # 88 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" /* * wchar_t is a built-in type in standard C++ and as such is not * defined here when using standard C++. However, the GNU compiler * fixincludes utility nonetheless creates its own version of this * header for use by gcc and g++. In that version it adds a redundant * guard for __cplusplus. To avoid the creation of a gcc/g++ specific * header we need to include the following magic comment: * * we must use the C++ compiler's type * * The above comment should not be removed or changed until GNU * gcc/fixinc/inclhack.def is updated to bypass this header. */ typedef long wchar_t; # 120 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" extern void abort(void) __attribute__((__noreturn__)); extern int abs(int); extern int atexit(void (*)(void)); extern double atof(const char *); extern int atoi(const char *); extern long int atol(const char *); extern void *bsearch(const void *, const void *, size_t, size_t, int (*)(const void *, const void *)); extern void *calloc(size_t, size_t); extern div_t div(int, int); extern void exit(int) __attribute__((__noreturn__)); extern void free(void *); extern char *getenv(const char *); extern long int labs(long); extern ldiv_t ldiv(long, long); extern void *malloc(size_t); extern int mblen(const char *, size_t); extern size_t mbstowcs(wchar_t *, const char *, size_t); extern int mbtowc(wchar_t *, const char *, size_t); extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *)); extern int rand(void); extern void *realloc(void *, size_t); extern void srand(unsigned int); extern double strtod(const char *, char **); extern long int strtol(const char *, char **, int); extern unsigned long int strtoul(const char *, char **, int); extern int system(const char *); extern int wctomb(char *, wchar_t); extern size_t wcstombs(char *, const wchar_t *, size_t); # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c99.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * An application should not include this header directly. Instead it * should be included only through the inclusion of other Sun headers. * * The contents of this header is limited to identifiers specified in * the C99 standard and in conflict with the C++ implementation of the * standard header. The C++ standard may adopt the C99 standard at * which point it is expected that the symbols included here will * become part of the C++ std namespace. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c99.h" 2 /* * The following have been added as a result of the ISO/IEC 9899:1999 * standard. For a strictly conforming C application, visibility is * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h). * For non-strictly conforming C applications, there are no restrictions * on the C namespace. */ typedef struct { long long quot; long long rem; } lldiv_t; # 75 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c99.h" extern void _Exit(int); extern float strtof(const char *, char **); extern long double strtold(const char *, char **); extern long long atoll(const char *); extern long long llabs(long long); extern lldiv_t lldiv(long long, long long); extern long long strtoll(const char *, char **, int); extern unsigned long long strtoull(const char *, char **, int); # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c11.h" 1 /* * This file and its contents are supplied under the terms of the * Common Development and Distribution License ("CDDL"), version 1.0. * You may only use this file in accordance with the terms of version * 1.0 of the CDDL. * * A full copy of the text of the CDDL should have accompanied this * source. A copy of the CDDL is also available via the Internet at * http://www.illumos.org/license/CDDL. */ /* * Copyright 2016 Joyent, Inc. */ /* * An application should not include this header directly. Instead it * should be included only through the inclusion of other illumos headers. * * The contents of this header is limited to identifiers specified in * the C11 standard and in conflict with the C++ implementation of the * standard header. The C++ standard may adopt the C11 standard at * which point it is expected that the symbols included here will * become part of the C++ std namespace. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 31 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c11.h" 2 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c11.h" /* * The following have been added as a result of the ISO/IEC 9899:2011 * standard. For a strictly conforming C application, visibility is * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h). * For non-strictly conforming C applications, there are no restrictions * on the C namespace. */ /* * Work around fix-includes and other bad actors with using multiple headers. */ # 60 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c11.h" extern void *aligned_alloc(size_t, size_t); extern int at_quick_exit(void (*)(void)); extern void quick_exit(int); # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2 /* * Allow global visibility for symbols defined in * C++ "std" namespace in . */ # 83 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" /* * Allow global visibility for symbols defined in * C++ "std" namespace in . */ # 104 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" /* large file compilation environment setup */ # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" #pragma redefine_extname mkstemp mkstemp64 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" # 109 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" #pragma redefine_extname mkstemps mkstemps64 # 109 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" # 110 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" #pragma redefine_extname mkostemp mkostemp64 # 110 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" # 111 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" #pragma redefine_extname mkostemps mkostemps64 # 111 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" # 121 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" /* In the LP64 compilation environment, all APIs are already large file */ # 141 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" extern int rand_r(unsigned int *); extern void _exithandle(void); extern double drand48(void); extern double erand48(unsigned short *); extern long jrand48(unsigned short *); extern void lcong48(unsigned short *); extern long lrand48(void); extern long mrand48(void); extern long nrand48(unsigned short *); extern unsigned short *seed48(unsigned short *); extern void srand48(long); extern int putenv(char *); extern void setkey(const char *); /* * swab() has historically been in as delivered from AT&T * and continues to be visible in the default compilation environment. * As of Issue 4 of the X/Open Portability Guides, swab() was declared * in . As a result, with respect to X/Open namespace the * swab() declaration in this header is only visible for the XPG3 * environment. */ # 182 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" extern void swab(const char *, char *, ssize_t); extern int mkstemp(char *); extern int mkstemps(char *, int); extern int mkstemp64(char *); extern int mkstemps64(char *, int); extern char *mkdtemp(char *); extern int mkostemp(char *, int); extern int mkostemps(char *, int, int); extern int mkostemp64(char *, int); extern int mkostemps64(char *, int, int); extern long a64l(const char *); extern char *ecvt(double, int, int *, int *); extern char *fcvt(double, int, int *, int *); extern char *gcvt(double, int, char *); extern int getsubopt(char **, char *const *, char **); extern int grantpt(int); extern char *initstate(unsigned, char *, size_t); extern char *l64a(long); extern char *mktemp(char *); extern char *ptsname(int); extern long random(void); extern char *realpath(const char *, char *); extern char *setstate(const char *); extern void srandom(unsigned); extern int unlockpt(int); /* Marked LEGACY in SUSv2 and removed in SUSv3 */ extern int ttyslot(void); extern void *valloc(size_t); extern int posix_memalign(void **, size_t, size_t); extern int posix_openpt(int); extern int setenv(const char *, const char *, int); extern int unsetenv(const char *); extern char *canonicalize_file_name(const char *); extern int clearenv(void); extern void closefrom(int); extern int daemon(int, int); extern int dup2(int, int); extern int dup3(int, int, int); extern int fdwalk(int (*)(void *, int), void *); extern char *qecvt(long double, int, int *, int *); extern char *qfcvt(long double, int, int *, int *); extern char *qgcvt(long double, int, char *); extern char *getcwd(char *, size_t); extern const char *getexecname(void); # 278 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" extern int getopt(int, char *const *, const char *); extern char *optarg; extern int optind, opterr, optopt; extern char *getpass(const char *); extern char *getpassphrase(const char *); extern int getpw(uid_t, char *); extern int isatty(int); extern void *memalign(size_t, size_t); extern char *ttyname(int); extern char *mkdtemp(char *); extern const char *getprogname(void); extern void setprogname(const char *); extern char *lltostr(long long, char *); extern char *ulltostr(unsigned long long, char *); /* OpenBSD compatibility functions */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * This file, , is specified by the ISO C standard, * standard, ISO/IEC 9899:1999 Programming language - C and is * also defined by SUSv3. * * ISO International Organization for Standardization. * SUSv3 Single Unix Specification, Version 3 */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" /* * This header, , contains (through nested inclusion) the * vast majority of the facilities specified for as defined * by the ISO C Standard, ISO/IEC 9899:1999 Programming language - C. * * Kernel/Driver developers are encouraged to include this file to access * the fixed size types, limits and utility macros. Application developers * should use the standard defined header . */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * This file, , is part of the Sun Microsystems implementation * of as defined in the ISO C standard, ISO/IEC 9899:1999 * Programming language - C. * * Programs/Modules should not directly include this file. Access to the * types defined in this file should be through the inclusion of one of the * following files: * * This nested inclusion is disabled for strictly * ANSI-C conforming compilations. The *_MIN * definitions are not visible to POSIX or XPG * conforming applications (due to what may be * a bug in the specification - this is under * investigation) * * Provides the Kernel and Driver appropriate * components of . * * For use by applications. * * See these files for more details. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 57 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 2 /* * Limits * * The following define the limits for the types defined in . * * INTMAX_MIN (minimum value of the largest supported signed integer type), * INTMAX_MAX (maximum value of the largest supported signed integer type), * and UINTMAX_MAX (maximum value of the largest supported unsigned integer * type) can be set to implementation defined limits. * * NOTE : A programmer can test to see whether an implementation supports * a particular size of integer by testing if the macro that gives the * maximum for that datatype is defined. For example, if #ifdef UINT64_MAX * tests false, the implementation does not support unsigned 64 bit integers. * * The type of these macros is intentionally unspecified. * * The types int8_t, int_least8_t, and int_fast8_t are not defined for ISAs * where the ABI specifies "char" as unsigned when the translation mode is * not ANSI-C. */ # 141 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" /* * The following 2 macros are provided for testing whether the types * intptr_t and uintptr_t (integers large enough to hold a void *) are * defined in this header. They are needed in case the architecture can't * represent a pointer in any standard integral type. */ # 155 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" /* Maximum limits of ptrdiff_t defined in */ /* * Maximum value of a "size_t". SIZE_MAX was previously defined * in , however, the standards specify it be defined * in . The headers includes this header as * does . The value of SIZE_MAX should not deviate * from the value of ULONG_MAX defined . */ /* Maximum limit of sig_atomic_t defined in */ /* * Maximum limit of wchar_t. The WCHAR_* macros are also * defined in , but inclusion of that header * will break ISO/IEC C namespace. */ /* Maximum limit of wint_t */ /* * It is probably a bug in the POSIX specification (IEEE-1003.1-1990) that * when including that the suffix _MAX is reserved but not the * suffix _MIN. However, until that issue is resolved.... */ # 230 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" /* Minimum value of a pointer-holding signed integer type */ /* Minimum limits of ptrdiff_t defined in */ /* Minimum limit of sig_atomic_t defined in */ /* * Minimum limit of wchar_t. The WCHAR_* macros are also * defined in , but inclusion of that header * will break ISO/IEC C namespace. */ /* Minimum limit of wint_t */ # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * This file, , is part of the Sun Microsystems implementation * of as proposed in the ISO/JTC1/SC22/WG14 C committee's working * draft for the revision of the current ISO C standard, ISO/IEC 9899:1990 * Programming language - C. * * Programs/Modules should not directly include this file. Access to the * types defined in this file should be through the inclusion of one of the * following files: * * Provides the Kernel and Driver appropriate * components of . * * For use by applications. * * See these files for more details. * * Use at your own risk. This file will track the evolution of the revision * of the current ISO C standard. As of February 1996, the committee is * squarely behind the fixed sized types. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" 2 /* * Constants * * The following macros create constants of the types defined in * . The intent is that: * Constants defined using these macros have a specific size and * signedness. The suffix used for int64_t and uint64_t (ll and ull) * are for examples only. Implementations are permitted to use other * suffixes. * * The "CSTYLED" comments are flags to an internal code style analysis tool * telling it to silently accept the line which follows. This internal * standard requires a space between arguments, but the historical, * non-ANSI-C ``method'' of concatenation can't tolerate those spaces. */ /* CSTYLED */ # 86 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" /* CSTYLED */ /* CSTYLED */ /* CSTYLED */ /* CSTYLED */ /* CSTYLED */ # 114 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" /* CSTYLED */ /* CSTYLED */ # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * This file, , is part of the Sun Microsystems implementation * of as defined by the ISO C Standard, ISO/IEC 9899:1999 * Programming language - C. * * ISO International Organization for Standardization. * * Programs/Modules should not directly include this file. Access to the * types defined in this file should be through the inclusion of one of the * following files: * * Provides the Kernel and Driver appropriate * components of . * * For use by applications. * * See these files for more details. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 2 /* * Formatted I/O * * The following macros can be used even when an implementation has not * extended the printf/scanf family of functions. * * The form of the names of the macros is either "PRI" for printf specifiers * or "SCN" for scanf specifiers, followed by the conversion specifier letter * followed by the datatype size. For example, PRId32 is the macro for * the printf d conversion specifier with the flags for 32 bit datatype. * * An example using one of these macros: * * uint64_t u; * printf("u = %016" PRIx64 "\n", u); * * For the purpose of example, the definitions of the printf/scanf macros * below have the values appropriate for a machine with 8 bit shorts, 16 * bit shorts, 32 bit ints, 32 or 64 bit longs depending on compilation * mode, and 64 bit long longs. */ /* * fprintf macros for signed integers */ # 139 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" /* * fprintf macros for unsigned integers */ # 227 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" /* * fprintf macros for pointers */ # 247 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" /* * fscanf macros for signed integers */ # 282 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" /* * fscanf macros for unsigned integers */ # 349 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" /* * The following macros define I/O formats for intmax_t and uintmax_t. */ # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stdint.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #pragma ident "%Z%%M% %I% %E% SMI" /* * This header is included by which was introduced by * the ISO C Standard, ISO/IEC 9899:1999 Programming language - C. * The header is a subset of the header. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stdint.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stdint.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stdint.h" 2 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 2 /* Inclusion of breaks namespace, therefore define wchar_t */ /* * wchar_t is a built-in type in standard C++ and as such is not * defined here when using standard C++. However, the GNU compiler * fixincludes utility nonetheless creates its own version of this * header for use by gcc and g++. In that version it adds a redundant * guard for __cplusplus. To avoid the creation of a gcc/g++ specific * header we need to include the following magic comment: * * we must use the C++ compiler's type * * The above comment should not be removed or changed until GNU * gcc/fixinc/inclhack.def is updated to bypass this header. */ # 81 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" typedef struct { intmax_t quot; intmax_t rem; } imaxdiv_t; # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" extern intmax_t imaxabs(intmax_t); extern imaxdiv_t imaxdiv(intmax_t, intmax_t); extern intmax_t strtoimax(const char *, char **, int); extern uintmax_t strtoumax(const char *, char **, int); extern intmax_t wcstoimax(const wchar_t *, wchar_t **, int); extern uintmax_t wcstoumax(const wchar_t *, wchar_t **, int); # 302 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2 extern uint32_t arc4random(void); extern void arc4random_buf(void *, size_t); extern uint32_t arc4random_uniform(uint32_t); extern void freezero(void *, size_t); extern void *recallocarray(void *, size_t, size_t, size_t); # 42 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/string.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ /* * Copyright 2014 Garrett D'Amore * Copyright 2014 PALO, Richard. * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ /* * An application should not include this header directly. Instead it * should be included only through the inclusion of other Sun headers. * * The contents of this header is limited to identifiers specified in the * C Standard. Any new identifiers specified in future amendments to the * C Standard must be placed in this header. If these new identifiers * are required to also be in the C++ Standard "std" namespace, then for * anything other than macro definitions, corresponding "using" directives * must also be added to . */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2013 Garrett D'Amore * Copyright 2016 Joyent, Inc. * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 /* * This file and its contents are supplied under the terms of the * Common Development and Distribution License ("CDDL"), version 1.0. * You may only use this file in accordance with the terms of version * 1.0 of the CDDL. * * A full copy of the text of the CDDL should have accompanied this * source. A copy of the CDDL is also available via the Internet at * http://www.illumos.org/license/CDDL. */ /* * Copyright 2014-2016 PALO, Richard. */ # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" 2 # 69 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" extern int memcmp(const void *, const void *, size_t); extern void *memcpy(void *, const void *, size_t); extern void *memmove(void *, const void *, size_t); extern void *memset(void *, int, size_t); extern char *strcat(char *, const char *); extern int strcmp(const char *, const char *); extern char *strcpy(char *, const char *); extern int strcoll(const char *, const char *); extern size_t strcspn(const char *, const char *); extern char *strerror(int); extern size_t strlen(const char *); extern char *strncat(char *, const char *, size_t); extern int strncmp(const char *, const char *, size_t); extern char *strncpy(char *, const char *, size_t); extern size_t strspn(const char *, const char *); extern char *strtok(char *, const char *); extern size_t strxfrm(char *, const char *, size_t); /* * The C++ Standard (ISO/IEC 14882:1998) specifies that each of the * function signatures for the following functions be replaced by * two declarations, both of which have the same behavior. */ # 139 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" extern void *memchr(const void *, int, size_t); extern char *strchr(const char *, int); extern char *strpbrk(const char *, const char *); extern char *strrchr(const char *, int); extern char *strstr(const char *, const char *); # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/string.h" 2 /* * Allow global visibility for symbols defined in * C++ "std" namespace in . */ # 72 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/string.h" extern int strerror_r(int, char *, size_t); extern char *strtok_r(char *, const char *, char **); extern void *memccpy(void *, const void *, int, size_t); extern char *stpcpy(char *, const char *); extern char *stpncpy(char *, const char *, size_t); extern char *strndup(const char *, size_t); extern size_t strnlen(const char *, size_t); extern char *strsignal(int); extern int strcoll_l(const char *, const char *, locale_t); extern size_t strxfrm_l(char *, const char *, size_t, locale_t); extern int strcasecmp_l(const char *, const char *, locale_t); extern int strncasecmp_l(const char *, const char *, size_t, locale_t); extern char *strerror_l(int, locale_t); /* Note that some of these are also declared in strings.h for XPG4_2+ */ extern void explicit_bzero(void *, size_t); extern int uucopy(const void *, void *, size_t); extern int uucopystr(const void *, void *, size_t); extern int ffs(int); extern int ffsl(long); extern int ffsll(long long); extern int fls(int); extern int flsl(long); extern int flsll(long long); extern void *memmem(const void *, size_t, const void *, size_t); extern char *strcasestr(const char *, const char *); extern char *strnstr(const char *, const char *, size_t); extern size_t strlcpy(char *, const char *, size_t); extern size_t strlcat(char *, const char *, size_t); extern char *strsep(char **stringp, const char *delim); extern char *strchrnul(const char *, int); extern char *strcasestr_l(const char *, const char *, locale_t); extern int strcasecmp(const char *, const char *); extern int strncasecmp(const char *, const char *, size_t); extern char *strdup(const char *); /* * gcc provides this inlining facility but Studio C does not. * We should use it exclusively once Studio C also provides it. */ extern void *__builtin_alloca(size_t); # 43 "is_local_host.c" 2 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libintl.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2014 Garrett D'Amore * * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 /* * CDDL HEADER START * * The contents of this file are subject to the terms of the * Common Development and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. * See the License for the specific language governing permissions * and limitations under the License. * * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file at usr/src/OPENSOLARIS.LICENSE. * If applicable, add the following below this CDDL HEADER, with the * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ /* * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2016 Joyent, Inc. */ # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libintl.h" 2 /* * wchar_t is a built-in type in standard C++ and as such is not * defined here when using standard C++. However, the GNU compiler * fixincludes utility nonetheless creates its own version of this * header for use by gcc and g++. In that version it adds a redundant * guard for __cplusplus. To avoid the creation of a gcc/g++ specific * header we need to include the following magic comment: * * we must use the C++ compiler's type * * The above comment should not be removed or changed until GNU * gcc/fixinc/inclhack.def is updated to bypass this header. */ # 67 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libintl.h" extern char *dcgettext(const char *, const char *, const int); extern char *dgettext(const char *, const char *); extern char *gettext(const char *); extern char *textdomain(const char *); extern char *bindtextdomain(const char *, const char *); /* * LI18NUX 2000 Globalization Specification Version 1.0 * with Amendment 2 */ extern char *dcngettext(const char *, const char *, const char *, unsigned long int, int); extern char *dngettext(const char *, const char *, const char *, unsigned long int); extern char *ngettext(const char *, const char *, unsigned long int); extern char *bind_textdomain_codeset(const char *, const char *); /* Word handling functions --- requires dynamic linking */ /* Warning: these are experimental and subject to change. */ extern int wdinit(void); extern int wdchkind(wchar_t); extern int wdbindf(wchar_t, wchar_t, int); extern wchar_t *wddelim(wchar_t, wchar_t, int); extern wchar_t mcfiller(void); extern int mcwrap(void); # 44 "is_local_host.c" 2 static int is_local_if(struct hostent *hp); /* * Given a host name, check to see if it points to the local host. * If it does, return 1, else return 0. * * The strategy is this: translate the host name argument to a list of * addresses. Then compare each of those addresses to the addresses of * network interfaces on this host. */ int is_local_host(char *host) { struct hostent *hp; int err; int flags = (0x0001 | 0x0004); if (hp = getipnodebyname((const char *) host, 2, flags, &err)) if (is_local_if(hp)) return (1); if (hp = getipnodebyname((const char *) host, 26, flags, &err)) if (is_local_if(hp)) return (1); return (0); } static int is_local_if(struct hostent *hp) { char *buf; struct lifconf lifc; struct lifnum lifn; struct lifreq lifr; struct lifreq *lifrp; int bufsiz; int nha; int nif; int s; if ((s = socket(hp->h_addrtype, 1, 0)) == -1) { perror("socket"); return (0); } lifn.lifn_family = hp->h_addrtype; lifn.lifn_flags = 0x02; if (ioctl(s, ((int)((uint32_t)((0x80000000|0x40000000)|(((sizeof (struct lifnum))&0xff)<<16)| ('i'<<8)|130))), (char *)&lifn) == -1) { perror("SIOCGLIFNUM"); (void) close(s); return (0); } bufsiz = lifn.lifn_count * sizeof (struct lifreq); if ((buf = malloc(bufsiz)) == 0) { perror("malloc"); (void) close(s); return (0); } lifc.lifc_family = hp->h_addrtype; lifc.lifc_flags = 0x02; lifc.lifc_len = bufsiz; lifc.lifc_lifcu.lifcu_buf = buf; if (ioctl(s, ((int)((uint32_t)((0x80000000|0x40000000)|(((16)&0xff)<<16)| ('i'<<8)|165))), (char *)&lifc) == -1) { perror("SIOCGLIFCONF"); (void) close(s); free(buf); return (0); } for (lifrp = lifc.lifc_lifcu.lifcu_req, nif = lifc.lifc_len / sizeof (struct lifreq); nif > 0; nif--, lifrp++) { if (lifrp->lifr_lifru.lifru_addr.ss_family != hp->h_addrtype) { continue; } (void) memset(&lifr, 0, sizeof (lifr)); (void) strncpy(lifr.lifr_name, lifrp->lifr_name, sizeof (lifr.lifr_name)); if (ioctl(s, ((int)((uint32_t)((0x80000000|0x40000000)|(((sizeof (struct lifreq))&0xff)<<16)| ('i'<<8)|117))), (caddr_t)&lifr) == -1) { perror("SIOCGLIFFLAGS"); (void) close(s); free(buf); return (0); } for (nha = 0; hp->h_addr_list[nha]; nha++) { if (memcmp(hp->h_addr_list[nha], ((lifrp->lifr_lifru.lifru_addr.ss_family == 26) ? (void *) &((struct sockaddr_in6 *)&lifrp->lifr_lifru.lifru_addr)->sin6_addr : (void *) &((struct sockaddr_in *)&lifrp->lifr_lifru.lifru_addr)->sin_addr), hp->h_length) == 0) { (void) close(s); free(buf); return (1); } } } (void) close(s); free(buf); return (0); }