1 # 1 "../common/zones_paths.c" 2 # 1 "<built-in>" 3 # 1 "<command-line>" 4 # 1 "../common/zones_paths.c" 5 /* 6 * CDDL HEADER START 7 * 8 * The contents of this file are subject to the terms of the 9 * Common Development and Distribution License (the "License"). 10 * You may not use this file except in compliance with the License. 11 * 12 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 13 * or http://www.opensolaris.org/os/licensing. 14 * See the License for the specific language governing permissions 15 * and limitations under the License. 16 * 17 * When distributing Covered Code, include this CDDL HEADER in each 18 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19 * If applicable, add the following below this CDDL HEADER, with the 20 * fields enclosed by brackets "[]" replaced with your own identifying 21 * information: Portions Copyright [yyyy] [name of copyright owner] 22 * 23 * CDDL HEADER END 24 */ 25 26 /* 27 * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. 28 */ 29 30 31 32 /* 33 * System includes 34 */ 35 36 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1 37 /* 38 * CDDL HEADER START 39 * 40 * The contents of this file are subject to the terms of the 41 * Common Development and Distribution License (the "License"). 42 * You may not use this file except in compliance with the License. 43 * 44 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 45 * or http://www.opensolaris.org/os/licensing. 46 * See the License for the specific language governing permissions 47 * and limitations under the License. 48 * 49 * When distributing Covered Code, include this CDDL HEADER in each 50 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 51 * If applicable, add the following below this CDDL HEADER, with the 52 * fields enclosed by brackets "[]" replaced with your own identifying 53 * information: Portions Copyright [yyyy] [name of copyright owner] 54 * 55 * CDDL HEADER END 56 */ 57 58 /* 59 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 60 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 61 */ 62 63 /* Copyright (c) 1988 AT&T */ 64 /* All Rights Reserved */ 65 66 /* 67 * User-visible pieces of the ANSI C standard I/O package. 68 */ 69 70 71 72 73 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 74 /* 75 * CDDL HEADER START 76 * 77 * The contents of this file are subject to the terms of the 78 * Common Development and Distribution License (the "License"). 79 * You may not use this file except in compliance with the License. 80 * 81 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 82 * or http://www.opensolaris.org/os/licensing. 83 * See the License for the specific language governing permissions 84 * and limitations under the License. 85 * 86 * When distributing Covered Code, include this CDDL HEADER in each 87 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 88 * If applicable, add the following below this CDDL HEADER, with the 89 * fields enclosed by brackets "[]" replaced with your own identifying 90 * information: Portions Copyright [yyyy] [name of copyright owner] 91 * 92 * CDDL HEADER END 93 */ 94 95 /* 96 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 97 * Copyright 2016 Joyent, Inc. 98 * 99 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 100 * Use is subject to license terms. 101 */ 102 103 104 105 106 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ccompile.h" 1 107 /* 108 * CDDL HEADER START 109 * 110 * The contents of this file are subject to the terms of the 111 * Common Development and Distribution License, Version 1.0 only 112 * (the "License"). You may not use this file except in compliance 113 * with the License. 114 * 115 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 116 * or http://www.opensolaris.org/os/licensing. 117 * See the License for the specific language governing permissions 118 * and limitations under the License. 119 * 120 * When distributing Covered Code, include this CDDL HEADER in each 121 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 122 * If applicable, add the following below this CDDL HEADER, with the 123 * fields enclosed by brackets "[]" replaced with your own identifying 124 * information: Portions Copyright [yyyy] [name of copyright owner] 125 * 126 * CDDL HEADER END 127 */ 128 /* 129 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 130 * Use is subject to license terms. 131 */ 132 /* 133 * Copyright 2015 EveryCity Ltd. All rights reserved. 134 */ 135 136 137 138 139 /* 140 * This file contains definitions designed to enable different compilers 141 * to be used harmoniously on Solaris systems. 142 */ 143 144 145 146 147 148 /* 149 * Allow for version tests for compiler bugs and features. 150 */ 151 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ccompile.h" 152 /* 153 * analogous to lint's PRINTFLIKEn 154 */ 155 156 157 158 159 160 /* 161 * Handle the kernel printf routines that can take '%b' too 162 */ 163 # 78 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ccompile.h" 164 /* 165 * This one's pretty obvious -- the function never returns 166 */ 167 168 169 /* 170 * The function is 'extern inline' and expects GNU C89 behaviour, not C99 171 * behaviour. 172 * 173 * Should only be used on 'extern inline' definitions for GCC. 174 */ 175 176 177 178 179 180 181 /* 182 * The function has control flow such that it may return multiple times (in 183 * the manner of setjmp or vfork) 184 */ 185 186 187 188 189 190 191 /* 192 * This is an appropriate label for functions that do not 193 * modify their arguments, e.g. strlen() 194 */ 195 196 197 /* 198 * This is a stronger form of __pure__. Can be used for functions 199 * that do not modify their arguments and don't depend on global 200 * memory. 201 */ 202 203 204 205 206 /* 207 * This attribute, attached to a variable, means that the variable is meant to 208 * be possibly unused. GCC will not produce a warning for this variable. 209 */ 210 # 138 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ccompile.h" 211 /* 212 * Shorthand versions for readability 213 */ 214 # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 2 215 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 216 /* 217 * CDDL HEADER START 218 * 219 * The contents of this file are subject to the terms of the 220 * Common Development and Distribution License (the "License"). 221 * You may not use this file except in compliance with the License. 222 * 223 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 224 * or http://www.opensolaris.org/os/licensing. 225 * See the License for the specific language governing permissions 226 * and limitations under the License. 227 * 228 * 229 * When distributing Covered Code, include this CDDL HEADER in each 230 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 231 * If applicable, add the following below this CDDL HEADER, with the 232 * fields enclosed by brackets "[]" replaced with your own identifying 233 * information: Portions Copyright [yyyy] [name of copyright owner] 234 * 235 * CDDL HEADER END 236 */ 237 238 /* 239 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 240 * Use is subject to license terms. 241 * Copyright 2016 Joyent, Inc. 242 */ 243 244 245 246 247 /* 248 * This header file serves to group a set of well known defines and to 249 * set these for each instruction set architecture. These defines may 250 * be divided into two groups; characteristics of the processor and 251 * implementation choices for Solaris on a processor. 252 * 253 * Processor Characteristics: 254 * 255 * _LITTLE_ENDIAN / _BIG_ENDIAN: 256 * The natural byte order of the processor. A pointer to an int points 257 * to the least/most significant byte of that int. 258 * 259 * _STACK_GROWS_UPWARD / _STACK_GROWS_DOWNWARD: 260 * The processor specific direction of stack growth. A push onto the 261 * stack increases/decreases the stack pointer, so it stores data at 262 * successively higher/lower addresses. (Stackless machines ignored 263 * without regrets). 264 * 265 * _LONG_LONG_HTOL / _LONG_LONG_LTOH: 266 * A pointer to a long long points to the most/least significant long 267 * within that long long. 268 * 269 * _BIT_FIELDS_HTOL / _BIT_FIELDS_LTOH: 270 * The C compiler assigns bit fields from the high/low to the low/high end 271 * of an int (most to least significant vs. least to most significant). 272 * 273 * _IEEE_754: 274 * The processor (or supported implementations of the processor) 275 * supports the ieee-754 floating point standard. No other floating 276 * point standards are supported (or significant). Any other supported 277 * floating point formats are expected to be cased on the ISA processor 278 * symbol. 279 * 280 * _CHAR_IS_UNSIGNED / _CHAR_IS_SIGNED: 281 * The C Compiler implements objects of type `char' as `unsigned' or 282 * `signed' respectively. This is really an implementation choice of 283 * the compiler writer, but it is specified in the ABI and tends to 284 * be uniform across compilers for an instruction set architecture. 285 * Hence, it has the properties of a processor characteristic. 286 * 287 * _CHAR_ALIGNMENT / _SHORT_ALIGNMENT / _INT_ALIGNMENT / _LONG_ALIGNMENT / 288 * _LONG_LONG_ALIGNMENT / _DOUBLE_ALIGNMENT / _LONG_DOUBLE_ALIGNMENT / 289 * _POINTER_ALIGNMENT / _FLOAT_ALIGNMENT: 290 * The ABI defines alignment requirements of each of the primitive 291 * object types. Some, if not all, may be hardware requirements as 292 * well. The values are expressed in "byte-alignment" units. 293 * 294 * _MAX_ALIGNMENT: 295 * The most stringent alignment requirement as specified by the ABI. 296 * Equal to the maximum of all the above _XXX_ALIGNMENT values. 297 * 298 * _MAX_ALIGNMENT_TYPE: 299 * The name of the C type that has the value descried in _MAX_ALIGNMENT. 300 * 301 * _ALIGNMENT_REQUIRED: 302 * True or false (1 or 0) whether or not the hardware requires the ABI 303 * alignment. 304 * 305 * _LONG_LONG_ALIGNMENT_32 306 * The 32-bit ABI supported by a 64-bit kernel may have different 307 * alignment requirements for primitive object types. The value of this 308 * identifier is expressed in "byte-alignment" units. 309 * 310 * _HAVE_CPUID_INSN 311 * This indicates that the architecture supports the 'cpuid' 312 * instruction as defined by Intel. (Intel allows other vendors 313 * to extend the instruction for their own purposes.) 314 * 315 * 316 * Implementation Choices: 317 * 318 * _ILP32 / _LP64: 319 * This specifies the compiler data type implementation as specified in 320 * the relevant ABI. The choice between these is strongly influenced 321 * by the underlying hardware, but is not absolutely tied to it. 322 * Currently only two data type models are supported: 323 * 324 * _ILP32: 325 * Int/Long/Pointer are 32 bits. This is the historical UNIX 326 * and Solaris implementation. Due to its historical standing, 327 * this is the default case. 328 * 329 * _LP64: 330 * Long/Pointer are 64 bits, Int is 32 bits. This is the chosen 331 * implementation for 64-bit ABIs such as SPARC V9. 332 * 333 * _I32LPx: 334 * A compilation environment where 'int' is 32-bit, and 335 * longs and pointers are simply the same size. 336 * 337 * In all cases, Char is 8 bits and Short is 16 bits. 338 * 339 * _SUNOS_VTOC_8 / _SUNOS_VTOC_16 / _SVR4_VTOC_16: 340 * This specifies the form of the disk VTOC (or label): 341 * 342 * _SUNOS_VTOC_8: 343 * This is a VTOC form which is upwardly compatible with the 344 * SunOS 4.x disk label and allows 8 partitions per disk. 345 * 346 * _SUNOS_VTOC_16: 347 * In this format the incore vtoc image matches the ondisk 348 * version. It allows 16 slices per disk, and is not 349 * compatible with the SunOS 4.x disk label. 350 * 351 * Note that these are not the only two VTOC forms possible and 352 * additional forms may be added. One possible form would be the 353 * SVr4 VTOC form. The symbol for that is reserved now, although 354 * it is not implemented. 355 * 356 * _SVR4_VTOC_16: 357 * This VTOC form is compatible with the System V Release 4 358 * VTOC (as implemented on the SVr4 Intel and 3b ports) with 359 * 16 partitions per disk. 360 * 361 * 362 * _DMA_USES_PHYSADDR / _DMA_USES_VIRTADDR 363 * This describes the type of addresses used by system DMA: 364 * 365 * _DMA_USES_PHYSADDR: 366 * This type of DMA, used in the x86 implementation, 367 * requires physical addresses for DMA buffers. The 24-bit 368 * addresses used by some legacy boards is the source of the 369 * "low-memory" (<16MB) requirement for some devices using DMA. 370 * 371 * _DMA_USES_VIRTADDR: 372 * This method of DMA allows the use of virtual addresses for 373 * DMA transfers. 374 * 375 * _FIRMWARE_NEEDS_FDISK / _NO_FDISK_PRESENT 376 * This indicates the presence/absence of an fdisk table. 377 * 378 * _FIRMWARE_NEEDS_FDISK 379 * The fdisk table is required by system firmware. If present, 380 * it allows a disk to be subdivided into multiple fdisk 381 * partitions, each of which is equivalent to a separate, 382 * virtual disk. This enables the co-existence of multiple 383 * operating systems on a shared hard disk. 384 * 385 * _NO_FDISK_PRESENT 386 * If the fdisk table is absent, it is assumed that the entire 387 * media is allocated for a single operating system. 388 * 389 * _HAVE_TEM_FIRMWARE 390 * Defined if this architecture has the (fallback) option of 391 * using prom_* calls for doing I/O if a suitable kernel driver 392 * is not available to do it. 393 * 394 * _DONT_USE_1275_GENERIC_NAMES 395 * Controls whether or not device tree node names should 396 * comply with the IEEE 1275 "Generic Names" Recommended 397 * Practice. With _DONT_USE_GENERIC_NAMES, device-specific 398 * names identifying the particular device will be used. 399 * 400 * __i386_COMPAT 401 * This indicates whether the i386 ABI is supported as a *non-native* 402 * mode for the platform. When this symbol is defined: 403 * - 32-bit xstat-style system calls are enabled 404 * - 32-bit xmknod-style system calls are enabled 405 * - 32-bit system calls use i386 sizes -and- alignments 406 * 407 * Note that this is NOT defined for the i386 native environment! 408 * 409 * __x86 410 * This is ONLY a synonym for defined(__i386) || defined(__amd64) 411 * which is useful only insofar as these two architectures share 412 * common attributes. Analogous to __sparc. 413 * 414 * _PSM_MODULES 415 * This indicates whether or not the implementation uses PSM 416 * modules for processor support, reading /etc/mach from inside 417 * the kernel to extract a list. 418 * 419 * _RTC_CONFIG 420 * This indicates whether or not the implementation uses /etc/rtc_config 421 * to configure the real-time clock in the kernel. 422 * 423 * _UNIX_KRTLD 424 * This indicates that the implementation uses a dynamically 425 * linked unix + krtld to form the core kernel image at boot 426 * time, or (in the absence of this symbol) a prelinked kernel image. 427 * 428 * _OBP 429 * This indicates the firmware interface is OBP. 430 * 431 * _SOFT_HOSTID 432 * This indicates that the implementation obtains the hostid 433 * from the file /etc/hostid, rather than from hardware. 434 */ 435 436 437 438 439 440 /* 441 * The following set of definitions characterize Solaris on AMD's 442 * 64-bit systems. 443 */ 444 # 239 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 445 /* 446 * Define the appropriate "processor characteristics" 447 */ 448 # 265 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 449 /* 450 * Different alignment constraints for the i386 ABI in compatibility mode 451 */ 452 453 454 /* 455 * Define the appropriate "implementation choices". 456 */ 457 # 290 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 458 /* 459 * The feature test macro __i386 is generic for all processors implementing 460 * the Intel 386 instruction set or a superset of it. Specifically, this 461 * includes all members of the 386, 486, and Pentium family of processors. 462 */ 463 # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 2 464 465 466 467 468 469 /* 470 * Values of _POSIX_C_SOURCE 471 * 472 * undefined not a POSIX compilation 473 * 1 POSIX.1-1990 compilation 474 * 2 POSIX.2-1992 compilation 475 * 199309L POSIX.1b-1993 compilation (Real Time) 476 * 199506L POSIX.1c-1995 compilation (POSIX Threads) 477 * 200112L POSIX.1-2001 compilation (Austin Group Revision) 478 * 200809L POSIX.1-2008 compilation 479 */ 480 481 482 483 484 /* 485 * The feature test macros __XOPEN_OR_POSIX, _STRICT_STDC, _STRICT_SYMBOLS, 486 * and _STDC_C99 are Sun implementation specific macros created in order to 487 * compress common standards specified feature test macros for easier reading. 488 * These macros should not be used by the application developer as 489 * unexpected results may occur. Instead, the user should reference 490 * standards(5) for correct usage of the standards feature test macros. 491 * 492 * __XOPEN_OR_POSIX Used in cases where a symbol is defined by both 493 * X/Open or POSIX or in the negative, when neither 494 * X/Open or POSIX defines a symbol. 495 * 496 * _STRICT_STDC __STDC__ is specified by the C Standards and defined 497 * by the compiler. For Sun compilers the value of 498 * __STDC__ is either 1, 0, or not defined based on the 499 * compilation mode (see cc(1)). When the value of 500 * __STDC__ is 1 and in the absence of any other feature 501 * test macros, the namespace available to the application 502 * is limited to only those symbols defined by the C 503 * Standard. _STRICT_STDC provides a more readable means 504 * of identifying symbols defined by the standard, or in 505 * the negative, symbols that are extensions to the C 506 * Standard. See additional comments for GNU C differences. 507 * 508 * _STDC_C99 __STDC_VERSION__ is specified by the C standards and 509 * defined by the compiler and indicates the version of 510 * the C standard. A value of 199901L indicates a 511 * compiler that complies with ISO/IEC 9899:1999, other- 512 * wise known as the C99 standard. 513 * 514 * _STDC_C11 Like _STDC_C99 except that the value of __STDC_VERSION__ 515 * is 201112L indicating a compiler that compiles with 516 * ISO/IEXC 9899:2011, otherwise known as the C11 standard. 517 * 518 * _STRICT_SYMBOLS Used in cases where symbol visibility is restricted 519 * by the standards, and the user has not explicitly 520 * relaxed the strictness via __EXTENSIONS__. 521 */ 522 523 524 525 526 527 /* 528 * ISO/IEC 9899:1990 and it's revisions, ISO/IEC 9899:1999 and ISO/IEC 529 * 99899:2011 specify the following predefined macro name: 530 * 531 * __STDC__ The integer constant 1, intended to indicate a conforming 532 * implementation. 533 * 534 * Furthermore, a strictly conforming program shall use only those features 535 * of the language and library specified in these standards. A conforming 536 * implementation shall accept any strictly conforming program. 537 * 538 * Based on these requirements, Sun's C compiler defines __STDC__ to 1 for 539 * strictly conforming environments and __STDC__ to 0 for environments that 540 * use ANSI C semantics but allow extensions to the C standard. For non-ANSI 541 * C semantics, Sun's C compiler does not define __STDC__. 542 * 543 * The GNU C project interpretation is that __STDC__ should always be defined 544 * to 1 for compilation modes that accept ANSI C syntax regardless of whether 545 * or not extensions to the C standard are used. Violations of conforming 546 * behavior are conditionally flagged as warnings via the use of the 547 * -pedantic option. In addition to defining __STDC__ to 1, the GNU C 548 * compiler also defines __STRICT_ANSI__ as a means of specifying strictly 549 * conforming environments using the -ansi or -std=<standard> options. 550 * 551 * In the absence of any other compiler options, Sun and GNU set the value 552 * of __STDC__ as follows when using the following options: 553 * 554 * Value of __STDC__ __STRICT_ANSI__ 555 * 556 * cc -Xa (default) 0 undefined 557 * cc -Xt (transitional) 0 undefined 558 * cc -Xc (strictly conforming) 1 undefined 559 * cc -Xs (K&R C) undefined undefined 560 * 561 * gcc (default) 1 undefined 562 * gcc -ansi, -std={c89, c99,...) 1 defined 563 * gcc -traditional (K&R) undefined undefined 564 * 565 * The default compilation modes for Sun C compilers versus GNU C compilers 566 * results in a differing value for __STDC__ which results in a more 567 * restricted namespace when using Sun compilers. To allow both GNU and Sun 568 * interpretations to peacefully co-exist, we use the following Sun 569 * implementation _STRICT_STDC_ macro: 570 */ 571 # 150 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 572 /* 573 * Compiler complies with ISO/IEC 9899:1999 or ISO/IEC 9989:2011 574 */ 575 # 162 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 576 /* 577 * Use strict symbol visibility. 578 */ 579 580 581 582 583 584 /* 585 * Large file interfaces: 586 * 587 * _LARGEFILE_SOURCE 588 * 1 large file-related additions to POSIX 589 * interfaces requested (fseeko, etc.) 590 * _LARGEFILE64_SOURCE 591 * 1 transitional large-file-related interfaces 592 * requested (seek64, stat64, etc.) 593 * 594 * The corresponding announcement macros are respectively: 595 * _LFS_LARGEFILE 596 * _LFS64_LARGEFILE 597 * (These are set in <unistd.h>.) 598 * 599 * Requesting _LARGEFILE64_SOURCE implies requesting _LARGEFILE_SOURCE as 600 * well. 601 * 602 * The large file interfaces are made visible regardless of the initial values 603 * of the feature test macros under certain circumstances: 604 * - If no explicit standards-conforming environment is requested (neither 605 * of _POSIX_SOURCE nor _XOPEN_SOURCE is defined and the value of 606 * __STDC__ does not imply standards conformance). 607 * - Extended system interfaces are explicitly requested (__EXTENSIONS__ 608 * is defined). 609 * - Access to in-kernel interfaces is requested (_KERNEL or _KMEMUSER is 610 * defined). (Note that this dependency is an artifact of the current 611 * kernel implementation and may change in future releases.) 612 */ 613 # 210 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 614 /* 615 * Large file compilation environment control: 616 * 617 * The setting of _FILE_OFFSET_BITS controls the size of various file-related 618 * types and governs the mapping between file-related source function symbol 619 * names and the corresponding binary entry points. 620 * 621 * In the 32-bit environment, the default value is 32; if not set, set it to 622 * the default here, to simplify tests in other headers. 623 * 624 * In the 64-bit compilation environment, the only value allowed is 64. 625 */ 626 # 238 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 627 /* 628 * Use of _XOPEN_SOURCE 629 * 630 * The following X/Open specifications are supported: 631 * 632 * X/Open Portability Guide, Issue 3 (XPG3) 633 * X/Open CAE Specification, Issue 4 (XPG4) 634 * X/Open CAE Specification, Issue 4, Version 2 (XPG4v2) 635 * X/Open CAE Specification, Issue 5 (XPG5) 636 * Open Group Technical Standard, Issue 6 (XPG6), also referred to as 637 * IEEE Std. 1003.1-2001 and ISO/IEC 9945:2002. 638 * Open Group Technical Standard, Issue 7 (XPG7), also referred to as 639 * IEEE Std. 1003.1-2008 and ISO/IEC 9945:2009. 640 * 641 * XPG4v2 is also referred to as UNIX 95 (SUS or SUSv1). 642 * XPG5 is also referred to as UNIX 98 or the Single Unix Specification, 643 * Version 2 (SUSv2) 644 * XPG6 is the result of a merge of the X/Open and POSIX specifications 645 * and as such is also referred to as IEEE Std. 1003.1-2001 in 646 * addition to UNIX 03 and SUSv3. 647 * XPG7 is also referred to as UNIX 08 and SUSv4. 648 * 649 * When writing a conforming X/Open application, as per the specification 650 * requirements, the appropriate feature test macros must be defined at 651 * compile time. These are as follows. For more info, see standards(5). 652 * 653 * Feature Test Macro Specification 654 * ------------------------------------------------ ------------- 655 * _XOPEN_SOURCE XPG3 656 * _XOPEN_SOURCE && _XOPEN_VERSION = 4 XPG4 657 * _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED = 1 XPG4v2 658 * _XOPEN_SOURCE = 500 XPG5 659 * _XOPEN_SOURCE = 600 (or POSIX_C_SOURCE=200112L) XPG6 660 * _XOPEN_SOURCE = 700 (or POSIX_C_SOURCE=200809L) XPG7 661 * 662 * In order to simplify the guards within the headers, the following 663 * implementation private test macros have been created. Applications 664 * must NOT use these private test macros as unexpected results will 665 * occur. 666 * 667 * Note that in general, the use of these private macros is cumulative. 668 * For example, the use of _XPG3 with no other restrictions on the X/Open 669 * namespace will make the symbols visible for XPG3 through XPG6 670 * compilation environments. The use of _XPG4_2 with no other X/Open 671 * namespace restrictions indicates that the symbols were introduced in 672 * XPG4v2 and are therefore visible for XPG4v2 through XPG6 compilation 673 * environments, but not for XPG3 or XPG4 compilation environments. 674 * 675 * _XPG3 X/Open Portability Guide, Issue 3 (XPG3) 676 * _XPG4 X/Open CAE Specification, Issue 4 (XPG4) 677 * _XPG4_2 X/Open CAE Specification, Issue 4, Version 2 (XPG4v2/UNIX 95/SUS) 678 * _XPG5 X/Open CAE Specification, Issue 5 (XPG5/UNIX 98/SUSv2) 679 * _XPG6 Open Group Technical Standard, Issue 6 (XPG6/UNIX 03/SUSv3) 680 * _XPG7 Open Group Technical Standard, Issue 7 (XPG7/UNIX 08/SUSv4) 681 */ 682 683 /* X/Open Portability Guide, Issue 3 */ 684 # 341 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 685 /* 686 * _XOPEN_VERSION is defined by the X/Open specifications and is not 687 * normally defined by the application, except in the case of an XPG4 688 * application. On the implementation side, _XOPEN_VERSION defined with 689 * the value of 3 indicates an XPG3 application. _XOPEN_VERSION defined 690 * with the value of 4 indicates an XPG4 or XPG4v2 (UNIX 95) application. 691 * _XOPEN_VERSION defined with a value of 500 indicates an XPG5 (UNIX 98) 692 * application and with a value of 600 indicates an XPG6 (UNIX 03) 693 * application and with a value of 700 indicates an XPG7 (UNIX 08). 694 * The appropriate version is determined by the use of the 695 * feature test macros described earlier. The value of _XOPEN_VERSION 696 * defaults to 3 otherwise indicating support for XPG3 applications. 697 */ 698 # 368 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 699 /* 700 * ANSI C and ISO 9899:1990 say the type long long doesn't exist in strictly 701 * conforming environments. ISO 9899:1999 says it does. 702 * 703 * The presence of _LONGLONG_TYPE says "long long exists" which is therefore 704 * defined in all but strictly conforming environments that disallow it. 705 */ 706 # 388 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 707 /* 708 * The following macro defines a value for the ISO C99 restrict 709 * keyword so that _RESTRICT_KYWD resolves to "restrict" if 710 * an ISO C99 compiler is used, "__restrict" for c++ and "" (null string) 711 * if any other compiler is used. This allows for the use of single 712 * prototype declarations regardless of compiler version. 713 */ 714 # 410 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 715 /* 716 * The following macro defines a value for the ISO C11 _Noreturn 717 * keyword so that _NORETURN_KYWD resolves to "_Noreturn" if 718 * an ISO C11 compiler is used and "" (null string) if any other 719 * compiler is used. This allows for the use of single prototype 720 * declarations regardless of compiler version. 721 */ 722 723 724 725 726 727 728 729 /* 730 * The following macro indicates header support for the ANSI C++ 731 * standard. The ISO/IEC designation for this is ISO/IEC FDIS 14882. 732 */ 733 734 735 /* 736 * The following macro indicates header support for the C99 standard, 737 * ISO/IEC 9899:1999, Programming Languages - C. 738 */ 739 740 741 /* 742 * The following macro indicates header support for the C99 standard, 743 * ISO/IEC 9899:2011, Programming Languages - C. 744 */ 745 746 747 /* 748 * The following macro indicates header support for DTrace. The value is an 749 * integer that corresponds to the major version number for DTrace. 750 */ 751 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 2 752 753 754 755 756 757 /* 758 * Do all of our 'redefine_extname' processing before 759 * declarations of the associated functions are seen. 760 * This is necessary to keep gcc happy. 761 */ 762 763 764 /* large file compilation environment setup */ 765 # 63 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 766 /* In the LP64 compilation environment, all APIs are already large file */ 767 768 769 # 65 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 770 #pragma redefine_extname fopen64 fopen 771 # 65 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 772 773 774 # 66 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 775 #pragma redefine_extname freopen64 freopen 776 # 66 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 777 778 779 # 67 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 780 #pragma redefine_extname tmpfile64 tmpfile 781 # 67 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 782 783 784 # 68 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 785 #pragma redefine_extname fgetpos64 fgetpos 786 # 68 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 787 788 789 # 69 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 790 #pragma redefine_extname fsetpos64 fsetpos 791 # 69 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 792 793 794 795 # 71 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 796 #pragma redefine_extname fseeko64 fseeko 797 # 71 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 798 799 800 # 72 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 801 #pragma redefine_extname ftello64 ftello 802 # 72 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 803 # 82 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 804 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 1 805 /* 806 * CDDL HEADER START 807 * 808 * The contents of this file are subject to the terms of the 809 * Common Development and Distribution License, Version 1.0 only 810 * (the "License"). You may not use this file except in compliance 811 * with the License. 812 * 813 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 814 * or http://www.opensolaris.org/os/licensing. 815 * See the License for the specific language governing permissions 816 * and limitations under the License. 817 * 818 * When distributing Covered Code, include this CDDL HEADER in each 819 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 820 * If applicable, add the following below this CDDL HEADER, with the 821 * fields enclosed by brackets "[]" replaced with your own identifying 822 * information: Portions Copyright [yyyy] [name of copyright owner] 823 * 824 * CDDL HEADER END 825 */ 826 /* 827 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 828 * Copyright 2014 PALO, Richard. 829 * 830 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 831 * Use is subject to license terms. 832 */ 833 834 /* Copyright (c) 1988 AT&T */ 835 /* All Rights Reserved */ 836 837 /* 838 * An application should not include this header directly. Instead it 839 * should be included only through the inclusion of other Sun headers. 840 * 841 * The contents of this header is limited to identifiers specified in the 842 * C Standard. Any new identifiers specified in future amendments to the 843 * C Standard must be placed in this header. If these new identifiers 844 * are required to also be in the C++ Standard "std" namespace, then for 845 * anything other than macro definitions, corresponding "using" directives 846 * must also be added to <stdio.h>. 847 */ 848 849 /* 850 * User-visible pieces of the ANSI C standard I/O package. 851 */ 852 853 854 855 856 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 857 /* 858 * CDDL HEADER START 859 * 860 * The contents of this file are subject to the terms of the 861 * Common Development and Distribution License (the "License"). 862 * You may not use this file except in compliance with the License. 863 * 864 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 865 * or http://www.opensolaris.org/os/licensing. 866 * See the License for the specific language governing permissions 867 * and limitations under the License. 868 * 869 * When distributing Covered Code, include this CDDL HEADER in each 870 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 871 * If applicable, add the following below this CDDL HEADER, with the 872 * fields enclosed by brackets "[]" replaced with your own identifying 873 * information: Portions Copyright [yyyy] [name of copyright owner] 874 * 875 * CDDL HEADER END 876 */ 877 878 /* 879 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 880 * Copyright 2016 Joyent, Inc. 881 * 882 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 883 * Use is subject to license terms. 884 */ 885 # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 886 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 887 /* 888 * This file and its contents are supplied under the terms of the 889 * Common Development and Distribution License ("CDDL"), version 1.0. 890 * You may only use this file in accordance with the terms of version 891 * 1.0 of the CDDL. 892 * 893 * A full copy of the text of the CDDL should have accompanied this 894 * source. A copy of the CDDL is also available via the Internet at 895 * http://www.illumos.org/license/CDDL. 896 */ 897 898 /* 899 * Copyright 2014-2016 PALO, Richard. 900 */ 901 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 902 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_list.h" 1 903 /* 904 * CDDL HEADER START 905 * 906 * The contents of this file are subject to the terms of the 907 * Common Development and Distribution License, Version 1.0 only 908 * (the "License"). You may not use this file except in compliance 909 * with the License. 910 * 911 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 912 * or http://www.opensolaris.org/os/licensing. 913 * See the License for the specific language governing permissions 914 * and limitations under the License. 915 * 916 * When distributing Covered Code, include this CDDL HEADER in each 917 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 918 * If applicable, add the following below this CDDL HEADER, with the 919 * fields enclosed by brackets "[]" replaced with your own identifying 920 * information: Portions Copyright [yyyy] [name of copyright owner] 921 * 922 * CDDL HEADER END 923 */ 924 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 925 /* All Rights Reserved */ 926 927 928 /* 929 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 930 * 931 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 932 * Use is subject to license terms. 933 */ 934 935 936 937 938 /* 939 * An application should not include this header directly. Instead it 940 * should be included only through the inclusion of other Sun headers. 941 * 942 * The purpose of this header is to provide the type definitions for 943 * the va_list argument used by a number of printf and printf like 944 * functions. The headers that define these various function prototypes 945 * #include this header directly. These include but are not necessarily 946 * limited to <stdio.h>, <stdio_iso.h>, <wchar_iso.h>, <strlog.h> and 947 * <syslog.h>. The type definitions included in this header are for 948 * the benefit of consumers of va_list. 949 * 950 * Any application that accepts variable argument lists must as documented, 951 * include either <varargs.h> or the preferred <stdarg.h>. Doing so will 952 * pull in the appropriate compiler protocols defined in <sys/va_impl.h> 953 * which is in turn is included by <varargs.h> and <stdarg.h>. See comments 954 * in <sys/va_impl.h> for more detailed information regarding implementation 955 * and compiler specific protocols. 956 */ 957 958 /* 959 * The common definitions exported by this header or compilers using 960 * this header are: 961 * 962 * the identifier __builtin_va_alist for the variable list pseudo parameter 963 * the type __va_alist_type for the variable list pseudo parameter 964 * the type __va_list defining the type of the variable list iterator 965 * 966 * The feature macros (e.g. __BUILTIN_VA_STRUCT) and compiler macros 967 * (__GNUC__) and processor macros (e.g. __amd64) are intended to be 968 * defined by the compilation system, not the user of the system. 969 */ 970 971 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 972 /* 973 * CDDL HEADER START 974 * 975 * The contents of this file are subject to the terms of the 976 * Common Development and Distribution License (the "License"). 977 * You may not use this file except in compliance with the License. 978 * 979 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 980 * or http://www.opensolaris.org/os/licensing. 981 * See the License for the specific language governing permissions 982 * and limitations under the License. 983 * 984 * 985 * When distributing Covered Code, include this CDDL HEADER in each 986 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 987 * If applicable, add the following below this CDDL HEADER, with the 988 * fields enclosed by brackets "[]" replaced with your own identifying 989 * information: Portions Copyright [yyyy] [name of copyright owner] 990 * 991 * CDDL HEADER END 992 */ 993 994 /* 995 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 996 * Use is subject to license terms. 997 * Copyright 2016 Joyent, Inc. 998 */ 999 # 70 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_list.h" 2 1000 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_list.h" 1001 typedef __builtin_va_list __gnuc_va_list; 1002 /* 1003 * XX64 This seems unnecessary .. but is needed because vcmn_err is 1004 * defined with __va_list instead of plain old va_list. 1005 * Perhaps that should be fixed! 1006 */ 1007 typedef __builtin_va_list __va_list; 1008 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 1009 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_tag.h" 1 1010 /* 1011 * CDDL HEADER START 1012 * 1013 * The contents of this file are subject to the terms of the 1014 * Common Development and Distribution License, Version 1.0 only 1015 * (the "License"). You may not use this file except in compliance 1016 * with the License. 1017 * 1018 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1019 * or http://www.opensolaris.org/os/licensing. 1020 * See the License for the specific language governing permissions 1021 * and limitations under the License. 1022 * 1023 * When distributing Covered Code, include this CDDL HEADER in each 1024 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1025 * If applicable, add the following below this CDDL HEADER, with the 1026 * fields enclosed by brackets "[]" replaced with your own identifying 1027 * information: Portions Copyright [yyyy] [name of copyright owner] 1028 * 1029 * CDDL HEADER END 1030 */ 1031 /* 1032 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 1033 * Use is subject to license terms. 1034 */ 1035 1036 1037 1038 1039 #pragma ident "%Z%%M% %I% %E% SMI" 1040 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_tag.h" 1041 typedef struct __FILE __FILE; 1042 # 56 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 1043 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_impl.h" 1 1044 /* 1045 * CDDL HEADER START 1046 * 1047 * The contents of this file are subject to the terms of the 1048 * Common Development and Distribution License (the "License"). 1049 * You may not use this file except in compliance with the License. 1050 * 1051 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1052 * or http://www.opensolaris.org/os/licensing. 1053 * See the License for the specific language governing permissions 1054 * and limitations under the License. 1055 * 1056 * When distributing Covered Code, include this CDDL HEADER in each 1057 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1058 * If applicable, add the following below this CDDL HEADER, with the 1059 * fields enclosed by brackets "[]" replaced with your own identifying 1060 * information: Portions Copyright [yyyy] [name of copyright owner] 1061 * 1062 * CDDL HEADER END 1063 */ 1064 1065 /* 1066 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 1067 * Use is subject to license terms. 1068 */ 1069 1070 1071 1072 1073 #pragma ident "%Z%%M% %I% %E% SMI" 1074 1075 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 1076 /* 1077 * CDDL HEADER START 1078 * 1079 * The contents of this file are subject to the terms of the 1080 * Common Development and Distribution License (the "License"). 1081 * You may not use this file except in compliance with the License. 1082 * 1083 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1084 * or http://www.opensolaris.org/os/licensing. 1085 * See the License for the specific language governing permissions 1086 * and limitations under the License. 1087 * 1088 * 1089 * When distributing Covered Code, include this CDDL HEADER in each 1090 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1091 * If applicable, add the following below this CDDL HEADER, with the 1092 * fields enclosed by brackets "[]" replaced with your own identifying 1093 * information: Portions Copyright [yyyy] [name of copyright owner] 1094 * 1095 * CDDL HEADER END 1096 */ 1097 1098 /* 1099 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 1100 * Use is subject to license terms. 1101 * Copyright 2016 Joyent, Inc. 1102 */ 1103 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_impl.h" 2 1104 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio_impl.h" 1105 struct __FILE { 1106 long __pad[16]; 1107 }; 1108 # 57 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 2 1109 1110 /* 1111 * If feature test macros are set that enable interfaces that use types 1112 * defined in <sys/types.h>, get those types by doing the include. 1113 * 1114 * Note that in asking for the interfaces associated with this feature test 1115 * macro one also asks for definitions of the POSIX types. 1116 */ 1117 # 93 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 1118 typedef __FILE FILE; 1119 1120 1121 1122 1123 1124 typedef unsigned long size_t; /* size of something in bytes */ 1125 1126 1127 1128 1129 1130 1131 typedef long fpos_t; 1132 # 117 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 1133 /* 1134 * The value of _NFILE is defined in the Processor Specific ABI. The value 1135 * is chosen for historical reasons rather than for truly processor related 1136 * attribute. Note that the SPARC Processor Specific ABI uses the common 1137 * UNIX historical value of 20 so it is allowed to fall through. 1138 */ 1139 # 156 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 1140 extern __FILE __iob[20]; 1141 # 191 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_iso.h" 1142 extern int remove(const char *); 1143 extern int rename(const char *, const char *); 1144 extern FILE *tmpfile(void); 1145 extern char *tmpnam(char *); 1146 extern int fclose(FILE *); 1147 extern int fflush(FILE *); 1148 extern FILE *fopen(const char *, const char *); 1149 extern FILE *freopen(const char *, 1150 const char *, FILE *); 1151 extern void setbuf(FILE *, char *); 1152 extern int setvbuf(FILE *, char *, int, 1153 size_t); 1154 /* PRINTFLIKE2 */ 1155 extern int fprintf(FILE *, const char *, ...); 1156 /* SCANFLIKE2 */ 1157 extern int fscanf(FILE *, const char *, ...); 1158 /* PRINTFLIKE1 */ 1159 extern int printf(const char *, ...); 1160 /* SCANFLIKE1 */ 1161 extern int scanf(const char *, ...); 1162 /* PRINTFLIKE2 */ 1163 extern int sprintf(char *, const char *, ...); 1164 /* SCANFLIKE2 */ 1165 extern int sscanf(const char *, 1166 const char *, ...); 1167 extern int vfprintf(FILE *, const char *, 1168 __va_list); 1169 extern int vprintf(const char *, __va_list); 1170 extern int vsprintf(char *, const char *, 1171 __va_list); 1172 extern int fgetc(FILE *); 1173 extern char *fgets(char *, int, FILE *); 1174 extern int fputc(int, FILE *); 1175 extern int fputs(const char *, FILE *); 1176 1177 1178 extern int getc(FILE *); 1179 extern int putc(int, FILE *); 1180 1181 1182 1183 extern int getchar(void); 1184 extern int putchar(int); 1185 1186 1187 /* 1188 * ISO/IEC C11 removed gets from the standard library. Therefore if a strict C11 1189 * environment has been requested, we remove it. 1190 */ 1191 1192 extern char *gets(char *); 1193 1194 extern int puts(const char *); 1195 extern int ungetc(int, FILE *); 1196 extern size_t fread(void *, size_t, size_t, 1197 FILE *); 1198 extern size_t fwrite(const void *, size_t, size_t, 1199 FILE *); 1200 1201 extern int fgetpos(FILE *, fpos_t *); 1202 extern int fsetpos(FILE *, const fpos_t *); 1203 1204 extern int fseek(FILE *, long, int); 1205 extern long ftell(FILE *); 1206 extern void rewind(FILE *); 1207 1208 1209 extern void clearerr(FILE *); 1210 extern int feof(FILE *); 1211 extern int ferror(FILE *); 1212 1213 extern void perror(const char *); 1214 # 83 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 2 1215 1216 /* 1217 * If feature test macros are set that enable interfaces that use types 1218 * defined in <sys/types.h>, get those types by doing the include. 1219 * 1220 * Note that in asking for the interfaces associated with this feature test 1221 * macro one also asks for definitions of the POSIX types. 1222 */ 1223 1224 /* 1225 * Allow global visibility for symbols defined in 1226 * C++ "std" namespace in <iso/stdio_iso.h>. 1227 */ 1228 # 147 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1229 /* 1230 * This header needs to be included here because it relies on the global 1231 * visibility of FILE and size_t in the C++ environment. 1232 */ 1233 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_c99.h" 1 1234 /* 1235 * CDDL HEADER START 1236 * 1237 * The contents of this file are subject to the terms of the 1238 * Common Development and Distribution License, Version 1.0 only 1239 * (the "License"). You may not use this file except in compliance 1240 * with the License. 1241 * 1242 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1243 * or http://www.opensolaris.org/os/licensing. 1244 * See the License for the specific language governing permissions 1245 * and limitations under the License. 1246 * 1247 * When distributing Covered Code, include this CDDL HEADER in each 1248 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1249 * If applicable, add the following below this CDDL HEADER, with the 1250 * fields enclosed by brackets "[]" replaced with your own identifying 1251 * information: Portions Copyright [yyyy] [name of copyright owner] 1252 * 1253 * CDDL HEADER END 1254 */ 1255 /* 1256 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 1257 * 1258 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 1259 * Use is subject to license terms. 1260 */ 1261 1262 /* 1263 * An application should not include this header directly. Instead it 1264 * should be included only through the inclusion of other Sun headers. 1265 * 1266 * The contents of this header is limited to identifiers specified in 1267 * the C99 standard and in conflict with the C++ implementation of the 1268 * standard header. The C++ standard may adopt the C99 standard at 1269 * which point it is expected that the symbols included here will 1270 * become part of the C++ std namespace. 1271 */ 1272 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_c99.h" 1273 /* 1274 * The following have been added as a result of the ISO/IEC 9899:1999 1275 * standard. For a strictly conforming C application, visibility is 1276 * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h). 1277 * For non-strictly conforming C applications, there are no restrictions 1278 * on the C namespace. 1279 */ 1280 # 74 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdio_c99.h" 1281 extern int vfscanf(FILE *, const char *, __va_list); 1282 extern int vscanf(const char *, __va_list); 1283 extern int vsscanf(const char *, const char *, 1284 __va_list); 1285 1286 1287 1288 1289 extern int snprintf(char *, size_t, const char *, 1290 ...); 1291 extern int vsnprintf(char *, size_t, const char *, 1292 __va_list); 1293 # 152 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 2 1294 # 161 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1295 typedef long off_t; 1296 1297 1298 1299 1300 1301 typedef off_t off64_t; 1302 # 177 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1303 typedef fpos_t fpos64_t; 1304 1305 1306 1307 1308 1309 /* 1310 * XPG4 requires that va_list be defined in <stdio.h> "as described in 1311 * <stdarg.h>". ANSI-C and POSIX require that the namespace of <stdio.h> 1312 * not be polluted with this name. 1313 */ 1314 # 198 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1315 /* Marked LEGACY in SUSv2 and removed in SUSv3 */ 1316 # 213 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1317 extern unsigned char _sibuf[], _sobuf[]; 1318 1319 1320 /* large file compilation environment setup */ 1321 # 241 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1322 /* In the LP64 compilation environment, all APIs are already large file */ 1323 # 259 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1324 typedef long ssize_t; /* size of something in bytes or -1 */ 1325 # 268 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1326 extern char *tmpnam_r(char *); 1327 1328 1329 1330 1331 extern int fcloseall(void); 1332 extern void setbuffer(FILE *, char *, size_t); 1333 extern int setlinebuf(FILE *); 1334 /* PRINTFLIKE2 */ 1335 extern int asprintf(char **, const char *, ...); 1336 /* PRINTFLIKE2 */ 1337 extern int vasprintf(char **, const char *, __va_list); 1338 1339 1340 1341 1342 /* || defined(_XPG7) */ 1343 extern ssize_t getdelim(char **, size_t *, 1344 int, FILE *); 1345 extern ssize_t getline(char **, size_t *, 1346 FILE *); 1347 1348 1349 /* 1350 * The following are known to POSIX and XOPEN, but not to ANSI-C. 1351 */ 1352 1353 1354 1355 extern FILE *fdopen(int, const char *); 1356 extern char *ctermid(char *); 1357 extern int fileno(FILE *); 1358 1359 1360 1361 /* 1362 * The following are known to POSIX.1c, but not to ANSI-C or XOPEN. 1363 */ 1364 # 318 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1365 /* 1366 * The following are known to XOPEN, but not to ANSI-C or POSIX. 1367 */ 1368 1369 1370 extern FILE *popen(const char *, const char *); 1371 extern char *tempnam(const char *, const char *); 1372 extern int pclose(FILE *); 1373 1374 extern int getsubopt(char **, char *const *, char **); 1375 1376 1377 /* Marked LEGACY in SUSv2 and removed in SUSv3 */ 1378 1379 extern char *cuserid(char *); 1380 extern int getopt(int, char *const *, const char *); 1381 extern char *optarg; 1382 extern int optind, opterr, optopt; 1383 extern int getw(FILE *); 1384 extern int putw(int, FILE *); 1385 1386 1387 1388 1389 /* 1390 * The following are defined as part of the Large File Summit interfaces. 1391 */ 1392 1393 extern int fseeko(FILE *, off_t, int); 1394 extern off_t ftello(FILE *); 1395 1396 1397 /* 1398 * The following are defined as part of the transitional Large File Summit 1399 * interfaces. 1400 */ 1401 1402 1403 extern FILE *fopen64(const char *, const char *); 1404 extern FILE *freopen64(const char *, const char *, FILE *); 1405 extern FILE *tmpfile64(void); 1406 extern int fgetpos64(FILE *, fpos64_t *); 1407 extern int fsetpos64(FILE *, const fpos64_t *); 1408 extern int fseeko64(FILE *, off64_t, int); 1409 extern off64_t ftello64(FILE *); 1410 1411 1412 /* 1413 * XPG7 symbols 1414 */ 1415 1416 extern FILE *fmemopen(void *, size_t, 1417 const char *); 1418 extern FILE *open_memstream(char **, size_t *); 1419 # 33 "../common/zones_paths.c" 2 1420 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1 1421 /* 1422 * CDDL HEADER START 1423 * 1424 * The contents of this file are subject to the terms of the 1425 * Common Development and Distribution License (the "License"). 1426 * You may not use this file except in compliance with the License. 1427 * 1428 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1429 * or http://www.opensolaris.org/os/licensing. 1430 * See the License for the specific language governing permissions 1431 * and limitations under the License. 1432 * 1433 * When distributing Covered Code, include this CDDL HEADER in each 1434 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1435 * If applicable, add the following below this CDDL HEADER, with the 1436 * fields enclosed by brackets "[]" replaced with your own identifying 1437 * information: Portions Copyright [yyyy] [name of copyright owner] 1438 * 1439 * CDDL HEADER END 1440 */ 1441 1442 /* 1443 * Copyright (c) 2013 Gary Mills 1444 * 1445 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 1446 * Use is subject to license terms. 1447 */ 1448 1449 /* Copyright (c) 1988 AT&T */ 1450 /* All Rights Reserved */ 1451 1452 1453 1454 1455 1456 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 1457 /* 1458 * CDDL HEADER START 1459 * 1460 * The contents of this file are subject to the terms of the 1461 * Common Development and Distribution License (the "License"). 1462 * You may not use this file except in compliance with the License. 1463 * 1464 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1465 * or http://www.opensolaris.org/os/licensing. 1466 * See the License for the specific language governing permissions 1467 * and limitations under the License. 1468 * 1469 * When distributing Covered Code, include this CDDL HEADER in each 1470 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1471 * If applicable, add the following below this CDDL HEADER, with the 1472 * fields enclosed by brackets "[]" replaced with your own identifying 1473 * information: Portions Copyright [yyyy] [name of copyright owner] 1474 * 1475 * CDDL HEADER END 1476 */ 1477 1478 /* 1479 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 1480 * Copyright 2016 Joyent, Inc. 1481 * 1482 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 1483 * Use is subject to license terms. 1484 */ 1485 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 2 1486 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 1487 /* 1488 * CDDL HEADER START 1489 * 1490 * The contents of this file are subject to the terms of the 1491 * Common Development and Distribution License (the "License"). 1492 * You may not use this file except in compliance with the License. 1493 * 1494 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1495 * or http://www.opensolaris.org/os/licensing. 1496 * See the License for the specific language governing permissions 1497 * and limitations under the License. 1498 * 1499 * 1500 * When distributing Covered Code, include this CDDL HEADER in each 1501 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1502 * If applicable, add the following below this CDDL HEADER, with the 1503 * fields enclosed by brackets "[]" replaced with your own identifying 1504 * information: Portions Copyright [yyyy] [name of copyright owner] 1505 * 1506 * CDDL HEADER END 1507 */ 1508 1509 /* 1510 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 1511 * Use is subject to license terms. 1512 * Copyright 2016 Joyent, Inc. 1513 */ 1514 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 2 1515 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/limits_iso.h" 1 1516 /* 1517 * CDDL HEADER START 1518 * 1519 * The contents of this file are subject to the terms of the 1520 * Common Development and Distribution License, Version 1.0 only 1521 * (the "License"). You may not use this file except in compliance 1522 * with the License. 1523 * 1524 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1525 * or http://www.opensolaris.org/os/licensing. 1526 * See the License for the specific language governing permissions 1527 * and limitations under the License. 1528 * 1529 * When distributing Covered Code, include this CDDL HEADER in each 1530 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1531 * If applicable, add the following below this CDDL HEADER, with the 1532 * fields enclosed by brackets "[]" replaced with your own identifying 1533 * information: Portions Copyright [yyyy] [name of copyright owner] 1534 * 1535 * CDDL HEADER END 1536 */ 1537 /* 1538 * Copyright 2003 Sun Microsystems, Inc. All rights reserved. 1539 * Use is subject to license terms. 1540 */ 1541 1542 /* Copyright (c) 1988 AT&T */ 1543 /* All Rights Reserved */ 1544 1545 1546 /* 1547 * An application should not include this header directly. Instead it 1548 * should be included only through the inclusion of other Sun headers. 1549 * 1550 * The contents of this header is limited to identifiers specified in the 1551 * C Standard. Any new identifiers specified in future amendments to the 1552 * C Standard must be placed in this header. If these new identifiers 1553 * are required to also be in the C++ Standard "std" namespace, then for 1554 * anything other than macro definitions, corresponding "using" directives 1555 * must also be added to <limits.h>. 1556 */ 1557 1558 1559 1560 1561 #pragma ident "%Z%%M% %I% %E% SMI" 1562 1563 1564 1565 1566 1567 /* 1568 * Sizes of integral types 1569 */ 1570 # 80 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/limits_iso.h" 1571 /* min value of a "long int" */ 1572 1573 /* max value of a "long int" */ 1574 1575 /* max value of "unsigned long int" */ 1576 # 93 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/limits_iso.h" 1577 /* min value of a long long */ 1578 1579 /* max value of a long long */ 1580 1581 /* max value of "unsigned long long */ 1582 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 2 1583 1584 /* 1585 * Include fixed width type limits as proposed by the ISO/JTC1/SC22/WG14 C 1586 * committee's working draft for the revision of the current ISO C standard, 1587 * ISO/IEC 9899:1990 Programming language - C. These are not currently 1588 * required by any standard but constitute a useful, general purpose set 1589 * of type definitions and limits which is namespace clean with respect to 1590 * all standards. 1591 */ 1592 1593 1594 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 1 1595 /* 1596 * CDDL HEADER START 1597 * 1598 * The contents of this file are subject to the terms of the 1599 * Common Development and Distribution License, Version 1.0 only 1600 * (the "License"). You may not use this file except in compliance 1601 * with the License. 1602 * 1603 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1604 * or http://www.opensolaris.org/os/licensing. 1605 * See the License for the specific language governing permissions 1606 * and limitations under the License. 1607 * 1608 * When distributing Covered Code, include this CDDL HEADER in each 1609 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1610 * If applicable, add the following below this CDDL HEADER, with the 1611 * fields enclosed by brackets "[]" replaced with your own identifying 1612 * information: Portions Copyright [yyyy] [name of copyright owner] 1613 * 1614 * CDDL HEADER END 1615 */ 1616 /* 1617 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 1618 * 1619 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 1620 * Use is subject to license terms. 1621 */ 1622 1623 1624 1625 1626 /* 1627 * This file, <sys/int_limits.h>, is part of the Sun Microsystems implementation 1628 * of <inttypes.h> as defined in the ISO C standard, ISO/IEC 9899:1999 1629 * Programming language - C. 1630 * 1631 * Programs/Modules should not directly include this file. Access to the 1632 * types defined in this file should be through the inclusion of one of the 1633 * following files: 1634 * 1635 * <limits.h> This nested inclusion is disabled for strictly 1636 * ANSI-C conforming compilations. The *_MIN 1637 * definitions are not visible to POSIX or XPG 1638 * conforming applications (due to what may be 1639 * a bug in the specification - this is under 1640 * investigation) 1641 * 1642 * <sys/inttypes.h> Provides the Kernel and Driver appropriate 1643 * components of <inttypes.h>. 1644 * 1645 * <inttypes.h> For use by applications. 1646 * 1647 * See these files for more details. 1648 */ 1649 1650 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 1651 /* 1652 * CDDL HEADER START 1653 * 1654 * The contents of this file are subject to the terms of the 1655 * Common Development and Distribution License (the "License"). 1656 * You may not use this file except in compliance with the License. 1657 * 1658 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1659 * or http://www.opensolaris.org/os/licensing. 1660 * See the License for the specific language governing permissions 1661 * and limitations under the License. 1662 * 1663 * When distributing Covered Code, include this CDDL HEADER in each 1664 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1665 * If applicable, add the following below this CDDL HEADER, with the 1666 * fields enclosed by brackets "[]" replaced with your own identifying 1667 * information: Portions Copyright [yyyy] [name of copyright owner] 1668 * 1669 * CDDL HEADER END 1670 */ 1671 1672 /* 1673 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 1674 * Copyright 2016 Joyent, Inc. 1675 * 1676 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 1677 * Use is subject to license terms. 1678 */ 1679 # 57 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 2 1680 1681 1682 1683 1684 1685 /* 1686 * Limits 1687 * 1688 * The following define the limits for the types defined in <sys/int_types.h>. 1689 * 1690 * INTMAX_MIN (minimum value of the largest supported signed integer type), 1691 * INTMAX_MAX (maximum value of the largest supported signed integer type), 1692 * and UINTMAX_MAX (maximum value of the largest supported unsigned integer 1693 * type) can be set to implementation defined limits. 1694 * 1695 * NOTE : A programmer can test to see whether an implementation supports 1696 * a particular size of integer by testing if the macro that gives the 1697 * maximum for that datatype is defined. For example, if #ifdef UINT64_MAX 1698 * tests false, the implementation does not support unsigned 64 bit integers. 1699 * 1700 * The type of these macros is intentionally unspecified. 1701 * 1702 * The types int8_t, int_least8_t, and int_fast8_t are not defined for ISAs 1703 * where the ABI specifies "char" as unsigned when the translation mode is 1704 * not ANSI-C. 1705 */ 1706 # 141 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 1707 /* 1708 * The following 2 macros are provided for testing whether the types 1709 * intptr_t and uintptr_t (integers large enough to hold a void *) are 1710 * defined in this header. They are needed in case the architecture can't 1711 * represent a pointer in any standard integral type. 1712 */ 1713 # 155 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 1714 /* Maximum limits of ptrdiff_t defined in <sys/types.h> */ 1715 1716 1717 1718 1719 1720 1721 /* 1722 * Maximum value of a "size_t". SIZE_MAX was previously defined 1723 * in <limits.h>, however, the standards specify it be defined 1724 * in <stdint.h>. The <stdint.h> headers includes this header as 1725 * does <limits.h>. The value of SIZE_MAX should not deviate 1726 * from the value of ULONG_MAX defined <sys/types.h>. 1727 */ 1728 1729 1730 1731 1732 1733 1734 /* Maximum limit of sig_atomic_t defined in <sys/types.h> */ 1735 1736 1737 1738 1739 /* 1740 * Maximum limit of wchar_t. The WCHAR_* macros are also 1741 * defined in <iso/wchar_iso.h>, but inclusion of that header 1742 * will break ISO/IEC C namespace. 1743 */ 1744 1745 1746 1747 1748 /* Maximum limit of wint_t */ 1749 1750 1751 1752 1753 /* 1754 * It is probably a bug in the POSIX specification (IEEE-1003.1-1990) that 1755 * when including <limits.h> that the suffix _MAX is reserved but not the 1756 * suffix _MIN. However, until that issue is resolved.... 1757 */ 1758 # 230 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 1759 /* Minimum value of a pointer-holding signed integer type */ 1760 1761 1762 1763 1764 1765 1766 /* Minimum limits of ptrdiff_t defined in <sys/types.h> */ 1767 1768 1769 1770 1771 1772 1773 /* Minimum limit of sig_atomic_t defined in <sys/types.h> */ 1774 1775 1776 1777 1778 /* 1779 * Minimum limit of wchar_t. The WCHAR_* macros are also 1780 * defined in <iso/wchar_iso.h>, but inclusion of that header 1781 * will break ISO/IEC C namespace. 1782 */ 1783 1784 1785 1786 1787 /* Minimum limit of wint_t */ 1788 # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 2 1789 # 62 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1790 /* 1791 * ARG_MAX is calculated as follows: 1792 * NCARGS - space for other stuff on initial stack 1793 * like aux vectors, saved registers, etc.. 1794 */ 1795 # 97 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1796 /* 1797 * POSIX conformant definitions - An implementation may define 1798 * other symbols which reflect the actual implementation. Alternate 1799 * definitions may not be as restrictive as the POSIX definitions. 1800 */ 1801 # 140 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1802 /* POSIX.1c conformant */ 1803 1804 1805 1806 1807 1808 /* UNIX 03 conformant */ 1809 1810 1811 1812 1813 1814 /* 1815 * POSIX.2 and XPG4-XSH4 conformant definitions 1816 */ 1817 # 164 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1818 /* UNIX 03 conformant */ 1819 # 186 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1820 /* 1821 * For dual definitions for PASS_MAX and sysconf.c 1822 */ 1823 # 201 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1824 /* NLS printf() and scanf() */ 1825 # 216 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1826 /* Marked as LEGACY in SUSv2 and removed in UNIX 03 */ 1827 1828 1829 1830 /* of a double */ 1831 1832 1833 /* of a "float" */ 1834 1835 1836 /* Marked as LEGACY in SUSv1 and removed in SUSv2 */ 1837 1838 1839 /* of a double */ 1840 1841 /* of a float */ 1842 # 248 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1843 /* 1844 * POSIX 1003.1a, section 2.9.5, table 2-5 contains [NAME_MAX] and the 1845 * related text states: 1846 * 1847 * A definition of one of the values from Table 2-5 shall be omitted from the 1848 * <limits.h> on specific implementations where the corresponding value is 1849 * equal to or greater than the stated minimum, but where the value can vary 1850 * depending on the file to which it is applied. The actual value supported for 1851 * a specific pathname shall be provided by the pathconf() (5.7.1) function. 1852 * 1853 * This is clear that any machine supporting multiple file system types 1854 * and/or a network can not include this define, regardless of protection 1855 * by the _POSIX_SOURCE and _POSIX_C_SOURCE flags. 1856 * 1857 * #define NAME_MAX 14 1858 */ 1859 # 285 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1860 typedef long clock_t; 1861 1862 1863 extern long _sysconf(int); /* System Private interface to sysconf() */ 1864 # 297 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1865 /* Increased for illumos */ 1866 # 34 "../common/zones_paths.c" 2 1867 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 1 1868 /* 1869 * CDDL HEADER START 1870 * 1871 * The contents of this file are subject to the terms of the 1872 * Common Development and Distribution License (the "License"). 1873 * You may not use this file except in compliance with the License. 1874 * 1875 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1876 * or http://www.opensolaris.org/os/licensing. 1877 * See the License for the specific language governing permissions 1878 * and limitations under the License. 1879 * 1880 * When distributing Covered Code, include this CDDL HEADER in each 1881 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1882 * If applicable, add the following below this CDDL HEADER, with the 1883 * fields enclosed by brackets "[]" replaced with your own identifying 1884 * information: Portions Copyright [yyyy] [name of copyright owner] 1885 * 1886 * CDDL HEADER END 1887 */ 1888 1889 /* 1890 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 1891 * Copyright (c) 2013 Gary Mills 1892 * 1893 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 1894 */ 1895 1896 /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ 1897 1898 /* Copyright (c) 1988 AT&T */ 1899 /* All Rights Reserved */ 1900 1901 1902 1903 1904 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 1 1905 /* 1906 * CDDL HEADER START 1907 * 1908 * The contents of this file are subject to the terms of the 1909 * Common Development and Distribution License, Version 1.0 only 1910 * (the "License"). You may not use this file except in compliance 1911 * with the License. 1912 * 1913 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1914 * or http://www.opensolaris.org/os/licensing. 1915 * See the License for the specific language governing permissions 1916 * and limitations under the License. 1917 * 1918 * When distributing Covered Code, include this CDDL HEADER in each 1919 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1920 * If applicable, add the following below this CDDL HEADER, with the 1921 * fields enclosed by brackets "[]" replaced with your own identifying 1922 * information: Portions Copyright [yyyy] [name of copyright owner] 1923 * 1924 * CDDL HEADER END 1925 */ 1926 /* 1927 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 1928 * Copyright 2014 PALO, Richard. 1929 * 1930 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 1931 * Use is subject to license terms. 1932 */ 1933 1934 /* Copyright (c) 1988 AT&T */ 1935 /* All Rights Reserved */ 1936 1937 1938 /* 1939 * An application should not include this header directly. Instead it 1940 * should be included only through the inclusion of other Sun headers. 1941 * 1942 * The contents of this header is limited to identifiers specified in the 1943 * C Standard. Any new identifiers specified in future amendments to the 1944 * C Standard must be placed in this header. If these new identifiers 1945 * are required to also be in the C++ Standard "std" namespace, then for 1946 * anything other than macro definitions, corresponding "using" directives 1947 * must also be added to <locale.h>. 1948 */ 1949 1950 1951 1952 1953 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 1954 /* 1955 * CDDL HEADER START 1956 * 1957 * The contents of this file are subject to the terms of the 1958 * Common Development and Distribution License (the "License"). 1959 * You may not use this file except in compliance with the License. 1960 * 1961 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 1962 * or http://www.opensolaris.org/os/licensing. 1963 * See the License for the specific language governing permissions 1964 * and limitations under the License. 1965 * 1966 * When distributing Covered Code, include this CDDL HEADER in each 1967 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1968 * If applicable, add the following below this CDDL HEADER, with the 1969 * fields enclosed by brackets "[]" replaced with your own identifying 1970 * information: Portions Copyright [yyyy] [name of copyright owner] 1971 * 1972 * CDDL HEADER END 1973 */ 1974 1975 /* 1976 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 1977 * Copyright 2016 Joyent, Inc. 1978 * 1979 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 1980 * Use is subject to license terms. 1981 */ 1982 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 2 1983 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 1984 /* 1985 * This file and its contents are supplied under the terms of the 1986 * Common Development and Distribution License ("CDDL"), version 1.0. 1987 * You may only use this file in accordance with the terms of version 1988 * 1.0 of the CDDL. 1989 * 1990 * A full copy of the text of the CDDL should have accompanied this 1991 * source. A copy of the CDDL is also available via the Internet at 1992 * http://www.illumos.org/license/CDDL. 1993 */ 1994 1995 /* 1996 * Copyright 2014-2016 PALO, Richard. 1997 */ 1998 # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 2 1999 2000 2001 2002 2003 2004 unsigned char __mb_cur_max(void); 2005 # 65 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 2006 typedef struct { 2007 int quot; 2008 int rem; 2009 } div_t; 2010 2011 typedef struct { 2012 long quot; 2013 long rem; 2014 } ldiv_t; 2015 # 88 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 2016 /* 2017 * wchar_t is a built-in type in standard C++ and as such is not 2018 * defined here when using standard C++. However, the GNU compiler 2019 * fixincludes utility nonetheless creates its own version of this 2020 * header for use by gcc and g++. In that version it adds a redundant 2021 * guard for __cplusplus. To avoid the creation of a gcc/g++ specific 2022 * header we need to include the following magic comment: 2023 * 2024 * we must use the C++ compiler's type 2025 * 2026 * The above comment should not be removed or changed until GNU 2027 * gcc/fixinc/inclhack.def is updated to bypass this header. 2028 */ 2029 2030 2031 2032 2033 typedef int wchar_t; 2034 # 120 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_iso.h" 2035 extern void abort(void) __attribute__((__noreturn__)); 2036 extern int abs(int); 2037 extern int atexit(void (*)(void)); 2038 extern double atof(const char *); 2039 extern int atoi(const char *); 2040 extern long int atol(const char *); 2041 extern void *bsearch(const void *, const void *, size_t, size_t, 2042 int (*)(const void *, const void *)); 2043 2044 2045 2046 2047 2048 2049 extern void *calloc(size_t, size_t); 2050 extern div_t div(int, int); 2051 extern void exit(int) 2052 __attribute__((__noreturn__)); 2053 extern void free(void *); 2054 extern char *getenv(const char *); 2055 extern long int labs(long); 2056 extern ldiv_t ldiv(long, long); 2057 extern void *malloc(size_t); 2058 extern int mblen(const char *, size_t); 2059 extern size_t mbstowcs(wchar_t *, const char *, 2060 size_t); 2061 extern int mbtowc(wchar_t *, const char *, size_t); 2062 extern void qsort(void *, size_t, size_t, int (*)(const void *, const void *)); 2063 2064 2065 2066 2067 2068 extern int rand(void); 2069 extern void *realloc(void *, size_t); 2070 extern void srand(unsigned int); 2071 extern double strtod(const char *, char **); 2072 extern long int strtol(const char *, char **, int); 2073 extern unsigned long int strtoul(const char *, 2074 char **, int); 2075 extern int system(const char *); 2076 extern int wctomb(char *, wchar_t); 2077 extern size_t wcstombs(char *, const wchar_t *, 2078 size_t); 2079 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2 2080 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c99.h" 1 2081 /* 2082 * CDDL HEADER START 2083 * 2084 * The contents of this file are subject to the terms of the 2085 * Common Development and Distribution License, Version 1.0 only 2086 * (the "License"). You may not use this file except in compliance 2087 * with the License. 2088 * 2089 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2090 * or http://www.opensolaris.org/os/licensing. 2091 * See the License for the specific language governing permissions 2092 * and limitations under the License. 2093 * 2094 * When distributing Covered Code, include this CDDL HEADER in each 2095 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2096 * If applicable, add the following below this CDDL HEADER, with the 2097 * fields enclosed by brackets "[]" replaced with your own identifying 2098 * information: Portions Copyright [yyyy] [name of copyright owner] 2099 * 2100 * CDDL HEADER END 2101 */ 2102 /* 2103 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 2104 * 2105 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 2106 * Use is subject to license terms. 2107 */ 2108 2109 /* 2110 * An application should not include this header directly. Instead it 2111 * should be included only through the inclusion of other Sun headers. 2112 * 2113 * The contents of this header is limited to identifiers specified in 2114 * the C99 standard and in conflict with the C++ implementation of the 2115 * standard header. The C++ standard may adopt the C99 standard at 2116 * which point it is expected that the symbols included here will 2117 * become part of the C++ std namespace. 2118 */ 2119 2120 2121 2122 2123 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 2124 /* 2125 * CDDL HEADER START 2126 * 2127 * The contents of this file are subject to the terms of the 2128 * Common Development and Distribution License (the "License"). 2129 * You may not use this file except in compliance with the License. 2130 * 2131 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2132 * or http://www.opensolaris.org/os/licensing. 2133 * See the License for the specific language governing permissions 2134 * and limitations under the License. 2135 * 2136 * When distributing Covered Code, include this CDDL HEADER in each 2137 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2138 * If applicable, add the following below this CDDL HEADER, with the 2139 * fields enclosed by brackets "[]" replaced with your own identifying 2140 * information: Portions Copyright [yyyy] [name of copyright owner] 2141 * 2142 * CDDL HEADER END 2143 */ 2144 2145 /* 2146 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 2147 * Copyright 2016 Joyent, Inc. 2148 * 2149 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 2150 * Use is subject to license terms. 2151 */ 2152 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c99.h" 2 2153 2154 2155 2156 2157 2158 /* 2159 * The following have been added as a result of the ISO/IEC 9899:1999 2160 * standard. For a strictly conforming C application, visibility is 2161 * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h). 2162 * For non-strictly conforming C applications, there are no restrictions 2163 * on the C namespace. 2164 */ 2165 2166 2167 typedef struct { 2168 long long quot; 2169 long long rem; 2170 } lldiv_t; 2171 # 75 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c99.h" 2172 extern void _Exit(int); 2173 extern float strtof(const char *, char **); 2174 extern long double strtold(const char *, char **); 2175 2176 2177 extern long long atoll(const char *); 2178 extern long long llabs(long long); 2179 extern lldiv_t lldiv(long long, long long); 2180 extern long long strtoll(const char *, char **, 2181 int); 2182 extern unsigned long long strtoull(const char *, 2183 char **, int); 2184 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2 2185 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c11.h" 1 2186 /* 2187 * This file and its contents are supplied under the terms of the 2188 * Common Development and Distribution License ("CDDL"), version 1.0. 2189 * You may only use this file in accordance with the terms of version 2190 * 1.0 of the CDDL. 2191 * 2192 * A full copy of the text of the CDDL should have accompanied this 2193 * source. A copy of the CDDL is also available via the Internet at 2194 * http://www.illumos.org/license/CDDL. 2195 */ 2196 2197 /* 2198 * Copyright 2016 Joyent, Inc. 2199 */ 2200 2201 /* 2202 * An application should not include this header directly. Instead it 2203 * should be included only through the inclusion of other illumos headers. 2204 * 2205 * The contents of this header is limited to identifiers specified in 2206 * the C11 standard and in conflict with the C++ implementation of the 2207 * standard header. The C++ standard may adopt the C11 standard at 2208 * which point it is expected that the symbols included here will 2209 * become part of the C++ std namespace. 2210 */ 2211 2212 2213 2214 2215 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 2216 /* 2217 * CDDL HEADER START 2218 * 2219 * The contents of this file are subject to the terms of the 2220 * Common Development and Distribution License (the "License"). 2221 * You may not use this file except in compliance with the License. 2222 * 2223 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2224 * or http://www.opensolaris.org/os/licensing. 2225 * See the License for the specific language governing permissions 2226 * and limitations under the License. 2227 * 2228 * When distributing Covered Code, include this CDDL HEADER in each 2229 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2230 * If applicable, add the following below this CDDL HEADER, with the 2231 * fields enclosed by brackets "[]" replaced with your own identifying 2232 * information: Portions Copyright [yyyy] [name of copyright owner] 2233 * 2234 * CDDL HEADER END 2235 */ 2236 2237 /* 2238 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 2239 * Copyright 2016 Joyent, Inc. 2240 * 2241 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 2242 * Use is subject to license terms. 2243 */ 2244 # 31 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c11.h" 2 2245 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c11.h" 2246 /* 2247 * The following have been added as a result of the ISO/IEC 9899:2011 2248 * standard. For a strictly conforming C application, visibility is 2249 * contingent on the value of __STDC_VERSION__ (see sys/feature_tests.h). 2250 * For non-strictly conforming C applications, there are no restrictions 2251 * on the C namespace. 2252 */ 2253 2254 /* 2255 * Work around fix-includes and other bad actors with using multiple headers. 2256 */ 2257 # 60 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdlib_c11.h" 2258 extern void *aligned_alloc(size_t, size_t); 2259 extern int at_quick_exit(void (*)(void)); 2260 extern void quick_exit(int); 2261 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2 2262 2263 2264 2265 2266 2267 /* 2268 * Allow global visibility for symbols defined in 2269 * C++ "std" namespace in <iso/stdlib_iso.h>. 2270 */ 2271 # 83 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2272 /* 2273 * Allow global visibility for symbols defined in 2274 * C++ "std" namespace in <iso/stdlib_c11.h>. 2275 */ 2276 # 101 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2277 typedef unsigned int uid_t; /* UID type */ 2278 2279 2280 /* large file compilation environment setup */ 2281 # 121 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2282 /* In the LP64 compilation environment, all APIs are already large file */ 2283 2284 2285 2286 2287 # 125 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2288 #pragma redefine_extname mkstemp64 mkstemp 2289 # 125 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2290 2291 2292 # 126 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2293 #pragma redefine_extname mkstemps64 mkstemps 2294 # 126 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2295 2296 2297 # 127 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2298 #pragma redefine_extname mkostemp64 mkostemp 2299 # 127 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2300 2301 2302 # 128 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2303 #pragma redefine_extname mkostemps64 mkostemps 2304 # 128 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2305 # 141 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2306 extern int rand_r(unsigned int *); 2307 2308 2309 extern void _exithandle(void); 2310 2311 2312 2313 2314 extern double drand48(void); 2315 extern double erand48(unsigned short *); 2316 extern long jrand48(unsigned short *); 2317 extern void lcong48(unsigned short *); 2318 extern long lrand48(void); 2319 extern long mrand48(void); 2320 extern long nrand48(unsigned short *); 2321 extern unsigned short *seed48(unsigned short *); 2322 extern void srand48(long); 2323 extern int putenv(char *); 2324 extern void setkey(const char *); 2325 2326 2327 /* 2328 * swab() has historically been in <stdlib.h> as delivered from AT&T 2329 * and continues to be visible in the default compilation environment. 2330 * As of Issue 4 of the X/Open Portability Guides, swab() was declared 2331 * in <unistd.h>. As a result, with respect to X/Open namespace the 2332 * swab() declaration in this header is only visible for the XPG3 2333 * environment. 2334 */ 2335 # 182 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2336 extern void swab(const char *, char *, ssize_t); 2337 2338 2339 2340 2341 2342 extern int mkstemp(char *); 2343 2344 extern int mkstemps(char *, int); 2345 2346 2347 2348 2349 2350 extern int mkstemp64(char *); 2351 2352 extern int mkstemps64(char *, int); 2353 2354 2355 2356 2357 extern char *mkdtemp(char *); 2358 2359 2360 2361 extern int mkostemp(char *, int); 2362 extern int mkostemps(char *, int, int); 2363 2364 2365 extern int mkostemp64(char *, int); 2366 extern int mkostemps64(char *, int, int); 2367 2368 2369 2370 2371 2372 2373 extern long a64l(const char *); 2374 extern char *ecvt(double, int, int *, int *); 2375 extern char *fcvt(double, int, int *, int *); 2376 extern char *gcvt(double, int, char *); 2377 extern int getsubopt(char **, char *const *, char **); 2378 extern int grantpt(int); 2379 extern char *initstate(unsigned, char *, size_t); 2380 extern char *l64a(long); 2381 extern char *mktemp(char *); 2382 extern char *ptsname(int); 2383 extern long random(void); 2384 extern char *realpath(const char *, char *); 2385 extern char *setstate(const char *); 2386 extern void srandom(unsigned); 2387 extern int unlockpt(int); 2388 /* Marked LEGACY in SUSv2 and removed in SUSv3 */ 2389 2390 extern int ttyslot(void); 2391 extern void *valloc(size_t); 2392 2393 2394 2395 2396 2397 2398 extern int posix_memalign(void **, size_t, size_t); 2399 extern int posix_openpt(int); 2400 extern int setenv(const char *, const char *, int); 2401 extern int unsetenv(const char *); 2402 2403 2404 2405 2406 extern char *canonicalize_file_name(const char *); 2407 extern int clearenv(void); 2408 extern void closefrom(int); 2409 extern int daemon(int, int); 2410 extern int dup2(int, int); 2411 extern int dup3(int, int, int); 2412 extern int fdwalk(int (*)(void *, int), void *); 2413 extern char *qecvt(long double, int, int *, int *); 2414 extern char *qfcvt(long double, int, int *, int *); 2415 extern char *qgcvt(long double, int, char *); 2416 extern char *getcwd(char *, size_t); 2417 extern const char *getexecname(void); 2418 2419 2420 2421 2422 2423 2424 # 269 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2425 #pragma redefine_extname getlogin getloginx 2426 # 269 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2427 2428 2429 2430 2431 2432 2433 extern char *getlogin(void); 2434 2435 2436 extern int getopt(int, char *const *, const char *); 2437 extern char *optarg; 2438 extern int optind, opterr, optopt; 2439 extern char *getpass(const char *); 2440 extern char *getpassphrase(const char *); 2441 extern int getpw(uid_t, char *); 2442 extern int isatty(int); 2443 extern void *memalign(size_t, size_t); 2444 extern char *ttyname(int); 2445 extern char *mkdtemp(char *); 2446 extern const char *getprogname(void); 2447 extern void setprogname(const char *); 2448 2449 2450 extern char *lltostr(long long, char *); 2451 extern char *ulltostr(unsigned long long, char *); 2452 2453 2454 2455 2456 /* OpenBSD compatibility functions */ 2457 2458 2459 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 1 2460 /* 2461 * CDDL HEADER START 2462 * 2463 * The contents of this file are subject to the terms of the 2464 * Common Development and Distribution License, Version 1.0 only 2465 * (the "License"). You may not use this file except in compliance 2466 * with the License. 2467 * 2468 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2469 * or http://www.opensolaris.org/os/licensing. 2470 * See the License for the specific language governing permissions 2471 * and limitations under the License. 2472 * 2473 * When distributing Covered Code, include this CDDL HEADER in each 2474 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2475 * If applicable, add the following below this CDDL HEADER, with the 2476 * fields enclosed by brackets "[]" replaced with your own identifying 2477 * information: Portions Copyright [yyyy] [name of copyright owner] 2478 * 2479 * CDDL HEADER END 2480 */ 2481 /* 2482 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 2483 * 2484 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 2485 * Use is subject to license terms. 2486 */ 2487 2488 2489 2490 2491 /* 2492 * This file, <inttypes.h>, is specified by the ISO C standard, 2493 * standard, ISO/IEC 9899:1999 Programming language - C and is 2494 * also defined by SUSv3. 2495 * 2496 * ISO International Organization for Standardization. 2497 * SUSv3 Single Unix Specification, Version 3 2498 */ 2499 2500 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 2501 /* 2502 * CDDL HEADER START 2503 * 2504 * The contents of this file are subject to the terms of the 2505 * Common Development and Distribution License (the "License"). 2506 * You may not use this file except in compliance with the License. 2507 * 2508 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2509 * or http://www.opensolaris.org/os/licensing. 2510 * See the License for the specific language governing permissions 2511 * and limitations under the License. 2512 * 2513 * When distributing Covered Code, include this CDDL HEADER in each 2514 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2515 * If applicable, add the following below this CDDL HEADER, with the 2516 * fields enclosed by brackets "[]" replaced with your own identifying 2517 * information: Portions Copyright [yyyy] [name of copyright owner] 2518 * 2519 * CDDL HEADER END 2520 */ 2521 2522 /* 2523 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 2524 * Copyright 2016 Joyent, Inc. 2525 * 2526 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 2527 * Use is subject to license terms. 2528 */ 2529 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 2 2530 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 1 2531 /* 2532 * CDDL HEADER START 2533 * 2534 * The contents of this file are subject to the terms of the 2535 * Common Development and Distribution License, Version 1.0 only 2536 * (the "License"). You may not use this file except in compliance 2537 * with the License. 2538 * 2539 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2540 * or http://www.opensolaris.org/os/licensing. 2541 * See the License for the specific language governing permissions 2542 * and limitations under the License. 2543 * 2544 * When distributing Covered Code, include this CDDL HEADER in each 2545 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2546 * If applicable, add the following below this CDDL HEADER, with the 2547 * fields enclosed by brackets "[]" replaced with your own identifying 2548 * information: Portions Copyright [yyyy] [name of copyright owner] 2549 * 2550 * CDDL HEADER END 2551 */ 2552 /* 2553 * Copyright 2003 Sun Microsystems, Inc. All rights reserved. 2554 * Use is subject to license terms. 2555 */ 2556 2557 2558 2559 2560 #pragma ident "%Z%%M% %I% %E% SMI" 2561 2562 /* 2563 * This header, <sys/inttypes.h>, contains (through nested inclusion) the 2564 * vast majority of the facilities specified for <inttypes.h> as defined 2565 * by the ISO C Standard, ISO/IEC 9899:1999 Programming language - C. 2566 * 2567 * Kernel/Driver developers are encouraged to include this file to access 2568 * the fixed size types, limits and utility macros. Application developers 2569 * should use the standard defined header <inttypes.h>. 2570 */ 2571 2572 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 2573 /* 2574 * CDDL HEADER START 2575 * 2576 * The contents of this file are subject to the terms of the 2577 * Common Development and Distribution License (the "License"). 2578 * You may not use this file except in compliance with the License. 2579 * 2580 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2581 * or http://www.opensolaris.org/os/licensing. 2582 * See the License for the specific language governing permissions 2583 * and limitations under the License. 2584 * 2585 * When distributing Covered Code, include this CDDL HEADER in each 2586 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2587 * If applicable, add the following below this CDDL HEADER, with the 2588 * fields enclosed by brackets "[]" replaced with your own identifying 2589 * information: Portions Copyright [yyyy] [name of copyright owner] 2590 * 2591 * CDDL HEADER END 2592 */ 2593 2594 /* 2595 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 2596 * Copyright 2016 Joyent, Inc. 2597 * 2598 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 2599 * Use is subject to license terms. 2600 */ 2601 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 2602 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 2603 /* 2604 * CDDL HEADER START 2605 * 2606 * The contents of this file are subject to the terms of the 2607 * Common Development and Distribution License, Version 1.0 only 2608 * (the "License"). You may not use this file except in compliance 2609 * with the License. 2610 * 2611 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2612 * or http://www.opensolaris.org/os/licensing. 2613 * See the License for the specific language governing permissions 2614 * and limitations under the License. 2615 * 2616 * When distributing Covered Code, include this CDDL HEADER in each 2617 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2618 * If applicable, add the following below this CDDL HEADER, with the 2619 * fields enclosed by brackets "[]" replaced with your own identifying 2620 * information: Portions Copyright [yyyy] [name of copyright owner] 2621 * 2622 * CDDL HEADER END 2623 */ 2624 /* 2625 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 2626 * 2627 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 2628 * Use is subject to license terms. 2629 */ 2630 2631 2632 2633 2634 /* 2635 * This file, <sys/int_types.h>, is part of the Sun Microsystems implementation 2636 * of <inttypes.h> defined in the ISO C standard, ISO/IEC 9899:1999 2637 * Programming language - C. 2638 * 2639 * Programs/Modules should not directly include this file. Access to the 2640 * types defined in this file should be through the inclusion of one of the 2641 * following files: 2642 * 2643 * <sys/types.h> Provides only the "_t" types defined in this 2644 * file which is a subset of the contents of 2645 * <inttypes.h>. (This can be appropriate for 2646 * all programs/modules except those claiming 2647 * ANSI-C conformance.) 2648 * 2649 * <sys/inttypes.h> Provides the Kernel and Driver appropriate 2650 * components of <inttypes.h>. 2651 * 2652 * <inttypes.h> For use by applications. 2653 * 2654 * See these files for more details. 2655 */ 2656 2657 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 2658 /* 2659 * CDDL HEADER START 2660 * 2661 * The contents of this file are subject to the terms of the 2662 * Common Development and Distribution License (the "License"). 2663 * You may not use this file except in compliance with the License. 2664 * 2665 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2666 * or http://www.opensolaris.org/os/licensing. 2667 * See the License for the specific language governing permissions 2668 * and limitations under the License. 2669 * 2670 * When distributing Covered Code, include this CDDL HEADER in each 2671 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2672 * If applicable, add the following below this CDDL HEADER, with the 2673 * fields enclosed by brackets "[]" replaced with your own identifying 2674 * information: Portions Copyright [yyyy] [name of copyright owner] 2675 * 2676 * CDDL HEADER END 2677 */ 2678 2679 /* 2680 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 2681 * Copyright 2016 Joyent, Inc. 2682 * 2683 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 2684 * Use is subject to license terms. 2685 */ 2686 # 56 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 2 2687 2688 2689 2690 2691 2692 /* 2693 * Basic / Extended integer types 2694 * 2695 * The following defines the basic fixed-size integer types. 2696 * 2697 * Implementations are free to typedef them to Standard C integer types or 2698 * extensions that they support. If an implementation does not support one 2699 * of the particular integer data types below, then it should not define the 2700 * typedefs and macros corresponding to that data type. Note that int8_t 2701 * is not defined in -Xs mode on ISAs for which the ABI specifies "char" 2702 * as an unsigned entity because there is no way to define an eight bit 2703 * signed integral. 2704 */ 2705 2706 typedef char int8_t; 2707 2708 2709 2710 typedef short int16_t; 2711 typedef int int32_t; 2712 2713 2714 typedef long int64_t; 2715 2716 2717 2718 2719 2720 2721 2722 typedef unsigned char uint8_t; 2723 typedef unsigned short uint16_t; 2724 typedef unsigned int uint32_t; 2725 2726 typedef unsigned long uint64_t; 2727 2728 2729 2730 2731 2732 2733 /* 2734 * intmax_t and uintmax_t are to be the longest (in number of bits) signed 2735 * and unsigned integer types supported by the implementation. 2736 */ 2737 2738 typedef int64_t intmax_t; 2739 typedef uint64_t uintmax_t; 2740 2741 2742 2743 2744 2745 /* 2746 * intptr_t and uintptr_t are signed and unsigned integer types large enough 2747 * to hold any data pointer; that is, data pointers can be assigned into or 2748 * from these integer types without losing precision. 2749 */ 2750 2751 typedef long intptr_t; 2752 typedef unsigned long uintptr_t; 2753 2754 2755 2756 2757 2758 /* 2759 * The following define the fastest integer types that can hold the 2760 * specified number of bits. 2761 */ 2762 2763 typedef char int_fast8_t; 2764 2765 2766 2767 typedef int int_fast16_t; 2768 typedef int int_fast32_t; 2769 2770 typedef long int_fast64_t; 2771 2772 2773 2774 2775 2776 2777 typedef unsigned char uint_fast8_t; 2778 typedef unsigned int uint_fast16_t; 2779 typedef unsigned int uint_fast32_t; 2780 2781 typedef unsigned long uint_fast64_t; 2782 2783 2784 2785 2786 2787 2788 /* 2789 * The following define the smallest integer types that can hold the 2790 * specified number of bits. 2791 */ 2792 2793 typedef char int_least8_t; 2794 2795 2796 2797 typedef short int_least16_t; 2798 typedef int int_least32_t; 2799 2800 typedef long int_least64_t; 2801 2802 2803 2804 2805 2806 2807 /* 2808 * If these are changed, please update char16_t and char32_t in head/uchar.h. 2809 */ 2810 typedef unsigned char uint_least8_t; 2811 typedef unsigned short uint_least16_t; 2812 typedef unsigned int uint_least32_t; 2813 2814 typedef unsigned long uint_least64_t; 2815 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 2816 2817 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 1 2818 /* 2819 * CDDL HEADER START 2820 * 2821 * The contents of this file are subject to the terms of the 2822 * Common Development and Distribution License, Version 1.0 only 2823 * (the "License"). You may not use this file except in compliance 2824 * with the License. 2825 * 2826 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2827 * or http://www.opensolaris.org/os/licensing. 2828 * See the License for the specific language governing permissions 2829 * and limitations under the License. 2830 * 2831 * When distributing Covered Code, include this CDDL HEADER in each 2832 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2833 * If applicable, add the following below this CDDL HEADER, with the 2834 * fields enclosed by brackets "[]" replaced with your own identifying 2835 * information: Portions Copyright [yyyy] [name of copyright owner] 2836 * 2837 * CDDL HEADER END 2838 */ 2839 /* 2840 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 2841 * 2842 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 2843 * Use is subject to license terms. 2844 */ 2845 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 2846 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" 1 2847 /* 2848 * CDDL HEADER START 2849 * 2850 * The contents of this file are subject to the terms of the 2851 * Common Development and Distribution License, Version 1.0 only 2852 * (the "License"). You may not use this file except in compliance 2853 * with the License. 2854 * 2855 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2856 * or http://www.opensolaris.org/os/licensing. 2857 * See the License for the specific language governing permissions 2858 * and limitations under the License. 2859 * 2860 * When distributing Covered Code, include this CDDL HEADER in each 2861 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2862 * If applicable, add the following below this CDDL HEADER, with the 2863 * fields enclosed by brackets "[]" replaced with your own identifying 2864 * information: Portions Copyright [yyyy] [name of copyright owner] 2865 * 2866 * CDDL HEADER END 2867 */ 2868 /* 2869 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 2870 * 2871 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 2872 * Use is subject to license terms. 2873 */ 2874 2875 2876 2877 2878 /* 2879 * This file, <sys/int_const.h>, is part of the Sun Microsystems implementation 2880 * of <inttypes.h> as proposed in the ISO/JTC1/SC22/WG14 C committee's working 2881 * draft for the revision of the current ISO C standard, ISO/IEC 9899:1990 2882 * Programming language - C. 2883 * 2884 * Programs/Modules should not directly include this file. Access to the 2885 * types defined in this file should be through the inclusion of one of the 2886 * following files: 2887 * 2888 * <sys/inttypes.h> Provides the Kernel and Driver appropriate 2889 * components of <inttypes.h>. 2890 * 2891 * <inttypes.h> For use by applications. 2892 * 2893 * See these files for more details. 2894 * 2895 * Use at your own risk. This file will track the evolution of the revision 2896 * of the current ISO C standard. As of February 1996, the committee is 2897 * squarely behind the fixed sized types. 2898 */ 2899 2900 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 2901 /* 2902 * CDDL HEADER START 2903 * 2904 * The contents of this file are subject to the terms of the 2905 * Common Development and Distribution License (the "License"). 2906 * You may not use this file except in compliance with the License. 2907 * 2908 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2909 * or http://www.opensolaris.org/os/licensing. 2910 * See the License for the specific language governing permissions 2911 * and limitations under the License. 2912 * 2913 * When distributing Covered Code, include this CDDL HEADER in each 2914 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2915 * If applicable, add the following below this CDDL HEADER, with the 2916 * fields enclosed by brackets "[]" replaced with your own identifying 2917 * information: Portions Copyright [yyyy] [name of copyright owner] 2918 * 2919 * CDDL HEADER END 2920 */ 2921 2922 /* 2923 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 2924 * Copyright 2016 Joyent, Inc. 2925 * 2926 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 2927 * Use is subject to license terms. 2928 */ 2929 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" 2 2930 2931 2932 2933 2934 2935 /* 2936 * Constants 2937 * 2938 * The following macros create constants of the types defined in 2939 * <sys/int_types.h>. The intent is that: 2940 * Constants defined using these macros have a specific size and 2941 * signedness. The suffix used for int64_t and uint64_t (ll and ull) 2942 * are for examples only. Implementations are permitted to use other 2943 * suffixes. 2944 * 2945 * The "CSTYLED" comments are flags to an internal code style analysis tool 2946 * telling it to silently accept the line which follows. This internal 2947 * standard requires a space between arguments, but the historical, 2948 * non-ANSI-C ``method'' of concatenation can't tolerate those spaces. 2949 */ 2950 /* CSTYLED */ 2951 2952 2953 2954 2955 2956 2957 /* CSTYLED */ 2958 # 91 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" 2959 /* CSTYLED */ 2960 2961 /* CSTYLED */ 2962 2963 /* CSTYLED */ 2964 2965 2966 /* CSTYLED */ 2967 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" 2968 /* CSTYLED */ 2969 2970 /* CSTYLED */ 2971 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 2972 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 1 2973 /* 2974 * CDDL HEADER START 2975 * 2976 * The contents of this file are subject to the terms of the 2977 * Common Development and Distribution License, Version 1.0 only 2978 * (the "License"). You may not use this file except in compliance 2979 * with the License. 2980 * 2981 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 2982 * or http://www.opensolaris.org/os/licensing. 2983 * See the License for the specific language governing permissions 2984 * and limitations under the License. 2985 * 2986 * When distributing Covered Code, include this CDDL HEADER in each 2987 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 2988 * If applicable, add the following below this CDDL HEADER, with the 2989 * fields enclosed by brackets "[]" replaced with your own identifying 2990 * information: Portions Copyright [yyyy] [name of copyright owner] 2991 * 2992 * CDDL HEADER END 2993 */ 2994 /* 2995 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 2996 * 2997 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 2998 * Use is subject to license terms. 2999 */ 3000 3001 3002 3003 3004 /* 3005 * This file, <sys/int_fmtio.h>, is part of the Sun Microsystems implementation 3006 * of <inttypes.h> as defined by the ISO C Standard, ISO/IEC 9899:1999 3007 * Programming language - C. 3008 * 3009 * ISO International Organization for Standardization. 3010 * 3011 * Programs/Modules should not directly include this file. Access to the 3012 * types defined in this file should be through the inclusion of one of the 3013 * following files: 3014 * 3015 * <sys/inttypes.h> Provides the Kernel and Driver appropriate 3016 * components of <inttypes.h>. 3017 * 3018 * <inttypes.h> For use by applications. 3019 * 3020 * See these files for more details. 3021 */ 3022 3023 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 3024 /* 3025 * CDDL HEADER START 3026 * 3027 * The contents of this file are subject to the terms of the 3028 * Common Development and Distribution License (the "License"). 3029 * You may not use this file except in compliance with the License. 3030 * 3031 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3032 * or http://www.opensolaris.org/os/licensing. 3033 * See the License for the specific language governing permissions 3034 * and limitations under the License. 3035 * 3036 * When distributing Covered Code, include this CDDL HEADER in each 3037 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3038 * If applicable, add the following below this CDDL HEADER, with the 3039 * fields enclosed by brackets "[]" replaced with your own identifying 3040 * information: Portions Copyright [yyyy] [name of copyright owner] 3041 * 3042 * CDDL HEADER END 3043 */ 3044 3045 /* 3046 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 3047 * Copyright 2016 Joyent, Inc. 3048 * 3049 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 3050 * Use is subject to license terms. 3051 */ 3052 # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 2 3053 3054 3055 3056 3057 3058 /* 3059 * Formatted I/O 3060 * 3061 * The following macros can be used even when an implementation has not 3062 * extended the printf/scanf family of functions. 3063 * 3064 * The form of the names of the macros is either "PRI" for printf specifiers 3065 * or "SCN" for scanf specifiers, followed by the conversion specifier letter 3066 * followed by the datatype size. For example, PRId32 is the macro for 3067 * the printf d conversion specifier with the flags for 32 bit datatype. 3068 * 3069 * An example using one of these macros: 3070 * 3071 * uint64_t u; 3072 * printf("u = %016" PRIx64 "\n", u); 3073 * 3074 * For the purpose of example, the definitions of the printf/scanf macros 3075 * below have the values appropriate for a machine with 8 bit shorts, 16 3076 * bit shorts, 32 bit ints, 32 or 64 bit longs depending on compilation 3077 * mode, and 64 bit long longs. 3078 */ 3079 3080 /* 3081 * fprintf macros for signed integers 3082 */ 3083 # 139 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 3084 /* 3085 * fprintf macros for unsigned integers 3086 */ 3087 # 227 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 3088 /* 3089 * fprintf macros for pointers 3090 */ 3091 # 247 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 3092 /* 3093 * fscanf macros for signed integers 3094 */ 3095 # 282 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 3096 /* 3097 * fscanf macros for unsigned integers 3098 */ 3099 # 349 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_fmtio.h" 3100 /* 3101 * The following macros define I/O formats for intmax_t and uintmax_t. 3102 */ 3103 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/inttypes.h" 2 3104 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 2 3105 3106 3107 3108 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stdint.h" 1 3109 /* 3110 * CDDL HEADER START 3111 * 3112 * The contents of this file are subject to the terms of the 3113 * Common Development and Distribution License, Version 1.0 only 3114 * (the "License"). You may not use this file except in compliance 3115 * with the License. 3116 * 3117 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3118 * or http://www.opensolaris.org/os/licensing. 3119 * See the License for the specific language governing permissions 3120 * and limitations under the License. 3121 * 3122 * When distributing Covered Code, include this CDDL HEADER in each 3123 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3124 * If applicable, add the following below this CDDL HEADER, with the 3125 * fields enclosed by brackets "[]" replaced with your own identifying 3126 * information: Portions Copyright [yyyy] [name of copyright owner] 3127 * 3128 * CDDL HEADER END 3129 */ 3130 /* 3131 * Copyright 2003 Sun Microsystems, Inc. All rights reserved. 3132 * Use is subject to license terms. 3133 */ 3134 3135 3136 3137 3138 #pragma ident "%Z%%M% %I% %E% SMI" 3139 3140 /* 3141 * This header is included by <stdint.h> which was introduced by 3142 * the ISO C Standard, ISO/IEC 9899:1999 Programming language - C. 3143 * The header is a subset of the <inttypes.h> header. 3144 */ 3145 3146 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 3147 /* 3148 * CDDL HEADER START 3149 * 3150 * The contents of this file are subject to the terms of the 3151 * Common Development and Distribution License, Version 1.0 only 3152 * (the "License"). You may not use this file except in compliance 3153 * with the License. 3154 * 3155 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3156 * or http://www.opensolaris.org/os/licensing. 3157 * See the License for the specific language governing permissions 3158 * and limitations under the License. 3159 * 3160 * When distributing Covered Code, include this CDDL HEADER in each 3161 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3162 * If applicable, add the following below this CDDL HEADER, with the 3163 * fields enclosed by brackets "[]" replaced with your own identifying 3164 * information: Portions Copyright [yyyy] [name of copyright owner] 3165 * 3166 * CDDL HEADER END 3167 */ 3168 /* 3169 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 3170 * 3171 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 3172 * Use is subject to license terms. 3173 */ 3174 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stdint.h" 2 3175 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_limits.h" 1 3176 /* 3177 * CDDL HEADER START 3178 * 3179 * The contents of this file are subject to the terms of the 3180 * Common Development and Distribution License, Version 1.0 only 3181 * (the "License"). You may not use this file except in compliance 3182 * with the License. 3183 * 3184 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3185 * or http://www.opensolaris.org/os/licensing. 3186 * See the License for the specific language governing permissions 3187 * and limitations under the License. 3188 * 3189 * When distributing Covered Code, include this CDDL HEADER in each 3190 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3191 * If applicable, add the following below this CDDL HEADER, with the 3192 * fields enclosed by brackets "[]" replaced with your own identifying 3193 * information: Portions Copyright [yyyy] [name of copyright owner] 3194 * 3195 * CDDL HEADER END 3196 */ 3197 /* 3198 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 3199 * 3200 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 3201 * Use is subject to license terms. 3202 */ 3203 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stdint.h" 2 3204 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_const.h" 1 3205 /* 3206 * CDDL HEADER START 3207 * 3208 * The contents of this file are subject to the terms of the 3209 * Common Development and Distribution License, Version 1.0 only 3210 * (the "License"). You may not use this file except in compliance 3211 * with the License. 3212 * 3213 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3214 * or http://www.opensolaris.org/os/licensing. 3215 * See the License for the specific language governing permissions 3216 * and limitations under the License. 3217 * 3218 * When distributing Covered Code, include this CDDL HEADER in each 3219 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3220 * If applicable, add the following below this CDDL HEADER, with the 3221 * fields enclosed by brackets "[]" replaced with your own identifying 3222 * information: Portions Copyright [yyyy] [name of copyright owner] 3223 * 3224 * CDDL HEADER END 3225 */ 3226 /* 3227 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 3228 * 3229 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 3230 * Use is subject to license terms. 3231 */ 3232 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stdint.h" 2 3233 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 2 3234 3235 3236 3237 3238 3239 3240 /* Inclusion of <stddef.h> breaks namespace, therefore define wchar_t */ 3241 3242 /* 3243 * wchar_t is a built-in type in standard C++ and as such is not 3244 * defined here when using standard C++. However, the GNU compiler 3245 * fixincludes utility nonetheless creates its own version of this 3246 * header for use by gcc and g++. In that version it adds a redundant 3247 * guard for __cplusplus. To avoid the creation of a gcc/g++ specific 3248 * header we need to include the following magic comment: 3249 * 3250 * we must use the C++ compiler's type 3251 * 3252 * The above comment should not be removed or changed until GNU 3253 * gcc/fixinc/inclhack.def is updated to bypass this header. 3254 */ 3255 # 81 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 3256 typedef struct { 3257 intmax_t quot; 3258 intmax_t rem; 3259 } imaxdiv_t; 3260 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 3261 extern intmax_t imaxabs(intmax_t); 3262 extern imaxdiv_t imaxdiv(intmax_t, intmax_t); 3263 extern intmax_t strtoimax(const char *, char **, 3264 int); 3265 extern uintmax_t strtoumax(const char *, char **, 3266 int); 3267 extern intmax_t wcstoimax(const wchar_t *, 3268 wchar_t **, int); 3269 extern uintmax_t wcstoumax(const wchar_t *, 3270 wchar_t **, int); 3271 # 302 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdlib.h" 2 3272 extern uint32_t arc4random(void); 3273 extern void arc4random_buf(void *, size_t); 3274 extern uint32_t arc4random_uniform(uint32_t); 3275 extern void freezero(void *, size_t); 3276 extern void *recallocarray(void *, size_t, size_t, size_t); 3277 # 35 "../common/zones_paths.c" 2 3278 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 1 3279 /* 3280 * CDDL HEADER START 3281 * 3282 * The contents of this file are subject to the terms of the 3283 * Common Development and Distribution License (the "License"). 3284 * You may not use this file except in compliance with the License. 3285 * 3286 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3287 * or http://www.opensolaris.org/os/licensing. 3288 * See the License for the specific language governing permissions 3289 * and limitations under the License. 3290 * 3291 * When distributing Covered Code, include this CDDL HEADER in each 3292 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3293 * If applicable, add the following below this CDDL HEADER, with the 3294 * fields enclosed by brackets "[]" replaced with your own identifying 3295 * information: Portions Copyright [yyyy] [name of copyright owner] 3296 * 3297 * CDDL HEADER END 3298 */ 3299 3300 /* 3301 * Copyright 2014 PALO, Richard. 3302 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 3303 * Copyright (c) 2013 Gary Mills 3304 * 3305 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 3306 */ 3307 3308 /* Copyright (c) 1988 AT&T */ 3309 /* All Rights Reserved */ 3310 3311 /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ 3312 3313 3314 3315 3316 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 3317 /* 3318 * CDDL HEADER START 3319 * 3320 * The contents of this file are subject to the terms of the 3321 * Common Development and Distribution License (the "License"). 3322 * You may not use this file except in compliance with the License. 3323 * 3324 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3325 * or http://www.opensolaris.org/os/licensing. 3326 * See the License for the specific language governing permissions 3327 * and limitations under the License. 3328 * 3329 * When distributing Covered Code, include this CDDL HEADER in each 3330 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3331 * If applicable, add the following below this CDDL HEADER, with the 3332 * fields enclosed by brackets "[]" replaced with your own identifying 3333 * information: Portions Copyright [yyyy] [name of copyright owner] 3334 * 3335 * CDDL HEADER END 3336 */ 3337 3338 /* 3339 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 3340 * Copyright 2016 Joyent, Inc. 3341 * 3342 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 3343 * Use is subject to license terms. 3344 */ 3345 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 2 3346 3347 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 3348 /* 3349 * This file and its contents are supplied under the terms of the 3350 * Common Development and Distribution License ("CDDL"), version 1.0. 3351 * You may only use this file in accordance with the terms of version 3352 * 1.0 of the CDDL. 3353 * 3354 * A full copy of the text of the CDDL should have accompanied this 3355 * source. A copy of the CDDL is also available via the Internet at 3356 * http://www.illumos.org/license/CDDL. 3357 */ 3358 3359 /* 3360 * Copyright 2014-2016 PALO, Richard. 3361 */ 3362 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 2 3363 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 3364 /* 3365 * CDDL HEADER START 3366 * 3367 * The contents of this file are subject to the terms of the 3368 * Common Development and Distribution License (the "License"). 3369 * You may not use this file except in compliance with the License. 3370 * 3371 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3372 * or http://www.opensolaris.org/os/licensing. 3373 * See the License for the specific language governing permissions 3374 * and limitations under the License. 3375 * 3376 * When distributing Covered Code, include this CDDL HEADER in each 3377 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3378 * If applicable, add the following below this CDDL HEADER, with the 3379 * fields enclosed by brackets "[]" replaced with your own identifying 3380 * information: Portions Copyright [yyyy] [name of copyright owner] 3381 * 3382 * CDDL HEADER END 3383 */ 3384 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 3385 /* All Rights Reserved */ 3386 3387 3388 /* 3389 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 3390 * Use is subject to license terms. 3391 * 3392 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 3393 * Copyright 2016 Joyent, Inc. 3394 */ 3395 3396 3397 3398 3399 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 3400 /* 3401 * CDDL HEADER START 3402 * 3403 * The contents of this file are subject to the terms of the 3404 * Common Development and Distribution License (the "License"). 3405 * You may not use this file except in compliance with the License. 3406 * 3407 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3408 * or http://www.opensolaris.org/os/licensing. 3409 * See the License for the specific language governing permissions 3410 * and limitations under the License. 3411 * 3412 * When distributing Covered Code, include this CDDL HEADER in each 3413 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3414 * If applicable, add the following below this CDDL HEADER, with the 3415 * fields enclosed by brackets "[]" replaced with your own identifying 3416 * information: Portions Copyright [yyyy] [name of copyright owner] 3417 * 3418 * CDDL HEADER END 3419 */ 3420 3421 /* 3422 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 3423 * Copyright 2016 Joyent, Inc. 3424 * 3425 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 3426 * Use is subject to license terms. 3427 */ 3428 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 3429 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 3430 /* 3431 * CDDL HEADER START 3432 * 3433 * The contents of this file are subject to the terms of the 3434 * Common Development and Distribution License (the "License"). 3435 * You may not use this file except in compliance with the License. 3436 * 3437 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3438 * or http://www.opensolaris.org/os/licensing. 3439 * See the License for the specific language governing permissions 3440 * and limitations under the License. 3441 * 3442 * 3443 * When distributing Covered Code, include this CDDL HEADER in each 3444 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3445 * If applicable, add the following below this CDDL HEADER, with the 3446 * fields enclosed by brackets "[]" replaced with your own identifying 3447 * information: Portions Copyright [yyyy] [name of copyright owner] 3448 * 3449 * CDDL HEADER END 3450 */ 3451 3452 /* 3453 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 3454 * Use is subject to license terms. 3455 * Copyright 2016 Joyent, Inc. 3456 */ 3457 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 3458 3459 /* 3460 * Machine dependent definitions moved to <sys/machtypes.h>. 3461 */ 3462 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machtypes.h" 1 3463 /* 3464 * CDDL HEADER START 3465 * 3466 * The contents of this file are subject to the terms of the 3467 * Common Development and Distribution License, Version 1.0 only 3468 * (the "License"). You may not use this file except in compliance 3469 * with the License. 3470 * 3471 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3472 * or http://www.opensolaris.org/os/licensing. 3473 * See the License for the specific language governing permissions 3474 * and limitations under the License. 3475 * 3476 * When distributing Covered Code, include this CDDL HEADER in each 3477 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3478 * If applicable, add the following below this CDDL HEADER, with the 3479 * fields enclosed by brackets "[]" replaced with your own identifying 3480 * information: Portions Copyright [yyyy] [name of copyright owner] 3481 * 3482 * CDDL HEADER END 3483 */ 3484 /* 3485 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 3486 * Use is subject to license terms. 3487 */ 3488 3489 3490 3491 3492 #pragma ident "%Z%%M% %I% %E% SMI" 3493 3494 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 3495 /* 3496 * CDDL HEADER START 3497 * 3498 * The contents of this file are subject to the terms of the 3499 * Common Development and Distribution License (the "License"). 3500 * You may not use this file except in compliance with the License. 3501 * 3502 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3503 * or http://www.opensolaris.org/os/licensing. 3504 * See the License for the specific language governing permissions 3505 * and limitations under the License. 3506 * 3507 * When distributing Covered Code, include this CDDL HEADER in each 3508 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3509 * If applicable, add the following below this CDDL HEADER, with the 3510 * fields enclosed by brackets "[]" replaced with your own identifying 3511 * information: Portions Copyright [yyyy] [name of copyright owner] 3512 * 3513 * CDDL HEADER END 3514 */ 3515 3516 /* 3517 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 3518 * Copyright 2016 Joyent, Inc. 3519 * 3520 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 3521 * Use is subject to license terms. 3522 */ 3523 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machtypes.h" 2 3524 3525 3526 3527 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/ia32/sys/machtypes.h" 1 3528 /* 3529 * CDDL HEADER START 3530 * 3531 * The contents of this file are subject to the terms of the 3532 * Common Development and Distribution License (the "License"). 3533 * You may not use this file except in compliance with the License. 3534 * 3535 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3536 * or http://www.opensolaris.org/os/licensing. 3537 * See the License for the specific language governing permissions 3538 * and limitations under the License. 3539 * 3540 * When distributing Covered Code, include this CDDL HEADER in each 3541 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3542 * If applicable, add the following below this CDDL HEADER, with the 3543 * fields enclosed by brackets "[]" replaced with your own identifying 3544 * information: Portions Copyright [yyyy] [name of copyright owner] 3545 * 3546 * CDDL HEADER END 3547 */ 3548 /* 3549 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 3550 * Use is subject to license terms. 3551 */ 3552 3553 3554 3555 3556 #pragma ident "%Z%%M% %I% %E% SMI" 3557 3558 3559 3560 3561 3562 /* 3563 * Machine dependent types: 3564 * 3565 * intel ia32 Version 3566 */ 3567 # 61 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/ia32/sys/machtypes.h" 3568 typedef struct _label_t { long val[8]; } label_t; 3569 3570 3571 3572 typedef unsigned char lock_t; /* lock work for busy wait */ 3573 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machtypes.h" 2 3574 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 3575 3576 /* 3577 * Include fixed width type declarations proposed by the ISO/JTC1/SC22/WG14 C 3578 * committee's working draft for the revision of the current ISO C standard, 3579 * ISO/IEC 9899:1990 Programming language - C. These are not currently 3580 * required by any standard but constitute a useful, general purpose set 3581 * of type definitions which is namespace clean with respect to all standards. 3582 */ 3583 3584 3585 3586 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 3587 /* 3588 * CDDL HEADER START 3589 * 3590 * The contents of this file are subject to the terms of the 3591 * Common Development and Distribution License, Version 1.0 only 3592 * (the "License"). You may not use this file except in compliance 3593 * with the License. 3594 * 3595 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 3596 * or http://www.opensolaris.org/os/licensing. 3597 * See the License for the specific language governing permissions 3598 * and limitations under the License. 3599 * 3600 * When distributing Covered Code, include this CDDL HEADER in each 3601 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 3602 * If applicable, add the following below this CDDL HEADER, with the 3603 * fields enclosed by brackets "[]" replaced with your own identifying 3604 * information: Portions Copyright [yyyy] [name of copyright owner] 3605 * 3606 * CDDL HEADER END 3607 */ 3608 /* 3609 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 3610 * 3611 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 3612 * Use is subject to license terms. 3613 */ 3614 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 3615 # 65 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3616 /* 3617 * Strictly conforming ANSI C environments prior to the 1999 3618 * revision of the C Standard (ISO/IEC 9899:1999) do not have 3619 * the long long data type. 3620 */ 3621 3622 typedef long long longlong_t; 3623 typedef unsigned long long u_longlong_t; 3624 # 85 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3625 /* 3626 * These types (t_{u}scalar_t) exist because the XTI/TPI/DLPI standards had 3627 * to use them instead of int32_t and uint32_t because DEC had 3628 * shipped 64-bit wide. 3629 */ 3630 3631 typedef int32_t t_scalar_t; 3632 typedef uint32_t t_uscalar_t; 3633 3634 3635 3636 3637 3638 /* 3639 * POSIX Extensions 3640 */ 3641 typedef unsigned char uchar_t; 3642 typedef unsigned short ushort_t; 3643 typedef unsigned int uint_t; 3644 typedef unsigned long ulong_t; 3645 3646 typedef char *caddr_t; /* ?<core address> type */ 3647 typedef long daddr_t; /* <disk address> type */ 3648 typedef short cnt_t; /* ?<count> type */ 3649 3650 3651 3652 3653 typedef long ptrdiff_t; /* pointer difference */ 3654 3655 3656 3657 3658 3659 /* 3660 * VM-related types 3661 */ 3662 typedef ulong_t pfn_t; /* page frame number */ 3663 typedef ulong_t pgcnt_t; /* number of pages */ 3664 typedef long spgcnt_t; /* signed number of pages */ 3665 3666 typedef uchar_t use_t; /* use count for swap. */ 3667 typedef short sysid_t; 3668 typedef short index_t; 3669 typedef void *timeout_id_t; /* opaque handle from timeout(9F) */ 3670 typedef void *bufcall_id_t; /* opaque handle from bufcall(9F) */ 3671 3672 /* 3673 * The size of off_t and related types depends on the setting of 3674 * _FILE_OFFSET_BITS. (Note that other system headers define other types 3675 * related to those defined here.) 3676 * 3677 * If _LARGEFILE64_SOURCE is defined, variants of these types that are 3678 * explicitly 64 bits wide become available. 3679 */ 3680 # 160 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3681 typedef ulong_t ino_t; /* expanded inode type */ 3682 typedef long blkcnt_t; /* count of file blocks */ 3683 typedef ulong_t fsblkcnt_t; /* count of file system blocks */ 3684 typedef ulong_t fsfilcnt_t; /* count of files */ 3685 # 173 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3686 typedef ino_t ino64_t; /* expanded inode type */ 3687 typedef blkcnt_t blkcnt64_t; /* count of file blocks */ 3688 typedef fsblkcnt_t fsblkcnt64_t; /* count of file system blocks */ 3689 typedef fsfilcnt_t fsfilcnt64_t; /* count of files */ 3690 # 186 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3691 typedef int blksize_t; /* used for block sizes */ 3692 3693 3694 3695 3696 3697 3698 3699 typedef enum { B_FALSE, B_TRUE } boolean_t; 3700 # 205 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3701 /* 3702 * The {u,}pad64_t types can be used in structures such that those structures 3703 * may be accessed by code produced by compilation environments which don't 3704 * support a 64 bit integral datatype. The intention is not to allow 3705 * use of these fields in such environments, but to maintain the alignment 3706 * and offsets of the structure. 3707 * 3708 * Similar comments for {u,}pad128_t. 3709 * 3710 * Note that these types do NOT generate any stronger alignment constraints 3711 * than those available in the underlying ABI. See <sys/isa_defs.h> 3712 */ 3713 3714 typedef int64_t pad64_t; 3715 typedef uint64_t upad64_t; 3716 # 232 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3717 typedef union { 3718 long double _q; 3719 int32_t _l[4]; 3720 } pad128_t; 3721 3722 typedef union { 3723 long double _q; 3724 uint32_t _l[4]; 3725 } upad128_t; 3726 3727 typedef longlong_t offset_t; 3728 typedef u_longlong_t u_offset_t; 3729 typedef u_longlong_t len_t; 3730 typedef u_longlong_t diskaddr_t; 3731 3732 3733 3734 3735 /* 3736 * Definitions remaining from previous partial support for 64-bit file 3737 * offsets. This partial support for devices greater than 2gb requires 3738 * compiler support for long long. 3739 */ 3740 3741 typedef union { 3742 offset_t _f; /* Full 64 bit offset value */ 3743 struct { 3744 int32_t _l; /* lower 32 bits of offset value */ 3745 int32_t _u; /* upper 32 bits of offset value */ 3746 } _p; 3747 } lloff_t; 3748 # 276 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3749 typedef union { 3750 longlong_t _f; /* Full 64 bit disk address value */ 3751 struct { 3752 int32_t _l; /* lower 32 bits of disk address value */ 3753 int32_t _u; /* upper 32 bits of disk address value */ 3754 } _p; 3755 } lldaddr_t; 3756 # 295 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3757 typedef uint_t k_fltset_t; /* kernel fault set type */ 3758 3759 /* 3760 * The following type is for various kinds of identifiers. The 3761 * actual type must be the same for all since some system calls 3762 * (such as sigsend) take arguments that may be any of these 3763 * types. The enumeration type idtype_t defined in sys/procset.h 3764 * is used to indicate what type of id is being specified -- 3765 * a process id, process group id, session id, scheduling class id, 3766 * user id, group id, project id, task id or zone id. 3767 */ 3768 3769 typedef int id_t; 3770 3771 3772 3773 3774 typedef id_t lgrp_id_t; /* lgroup ID */ 3775 3776 /* 3777 * Type useconds_t is an unsigned integral type capable of storing 3778 * values at least in the range of zero to 1,000,000. 3779 */ 3780 typedef uint_t useconds_t; /* Time, in microseconds */ 3781 3782 3783 3784 typedef long suseconds_t; /* signed # of microseconds */ 3785 3786 3787 /* 3788 * Typedefs for dev_t components. 3789 */ 3790 3791 typedef uint_t major_t; /* major part of device number */ 3792 typedef uint_t minor_t; /* minor part of device number */ 3793 3794 3795 3796 3797 3798 /* 3799 * The data type of a thread priority. 3800 */ 3801 typedef short pri_t; 3802 3803 /* 3804 * The data type for a CPU flags field. (Can be extended to larger unsigned 3805 * types, if needed, limited by ability to update atomically.) 3806 */ 3807 typedef ushort_t cpu_flag_t; 3808 3809 /* 3810 * For compatibility reasons the following typedefs (prefixed o_) 3811 * can't grow regardless of the EFT definition. Although, 3812 * applications should not explicitly use these typedefs 3813 * they may be included via a system header definition. 3814 * WARNING: These typedefs may be removed in a future 3815 * release. 3816 * ex. the definitions in s5inode.h (now obsoleted) 3817 * remained small to preserve compatibility 3818 * in the S5 file system type. 3819 */ 3820 typedef ushort_t o_mode_t; /* old file attribute type */ 3821 typedef short o_dev_t; /* old device type */ 3822 typedef ushort_t o_uid_t; /* old UID type */ 3823 typedef o_uid_t o_gid_t; /* old GID type */ 3824 typedef short o_nlink_t; /* old file link type */ 3825 typedef short o_pid_t; /* old process id type */ 3826 typedef ushort_t o_ino_t; /* old inode type */ 3827 3828 3829 /* 3830 * POSIX and XOPEN Declarations 3831 */ 3832 typedef int key_t; /* IPC key type */ 3833 3834 typedef uint_t mode_t; /* file attribute type */ 3835 # 382 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3836 typedef uid_t gid_t; /* GID type */ 3837 3838 typedef uint32_t datalink_id_t; 3839 typedef uint32_t vrid_t; 3840 3841 typedef id_t taskid_t; 3842 typedef id_t projid_t; 3843 typedef id_t poolid_t; 3844 typedef id_t zoneid_t; 3845 typedef id_t ctid_t; 3846 3847 /* 3848 * POSIX definitions are same as defined in thread.h and synch.h. 3849 * Any changes made to here should be reflected in corresponding 3850 * files as described in comments. 3851 */ 3852 typedef uint_t pthread_t; /* = thread_t in thread.h */ 3853 typedef uint_t pthread_key_t; /* = thread_key_t in thread.h */ 3854 3855 /* "Magic numbers" tagging synchronization object types */ 3856 3857 3858 3859 3860 3861 typedef struct _pthread_mutex { /* = mutex_t in synch.h */ 3862 struct { 3863 uint16_t __pthread_mutex_flag1; 3864 uint8_t __pthread_mutex_flag2; 3865 uint8_t __pthread_mutex_ceiling; 3866 uint16_t __pthread_mutex_type; 3867 uint16_t __pthread_mutex_magic; 3868 } __pthread_mutex_flags; 3869 union { 3870 struct { 3871 uint8_t __pthread_mutex_pad[8]; 3872 } __pthread_mutex_lock64; 3873 struct { 3874 uint32_t __pthread_ownerpid; 3875 uint32_t __pthread_lockword; 3876 } __pthread_mutex_lock32; 3877 upad64_t __pthread_mutex_owner64; 3878 } __pthread_mutex_lock; 3879 upad64_t __pthread_mutex_data; 3880 } pthread_mutex_t; 3881 3882 typedef struct _pthread_cond { /* = cond_t in synch.h */ 3883 struct { 3884 uint8_t __pthread_cond_flag[4]; 3885 uint16_t __pthread_cond_type; 3886 uint16_t __pthread_cond_magic; 3887 } __pthread_cond_flags; 3888 upad64_t __pthread_cond_data; 3889 } pthread_cond_t; 3890 3891 /* 3892 * UNIX 98 Extension 3893 */ 3894 typedef struct _pthread_rwlock { /* = rwlock_t in synch.h */ 3895 int32_t __pthread_rwlock_readers; 3896 uint16_t __pthread_rwlock_type; 3897 uint16_t __pthread_rwlock_magic; 3898 pthread_mutex_t __pthread_rwlock_mutex; 3899 pthread_cond_t __pthread_rwlock_readercv; 3900 pthread_cond_t __pthread_rwlock_writercv; 3901 } pthread_rwlock_t; 3902 3903 /* 3904 * SUSV3 3905 */ 3906 typedef struct { 3907 uint32_t __pthread_barrier_count; 3908 uint32_t __pthread_barrier_current; 3909 upad64_t __pthread_barrier_cycle; 3910 upad64_t __pthread_barrier_reserved; 3911 pthread_mutex_t __pthread_barrier_lock; 3912 pthread_cond_t __pthread_barrier_cond; 3913 } pthread_barrier_t; 3914 3915 typedef pthread_mutex_t pthread_spinlock_t; 3916 3917 /* 3918 * attributes for threads, dynamically allocated by library 3919 */ 3920 typedef struct _pthread_attr { 3921 void *__pthread_attrp; 3922 } pthread_attr_t; 3923 3924 /* 3925 * attributes for mutex, dynamically allocated by library 3926 */ 3927 typedef struct _pthread_mutexattr { 3928 void *__pthread_mutexattrp; 3929 } pthread_mutexattr_t; 3930 3931 /* 3932 * attributes for cond, dynamically allocated by library 3933 */ 3934 typedef struct _pthread_condattr { 3935 void *__pthread_condattrp; 3936 } pthread_condattr_t; 3937 3938 /* 3939 * pthread_once 3940 */ 3941 typedef struct _once { 3942 upad64_t __pthread_once_pad[4]; 3943 } pthread_once_t; 3944 3945 /* 3946 * UNIX 98 Extensions 3947 * attributes for rwlock, dynamically allocated by library 3948 */ 3949 typedef struct _pthread_rwlockattr { 3950 void *__pthread_rwlockattrp; 3951 } pthread_rwlockattr_t; 3952 3953 /* 3954 * SUSV3 3955 * attributes for pthread_barrier_t, dynamically allocated by library 3956 */ 3957 typedef struct { 3958 void *__pthread_barrierattrp; 3959 } pthread_barrierattr_t; 3960 3961 typedef ulong_t dev_t; /* expanded device type */ 3962 3963 3964 typedef uint_t nlink_t; /* file link type */ 3965 typedef int pid_t; /* process id type */ 3966 # 537 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3967 typedef long time_t; /* time of day in seconds */ 3968 # 547 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3969 typedef int clockid_t; /* clock identifier type */ 3970 3971 3972 3973 3974 typedef int timer_t; /* timer identifier type */ 3975 3976 3977 3978 3979 /* BEGIN CSTYLED */ 3980 typedef unsigned char unchar; 3981 typedef unsigned short ushort; 3982 typedef unsigned int uint; 3983 typedef unsigned long ulong; 3984 /* END CSTYLED */ 3985 # 605 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3986 /* 3987 * The following is the value of type id_t to use to indicate the 3988 * caller's current id. See procset.h for the type idtype_t 3989 * which defines which kind of id is being specified. 3990 */ 3991 # 620 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 3992 /* 3993 * The following value of type pfn_t is used to indicate 3994 * invalid page frame number. 3995 */ 3996 3997 3998 3999 /* BEGIN CSTYLED */ 4000 typedef unsigned char u_char; 4001 typedef unsigned short u_short; 4002 typedef unsigned int u_int; 4003 typedef unsigned long u_long; 4004 typedef struct _quad { int val[2]; } quad_t; /* used by UFS */ 4005 typedef quad_t quad; /* used by UFS */ 4006 /* END CSTYLED */ 4007 4008 /* 4009 * Nested include for BSD/sockets source compatibility. 4010 * (The select macros used to be defined here). 4011 */ 4012 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 1 4013 /* 4014 * CDDL HEADER START 4015 * 4016 * The contents of this file are subject to the terms of the 4017 * Common Development and Distribution License (the "License"). 4018 * You may not use this file except in compliance with the License. 4019 * 4020 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4021 * or http://www.opensolaris.org/os/licensing. 4022 * See the License for the specific language governing permissions 4023 * and limitations under the License. 4024 * 4025 * When distributing Covered Code, include this CDDL HEADER in each 4026 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4027 * If applicable, add the following below this CDDL HEADER, with the 4028 * fields enclosed by brackets "[]" replaced with your own identifying 4029 * information: Portions Copyright [yyyy] [name of copyright owner] 4030 * 4031 * CDDL HEADER END 4032 */ 4033 4034 /* 4035 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 4036 * 4037 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 4038 * 4039 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 4040 * Use is subject to license terms. 4041 */ 4042 4043 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 4044 /* All Rights Reserved */ 4045 4046 /* 4047 * University Copyright- Copyright (c) 1982, 1986, 1988 4048 * The Regents of the University of California 4049 * All Rights Reserved 4050 * 4051 * University Acknowledgment- Portions of this document are derived from 4052 * software developed by the University of California, Berkeley, and its 4053 * contributors. 4054 */ 4055 4056 4057 4058 4059 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 4060 /* 4061 * CDDL HEADER START 4062 * 4063 * The contents of this file are subject to the terms of the 4064 * Common Development and Distribution License (the "License"). 4065 * You may not use this file except in compliance with the License. 4066 * 4067 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4068 * or http://www.opensolaris.org/os/licensing. 4069 * See the License for the specific language governing permissions 4070 * and limitations under the License. 4071 * 4072 * When distributing Covered Code, include this CDDL HEADER in each 4073 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4074 * If applicable, add the following below this CDDL HEADER, with the 4075 * fields enclosed by brackets "[]" replaced with your own identifying 4076 * information: Portions Copyright [yyyy] [name of copyright owner] 4077 * 4078 * CDDL HEADER END 4079 */ 4080 4081 /* 4082 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 4083 * Copyright 2016 Joyent, Inc. 4084 * 4085 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 4086 * Use is subject to license terms. 4087 */ 4088 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 2 4089 4090 4091 4092 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 1 4093 /* 4094 * CDDL HEADER START 4095 * 4096 * The contents of this file are subject to the terms of the 4097 * Common Development and Distribution License, Version 1.0 only 4098 * (the "License"). You may not use this file except in compliance 4099 * with the License. 4100 * 4101 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4102 * or http://www.opensolaris.org/os/licensing. 4103 * See the License for the specific language governing permissions 4104 * and limitations under the License. 4105 * 4106 * When distributing Covered Code, include this CDDL HEADER in each 4107 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4108 * If applicable, add the following below this CDDL HEADER, with the 4109 * fields enclosed by brackets "[]" replaced with your own identifying 4110 * information: Portions Copyright [yyyy] [name of copyright owner] 4111 * 4112 * CDDL HEADER END 4113 */ 4114 /* 4115 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 4116 * Use is subject to license terms. 4117 */ 4118 4119 /* 4120 * Implementation-private. This header should not be included 4121 * directly by an application. The application should instead 4122 * include <time.h> which includes this header conditionally 4123 * depending on which feature test macros are defined. By default, 4124 * this header is included by <time.h>. X/Open and POSIX 4125 * standards requirements result in this header being included 4126 * by <time.h> only under a restricted set of conditions. 4127 */ 4128 4129 4130 4131 4132 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 4133 /* 4134 * CDDL HEADER START 4135 * 4136 * The contents of this file are subject to the terms of the 4137 * Common Development and Distribution License (the "License"). 4138 * You may not use this file except in compliance with the License. 4139 * 4140 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4141 * or http://www.opensolaris.org/os/licensing. 4142 * See the License for the specific language governing permissions 4143 * and limitations under the License. 4144 * 4145 * When distributing Covered Code, include this CDDL HEADER in each 4146 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4147 * If applicable, add the following below this CDDL HEADER, with the 4148 * fields enclosed by brackets "[]" replaced with your own identifying 4149 * information: Portions Copyright [yyyy] [name of copyright owner] 4150 * 4151 * CDDL HEADER END 4152 */ 4153 4154 /* 4155 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 4156 * Copyright 2016 Joyent, Inc. 4157 * 4158 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 4159 * Use is subject to license terms. 4160 */ 4161 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 2 4162 # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 4163 /* 4164 * Time expressed in seconds and nanoseconds 4165 */ 4166 4167 typedef struct timespec { /* definition per POSIX.4 */ 4168 time_t tv_sec; /* seconds */ 4169 long tv_nsec; /* and nanoseconds */ 4170 } timespec_t; 4171 # 81 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 4172 typedef struct timespec timestruc_t; /* definition per SVr4 */ 4173 4174 /* 4175 * The following has been left in for backward compatibility. Portable 4176 * applications should not use the structure name timestruc. 4177 */ 4178 4179 4180 4181 4182 4183 /* 4184 * Timer specification 4185 */ 4186 typedef struct itimerspec { /* definition per POSIX.4 */ 4187 struct timespec it_interval; /* timer period */ 4188 struct timespec it_value; /* timer expiration */ 4189 } itimerspec_t; 4190 # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 2 4191 4192 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 4193 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 4194 /* All Rights Reserved */ 4195 4196 4197 /* 4198 * Copyright (c) 1982, 1986, 1993 Regents of the University of California. 4199 * All rights reserved. The Berkeley software License Agreement 4200 * specifies the terms and conditions for redistribution. 4201 */ 4202 4203 /* 4204 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 4205 * 4206 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 4207 * Use is subject to license terms. 4208 * 4209 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 4210 */ 4211 4212 /* 4213 * Copyright (c) 2013, 2015 by Delphix. All rights reserved. 4214 */ 4215 4216 4217 4218 4219 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 4220 /* 4221 * CDDL HEADER START 4222 * 4223 * The contents of this file are subject to the terms of the 4224 * Common Development and Distribution License (the "License"). 4225 * You may not use this file except in compliance with the License. 4226 * 4227 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4228 * or http://www.opensolaris.org/os/licensing. 4229 * See the License for the specific language governing permissions 4230 * and limitations under the License. 4231 * 4232 * When distributing Covered Code, include this CDDL HEADER in each 4233 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4234 * If applicable, add the following below this CDDL HEADER, with the 4235 * fields enclosed by brackets "[]" replaced with your own identifying 4236 * information: Portions Copyright [yyyy] [name of copyright owner] 4237 * 4238 * CDDL HEADER END 4239 */ 4240 4241 /* 4242 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 4243 * Copyright 2016 Joyent, Inc. 4244 * 4245 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 4246 * Use is subject to license terms. 4247 */ 4248 # 28 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 2 4249 4250 /* 4251 * Structure returned by gettimeofday(2) system call, 4252 * and used in other calls. 4253 */ 4254 # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4255 struct timeval { 4256 time_t tv_sec; /* seconds */ 4257 suseconds_t tv_usec; /* and microseconds */ 4258 }; 4259 # 84 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4260 struct timezone { 4261 int tz_minuteswest; /* minutes west of Greenwich */ 4262 int tz_dsttime; /* type of dst correction */ 4263 }; 4264 # 96 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4265 /* 4266 * Needed for longlong_t type. Placement of this due to <sys/types.h> 4267 * including <sys/select.h> which relies on the presense of the itimerval 4268 * structure. 4269 */ 4270 4271 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 4272 /* 4273 * CDDL HEADER START 4274 * 4275 * The contents of this file are subject to the terms of the 4276 * Common Development and Distribution License (the "License"). 4277 * You may not use this file except in compliance with the License. 4278 * 4279 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4280 * or http://www.opensolaris.org/os/licensing. 4281 * See the License for the specific language governing permissions 4282 * and limitations under the License. 4283 * 4284 * When distributing Covered Code, include this CDDL HEADER in each 4285 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4286 * If applicable, add the following below this CDDL HEADER, with the 4287 * fields enclosed by brackets "[]" replaced with your own identifying 4288 * information: Portions Copyright [yyyy] [name of copyright owner] 4289 * 4290 * CDDL HEADER END 4291 */ 4292 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 4293 /* All Rights Reserved */ 4294 4295 4296 /* 4297 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 4298 * Use is subject to license terms. 4299 * 4300 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 4301 * Copyright 2016 Joyent, Inc. 4302 */ 4303 # 103 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 2 4304 # 123 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4305 /* 4306 * Operations on timevals. 4307 */ 4308 # 193 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4309 /* 4310 * Names of the interval timers, and structure 4311 * defining a timer setting. 4312 */ 4313 4314 4315 4316 /* time and when system is running on */ 4317 /* behalf of the process. */ 4318 4319 /* time profiling of multithreaded */ 4320 /* programs. */ 4321 4322 4323 struct itimerval { 4324 struct timeval it_interval; /* timer interval */ 4325 struct timeval it_value; /* current value */ 4326 }; 4327 # 239 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4328 /* 4329 * Definitions for commonly used resolutions. 4330 */ 4331 # 257 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4332 /* 4333 * Time expressed as a 64-bit nanosecond counter. 4334 */ 4335 typedef longlong_t hrtime_t; 4336 # 386 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4337 int adjtime(struct timeval *, struct timeval *); 4338 4339 4340 4341 4342 int futimesat(int, const char *, const struct timeval *); 4343 4344 4345 4346 4347 4348 int getitimer(int, struct itimerval *); 4349 int utimes(const char *, const struct timeval *); 4350 4351 4352 4353 4354 int setitimer(int, struct itimerval *, 4355 struct itimerval *); 4356 4357 4358 4359 4360 /* 4361 * gettimeofday() and settimeofday() were included in SVr4 due to their 4362 * common use in BSD based applications. They were to be included exactly 4363 * as in BSD, with two parameters. However, AT&T/USL noted that the second 4364 * parameter was unused and deleted it, thereby making a routine included 4365 * for compatibility, incompatible. 4366 * 4367 * XSH4.2 (spec 1170) defines gettimeofday and settimeofday to have two 4368 * parameters. 4369 * 4370 * This has caused general disagreement in the application community as to 4371 * the syntax of these routines. Solaris defaults to the XSH4.2 definition. 4372 * The flag _SVID_GETTOD may be used to force the SVID version. 4373 */ 4374 4375 4376 4377 4378 4379 int settimeofday(struct timeval *, void *); 4380 4381 hrtime_t gethrtime(void); 4382 hrtime_t gethrvtime(void); 4383 # 441 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 4384 int gettimeofday(struct timeval *, void *); 4385 4386 4387 4388 4389 /* 4390 * The inclusion of <time.h> is historical and was added for 4391 * backward compatibility in delta 1.2 when a number of definitions 4392 * were moved out of <sys/time.h>. More recently, the timespec and 4393 * itimerspec structure definitions, along with the _CLOCK_*, CLOCK_*, 4394 * _TIMER_*, and TIMER_* symbols were moved to <sys/time_impl.h>, 4395 * which is now included by <time.h>. This change was due to POSIX 4396 * 1003.1b-1993 and X/Open UNIX 98 requirements. For non-POSIX and 4397 * non-X/Open applications, including this header will still make 4398 * visible these definitions. 4399 */ 4400 4401 4402 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 1 4403 /* 4404 * CDDL HEADER START 4405 * 4406 * The contents of this file are subject to the terms of the 4407 * Common Development and Distribution License (the "License"). 4408 * You may not use this file except in compliance with the License. 4409 * 4410 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4411 * or http://www.opensolaris.org/os/licensing. 4412 * See the License for the specific language governing permissions 4413 * and limitations under the License. 4414 * 4415 * When distributing Covered Code, include this CDDL HEADER in each 4416 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4417 * If applicable, add the following below this CDDL HEADER, with the 4418 * fields enclosed by brackets "[]" replaced with your own identifying 4419 * information: Portions Copyright [yyyy] [name of copyright owner] 4420 * 4421 * CDDL HEADER END 4422 */ 4423 /* Copyright (c) 1988 AT&T */ 4424 /* All Rights Reserved */ 4425 4426 4427 /* 4428 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 4429 * 4430 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 4431 * Use is subject to license terms. 4432 */ 4433 /* 4434 * Copyright 2010 Nexenta Systems, Inc. Al rights reserved. 4435 * Copyright 2016 Joyent, Inc. 4436 */ 4437 4438 4439 4440 4441 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 4442 /* 4443 * CDDL HEADER START 4444 * 4445 * The contents of this file are subject to the terms of the 4446 * Common Development and Distribution License (the "License"). 4447 * You may not use this file except in compliance with the License. 4448 * 4449 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4450 * or http://www.opensolaris.org/os/licensing. 4451 * See the License for the specific language governing permissions 4452 * and limitations under the License. 4453 * 4454 * When distributing Covered Code, include this CDDL HEADER in each 4455 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4456 * If applicable, add the following below this CDDL HEADER, with the 4457 * fields enclosed by brackets "[]" replaced with your own identifying 4458 * information: Portions Copyright [yyyy] [name of copyright owner] 4459 * 4460 * CDDL HEADER END 4461 */ 4462 4463 /* 4464 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 4465 * Copyright 2016 Joyent, Inc. 4466 * 4467 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 4468 * Use is subject to license terms. 4469 */ 4470 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 2 4471 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/time_iso.h" 1 4472 /* 4473 * CDDL HEADER START 4474 * 4475 * The contents of this file are subject to the terms of the 4476 * Common Development and Distribution License, Version 1.0 only 4477 * (the "License"). You may not use this file except in compliance 4478 * with the License. 4479 * 4480 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4481 * or http://www.opensolaris.org/os/licensing. 4482 * See the License for the specific language governing permissions 4483 * and limitations under the License. 4484 * 4485 * When distributing Covered Code, include this CDDL HEADER in each 4486 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4487 * If applicable, add the following below this CDDL HEADER, with the 4488 * fields enclosed by brackets "[]" replaced with your own identifying 4489 * information: Portions Copyright [yyyy] [name of copyright owner] 4490 * 4491 * CDDL HEADER END 4492 */ 4493 /* Copyright (c) 1988 AT&T */ 4494 /* All Rights Reserved */ 4495 4496 /* 4497 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 4498 * Copyright 2014 PALO, Richard. 4499 * 4500 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 4501 * Use is subject to license terms. 4502 */ 4503 4504 /* 4505 * An application should not include this header directly. Instead it 4506 * should be included only through the inclusion of other Sun headers. 4507 * 4508 * The contents of this header is limited to identifiers specified in the 4509 * C Standard. Any new identifiers specified in future amendments to the 4510 * C Standard must be placed in this header. If these new identifiers 4511 * are required to also be in the C++ Standard "std" namespace, then for 4512 * anything other than macro definitions, corresponding "using" directives 4513 * must also be added to <time.h.h>. 4514 */ 4515 4516 4517 4518 4519 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 4520 /* 4521 * CDDL HEADER START 4522 * 4523 * The contents of this file are subject to the terms of the 4524 * Common Development and Distribution License (the "License"). 4525 * You may not use this file except in compliance with the License. 4526 * 4527 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4528 * or http://www.opensolaris.org/os/licensing. 4529 * See the License for the specific language governing permissions 4530 * and limitations under the License. 4531 * 4532 * When distributing Covered Code, include this CDDL HEADER in each 4533 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4534 * If applicable, add the following below this CDDL HEADER, with the 4535 * fields enclosed by brackets "[]" replaced with your own identifying 4536 * information: Portions Copyright [yyyy] [name of copyright owner] 4537 * 4538 * CDDL HEADER END 4539 */ 4540 4541 /* 4542 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 4543 * Copyright 2016 Joyent, Inc. 4544 * 4545 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 4546 * Use is subject to license terms. 4547 */ 4548 # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/time_iso.h" 2 4549 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 4550 /* 4551 * This file and its contents are supplied under the terms of the 4552 * Common Development and Distribution License ("CDDL"), version 1.0. 4553 * You may only use this file in accordance with the terms of version 4554 * 1.0 of the CDDL. 4555 * 4556 * A full copy of the text of the CDDL should have accompanied this 4557 * source. A copy of the CDDL is also available via the Internet at 4558 * http://www.illumos.org/license/CDDL. 4559 */ 4560 4561 /* 4562 * Copyright 2014-2016 PALO, Richard. 4563 */ 4564 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/time_iso.h" 2 4565 # 80 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/time_iso.h" 4566 struct tm { /* see ctime(3) */ 4567 int tm_sec; 4568 int tm_min; 4569 int tm_hour; 4570 int tm_mday; 4571 int tm_mon; 4572 int tm_year; 4573 int tm_wday; 4574 int tm_yday; 4575 int tm_isdst; 4576 }; 4577 4578 4579 extern char *asctime(const struct tm *); 4580 extern clock_t clock(void); 4581 extern char *ctime(const time_t *); 4582 extern double difftime(time_t, time_t); 4583 extern struct tm *gmtime(const time_t *); 4584 extern struct tm *localtime(const time_t *); 4585 extern time_t mktime(struct tm *); 4586 extern time_t time(time_t *); 4587 extern size_t strftime(char *, size_t, const char *, 4588 const struct tm *); 4589 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 2 4590 /* 4591 * C11 requires sys/time_impl.h for the definition of the struct timespec. 4592 */ 4593 4594 4595 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 4596 /* 4597 * CDDL HEADER START 4598 * 4599 * The contents of this file are subject to the terms of the 4600 * Common Development and Distribution License (the "License"). 4601 * You may not use this file except in compliance with the License. 4602 * 4603 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4604 * or http://www.opensolaris.org/os/licensing. 4605 * See the License for the specific language governing permissions 4606 * and limitations under the License. 4607 * 4608 * When distributing Covered Code, include this CDDL HEADER in each 4609 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4610 * If applicable, add the following below this CDDL HEADER, with the 4611 * fields enclosed by brackets "[]" replaced with your own identifying 4612 * information: Portions Copyright [yyyy] [name of copyright owner] 4613 * 4614 * CDDL HEADER END 4615 */ 4616 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 4617 /* All Rights Reserved */ 4618 4619 4620 /* 4621 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 4622 * Use is subject to license terms. 4623 * 4624 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 4625 * Copyright 2016 Joyent, Inc. 4626 */ 4627 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 2 4628 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 1 4629 /* 4630 * CDDL HEADER START 4631 * 4632 * The contents of this file are subject to the terms of the 4633 * Common Development and Distribution License, Version 1.0 only 4634 * (the "License"). You may not use this file except in compliance 4635 * with the License. 4636 * 4637 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4638 * or http://www.opensolaris.org/os/licensing. 4639 * See the License for the specific language governing permissions 4640 * and limitations under the License. 4641 * 4642 * When distributing Covered Code, include this CDDL HEADER in each 4643 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4644 * If applicable, add the following below this CDDL HEADER, with the 4645 * fields enclosed by brackets "[]" replaced with your own identifying 4646 * information: Portions Copyright [yyyy] [name of copyright owner] 4647 * 4648 * CDDL HEADER END 4649 */ 4650 /* 4651 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 4652 * Use is subject to license terms. 4653 */ 4654 4655 /* 4656 * Implementation-private. This header should not be included 4657 * directly by an application. The application should instead 4658 * include <time.h> which includes this header conditionally 4659 * depending on which feature test macros are defined. By default, 4660 * this header is included by <time.h>. X/Open and POSIX 4661 * standards requirements result in this header being included 4662 * by <time.h> only under a restricted set of conditions. 4663 */ 4664 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 2 4665 4666 4667 /* 4668 * Allow global visibility for symbols defined in 4669 * C++ "std" namespace in <iso/time_iso.h>. 4670 */ 4671 # 87 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 4672 extern struct tm *gmtime_r(const time_t *, 4673 struct tm *); 4674 extern struct tm *localtime_r(const time_t *, 4675 struct tm *); 4676 # 105 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 4677 extern char *strptime(const char *, const char *, 4678 struct tm *); 4679 4680 4681 4682 4683 4684 /* 4685 * Neither X/Open nor POSIX allow the inclusion of <signal.h> for the 4686 * definition of the sigevent structure. Both require the inclusion 4687 * of <signal.h> and <time.h> when using the timer_create() function. 4688 * However, X/Open also specifies that the sigevent structure be defined 4689 * in <time.h> as described in the header <signal.h>. This prevents 4690 * compiler warnings for applications that only include <time.h> and not 4691 * also <signal.h>. The sigval union and the sigevent structure is 4692 * therefore defined both here and in <sys/siginfo.h> which gets included 4693 * via inclusion of <signal.h>. 4694 */ 4695 4696 4697 union sigval { 4698 int sival_int; /* integer value */ 4699 void *sival_ptr; /* pointer value */ 4700 }; 4701 4702 4703 4704 4705 struct sigevent { 4706 int sigev_notify; /* notification mode */ 4707 int sigev_signo; /* signal number */ 4708 union sigval sigev_value; /* signal value */ 4709 void (*sigev_notify_function)(union sigval); 4710 pthread_attr_t *sigev_notify_attributes; 4711 int __sigev_pad2; 4712 }; 4713 4714 4715 extern int clock_getres(clockid_t, struct timespec *); 4716 extern int clock_gettime(clockid_t, struct timespec *); 4717 extern int clock_settime(clockid_t, const struct timespec *); 4718 extern int timer_create(clockid_t, struct sigevent *, 4719 timer_t *); 4720 extern int timer_delete(timer_t); 4721 extern int timer_getoverrun(timer_t); 4722 extern int timer_gettime(timer_t, struct itimerspec *); 4723 extern int timer_settime(timer_t, int, const struct itimerspec *, 4724 struct itimerspec *); 4725 4726 extern int nanosleep(const struct timespec *, struct timespec *); 4727 extern int clock_nanosleep(clockid_t, int, 4728 const struct timespec *, struct timespec *); 4729 4730 4731 4732 4733 4734 4735 extern void tzset(void); 4736 extern char *tzname[2]; 4737 4738 /* CLK_TCK marked as LEGACY in SUSv2 and removed in SUSv3 */ 4739 # 177 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 4740 extern long timezone; 4741 extern int daylight; 4742 4743 4744 4745 4746 4747 4748 extern time_t timegm(struct tm *); 4749 extern int cftime(char *, char *, const time_t *); 4750 extern int ascftime(char *, const char *, const struct tm *); 4751 extern long altzone; 4752 4753 4754 4755 4756 extern struct tm *getdate(const char *); 4757 4758 4759 4760 4761 4762 extern int getdate_err; 4763 4764 4765 4766 /* 4767 * ctime_r() & asctime_r() prototypes are defined here. 4768 */ 4769 4770 /* 4771 * Previous releases of Solaris, starting at 2.3, provided definitions of 4772 * various functions as specified in POSIX.1c, Draft 6. For some of these 4773 * functions, the final POSIX 1003.1c standard had a different number of 4774 * arguments and return values. 4775 * 4776 * The following segment of this header provides support for the standard 4777 * interfaces while supporting applications written under earlier 4778 * releases. The application defines appropriate values of the feature 4779 * test macros _POSIX_C_SOURCE and _POSIX_PTHREAD_SEMANTICS to indicate 4780 * whether it was written to expect the Draft 6 or standard versions of 4781 * these interfaces, before including this header. This header then 4782 * provides a mapping from the source version of the interface to an 4783 * appropriate binary interface. Such mappings permit an application 4784 * to be built from libraries and objects which have mixed expectations 4785 * of the definitions of these functions. 4786 * 4787 * For applications using the Draft 6 definitions, the binary symbol is the 4788 * same as the source symbol, and no explicit mapping is needed. For the 4789 * standard interface, the function func() is mapped to the binary symbol 4790 * _posix_func(). The preferred mechanism for the remapping is a compiler 4791 * #pragma. If the compiler does not provide such a #pragma, the header file 4792 * defines a static function func() which calls the _posix_func() version; 4793 * this has to be done instead of #define since POSIX specifies that an 4794 * application can #undef the symbol and still be bound to the correct 4795 * implementation. Unfortunately, the statics confuse lint so we fallback to 4796 * #define in that case. 4797 * 4798 * NOTE: Support for the Draft 6 definitions is provided for compatibility 4799 * only. New applications/libraries should use the standard definitions. 4800 */ 4801 # 280 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 4802 extern char *asctime_r(const struct tm *, char *, int); 4803 extern char *ctime_r(const time_t *, char *, int); 4804 # 292 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 4805 typedef struct _locale *locale_t; 4806 4807 4808 extern size_t strftime_l(char *, size_t, 4809 const char *, const struct tm *, locale_t); 4810 4811 4812 4813 4814 4815 /* 4816 * Note, the C11 standard requires that all the various base values that are 4817 * passed into timespec_get() be non-zero. Hence why TIME_UTC starts at one. 4818 */ 4819 4820 4821 extern int timespec_get(struct timespec *, int); 4822 # 460 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 2 4823 4824 4825 /* 4826 * The inclusion of <sys/select.h> is needed for the FD_CLR, 4827 * FD_ISSET, FD_SET, and FD_SETSIZE macros as well as the 4828 * select() prototype defined in the XOpen specifications 4829 * beginning with XSH4v2. Placement required after definition 4830 * for itimerval. 4831 */ 4832 4833 4834 4835 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 1 4836 /* 4837 * CDDL HEADER START 4838 * 4839 * The contents of this file are subject to the terms of the 4840 * Common Development and Distribution License (the "License"). 4841 * You may not use this file except in compliance with the License. 4842 * 4843 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4844 * or http://www.opensolaris.org/os/licensing. 4845 * See the License for the specific language governing permissions 4846 * and limitations under the License. 4847 * 4848 * When distributing Covered Code, include this CDDL HEADER in each 4849 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4850 * If applicable, add the following below this CDDL HEADER, with the 4851 * fields enclosed by brackets "[]" replaced with your own identifying 4852 * information: Portions Copyright [yyyy] [name of copyright owner] 4853 * 4854 * CDDL HEADER END 4855 */ 4856 4857 /* 4858 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 4859 * 4860 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 4861 * 4862 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 4863 * Use is subject to license terms. 4864 */ 4865 4866 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 4867 /* All Rights Reserved */ 4868 4869 /* 4870 * University Copyright- Copyright (c) 1982, 1986, 1988 4871 * The Regents of the University of California 4872 * All Rights Reserved 4873 * 4874 * University Acknowledgment- Portions of this document are derived from 4875 * software developed by the University of California, Berkeley, and its 4876 * contributors. 4877 */ 4878 # 473 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 2 4879 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 2 4880 # 62 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 4881 /* 4882 * The sigset_t type is defined in <sys/signal.h> and duplicated 4883 * in <sys/ucontext.h> as a result of XPG4v2 requirements. XPG6 4884 * now allows the visibility of signal.h in this header, however 4885 * an order of inclusion problem occurs as a result of inclusion 4886 * of <sys/select.h> in <signal.h> under certain conditions. 4887 * Rather than include <sys/signal.h> here, we've duplicated 4888 * the sigset_t type instead. This type is required for the XPG6 4889 * introduced pselect() function also declared in this header. 4890 */ 4891 4892 4893 typedef struct { /* signal set type */ 4894 unsigned int __sigbits[4]; 4895 } sigset_t; 4896 4897 4898 4899 4900 /* 4901 * Select uses bit masks of file descriptors in longs. 4902 * These macros manipulate such bit fields. 4903 * FD_SETSIZE may be defined by the user, but the default here 4904 * should be >= NOFILE (param.h). 4905 */ 4906 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 4907 typedef long fd_mask; 4908 4909 typedef long fds_mask; 4910 4911 /* 4912 * The value of _NBBY needs to be consistant with the value 4913 * of NBBY in <sys/param.h>. 4914 */ 4915 # 136 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 4916 typedef struct fd_set { 4917 4918 4919 4920 long fds_bits[(((65536)+(((sizeof (fds_mask) * 8))-1))/((sizeof (fds_mask) * 8)))]; 4921 } fd_set; 4922 # 159 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/select.h" 4923 extern int select(int, fd_set *, fd_set *, 4924 fd_set *, struct timeval *); 4925 4926 4927 extern int pselect(int, fd_set *, fd_set *, 4928 fd_set *, const struct timespec *, 4929 const sigset_t *); 4930 # 641 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 2 4931 4932 4933 4934 /* 4935 * _VOID was defined to be either void or char but this is not 4936 * required because previous SunOS compilers have accepted the void 4937 * type. However, because many system header and source files use the 4938 * void keyword, the volatile keyword, and ANSI C function prototypes, 4939 * non-ANSI compilers cannot compile the system anyway. The _VOID macro 4940 * should therefore not be used and remains for source compatibility 4941 * only. 4942 */ 4943 /* CSTYLED */ 4944 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 2 4945 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 1 4946 /* 4947 * CDDL HEADER START 4948 * 4949 * The contents of this file are subject to the terms of the 4950 * Common Development and Distribution License (the "License"). 4951 * You may not use this file except in compliance with the License. 4952 * 4953 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4954 * or http://www.opensolaris.org/os/licensing. 4955 * See the License for the specific language governing permissions 4956 * and limitations under the License. 4957 * 4958 * When distributing Covered Code, include this CDDL HEADER in each 4959 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 4960 * If applicable, add the following below this CDDL HEADER, with the 4961 * fields enclosed by brackets "[]" replaced with your own identifying 4962 * information: Portions Copyright [yyyy] [name of copyright owner] 4963 * 4964 * CDDL HEADER END 4965 */ 4966 4967 /* 4968 * Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T 4969 * All Rights Reserved 4970 * 4971 */ 4972 4973 /* 4974 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 4975 * Use is subject to license terms. 4976 */ 4977 4978 /* 4979 * WARNING: This is an implementation-specific header, 4980 * its contents are not guaranteed. Applications 4981 * should include <unistd.h> and not this header. 4982 */ 4983 4984 4985 4986 4987 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 4988 /* 4989 * CDDL HEADER START 4990 * 4991 * The contents of this file are subject to the terms of the 4992 * Common Development and Distribution License (the "License"). 4993 * You may not use this file except in compliance with the License. 4994 * 4995 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 4996 * or http://www.opensolaris.org/os/licensing. 4997 * See the License for the specific language governing permissions 4998 * and limitations under the License. 4999 * 5000 * When distributing Covered Code, include this CDDL HEADER in each 5001 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 5002 * If applicable, add the following below this CDDL HEADER, with the 5003 * fields enclosed by brackets "[]" replaced with your own identifying 5004 * information: Portions Copyright [yyyy] [name of copyright owner] 5005 * 5006 * CDDL HEADER END 5007 */ 5008 5009 /* 5010 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 5011 * Copyright 2016 Joyent, Inc. 5012 * 5013 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 5014 * Use is subject to license terms. 5015 */ 5016 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 2 5017 5018 5019 5020 5021 5022 /* command names for confstr */ 5023 5024 5025 5026 /* 5027 * command names for large file configuration information 5028 */ 5029 /* large file compilation environment configuration */ 5030 5031 5032 5033 5034 /* transitional large file interface configuration */ 5035 5036 5037 5038 5039 5040 /* UNIX 98 */ 5041 # 84 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5042 /* UNIX 03 */ 5043 # 103 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5044 /* command names for POSIX sysconf */ 5045 5046 /* POSIX.1 names */ 5047 # 114 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5048 /* SVR4 names */ 5049 5050 5051 5052 5053 /* 13 reserved for SVr4-ES/MP _SC_NACLS_MAX */ 5054 5055 5056 5057 5058 /* POSIX.4 names */ 5059 # 152 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5060 /* XPG4 names */ 5061 # 174 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5062 /* additional XSH4/XCU4 command names for sysconf */ 5063 5064 5065 5066 /* additional XPG4v2 (UNIX 95) command names */ 5067 5068 5069 5070 5071 5072 /* defined for XTI (XNS Issue 5) */ 5073 5074 5075 5076 5077 5078 5079 5080 /* 5081 * Hardware specific items 5082 * Note that not all items are supported on all architectures 5083 */ 5084 # 214 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5085 /* 5086 * POSIX.1c (pthreads) names. These values are defined above 5087 * the sub-500 range. See psarc case 1995/257. 5088 */ 5089 # 235 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5090 /* UNIX 98 */ 5091 # 244 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5092 /* UNIX 03 */ 5093 # 285 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5094 /* command names for POSIX pathconf */ 5095 5096 /* POSIX.1 names */ 5097 # 297 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5098 /* POSIX.4 names */ 5099 5100 5101 5102 /* UNIX 03 names */ 5103 # 315 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5104 /* UNIX 08 names */ 5105 5106 5107 /* 5108 * Large File Summit names 5109 * 5110 * This value matches the MIPS ABI choice, but leaves a large gap in the 5111 * value space. 5112 */ 5113 5114 5115 /* 5116 * Extended attributes 5117 */ 5118 5119 5120 5121 /* 5122 * If you add a _PC define above 101, you must change _PC_LAST (and truss). 5123 */ 5124 5125 5126 /* 5127 * Case sensitivity values (related to _PC_CASE_BEHAVIOR) 5128 */ 5129 5130 5131 5132 /* 5133 * The value of 0 is returned when 5134 * ACL's are not supported 5135 */ 5136 # 366 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5137 /* 5138 * Marked LEGACY in SUSv2 and removed in SUSv3. Though SUSv3 applications 5139 * should not rely on this value, it has been aligned with the current 5140 * standard to avoid confusion if used. 5141 */ 5142 # 408 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 5143 /* UNIX 03 names */ 5144 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 2 5145 5146 5147 5148 5149 5150 /* Symbolic constants for the "access" routine: */ 5151 # 61 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5152 /* Symbolic constants for the "lseek" routine: */ 5153 # 86 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5154 /* Path names: */ 5155 5156 5157 5158 5159 /* 5160 * compile-time symbolic constants, 5161 * Support does not mean the feature is enabled. 5162 * Use pathconf/sysconf to obtain actual configuration value. 5163 */ 5164 5165 /* Values unchanged in UNIX 03 */ 5166 5167 5168 5169 5170 5171 /* 5172 * POSIX.1b compile-time symbolic constants. 5173 */ 5174 # 134 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5175 /* 5176 * POSIX.1c compile-time symbolic constants. 5177 */ 5178 # 155 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5179 /* New in UNIX 03 */ 5180 # 167 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5181 /* 5182 * Support for the POSIX.1 mutex protocol attribute. For realtime applications 5183 * which need mutexes to support priority inheritance/ceiling. 5184 */ 5185 # 187 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5186 /* 5187 * Large File Summit-related announcement macros. The system supports both 5188 * the additional and transitional Large File Summit interfaces. (The final 5189 * two macros provide a finer granularity breakdown of _LFS64_LARGEFILE.) 5190 */ 5191 5192 5193 5194 5195 5196 /* large file compilation environment setup */ 5197 # 218 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5198 /* In the LP64 compilation environment, the APIs are already large file */ 5199 5200 5201 5202 # 221 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5203 #pragma redefine_extname ftruncate64 ftruncate 5204 # 221 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5205 5206 5207 # 222 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5208 #pragma redefine_extname lseek64 lseek 5209 # 222 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5210 5211 5212 # 223 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5213 #pragma redefine_extname pread64 pread 5214 # 223 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5215 5216 5217 # 224 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5218 #pragma redefine_extname pwrite64 pwrite 5219 # 224 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5220 5221 5222 # 225 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5223 #pragma redefine_extname truncate64 truncate 5224 # 225 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5225 5226 5227 # 226 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5228 #pragma redefine_extname lockf64 lockf 5229 # 226 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5230 5231 5232 # 227 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5233 #pragma redefine_extname tell64 tell 5234 # 227 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5235 # 239 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5236 extern int access(const char *, int); 5237 5238 extern int acct(const char *); 5239 5240 extern unsigned alarm(unsigned); 5241 /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ 5242 5243 5244 extern int brk(void *); 5245 5246 extern int chdir(const char *); 5247 extern int chown(const char *, uid_t, gid_t); 5248 /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ 5249 5250 5251 extern int chroot(const char *); 5252 5253 extern int close(int); 5254 5255 5256 5257 5258 5259 5260 extern char *ctermid(char *); 5261 5262 5263 extern char *ctermid_r(char *); 5264 5265 /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ 5266 5267 extern char *cuserid(char *); 5268 5269 extern int dup(int); 5270 extern int dup2(int, int); 5271 extern int dup3(int, int, int); 5272 5273 5274 5275 5276 extern void endusershell(void); 5277 5278 extern int execl(const char *, const char *, ...); 5279 extern int execle(const char *, const char *, ...); 5280 extern int execlp(const char *, const char *, ...); 5281 extern int execv(const char *, char *const *); 5282 extern int execve(const char *, char *const *, char *const *); 5283 extern int execvp(const char *, char *const *); 5284 extern void _exit(int) 5285 __attribute__((__noreturn__)); 5286 /* 5287 * The following fattach prototype is duplicated in <stropts.h>. The 5288 * duplication is necessitated by XPG4.2 which requires the prototype 5289 * be defined in <stropts.h>. 5290 */ 5291 5292 extern int fattach(int, const char *); 5293 5294 5295 extern int fchdir(int); 5296 extern int fchown(int, uid_t, gid_t); 5297 5298 5299 extern int fchroot(int); 5300 5301 5302 5303 extern int fdatasync(int); 5304 5305 /* 5306 * The following fdetach prototype is duplicated in <stropts.h>. The 5307 * duplication is necessitated by XPG4.2 which requires the prototype 5308 * be defined in <stropts.h>. 5309 */ 5310 5311 extern int fdetach(const char *); 5312 5313 extern pid_t fork(void); 5314 5315 extern pid_t fork1(void); 5316 extern pid_t forkall(void); 5317 5318 extern long fpathconf(int, int); 5319 5320 5321 extern int fsync(int); 5322 5323 5324 5325 5326 extern int ftruncate(int, off_t); 5327 5328 extern char *getcwd(char *, size_t); 5329 5330 5331 extern int getdtablesize(void); 5332 5333 extern gid_t getegid(void); 5334 extern uid_t geteuid(void); 5335 extern gid_t getgid(void); 5336 extern int getgroups(int, gid_t *); 5337 5338 extern long gethostid(void); 5339 5340 5341 5342 5343 extern int gethostname(char *, int); 5344 # 372 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5345 /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ 5346 5347 extern int getpagesize(void); 5348 5349 extern pid_t getpgid(pid_t); 5350 5351 extern pid_t getpid(void); 5352 extern pid_t getppid(void); 5353 extern pid_t getpgrp(void); 5354 5355 5356 char *gettxt(const char *, const char *); 5357 5358 5359 extern pid_t getsid(pid_t); 5360 5361 extern uid_t getuid(void); 5362 5363 extern char *getusershell(void); 5364 5365 /* 5366 * The following ioctl prototype is duplicated in <stropts.h>. The 5367 * duplication is necessitated by XPG4.2 which requires the prototype 5368 * be defined in <stropts.h>. 5369 */ 5370 5371 extern int ioctl(int, int, ...); 5372 extern int isaexec(const char *, char *const *, char *const *); 5373 extern int issetugid(void); 5374 5375 extern int isatty(int); 5376 5377 extern int lchown(const char *, uid_t, gid_t); 5378 5379 extern int link(const char *, const char *); 5380 5381 extern offset_t llseek(int, offset_t, int); 5382 5383 5384 5385 5386 extern int lockf(int, int, off_t); 5387 5388 extern off_t lseek(int, off_t, int); 5389 5390 5391 extern int nice(int); 5392 5393 5394 extern int mincore(caddr_t, size_t, char *); 5395 5396 extern long pathconf(const char *, int); 5397 extern int pause(void); 5398 extern int pipe(int *); 5399 extern int pipe2(int *, int); 5400 5401 5402 5403 extern ssize_t pread(int, void *, size_t, off_t); 5404 5405 5406 extern void profil(unsigned short *, size_t, unsigned long, unsigned int); 5407 5408 /* 5409 * pthread_atfork() is also declared in <pthread.h> as per SUSv3. The 5410 * declarations are identical. A change to either one may also require 5411 * appropriate namespace updates in order to avoid redeclaration 5412 * warnings in the case where both prototypes are exposed via inclusion 5413 * of both <pthread.h> and <unistd.h>. 5414 */ 5415 5416 5417 5418 extern int pthread_atfork(void (*) (void), void (*) (void), void (*) (void)); 5419 # 454 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5420 extern ssize_t pwrite(int, const void *, size_t, off_t); 5421 5422 5423 /* per RFC 3542; This is also defined in netdb.h */ 5424 extern int rcmd_af(char **, unsigned short, const char *, const char *, 5425 const char *, int *, int); 5426 5427 extern ssize_t read(int, void *, size_t); 5428 5429 5430 extern ssize_t readlink(const char *, char *, 5431 size_t); 5432 5433 5434 5435 5436 5437 5438 extern int rename(const char *, const char *); 5439 5440 5441 5442 5443 5444 5445 5446 extern int resolvepath(const char *, char *, size_t); 5447 /* per RFC 3542; This is also defined in netdb.h */ 5448 extern int rexec_af(char **, unsigned short, const char *, const char *, 5449 const char *, int *, int); 5450 5451 extern int rmdir(const char *); 5452 5453 /* per RFC 3542; This is also defined in netdb.h */ 5454 extern int rresvport_af(int *, int); 5455 5456 5457 5458 5459 extern void *sbrk(intptr_t); 5460 5461 5462 extern int setegid(gid_t); 5463 extern int seteuid(uid_t); 5464 5465 extern int setgid(gid_t); 5466 5467 extern int setgroups(int, const gid_t *); 5468 extern int sethostname(char *, int); 5469 5470 extern int setpgid(pid_t, pid_t); 5471 5472 extern pid_t setpgrp(void); 5473 extern int setregid(gid_t, gid_t); 5474 extern int setreuid(uid_t, uid_t); 5475 5476 extern pid_t setsid(void); 5477 extern int setuid(uid_t); 5478 5479 extern void setusershell(void); 5480 5481 extern unsigned sleep(unsigned); 5482 5483 extern int stime(const time_t *); 5484 5485 5486 5487 5488 5489 5490 extern int symlink(const char *, const char *); 5491 extern void sync(void); 5492 # 534 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5493 extern long sysconf(int); 5494 extern pid_t tcgetpgrp(int); 5495 extern int tcsetpgrp(int, pid_t); 5496 5497 5498 5499 extern off_t tell(int); 5500 5501 5502 5503 5504 extern int truncate(const char *, off_t); 5505 5506 extern char *ttyname(int); 5507 5508 extern useconds_t ualarm(useconds_t, useconds_t); 5509 5510 extern int unlink(const char *); 5511 5512 extern char *getwd(char *); 5513 extern int usleep(useconds_t); 5514 extern pid_t vfork(void) __attribute__((__returns_twice__)); 5515 #pragma unknown_control_flow(vfork) 5516 5517 5518 extern void vhangup(void); 5519 5520 extern ssize_t write(int, const void *, size_t); 5521 5522 extern void yield(void); 5523 5524 5525 5526 5527 /* || defined(_XPG7) */ 5528 extern int faccessat(int, const char *, int, int); 5529 extern int fchownat(int, const char *, uid_t, gid_t, int); 5530 extern int linkat(int, const char *, int, const char *, int); 5531 extern ssize_t readlinkat(int, const char *, 5532 char *, size_t); 5533 extern int renameat(int, const char *, int, const char *); 5534 extern int symlinkat(const char *, int, const char *); 5535 extern int unlinkat(int, const char *, int); 5536 5537 5538 extern int get_nprocs(void); 5539 extern int get_nprocs_conf(void); 5540 5541 5542 /* transitional large file interface versions */ 5543 5544 5545 extern int ftruncate64(int, off64_t); 5546 extern off64_t lseek64(int, off64_t, int); 5547 extern ssize_t pread64(int, void *, size_t, off64_t); 5548 extern ssize_t pwrite64(int, const void *, size_t, off64_t); 5549 extern off64_t tell64(int); 5550 extern int truncate64(const char *, off64_t); 5551 extern int lockf64(int, int, off64_t); 5552 5553 5554 /* 5555 * getlogin_r() & ttyname_r() prototypes are defined here. 5556 */ 5557 5558 /* 5559 * Previous releases of Solaris, starting at 2.3, provided definitions of 5560 * various functions as specified in POSIX.1c, Draft 6. For some of these 5561 * functions, the final POSIX 1003.1c standard had a different number of 5562 * arguments and return values. 5563 * 5564 * The following segment of this header provides support for the standard 5565 * interfaces while supporting applications written under earlier 5566 * releases. The application defines appropriate values of the feature 5567 * test macros _POSIX_C_SOURCE and _POSIX_PTHREAD_SEMANTICS to indicate 5568 * whether it was written to expect the Draft 6 or standard versions of 5569 * these interfaces, before including this header. This header then 5570 * provides a mapping from the source version of the interface to an 5571 * appropriate binary interface. Such mappings permit an application 5572 * to be built from libraries and objects which have mixed expectations 5573 * of the definitions of these functions. 5574 * 5575 * For applications using the Draft 6 definitions, the binary symbol is the 5576 * same as the source symbol, and no explicit mapping is needed. For the 5577 * standard interface, the function func() is mapped to the binary symbol 5578 * _posix_func(). The preferred mechanism for the remapping is a compiler 5579 * #pragma. If the compiler does not provide such a #pragma, the header file 5580 * defines a static function func() which calls the _posix_func() version; 5581 * this has to be done instead of #define since POSIX specifies that an 5582 * application can #undef the symbol and still be bound to the correct 5583 * implementation. Unfortunately, the statics confuse lint so we fallback to 5584 * #define in that case. 5585 * 5586 * NOTE: Support for the Draft 6 definitions is provided for compatibility 5587 * only. New applications/libraries should use the standard definitions. 5588 */ 5589 # 693 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5590 5591 # 693 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5592 #pragma redefine_extname getlogin_r getloginx_r 5593 # 693 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/unistd.h" 5594 5595 5596 5597 5598 5599 5600 extern char *getlogin_r(char *, int); 5601 5602 extern char *ttyname_r(int, char *, int); 5603 5604 5605 5606 5607 5608 5609 extern int getentropy(void *, size_t); 5610 # 36 "../common/zones_paths.c" 2 5611 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libgen.h" 1 5612 /* 5613 * CDDL HEADER START 5614 * 5615 * The contents of this file are subject to the terms of the 5616 * Common Development and Distribution License, Version 1.0 only 5617 * (the "License"). You may not use this file except in compliance 5618 * with the License. 5619 * 5620 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 5621 * or http://www.opensolaris.org/os/licensing. 5622 * See the License for the specific language governing permissions 5623 * and limitations under the License. 5624 * 5625 * When distributing Covered Code, include this CDDL HEADER in each 5626 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 5627 * If applicable, add the following below this CDDL HEADER, with the 5628 * fields enclosed by brackets "[]" replaced with your own identifying 5629 * information: Portions Copyright [yyyy] [name of copyright owner] 5630 * 5631 * CDDL HEADER END 5632 */ 5633 /* 5634 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 5635 * 5636 * Copyright 2003 Sun Microsystems, Inc. All rights reserved. 5637 * Use is subject to license terms. 5638 */ 5639 5640 /* Copyright (c) 1988 AT&T */ 5641 /* All Rights Reserved */ 5642 5643 5644 /* 5645 * declarations of functions found in libgen 5646 */ 5647 5648 5649 5650 5651 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 5652 /* 5653 * CDDL HEADER START 5654 * 5655 * The contents of this file are subject to the terms of the 5656 * Common Development and Distribution License (the "License"). 5657 * You may not use this file except in compliance with the License. 5658 * 5659 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 5660 * or http://www.opensolaris.org/os/licensing. 5661 * See the License for the specific language governing permissions 5662 * and limitations under the License. 5663 * 5664 * When distributing Covered Code, include this CDDL HEADER in each 5665 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 5666 * If applicable, add the following below this CDDL HEADER, with the 5667 * fields enclosed by brackets "[]" replaced with your own identifying 5668 * information: Portions Copyright [yyyy] [name of copyright owner] 5669 * 5670 * CDDL HEADER END 5671 */ 5672 5673 /* 5674 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 5675 * Copyright 2016 Joyent, Inc. 5676 * 5677 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 5678 * Use is subject to license terms. 5679 */ 5680 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libgen.h" 2 5681 5682 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 5683 /* 5684 * CDDL HEADER START 5685 * 5686 * The contents of this file are subject to the terms of the 5687 * Common Development and Distribution License (the "License"). 5688 * You may not use this file except in compliance with the License. 5689 * 5690 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 5691 * or http://www.opensolaris.org/os/licensing. 5692 * See the License for the specific language governing permissions 5693 * and limitations under the License. 5694 * 5695 * When distributing Covered Code, include this CDDL HEADER in each 5696 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 5697 * If applicable, add the following below this CDDL HEADER, with the 5698 * fields enclosed by brackets "[]" replaced with your own identifying 5699 * information: Portions Copyright [yyyy] [name of copyright owner] 5700 * 5701 * CDDL HEADER END 5702 */ 5703 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 5704 /* All Rights Reserved */ 5705 5706 5707 /* 5708 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 5709 * Use is subject to license terms. 5710 * 5711 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 5712 * Copyright 2016 Joyent, Inc. 5713 */ 5714 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libgen.h" 2 5715 5716 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 1 5717 /* 5718 * CDDL HEADER START 5719 * 5720 * The contents of this file are subject to the terms of the 5721 * Common Development and Distribution License (the "License"). 5722 * You may not use this file except in compliance with the License. 5723 * 5724 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 5725 * or http://www.opensolaris.org/os/licensing. 5726 * See the License for the specific language governing permissions 5727 * and limitations under the License. 5728 * 5729 * When distributing Covered Code, include this CDDL HEADER in each 5730 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 5731 * If applicable, add the following below this CDDL HEADER, with the 5732 * fields enclosed by brackets "[]" replaced with your own identifying 5733 * information: Portions Copyright [yyyy] [name of copyright owner] 5734 * 5735 * CDDL HEADER END 5736 */ 5737 /* Copyright (c) 1988 AT&T */ 5738 /* All Rights Reserved */ 5739 5740 5741 /* 5742 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 5743 * 5744 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 5745 * Use is subject to license terms. 5746 */ 5747 /* 5748 * Copyright 2010 Nexenta Systems, Inc. Al rights reserved. 5749 * Copyright 2016 Joyent, Inc. 5750 */ 5751 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libgen.h" 2 5752 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1 5753 /* 5754 * CDDL HEADER START 5755 * 5756 * The contents of this file are subject to the terms of the 5757 * Common Development and Distribution License (the "License"). 5758 * You may not use this file except in compliance with the License. 5759 * 5760 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 5761 * or http://www.opensolaris.org/os/licensing. 5762 * See the License for the specific language governing permissions 5763 * and limitations under the License. 5764 * 5765 * When distributing Covered Code, include this CDDL HEADER in each 5766 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 5767 * If applicable, add the following below this CDDL HEADER, with the 5768 * fields enclosed by brackets "[]" replaced with your own identifying 5769 * information: Portions Copyright [yyyy] [name of copyright owner] 5770 * 5771 * CDDL HEADER END 5772 */ 5773 5774 /* 5775 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 5776 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 5777 */ 5778 5779 /* Copyright (c) 1988 AT&T */ 5780 /* All Rights Reserved */ 5781 5782 /* 5783 * User-visible pieces of the ANSI C standard I/O package. 5784 */ 5785 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libgen.h" 2 5786 5787 5788 5789 5790 5791 5792 extern char *basename(char *); 5793 extern char *dirname(char *); 5794 5795 5796 extern char *regcmp(const char *, ...); 5797 extern char *regex(const char *, const char *, ...); 5798 5799 5800 5801 5802 5803 5804 extern char *__loc1; /* Marked LEGACY in XPG5 and removed in XPG6 */ 5805 5806 5807 5808 5809 extern char *bgets(char *, size_t, FILE *, char *); 5810 extern size_t bufsplit(char *, size_t, char **); 5811 # 82 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libgen.h" 5812 5813 # 82 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libgen.h" 5814 #pragma redefine_extname copylist64 copylist 5815 # 82 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libgen.h" 5816 5817 5818 5819 5820 5821 5822 extern char *copylist(const char *, off_t *); 5823 5824 5825 extern char *copylist64(const char *, off64_t *); 5826 5827 5828 extern int eaccess(const char *, int); 5829 extern int gmatch(const char *, const char *); 5830 extern int isencrypt(const char *, size_t); 5831 extern int mkdirp(const char *, mode_t); 5832 extern int p2open(const char *, FILE *[2]); 5833 extern int p2close(FILE *[2]); 5834 extern char *pathfind(const char *, const char *, const char *); 5835 5836 5837 5838 5839 extern int __i_size; 5840 5841 5842 extern int rmdirp(char *, char *); 5843 extern char *strcadd(char *, const char *); 5844 extern char *strccpy(char *, const char *); 5845 extern char *streadd(char *, const char *, const char *); 5846 extern char *strecpy(char *, const char *, const char *); 5847 extern int strfind(const char *, const char *); 5848 extern char *strrspn(const char *, const char *); 5849 extern char *strtrns(const char *, const char *, const char *, char *); 5850 # 37 "../common/zones_paths.c" 2 5851 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/errno.h" 1 5852 /* 5853 * CDDL HEADER START 5854 * 5855 * The contents of this file are subject to the terms of the 5856 * Common Development and Distribution License, Version 1.0 only 5857 * (the "License"). You may not use this file except in compliance 5858 * with the License. 5859 * 5860 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 5861 * or http://www.opensolaris.org/os/licensing. 5862 * See the License for the specific language governing permissions 5863 * and limitations under the License. 5864 * 5865 * When distributing Covered Code, include this CDDL HEADER in each 5866 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 5867 * If applicable, add the following below this CDDL HEADER, with the 5868 * fields enclosed by brackets "[]" replaced with your own identifying 5869 * information: Portions Copyright [yyyy] [name of copyright owner] 5870 * 5871 * CDDL HEADER END 5872 */ 5873 /* Copyright (c) 1988 AT&T */ 5874 /* All Rights Reserved */ 5875 5876 5877 /* 5878 * Copyright 1999-2003 Sun Microsystems, Inc. All rights reserved. 5879 * Use is subject to license terms. 5880 */ 5881 5882 5883 5884 5885 5886 #pragma ident "%Z%%M% %I% %E% SMI" 5887 5888 /* 5889 * Error codes 5890 */ 5891 5892 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 1 5893 /* 5894 * CDDL HEADER START 5895 * 5896 * The contents of this file are subject to the terms of the 5897 * Common Development and Distribution License, Version 1.0 only 5898 * (the "License"). You may not use this file except in compliance 5899 * with the License. 5900 * 5901 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 5902 * or http://www.opensolaris.org/os/licensing. 5903 * See the License for the specific language governing permissions 5904 * and limitations under the License. 5905 * 5906 * When distributing Covered Code, include this CDDL HEADER in each 5907 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 5908 * If applicable, add the following below this CDDL HEADER, with the 5909 * fields enclosed by brackets "[]" replaced with your own identifying 5910 * information: Portions Copyright [yyyy] [name of copyright owner] 5911 * 5912 * CDDL HEADER END 5913 */ 5914 /* 5915 * Copyright 2000 Sun Microsystems, Inc. All rights reserved. 5916 * Use is subject to license terms. 5917 */ 5918 5919 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 5920 /* All Rights Reserved */ 5921 5922 /* 5923 * University Copyright- Copyright (c) 1982, 1986, 1988 5924 * The Regents of the University of California 5925 * All Rights Reserved 5926 * 5927 * University Acknowledgment- Portions of this document are derived from 5928 * software developed by the University of California, Berkeley, and its 5929 * contributors. 5930 */ 5931 5932 5933 5934 5935 #pragma ident "%Z%%M% %I% %E% SMI" 5936 5937 5938 5939 5940 5941 /* 5942 * Error codes 5943 */ 5944 # 102 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 5945 /* Filesystem Quotas */ 5946 5947 5948 /* Convergent Error Returns */ 5949 # 116 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 5950 /* Interprocess Robust Locks */ 5951 5952 5953 5954 /* stream problems */ 5955 # 136 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 5956 /* Interprocess Robust Locks */ 5957 # 148 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 5958 /* shared library problems */ 5959 # 162 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 5960 /* BSD Networking Software */ 5961 /* argument errors */ 5962 # 174 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 5963 /* protocol family */ 5964 5965 5966 /* operational errors */ 5967 5968 5969 5970 /* of reset */ 5971 5972 5973 5974 5975 5976 /* XENIX has 135 - 142 */ 5977 # 198 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/errno.h" 5978 /* SUN Network File System */ 5979 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/errno.h" 2 5980 5981 5982 5983 5984 5985 5986 /* 5987 * The symbols _sys_errlist and _sys_nerr are not visible in the 5988 * LP64 libc. Use strerror(3C) instead. 5989 */ 5990 5991 5992 5993 extern int *___errno(); 5994 # 38 "../common/zones_paths.c" 2 5995 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/string.h" 1 5996 /* 5997 * CDDL HEADER START 5998 * 5999 * The contents of this file are subject to the terms of the 6000 * Common Development and Distribution License (the "License"). 6001 * You may not use this file except in compliance with the License. 6002 * 6003 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6004 * or http://www.opensolaris.org/os/licensing. 6005 * See the License for the specific language governing permissions 6006 * and limitations under the License. 6007 * 6008 * When distributing Covered Code, include this CDDL HEADER in each 6009 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6010 * If applicable, add the following below this CDDL HEADER, with the 6011 * fields enclosed by brackets "[]" replaced with your own identifying 6012 * information: Portions Copyright [yyyy] [name of copyright owner] 6013 * 6014 * CDDL HEADER END 6015 */ 6016 6017 /* 6018 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 6019 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 6020 */ 6021 6022 /* Copyright (c) 1988 AT&T */ 6023 /* All Rights Reserved */ 6024 6025 6026 6027 6028 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" 1 6029 /* 6030 * CDDL HEADER START 6031 * 6032 * The contents of this file are subject to the terms of the 6033 * Common Development and Distribution License, Version 1.0 only 6034 * (the "License"). You may not use this file except in compliance 6035 * with the License. 6036 * 6037 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6038 * or http://www.opensolaris.org/os/licensing. 6039 * See the License for the specific language governing permissions 6040 * and limitations under the License. 6041 * 6042 * When distributing Covered Code, include this CDDL HEADER in each 6043 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6044 * If applicable, add the following below this CDDL HEADER, with the 6045 * fields enclosed by brackets "[]" replaced with your own identifying 6046 * information: Portions Copyright [yyyy] [name of copyright owner] 6047 * 6048 * CDDL HEADER END 6049 */ 6050 /* Copyright (c) 1988 AT&T */ 6051 /* All Rights Reserved */ 6052 6053 6054 /* 6055 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 6056 * Copyright 2014 PALO, Richard. 6057 * 6058 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 6059 * Use is subject to license terms. 6060 */ 6061 6062 /* 6063 * An application should not include this header directly. Instead it 6064 * should be included only through the inclusion of other Sun headers. 6065 * 6066 * The contents of this header is limited to identifiers specified in the 6067 * C Standard. Any new identifiers specified in future amendments to the 6068 * C Standard must be placed in this header. If these new identifiers 6069 * are required to also be in the C++ Standard "std" namespace, then for 6070 * anything other than macro definitions, corresponding "using" directives 6071 * must also be added to <string.h>. 6072 */ 6073 6074 6075 6076 6077 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 6078 /* 6079 * CDDL HEADER START 6080 * 6081 * The contents of this file are subject to the terms of the 6082 * Common Development and Distribution License (the "License"). 6083 * You may not use this file except in compliance with the License. 6084 * 6085 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6086 * or http://www.opensolaris.org/os/licensing. 6087 * See the License for the specific language governing permissions 6088 * and limitations under the License. 6089 * 6090 * When distributing Covered Code, include this CDDL HEADER in each 6091 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6092 * If applicable, add the following below this CDDL HEADER, with the 6093 * fields enclosed by brackets "[]" replaced with your own identifying 6094 * information: Portions Copyright [yyyy] [name of copyright owner] 6095 * 6096 * CDDL HEADER END 6097 */ 6098 6099 /* 6100 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 6101 * Copyright 2016 Joyent, Inc. 6102 * 6103 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 6104 * Use is subject to license terms. 6105 */ 6106 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" 2 6107 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 6108 /* 6109 * This file and its contents are supplied under the terms of the 6110 * Common Development and Distribution License ("CDDL"), version 1.0. 6111 * You may only use this file in accordance with the terms of version 6112 * 1.0 of the CDDL. 6113 * 6114 * A full copy of the text of the CDDL should have accompanied this 6115 * source. A copy of the CDDL is also available via the Internet at 6116 * http://www.illumos.org/license/CDDL. 6117 */ 6118 6119 /* 6120 * Copyright 2014-2016 PALO, Richard. 6121 */ 6122 # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" 2 6123 # 69 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" 6124 extern int memcmp(const void *, const void *, size_t); 6125 extern void *memcpy(void *, const void *, size_t); 6126 extern void *memmove(void *, const void *, size_t); 6127 extern void *memset(void *, int, size_t); 6128 extern char *strcat(char *, const char *); 6129 extern int strcmp(const char *, const char *); 6130 extern char *strcpy(char *, const char *); 6131 extern int strcoll(const char *, const char *); 6132 extern size_t strcspn(const char *, const char *); 6133 extern char *strerror(int); 6134 extern size_t strlen(const char *); 6135 extern char *strncat(char *, const char *, size_t); 6136 extern int strncmp(const char *, const char *, size_t); 6137 extern char *strncpy(char *, const char *, size_t); 6138 extern size_t strspn(const char *, const char *); 6139 extern char *strtok(char *, const char *); 6140 extern size_t strxfrm(char *, const char *, size_t); 6141 6142 /* 6143 * The C++ Standard (ISO/IEC 14882:1998) specifies that each of the 6144 * function signatures for the following functions be replaced by 6145 * two declarations, both of which have the same behavior. 6146 */ 6147 # 139 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/string_iso.h" 6148 extern void *memchr(const void *, int, size_t); 6149 extern char *strchr(const char *, int); 6150 extern char *strpbrk(const char *, const char *); 6151 extern char *strrchr(const char *, int); 6152 extern char *strstr(const char *, const char *); 6153 # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/string.h" 2 6154 6155 /* 6156 * Allow global visibility for symbols defined in 6157 * C++ "std" namespace in <iso/string_iso.h>. 6158 */ 6159 # 72 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/string.h" 6160 extern int strerror_r(int, char *, size_t); 6161 6162 6163 6164 6165 6166 extern char *strtok_r(char *, const char *, 6167 char **); 6168 6169 6170 6171 6172 extern void *memccpy(void *, const void *, 6173 int, size_t); 6174 6175 6176 6177 6178 extern char *stpcpy(char *, const char *); 6179 extern char *stpncpy(char *, const char *, size_t); 6180 extern char *strndup(const char *, size_t); 6181 extern size_t strnlen(const char *, size_t); 6182 extern char *strsignal(int); 6183 6184 6185 6186 6187 6188 6189 extern int strcoll_l(const char *, const char *, locale_t); 6190 extern size_t strxfrm_l(char *, const char *, 6191 size_t, locale_t); 6192 extern int strcasecmp_l(const char *, const char *, locale_t); 6193 extern int strncasecmp_l(const char *, const char *, size_t, locale_t); 6194 extern char *strerror_l(int, locale_t); 6195 6196 6197 6198 6199 6200 /* Note that some of these are also declared in strings.h for XPG4_2+ */ 6201 extern void explicit_bzero(void *, size_t); 6202 extern int uucopy(const void *, void *, size_t); 6203 extern int uucopystr(const void *, void *, size_t); 6204 extern int ffs(int); 6205 extern int ffsl(long); 6206 extern int ffsll(long long); 6207 extern int fls(int); 6208 extern int flsl(long); 6209 extern int flsll(long long); 6210 extern void *memmem(const void *, size_t, const void *, size_t); 6211 extern char *strcasestr(const char *, const char *); 6212 extern char *strnstr(const char *, const char *, size_t); 6213 extern size_t strlcpy(char *, const char *, size_t); 6214 extern size_t strlcat(char *, const char *, size_t); 6215 extern char *strsep(char **stringp, const char *delim); 6216 extern char *strchrnul(const char *, int); 6217 extern char *strcasestr_l(const char *, const char *, locale_t); 6218 extern int strcasecmp(const char *, const char *); 6219 extern int strncasecmp(const char *, const char *, size_t); 6220 6221 6222 6223 6224 6225 extern char *strdup(const char *); 6226 6227 6228 6229 6230 6231 6232 /* 6233 * gcc provides this inlining facility but Studio C does not. 6234 * We should use it exclusively once Studio C also provides it. 6235 */ 6236 extern void *__builtin_alloca(size_t); 6237 # 39 "../common/zones_paths.c" 2 6238 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 1 6239 /* 6240 * CDDL HEADER START 6241 * 6242 * The contents of this file are subject to the terms of the 6243 * Common Development and Distribution License (the "License"). 6244 * You may not use this file except in compliance with the License. 6245 * 6246 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6247 * or http://www.opensolaris.org/os/licensing. 6248 * See the License for the specific language governing permissions 6249 * and limitations under the License. 6250 * 6251 * When distributing Covered Code, include this CDDL HEADER in each 6252 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6253 * If applicable, add the following below this CDDL HEADER, with the 6254 * fields enclosed by brackets "[]" replaced with your own identifying 6255 * information: Portions Copyright [yyyy] [name of copyright owner] 6256 * 6257 * CDDL HEADER END 6258 */ 6259 6260 /* 6261 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 6262 * 6263 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 6264 * Use is subject to license terms. 6265 */ 6266 6267 /* Copyright (c) 1988 AT&T */ 6268 /* All Rights Reserved */ 6269 6270 6271 6272 6273 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 6274 /* 6275 * CDDL HEADER START 6276 * 6277 * The contents of this file are subject to the terms of the 6278 * Common Development and Distribution License (the "License"). 6279 * You may not use this file except in compliance with the License. 6280 * 6281 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6282 * or http://www.opensolaris.org/os/licensing. 6283 * See the License for the specific language governing permissions 6284 * and limitations under the License. 6285 * 6286 * When distributing Covered Code, include this CDDL HEADER in each 6287 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6288 * If applicable, add the following below this CDDL HEADER, with the 6289 * fields enclosed by brackets "[]" replaced with your own identifying 6290 * information: Portions Copyright [yyyy] [name of copyright owner] 6291 * 6292 * CDDL HEADER END 6293 */ 6294 6295 /* 6296 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 6297 * Copyright 2016 Joyent, Inc. 6298 * 6299 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 6300 * Use is subject to license terms. 6301 */ 6302 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 2 6303 6304 6305 6306 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 6307 /* 6308 * CDDL HEADER START 6309 * 6310 * The contents of this file are subject to the terms of the 6311 * Common Development and Distribution License (the "License"). 6312 * You may not use this file except in compliance with the License. 6313 * 6314 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6315 * or http://www.opensolaris.org/os/licensing. 6316 * See the License for the specific language governing permissions 6317 * and limitations under the License. 6318 * 6319 * When distributing Covered Code, include this CDDL HEADER in each 6320 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6321 * If applicable, add the following below this CDDL HEADER, with the 6322 * fields enclosed by brackets "[]" replaced with your own identifying 6323 * information: Portions Copyright [yyyy] [name of copyright owner] 6324 * 6325 * CDDL HEADER END 6326 */ 6327 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 6328 /* All Rights Reserved */ 6329 6330 6331 /* 6332 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 6333 * Use is subject to license terms. 6334 * 6335 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 6336 * Copyright 2016 Joyent, Inc. 6337 */ 6338 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 2 6339 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 1 6340 /* 6341 * CDDL HEADER START 6342 * 6343 * The contents of this file are subject to the terms of the 6344 * Common Development and Distribution License (the "License"). 6345 * You may not use this file except in compliance with the License. 6346 * 6347 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6348 * or http://www.opensolaris.org/os/licensing. 6349 * See the License for the specific language governing permissions 6350 * and limitations under the License. 6351 * 6352 * When distributing Covered Code, include this CDDL HEADER in each 6353 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6354 * If applicable, add the following below this CDDL HEADER, with the 6355 * fields enclosed by brackets "[]" replaced with your own identifying 6356 * information: Portions Copyright [yyyy] [name of copyright owner] 6357 * 6358 * CDDL HEADER END 6359 */ 6360 6361 /* 6362 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 6363 */ 6364 6365 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 6366 /* All Rights Reserved */ 6367 6368 /* 6369 * University Copyright- Copyright (c) 1982, 1986, 1988 6370 * The Regents of the University of California 6371 * All Rights Reserved 6372 * 6373 * University Acknowledgment- Portions of this document are derived from 6374 * software developed by the University of California, Berkeley, and its 6375 * contributors. 6376 */ 6377 6378 /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ 6379 /* Copyright 2015, Joyent, Inc. */ 6380 6381 6382 6383 6384 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 6385 /* 6386 * CDDL HEADER START 6387 * 6388 * The contents of this file are subject to the terms of the 6389 * Common Development and Distribution License (the "License"). 6390 * You may not use this file except in compliance with the License. 6391 * 6392 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6393 * or http://www.opensolaris.org/os/licensing. 6394 * See the License for the specific language governing permissions 6395 * and limitations under the License. 6396 * 6397 * When distributing Covered Code, include this CDDL HEADER in each 6398 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6399 * If applicable, add the following below this CDDL HEADER, with the 6400 * fields enclosed by brackets "[]" replaced with your own identifying 6401 * information: Portions Copyright [yyyy] [name of copyright owner] 6402 * 6403 * CDDL HEADER END 6404 */ 6405 6406 /* 6407 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 6408 * Copyright 2016 Joyent, Inc. 6409 * 6410 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 6411 * Use is subject to license terms. 6412 */ 6413 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 2 6414 6415 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 6416 /* 6417 * CDDL HEADER START 6418 * 6419 * The contents of this file are subject to the terms of the 6420 * Common Development and Distribution License (the "License"). 6421 * You may not use this file except in compliance with the License. 6422 * 6423 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6424 * or http://www.opensolaris.org/os/licensing. 6425 * See the License for the specific language governing permissions 6426 * and limitations under the License. 6427 * 6428 * When distributing Covered Code, include this CDDL HEADER in each 6429 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6430 * If applicable, add the following below this CDDL HEADER, with the 6431 * fields enclosed by brackets "[]" replaced with your own identifying 6432 * information: Portions Copyright [yyyy] [name of copyright owner] 6433 * 6434 * CDDL HEADER END 6435 */ 6436 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 6437 /* All Rights Reserved */ 6438 6439 6440 /* 6441 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 6442 * Use is subject to license terms. 6443 * 6444 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 6445 * Copyright 2016 Joyent, Inc. 6446 */ 6447 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 2 6448 6449 6450 6451 6452 6453 /* 6454 * Flag values accessible to open(2) and fcntl(2) 6455 * The first five can only be set (exclusively) by open(2). 6456 */ 6457 # 71 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6458 /* defines read/write file integrity */ 6459 6460 6461 6462 6463 6464 6465 /* 6466 * Flag values accessible only to open(2). 6467 */ 6468 # 93 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6469 /* 6470 * fcntl(2) requests 6471 * 6472 * N.B.: values are not necessarily assigned sequentially below. 6473 */ 6474 6475 6476 6477 6478 6479 6480 6481 /* 6482 * Applications that read /dev/mem must be built like the kernel. A 6483 * new symbol "_KMEMUSER" is defined for this purpose. 6484 */ 6485 # 128 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6486 /* EINVAL is fildes matches arg1 */ 6487 # 137 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6488 /* 6489 * Numbers 20-22 have been removed and should not be reused. 6490 */ 6491 6492 6493 6494 6495 6496 /* manager */ 6497 6498 /* 6499 * Commands that refer to flock structures. The argument types differ between 6500 * the large and small file environments; therefore, the #defined values must 6501 * as well. 6502 * The NBMAND forms are private and should not be used. 6503 * The FLOCK forms are also private and should not be used. 6504 */ 6505 6506 6507 /* "Native" application compilation environment */ 6508 # 233 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6509 /* 6510 * File segment locking set data type - information passed to system by user. 6511 */ 6512 6513 /* regular version, for both small and large file compilation environment */ 6514 typedef struct flock { 6515 short l_type; 6516 short l_whence; 6517 off_t l_start; 6518 off_t l_len; /* len == 0 means until end of file */ 6519 int l_sysid; 6520 pid_t l_pid; 6521 long l_pad[4]; /* reserve area */ 6522 } flock_t; 6523 # 264 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6524 /* transitional large file interface version */ 6525 6526 6527 6528 typedef struct flock64 { 6529 short l_type; 6530 short l_whence; 6531 off64_t l_start; 6532 off64_t l_len; /* len == 0 means until end of file */ 6533 int l_sysid; 6534 pid_t l_pid; 6535 long l_pad[4]; /* reserve area */ 6536 } flock64_t; 6537 # 328 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6538 /* 6539 * File segment locking types. 6540 */ 6541 6542 6543 6544 6545 6546 /* 6547 * POSIX constants 6548 */ 6549 6550 /* Mask for file access modes */ 6551 6552 6553 6554 /* 6555 * DIRECTIO 6556 */ 6557 6558 6559 6560 6561 /* 6562 * File share reservation type 6563 */ 6564 typedef struct fshare { 6565 short f_access; 6566 short f_deny; 6567 int f_id; 6568 } fshare_t; 6569 6570 /* 6571 * f_access values 6572 */ 6573 6574 6575 6576 6577 6578 6579 /* 6580 * f_deny values 6581 */ 6582 # 381 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6583 /* 6584 * Special flags for functions such as openat(), fstatat().... 6585 */ 6586 6587 6588 /* || defined(_XPG7) */ 6589 # 396 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fcntl.h" 6590 /* advice for posix_fadvise */ 6591 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 2 6592 # 74 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6593 /* large file compilation environment setup */ 6594 # 105 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6595 6596 # 105 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6597 #pragma redefine_extname open64 open 6598 # 105 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6599 6600 6601 # 106 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6602 #pragma redefine_extname creat64 creat 6603 # 106 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6604 6605 6606 6607 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6608 #pragma redefine_extname posix_fadvise64 posix_fadvise 6609 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6610 6611 6612 # 109 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6613 #pragma redefine_extname posix_fallocate64 posix_fallocate 6614 # 109 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6615 6616 6617 6618 6619 6620 # 113 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6621 #pragma redefine_extname openat64 openat 6622 # 113 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6623 6624 6625 # 114 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6626 #pragma redefine_extname attropen64 attropen 6627 # 114 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6628 # 131 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/fcntl.h" 6629 extern int fcntl(int, int, ...); 6630 extern int open(const char *, int, ...); 6631 extern int creat(const char *, mode_t); 6632 6633 extern int posix_fadvise(int, off_t, off_t, int); 6634 extern int posix_fallocate(int, off_t, off_t); 6635 6636 6637 6638 extern int openat(int, const char *, int, ...); 6639 extern int attropen(const char *, const char *, int, ...); 6640 6641 6642 extern int directio(int, int); 6643 6644 6645 /* transitional large file interface versions */ 6646 6647 6648 extern int open64(const char *, int, ...); 6649 extern int creat64(const char *, mode_t); 6650 6651 extern int posix_fadvise64(int, off64_t, off64_t, int); 6652 extern int posix_fallocate64(int, off64_t, off64_t); 6653 6654 6655 6656 extern int openat64(int, const char *, int, ...); 6657 extern int attropen64(const char *, const char *, int, ...); 6658 # 40 "../common/zones_paths.c" 2 6659 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 6660 /* 6661 * CDDL HEADER START 6662 * 6663 * The contents of this file are subject to the terms of the 6664 * Common Development and Distribution License (the "License"). 6665 * You may not use this file except in compliance with the License. 6666 * 6667 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6668 * or http://www.opensolaris.org/os/licensing. 6669 * See the License for the specific language governing permissions 6670 * and limitations under the License. 6671 * 6672 * When distributing Covered Code, include this CDDL HEADER in each 6673 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6674 * If applicable, add the following below this CDDL HEADER, with the 6675 * fields enclosed by brackets "[]" replaced with your own identifying 6676 * information: Portions Copyright [yyyy] [name of copyright owner] 6677 * 6678 * CDDL HEADER END 6679 */ 6680 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 6681 /* All Rights Reserved */ 6682 6683 6684 /* 6685 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 6686 * Use is subject to license terms. 6687 * 6688 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 6689 * Copyright 2016 Joyent, Inc. 6690 */ 6691 # 41 "../common/zones_paths.c" 2 6692 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 1 6693 /* 6694 * CDDL HEADER START 6695 * 6696 * The contents of this file are subject to the terms of the 6697 * Common Development and Distribution License (the "License"). 6698 * You may not use this file except in compliance with the License. 6699 * 6700 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6701 * or http://www.opensolaris.org/os/licensing. 6702 * See the License for the specific language governing permissions 6703 * and limitations under the License. 6704 * 6705 * When distributing Covered Code, include this CDDL HEADER in each 6706 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6707 * If applicable, add the following below this CDDL HEADER, with the 6708 * fields enclosed by brackets "[]" replaced with your own identifying 6709 * information: Portions Copyright [yyyy] [name of copyright owner] 6710 * 6711 * CDDL HEADER END 6712 */ 6713 6714 /* 6715 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 6716 * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved. 6717 */ 6718 6719 /* Copyright (c) 1990, 1991 UNIX System Laboratories, Inc. */ 6720 /* Copyright (c) 1984, 1986, 1987, 1988, 1989, 1990 AT&T */ 6721 /* All Rights Reserved */ 6722 6723 6724 6725 6726 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 6727 /* 6728 * CDDL HEADER START 6729 * 6730 * The contents of this file are subject to the terms of the 6731 * Common Development and Distribution License (the "License"). 6732 * You may not use this file except in compliance with the License. 6733 * 6734 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6735 * or http://www.opensolaris.org/os/licensing. 6736 * See the License for the specific language governing permissions 6737 * and limitations under the License. 6738 * 6739 * When distributing Covered Code, include this CDDL HEADER in each 6740 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6741 * If applicable, add the following below this CDDL HEADER, with the 6742 * fields enclosed by brackets "[]" replaced with your own identifying 6743 * information: Portions Copyright [yyyy] [name of copyright owner] 6744 * 6745 * CDDL HEADER END 6746 */ 6747 6748 /* 6749 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 6750 * Copyright 2016 Joyent, Inc. 6751 * 6752 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 6753 * Use is subject to license terms. 6754 */ 6755 # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 2 6756 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 6757 /* 6758 * CDDL HEADER START 6759 * 6760 * The contents of this file are subject to the terms of the 6761 * Common Development and Distribution License (the "License"). 6762 * You may not use this file except in compliance with the License. 6763 * 6764 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6765 * or http://www.opensolaris.org/os/licensing. 6766 * See the License for the specific language governing permissions 6767 * and limitations under the License. 6768 * 6769 * When distributing Covered Code, include this CDDL HEADER in each 6770 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6771 * If applicable, add the following below this CDDL HEADER, with the 6772 * fields enclosed by brackets "[]" replaced with your own identifying 6773 * information: Portions Copyright [yyyy] [name of copyright owner] 6774 * 6775 * CDDL HEADER END 6776 */ 6777 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 6778 /* All Rights Reserved */ 6779 6780 6781 /* 6782 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 6783 * Use is subject to license terms. 6784 * 6785 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 6786 * Copyright 2016 Joyent, Inc. 6787 */ 6788 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 2 6789 6790 6791 6792 6793 6794 /* 6795 * The implementation specific header <sys/time_impl.h> includes a 6796 * definition for timestruc_t needed by the stat structure. However, 6797 * including either <time.h>, which includes <sys/time_impl.h>, or 6798 * including <sys/time_impl.h> directly will break both X/Open and 6799 * POSIX namespace. Preceeding tag, structure, and structure member 6800 * names with underscores eliminates the namespace breakage and at the 6801 * same time, with unique type names, eliminates the possibility of 6802 * timespec_t or timestruct_t naming conflicts that could otherwise 6803 * result based on the order of inclusion of <sys/stat.h> and 6804 * <sys/time.h>. The header <sys/time_std_impl.h> contains the 6805 * standards namespace safe versions of these definitions. 6806 */ 6807 6808 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 1 6809 /* 6810 * CDDL HEADER START 6811 * 6812 * The contents of this file are subject to the terms of the 6813 * Common Development and Distribution License, Version 1.0 only 6814 * (the "License"). You may not use this file except in compliance 6815 * with the License. 6816 * 6817 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 6818 * or http://www.opensolaris.org/os/licensing. 6819 * See the License for the specific language governing permissions 6820 * and limitations under the License. 6821 * 6822 * When distributing Covered Code, include this CDDL HEADER in each 6823 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 6824 * If applicable, add the following below this CDDL HEADER, with the 6825 * fields enclosed by brackets "[]" replaced with your own identifying 6826 * information: Portions Copyright [yyyy] [name of copyright owner] 6827 * 6828 * CDDL HEADER END 6829 */ 6830 /* 6831 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 6832 * Use is subject to license terms. 6833 */ 6834 6835 /* 6836 * Implementation-private. This header should not be included 6837 * directly by an application. The application should instead 6838 * include <time.h> which includes this header conditionally 6839 * depending on which feature test macros are defined. By default, 6840 * this header is included by <time.h>. X/Open and POSIX 6841 * standards requirements result in this header being included 6842 * by <time.h> only under a restricted set of conditions. 6843 */ 6844 # 56 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 2 6845 6846 6847 6848 6849 6850 6851 /* 6852 * stat structure, used by stat(2) and fstat(2) 6853 */ 6854 # 155 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6855 /* 6856 * large file compilation environment setup 6857 */ 6858 # 183 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6859 /* 6860 * In the LP64 compilation environment, map large file interfaces 6861 * back to native versions where possible. 6862 */ 6863 6864 6865 6866 # 189 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6867 #pragma redefine_extname fstat64 fstat 6868 # 189 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6869 6870 6871 # 190 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6872 #pragma redefine_extname stat64 stat 6873 # 190 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6874 6875 6876 6877 6878 # 193 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6879 #pragma redefine_extname fstatat64 fstatat 6880 # 193 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6881 6882 6883 6884 6885 # 196 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6886 #pragma redefine_extname lstat64 lstat 6887 # 196 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6888 # 211 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6889 /* 6890 * User level stat structure definitions. 6891 */ 6892 6893 6894 6895 struct stat { 6896 dev_t st_dev; 6897 ino_t st_ino; 6898 mode_t st_mode; 6899 nlink_t st_nlink; 6900 uid_t st_uid; 6901 gid_t st_gid; 6902 dev_t st_rdev; 6903 off_t st_size; 6904 6905 timestruc_t st_atim; 6906 timestruc_t st_mtim; 6907 timestruc_t st_ctim; 6908 6909 6910 6911 6912 6913 blksize_t st_blksize; 6914 blkcnt_t st_blocks; 6915 char st_fstype[16]; 6916 }; 6917 # 273 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6918 /* transitional large file interface version */ 6919 6920 6921 6922 6923 struct stat64 { 6924 dev_t st_dev; 6925 ino_t st_ino; 6926 mode_t st_mode; 6927 nlink_t st_nlink; 6928 uid_t st_uid; 6929 gid_t st_gid; 6930 dev_t st_rdev; 6931 off_t st_size; 6932 6933 timestruc_t st_atim; 6934 timestruc_t st_mtim; 6935 timestruc_t st_ctim; 6936 6937 6938 6939 6940 6941 blksize_t st_blksize; 6942 blkcnt_t st_blocks; 6943 char st_fstype[16]; 6944 }; 6945 # 401 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6946 /* MODE MASKS */ 6947 6948 /* de facto standard definitions */ 6949 6950 6951 6952 6953 6954 6955 /* XENIX definitions are not relevant to Solaris */ 6956 # 428 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6957 /* the following macros are for POSIX conformance */ 6958 # 454 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6959 /* POSIX.4 macros */ 6960 # 476 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6961 /* || defined(_XPG7) */ 6962 /* for use with futimens() and utimensat() */ 6963 # 486 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 6964 extern int fchmod(int, mode_t); 6965 6966 6967 extern int chmod(const char *, mode_t); 6968 extern int mkdir(const char *, mode_t); 6969 extern int mkfifo(const char *, mode_t); 6970 extern mode_t umask(mode_t); 6971 6972 /* transitional large file interfaces */ 6973 6974 6975 extern int fstat64(int, struct stat64 *); 6976 extern int stat64(const char *, struct stat64 *); 6977 extern int lstat64(const char *, struct stat64 *); 6978 6979 6980 extern int fstatat64(int, const char *, struct stat64 *, int); 6981 6982 6983 6984 6985 6986 /* || defined(_XPG7) */ 6987 extern int mkdirat(int, const char *, mode_t); 6988 extern int mkfifoat(int, const char *, mode_t); 6989 extern int mknodat(int, const char *, mode_t, dev_t); 6990 extern int fchmodat(int, const char *, mode_t, int); 6991 extern int futimens(int, const struct timespec[2]); 6992 extern int utimensat(int, const char *, const struct timespec[2], int); 6993 6994 6995 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat_impl.h" 1 6996 /* 6997 * CDDL HEADER START 6998 * 6999 * The contents of this file are subject to the terms of the 7000 * Common Development and Distribution License (the "License"). 7001 * You may not use this file except in compliance with the License. 7002 * 7003 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7004 * or http://www.opensolaris.org/os/licensing. 7005 * See the License for the specific language governing permissions 7006 * and limitations under the License. 7007 * 7008 * When distributing Covered Code, include this CDDL HEADER in each 7009 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7010 * If applicable, add the following below this CDDL HEADER, with the 7011 * fields enclosed by brackets "[]" replaced with your own identifying 7012 * information: Portions Copyright [yyyy] [name of copyright owner] 7013 * 7014 * CDDL HEADER END 7015 */ 7016 7017 /* 7018 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 7019 * Use is subject to license terms. 7020 */ 7021 7022 7023 7024 7025 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 7026 /* 7027 * CDDL HEADER START 7028 * 7029 * The contents of this file are subject to the terms of the 7030 * Common Development and Distribution License (the "License"). 7031 * You may not use this file except in compliance with the License. 7032 * 7033 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7034 * or http://www.opensolaris.org/os/licensing. 7035 * See the License for the specific language governing permissions 7036 * and limitations under the License. 7037 * 7038 * When distributing Covered Code, include this CDDL HEADER in each 7039 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7040 * If applicable, add the following below this CDDL HEADER, with the 7041 * fields enclosed by brackets "[]" replaced with your own identifying 7042 * information: Portions Copyright [yyyy] [name of copyright owner] 7043 * 7044 * CDDL HEADER END 7045 */ 7046 7047 /* 7048 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 7049 * Copyright 2016 Joyent, Inc. 7050 * 7051 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 7052 * Use is subject to license terms. 7053 */ 7054 # 31 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat_impl.h" 2 7055 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 7056 /* 7057 * CDDL HEADER START 7058 * 7059 * The contents of this file are subject to the terms of the 7060 * Common Development and Distribution License (the "License"). 7061 * You may not use this file except in compliance with the License. 7062 * 7063 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7064 * or http://www.opensolaris.org/os/licensing. 7065 * See the License for the specific language governing permissions 7066 * and limitations under the License. 7067 * 7068 * When distributing Covered Code, include this CDDL HEADER in each 7069 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7070 * If applicable, add the following below this CDDL HEADER, with the 7071 * fields enclosed by brackets "[]" replaced with your own identifying 7072 * information: Portions Copyright [yyyy] [name of copyright owner] 7073 * 7074 * CDDL HEADER END 7075 */ 7076 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7077 /* All Rights Reserved */ 7078 7079 7080 /* 7081 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 7082 * Use is subject to license terms. 7083 * 7084 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 7085 * Copyright 2016 Joyent, Inc. 7086 */ 7087 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat_impl.h" 2 7088 7089 7090 7091 7092 7093 /* 7094 * The implementation specific header for <sys/stat.h> 7095 */ 7096 7097 7098 7099 7100 7101 extern int fstat(int, struct stat *); 7102 extern int stat(const char *, struct stat *); 7103 7104 7105 7106 extern int fstatat(int, const char *, struct stat *, int); 7107 7108 7109 7110 extern int lstat(const char *, struct stat *); 7111 extern int mknod(const char *, mode_t, dev_t); 7112 # 518 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stat.h" 2 7113 # 42 "../common/zones_paths.c" 2 7114 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 1 7115 /* 7116 * CDDL HEADER START 7117 * 7118 * The contents of this file are subject to the terms of the 7119 * Common Development and Distribution License, Version 1.0 only 7120 * (the "License"). You may not use this file except in compliance 7121 * with the License. 7122 * 7123 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7124 * or http://www.opensolaris.org/os/licensing. 7125 * See the License for the specific language governing permissions 7126 * and limitations under the License. 7127 * 7128 * When distributing Covered Code, include this CDDL HEADER in each 7129 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7130 * If applicable, add the following below this CDDL HEADER, with the 7131 * fields enclosed by brackets "[]" replaced with your own identifying 7132 * information: Portions Copyright [yyyy] [name of copyright owner] 7133 * 7134 * CDDL HEADER END 7135 */ 7136 /* Copyright (c) 1988 AT&T */ 7137 /* All Rights Reserved */ 7138 7139 /* 7140 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 7141 * 7142 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 7143 * Use is subject to license terms. 7144 */ 7145 7146 7147 7148 7149 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 7150 /* 7151 * CDDL HEADER START 7152 * 7153 * The contents of this file are subject to the terms of the 7154 * Common Development and Distribution License (the "License"). 7155 * You may not use this file except in compliance with the License. 7156 * 7157 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7158 * or http://www.opensolaris.org/os/licensing. 7159 * See the License for the specific language governing permissions 7160 * and limitations under the License. 7161 * 7162 * When distributing Covered Code, include this CDDL HEADER in each 7163 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7164 * If applicable, add the following below this CDDL HEADER, with the 7165 * fields enclosed by brackets "[]" replaced with your own identifying 7166 * information: Portions Copyright [yyyy] [name of copyright owner] 7167 * 7168 * CDDL HEADER END 7169 */ 7170 7171 /* 7172 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 7173 * Copyright 2016 Joyent, Inc. 7174 * 7175 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 7176 * Use is subject to license terms. 7177 */ 7178 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 2 7179 7180 7181 7182 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 7183 /* 7184 * CDDL HEADER START 7185 * 7186 * The contents of this file are subject to the terms of the 7187 * Common Development and Distribution License (the "License"). 7188 * You may not use this file except in compliance with the License. 7189 * 7190 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7191 * or http://www.opensolaris.org/os/licensing. 7192 * See the License for the specific language governing permissions 7193 * and limitations under the License. 7194 * 7195 * When distributing Covered Code, include this CDDL HEADER in each 7196 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7197 * If applicable, add the following below this CDDL HEADER, with the 7198 * fields enclosed by brackets "[]" replaced with your own identifying 7199 * information: Portions Copyright [yyyy] [name of copyright owner] 7200 * 7201 * CDDL HEADER END 7202 */ 7203 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7204 /* All Rights Reserved */ 7205 7206 7207 /* 7208 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 7209 * Use is subject to license terms. 7210 * 7211 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 7212 * Copyright 2016 Joyent, Inc. 7213 */ 7214 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 2 7215 7216 7217 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/signal_iso.h" 1 7218 /* 7219 * CDDL HEADER START 7220 * 7221 * The contents of this file are subject to the terms of the 7222 * Common Development and Distribution License, Version 1.0 only 7223 * (the "License"). You may not use this file except in compliance 7224 * with the License. 7225 * 7226 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7227 * or http://www.opensolaris.org/os/licensing. 7228 * See the License for the specific language governing permissions 7229 * and limitations under the License. 7230 * 7231 * When distributing Covered Code, include this CDDL HEADER in each 7232 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7233 * If applicable, add the following below this CDDL HEADER, with the 7234 * fields enclosed by brackets "[]" replaced with your own identifying 7235 * information: Portions Copyright [yyyy] [name of copyright owner] 7236 * 7237 * CDDL HEADER END 7238 */ 7239 /* Copyright (c) 1988 AT&T */ 7240 /* All Rights Reserved */ 7241 7242 7243 /* 7244 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 7245 * 7246 * Copyright (c) 1998-1999, by Sun Microsystems, Inc. 7247 * All rights reserved. 7248 */ 7249 7250 /* 7251 * An application should not include this header directly. Instead it 7252 * should be included only through the inclusion of other Sun headers. 7253 * 7254 * The contents of this header is limited to identifiers specified in the 7255 * C Standard. Any new identifiers specified in future amendments to the 7256 * C Standard must be placed in this header. If these new identifiers 7257 * are required to also be in the C++ Standard "std" namespace, then for 7258 * anything other than macro definitions, corresponding "using" directives 7259 * must also be added to <signal.h>. 7260 */ 7261 7262 7263 7264 7265 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/iso/signal_iso.h" 1 7266 /* 7267 * CDDL HEADER START 7268 * 7269 * The contents of this file are subject to the terms of the 7270 * Common Development and Distribution License (the "License"). 7271 * You may not use this file except in compliance with the License. 7272 * 7273 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7274 * or http://www.opensolaris.org/os/licensing. 7275 * See the License for the specific language governing permissions 7276 * and limitations under the License. 7277 * 7278 * When distributing Covered Code, include this CDDL HEADER in each 7279 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7280 * If applicable, add the following below this CDDL HEADER, with the 7281 * fields enclosed by brackets "[]" replaced with your own identifying 7282 * information: Portions Copyright [yyyy] [name of copyright owner] 7283 * 7284 * CDDL HEADER END 7285 */ 7286 7287 /* 7288 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 7289 * Use is subject to license terms. 7290 */ 7291 7292 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7293 /* All Rights Reserved */ 7294 7295 /* 7296 * An application should not include this header directly. Instead it 7297 * should be included only through the inclusion of other Sun headers. 7298 * 7299 * The contents of this header is limited to identifiers specified in the 7300 * C Standard. Any new identifiers specified in future amendments to the 7301 * C Standard must be placed in this header. If these new identifiers 7302 * are required to also be in the C++ Standard "std" namespace, then for 7303 * anything other than macro definitions, corresponding "using" directives 7304 * must also be added to <sys/signal.h.h>. 7305 */ 7306 7307 7308 7309 7310 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 1 7311 /* 7312 * CDDL HEADER START 7313 * 7314 * The contents of this file are subject to the terms of the 7315 * Common Development and Distribution License (the "License"). 7316 * You may not use this file except in compliance with the License. 7317 * 7318 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7319 * or http://www.opensolaris.org/os/licensing. 7320 * See the License for the specific language governing permissions 7321 * and limitations under the License. 7322 * 7323 * When distributing Covered Code, include this CDDL HEADER in each 7324 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7325 * If applicable, add the following below this CDDL HEADER, with the 7326 * fields enclosed by brackets "[]" replaced with your own identifying 7327 * information: Portions Copyright [yyyy] [name of copyright owner] 7328 * 7329 * CDDL HEADER END 7330 */ 7331 7332 /* 7333 * Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T 7334 * All Rights Reserved 7335 * 7336 */ 7337 7338 /* 7339 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 7340 * Use is subject to license terms. 7341 */ 7342 7343 /* 7344 * WARNING: This is an implementation-specific header, 7345 * its contents are not guaranteed. Applications 7346 * should include <unistd.h> and not this header. 7347 */ 7348 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/iso/signal_iso.h" 2 7349 # 96 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/iso/signal_iso.h" 7350 /* insert new signals here, and move _SIGRTM* appropriately */ 7351 7352 7353 extern long _sysconf(int); /* System Private interface to sysconf() */ 7354 # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/signal_iso.h" 2 7355 # 58 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/signal_iso.h" 7356 typedef int sig_atomic_t; 7357 7358 7359 7360 7361 extern void (*signal(int, void (*)(int)))(int); 7362 7363 extern int raise(int); 7364 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 2 7365 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 1 7366 /* 7367 * CDDL HEADER START 7368 * 7369 * The contents of this file are subject to the terms of the 7370 * Common Development and Distribution License (the "License"). 7371 * You may not use this file except in compliance with the License. 7372 * 7373 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7374 * or http://www.opensolaris.org/os/licensing. 7375 * See the License for the specific language governing permissions 7376 * and limitations under the License. 7377 * 7378 * When distributing Covered Code, include this CDDL HEADER in each 7379 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7380 * If applicable, add the following below this CDDL HEADER, with the 7381 * fields enclosed by brackets "[]" replaced with your own identifying 7382 * information: Portions Copyright [yyyy] [name of copyright owner] 7383 * 7384 * CDDL HEADER END 7385 */ 7386 7387 /* 7388 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 7389 * Use is subject to license terms. 7390 */ 7391 7392 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7393 /* All Rights Reserved */ 7394 7395 /* 7396 * University Copyright- Copyright (c) 1982, 1986, 1988 7397 * The Regents of the University of California 7398 * All Rights Reserved 7399 * 7400 * University Acknowledgment- Portions of this document are derived from 7401 * software developed by the University of California, Berkeley, and its 7402 * contributors. 7403 */ 7404 7405 7406 7407 7408 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 7409 /* 7410 * CDDL HEADER START 7411 * 7412 * The contents of this file are subject to the terms of the 7413 * Common Development and Distribution License (the "License"). 7414 * You may not use this file except in compliance with the License. 7415 * 7416 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7417 * or http://www.opensolaris.org/os/licensing. 7418 * See the License for the specific language governing permissions 7419 * and limitations under the License. 7420 * 7421 * When distributing Covered Code, include this CDDL HEADER in each 7422 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7423 * If applicable, add the following below this CDDL HEADER, with the 7424 * fields enclosed by brackets "[]" replaced with your own identifying 7425 * information: Portions Copyright [yyyy] [name of copyright owner] 7426 * 7427 * CDDL HEADER END 7428 */ 7429 7430 /* 7431 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 7432 * Copyright 2016 Joyent, Inc. 7433 * 7434 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 7435 * Use is subject to license terms. 7436 */ 7437 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 2 7438 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/iso/signal_iso.h" 1 7439 /* 7440 * CDDL HEADER START 7441 * 7442 * The contents of this file are subject to the terms of the 7443 * Common Development and Distribution License (the "License"). 7444 * You may not use this file except in compliance with the License. 7445 * 7446 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7447 * or http://www.opensolaris.org/os/licensing. 7448 * See the License for the specific language governing permissions 7449 * and limitations under the License. 7450 * 7451 * When distributing Covered Code, include this CDDL HEADER in each 7452 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7453 * If applicable, add the following below this CDDL HEADER, with the 7454 * fields enclosed by brackets "[]" replaced with your own identifying 7455 * information: Portions Copyright [yyyy] [name of copyright owner] 7456 * 7457 * CDDL HEADER END 7458 */ 7459 7460 /* 7461 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 7462 * Use is subject to license terms. 7463 */ 7464 7465 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7466 /* All Rights Reserved */ 7467 7468 /* 7469 * An application should not include this header directly. Instead it 7470 * should be included only through the inclusion of other Sun headers. 7471 * 7472 * The contents of this header is limited to identifiers specified in the 7473 * C Standard. Any new identifiers specified in future amendments to the 7474 * C Standard must be placed in this header. If these new identifiers 7475 * are required to also be in the C++ Standard "std" namespace, then for 7476 * anything other than macro definitions, corresponding "using" directives 7477 * must also be added to <sys/signal.h.h>. 7478 */ 7479 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 2 7480 # 56 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 7481 /* 7482 * We need <sys/siginfo.h> for the declaration of siginfo_t. 7483 */ 7484 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 1 7485 /* 7486 * CDDL HEADER START 7487 * 7488 * The contents of this file are subject to the terms of the 7489 * Common Development and Distribution License, Version 1.0 only 7490 * (the "License"). You may not use this file except in compliance 7491 * with the License. 7492 * 7493 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7494 * or http://www.opensolaris.org/os/licensing. 7495 * See the License for the specific language governing permissions 7496 * and limitations under the License. 7497 * 7498 * When distributing Covered Code, include this CDDL HEADER in each 7499 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7500 * If applicable, add the following below this CDDL HEADER, with the 7501 * fields enclosed by brackets "[]" replaced with your own identifying 7502 * information: Portions Copyright [yyyy] [name of copyright owner] 7503 * 7504 * CDDL HEADER END 7505 */ 7506 /* 7507 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 7508 * Use is subject to license terms. 7509 */ 7510 7511 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7512 /* All Rights Reserved */ 7513 7514 7515 7516 7517 #pragma ident "%Z%%M% %I% %E% SMI" 7518 7519 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 7520 /* 7521 * CDDL HEADER START 7522 * 7523 * The contents of this file are subject to the terms of the 7524 * Common Development and Distribution License (the "License"). 7525 * You may not use this file except in compliance with the License. 7526 * 7527 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7528 * or http://www.opensolaris.org/os/licensing. 7529 * See the License for the specific language governing permissions 7530 * and limitations under the License. 7531 * 7532 * When distributing Covered Code, include this CDDL HEADER in each 7533 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7534 * If applicable, add the following below this CDDL HEADER, with the 7535 * fields enclosed by brackets "[]" replaced with your own identifying 7536 * information: Portions Copyright [yyyy] [name of copyright owner] 7537 * 7538 * CDDL HEADER END 7539 */ 7540 7541 /* 7542 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 7543 * Copyright 2016 Joyent, Inc. 7544 * 7545 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 7546 * Use is subject to license terms. 7547 */ 7548 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 2 7549 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 7550 /* 7551 * CDDL HEADER START 7552 * 7553 * The contents of this file are subject to the terms of the 7554 * Common Development and Distribution License (the "License"). 7555 * You may not use this file except in compliance with the License. 7556 * 7557 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7558 * or http://www.opensolaris.org/os/licensing. 7559 * See the License for the specific language governing permissions 7560 * and limitations under the License. 7561 * 7562 * When distributing Covered Code, include this CDDL HEADER in each 7563 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7564 * If applicable, add the following below this CDDL HEADER, with the 7565 * fields enclosed by brackets "[]" replaced with your own identifying 7566 * information: Portions Copyright [yyyy] [name of copyright owner] 7567 * 7568 * CDDL HEADER END 7569 */ 7570 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7571 /* All Rights Reserved */ 7572 7573 7574 /* 7575 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 7576 * Use is subject to license terms. 7577 * 7578 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 7579 * Copyright 2016 Joyent, Inc. 7580 */ 7581 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 2 7582 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7583 /* 7584 * The union sigval is also defined in <time.h> as per X/Open and 7585 * POSIX requirements. 7586 */ 7587 # 80 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7588 /* 7589 * The sigevent structure is also defined in <time.h> as per X/Open and 7590 * POSIX requirements. 7591 */ 7592 # 96 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7593 /* values of sigev_notify */ 7594 # 121 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7595 /* 7596 * negative signal codes are reserved for future use for user generated 7597 * signals 7598 */ 7599 # 141 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7600 /* 7601 * Get the machine dependent signal codes (SIGILL, SIGFPE, SIGSEGV, and 7602 * SIGBUS) from <sys/machsig.h> 7603 */ 7604 7605 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machsig.h" 1 7606 /* 7607 * CDDL HEADER START 7608 * 7609 * The contents of this file are subject to the terms of the 7610 * Common Development and Distribution License, Version 1.0 only 7611 * (the "License"). You may not use this file except in compliance 7612 * with the License. 7613 * 7614 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7615 * or http://www.opensolaris.org/os/licensing. 7616 * See the License for the specific language governing permissions 7617 * and limitations under the License. 7618 * 7619 * When distributing Covered Code, include this CDDL HEADER in each 7620 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7621 * If applicable, add the following below this CDDL HEADER, with the 7622 * fields enclosed by brackets "[]" replaced with your own identifying 7623 * information: Portions Copyright [yyyy] [name of copyright owner] 7624 * 7625 * CDDL HEADER END 7626 */ 7627 /* 7628 * Copyright 2003 Sun Microsystems, Inc. All rights reserved. 7629 * Use is subject to license terms. 7630 */ 7631 7632 /* Copyright (c) 1988 AT&T */ 7633 /* All Rights Reserved */ 7634 7635 7636 7637 7638 7639 #pragma ident "%Z%%M% %I% %E% SMI" 7640 7641 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 7642 /* 7643 * CDDL HEADER START 7644 * 7645 * The contents of this file are subject to the terms of the 7646 * Common Development and Distribution License (the "License"). 7647 * You may not use this file except in compliance with the License. 7648 * 7649 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7650 * or http://www.opensolaris.org/os/licensing. 7651 * See the License for the specific language governing permissions 7652 * and limitations under the License. 7653 * 7654 * When distributing Covered Code, include this CDDL HEADER in each 7655 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7656 * If applicable, add the following below this CDDL HEADER, with the 7657 * fields enclosed by brackets "[]" replaced with your own identifying 7658 * information: Portions Copyright [yyyy] [name of copyright owner] 7659 * 7660 * CDDL HEADER END 7661 */ 7662 7663 /* 7664 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 7665 * Copyright 2016 Joyent, Inc. 7666 * 7667 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 7668 * Use is subject to license terms. 7669 */ 7670 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machsig.h" 2 7671 7672 7673 7674 7675 7676 /* 7677 * machsig.h is the machine dependent portion of siginfo.h (and is 7678 * included by siginfo.h). A version of machsig.h should exist for 7679 * each architecture. The codes for SIGILL, SIGFPU, SIGSEGV and SIGBUS 7680 * are in this file. The codes for SIGTRAP, SIGCLD(SIGCHLD), and 7681 * SIGPOLL are architecture independent and may be found in siginfo.h. 7682 */ 7683 7684 7685 7686 7687 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/vm/faultcode.h" 1 7688 /* 7689 * CDDL HEADER START 7690 * 7691 * The contents of this file are subject to the terms of the 7692 * Common Development and Distribution License (the "License"). 7693 * You may not use this file except in compliance with the License. 7694 * 7695 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7696 * or http://www.opensolaris.org/os/licensing. 7697 * See the License for the specific language governing permissions 7698 * and limitations under the License. 7699 * 7700 * When distributing Covered Code, include this CDDL HEADER in each 7701 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7702 * If applicable, add the following below this CDDL HEADER, with the 7703 * fields enclosed by brackets "[]" replaced with your own identifying 7704 * information: Portions Copyright [yyyy] [name of copyright owner] 7705 * 7706 * CDDL HEADER END 7707 */ 7708 /* 7709 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 7710 * Use is subject to license terms. 7711 */ 7712 7713 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7714 /* All Rights Reserved */ 7715 7716 /* 7717 * University Copyright- Copyright (c) 1982, 1986, 1988 7718 * The Regents of the University of California 7719 * All Rights Reserved 7720 * 7721 * University Acknowledgment- Portions of this document are derived from 7722 * software developed by the University of California, Berkeley, and its 7723 * contributors. 7724 */ 7725 7726 7727 7728 7729 #pragma ident "%Z%%M% %I% %E% SMI" 7730 7731 7732 7733 7734 7735 /* 7736 * This file describes the data type returned by vm routines 7737 * which handle faults. 7738 * 7739 * If FC_CODE(fc) == FC_OBJERR, then FC_ERRNO(fc) contains the errno value 7740 * returned by the underlying object mapped at the fault address. 7741 */ 7742 # 68 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/vm/faultcode.h" 7743 typedef int faultcode_t; /* type returned by vm fault routines */ 7744 7745 extern int fc_decode(faultcode_t); 7746 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machsig.h" 2 7747 7748 7749 /* 7750 * SIGILL signal codes 7751 */ 7752 # 71 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machsig.h" 7753 /* 7754 * SIGEMT signal codes 7755 */ 7756 7757 7758 7759 7760 7761 7762 /* 7763 * SIGFPE signal codes 7764 */ 7765 # 97 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machsig.h" 7766 /* 7767 * SIGSEGV signal codes 7768 */ 7769 7770 7771 7772 7773 7774 7775 7776 /* 7777 * SIGBUS signal codes 7778 */ 7779 # 147 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 2 7780 7781 /* 7782 * SIGTRAP signal codes 7783 */ 7784 # 162 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7785 /* 7786 * SIGCLD signal codes 7787 */ 7788 # 177 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7789 /* 7790 * SIGPOLL signal codes 7791 */ 7792 # 195 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7793 /* 7794 * SIGPROF signal codes 7795 */ 7796 # 215 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7797 /* 7798 * Inclusion of <sys/time_impl.h> is needed for the declaration of 7799 * timestruc_t. However, since inclusion of <sys/time_impl.h> results 7800 * in X/Open and POSIX namespace pollution, the definition for 7801 * timestruct_t has been duplicated in a standards namespace safe header 7802 * <sys/time_std_impl.h>. In <sys/time_std_impl.h>, the structure 7803 * name, tag, and member names, as well as the type itself, all have 7804 * leading underscores to protect namespace. 7805 */ 7806 7807 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time_impl.h" 1 7808 /* 7809 * CDDL HEADER START 7810 * 7811 * The contents of this file are subject to the terms of the 7812 * Common Development and Distribution License, Version 1.0 only 7813 * (the "License"). You may not use this file except in compliance 7814 * with the License. 7815 * 7816 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7817 * or http://www.opensolaris.org/os/licensing. 7818 * See the License for the specific language governing permissions 7819 * and limitations under the License. 7820 * 7821 * When distributing Covered Code, include this CDDL HEADER in each 7822 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7823 * If applicable, add the following below this CDDL HEADER, with the 7824 * fields enclosed by brackets "[]" replaced with your own identifying 7825 * information: Portions Copyright [yyyy] [name of copyright owner] 7826 * 7827 * CDDL HEADER END 7828 */ 7829 /* 7830 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 7831 * Use is subject to license terms. 7832 */ 7833 7834 /* 7835 * Implementation-private. This header should not be included 7836 * directly by an application. The application should instead 7837 * include <time.h> which includes this header conditionally 7838 * depending on which feature test macros are defined. By default, 7839 * this header is included by <time.h>. X/Open and POSIX 7840 * standards requirements result in this header being included 7841 * by <time.h> only under a restricted set of conditions. 7842 */ 7843 # 226 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 2 7844 7845 7846 7847 7848 /* 7849 * The inclusion of <sys/types.h> is needed for definitions of pid_t, etc. 7850 * Placement here is due to a dependency in <sys/select.h> which is included 7851 * by <sys/types.h> for the sigevent structure. Hence this inclusion must 7852 * follow that definition. 7853 */ 7854 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 7855 /* 7856 * CDDL HEADER START 7857 * 7858 * The contents of this file are subject to the terms of the 7859 * Common Development and Distribution License (the "License"). 7860 * You may not use this file except in compliance with the License. 7861 * 7862 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 7863 * or http://www.opensolaris.org/os/licensing. 7864 * See the License for the specific language governing permissions 7865 * and limitations under the License. 7866 * 7867 * When distributing Covered Code, include this CDDL HEADER in each 7868 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 7869 * If applicable, add the following below this CDDL HEADER, with the 7870 * fields enclosed by brackets "[]" replaced with your own identifying 7871 * information: Portions Copyright [yyyy] [name of copyright owner] 7872 * 7873 * CDDL HEADER END 7874 */ 7875 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 7876 /* All Rights Reserved */ 7877 7878 7879 /* 7880 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 7881 * Use is subject to license terms. 7882 * 7883 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 7884 * Copyright 2016 Joyent, Inc. 7885 */ 7886 # 237 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 2 7887 7888 7889 typedef struct siginfo { /* pollutes POSIX/XOPEN namespace */ 7890 7891 7892 7893 int si_signo; /* signal from signal.h */ 7894 int si_code; /* code from above */ 7895 int si_errno; /* error from errno.h */ 7896 7897 int si_pad; /* _LP64 union starts on an 8-byte boundary */ 7898 7899 union { 7900 7901 int __pad[((256 / sizeof (int)) - 4)]; /* for future growth */ 7902 7903 struct { /* kill(), SIGCLD, siqqueue() */ 7904 pid_t __pid; /* process ID */ 7905 union { 7906 struct { 7907 uid_t __uid; 7908 7909 7910 union sigval __value; 7911 7912 7913 7914 } __kill; 7915 struct { 7916 clock_t __utime; 7917 int __status; 7918 clock_t __stime; 7919 } __cld; 7920 } __pdata; 7921 ctid_t __ctid; /* contract ID */ 7922 zoneid_t __zoneid; /* zone ID */ 7923 } __proc; 7924 7925 struct { /* SIGSEGV, SIGBUS, SIGILL, SIGTRAP, SIGFPE */ 7926 void *__addr; /* faulting address */ 7927 int __trapno; /* illegal trap number */ 7928 caddr_t __pc; /* instruction address */ 7929 } __fault; 7930 7931 struct { /* SIGPOLL, SIGXFSZ */ 7932 /* fd not currently available for SIGPOLL */ 7933 int __fd; /* file descriptor */ 7934 long __band; 7935 } __file; 7936 7937 struct { /* SIGPROF */ 7938 caddr_t __faddr; /* last fault address */ 7939 7940 timestruc_t __tstamp; /* real time stamp */ 7941 7942 7943 7944 short __syscall; /* current syscall */ 7945 char __nsysarg; /* number of arguments */ 7946 char __fault; /* last fault type */ 7947 long __sysarg[8]; /* syscall arguments */ 7948 int __mstate[10]; /* see <sys/msacct.h> */ 7949 } __prof; 7950 7951 struct { /* SI_RCTL */ 7952 int32_t __entity; /* type of entity exceeding */ 7953 } __rctl; 7954 } __data; 7955 7956 } siginfo_t; 7957 # 374 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 7958 /* 7959 * XXX -- internal version is identical to siginfo_t but without the padding. 7960 * This must be maintained in sync with it. 7961 */ 7962 7963 7964 7965 typedef struct k_siginfo { 7966 int si_signo; /* signal from signal.h */ 7967 int si_code; /* code from above */ 7968 int si_errno; /* error from errno.h */ 7969 7970 int si_pad; /* _LP64 union starts on an 8-byte boundary */ 7971 7972 union { 7973 struct { /* kill(), SIGCLD, siqqueue() */ 7974 pid_t __pid; /* process ID */ 7975 union { 7976 struct { 7977 uid_t __uid; 7978 union sigval __value; 7979 } __kill; 7980 struct { 7981 clock_t __utime; 7982 int __status; 7983 clock_t __stime; 7984 } __cld; 7985 } __pdata; 7986 ctid_t __ctid; /* contract ID */ 7987 zoneid_t __zoneid; /* zone ID */ 7988 } __proc; 7989 7990 struct { /* SIGSEGV, SIGBUS, SIGILL, SIGTRAP, SIGFPE */ 7991 void *__addr; /* faulting address */ 7992 int __trapno; /* illegal trap number */ 7993 caddr_t __pc; /* instruction address */ 7994 } __fault; 7995 7996 struct { /* SIGPOLL, SIGXFSZ */ 7997 /* fd not currently available for SIGPOLL */ 7998 int __fd; /* file descriptor */ 7999 long __band; 8000 } __file; 8001 8002 struct { /* SIGPROF */ 8003 caddr_t __faddr; /* last fault address */ 8004 8005 8006 timestruc_t __tstamp; /* real time stamp */ 8007 8008 8009 8010 short __syscall; /* current syscall */ 8011 char __nsysarg; /* number of arguments */ 8012 char __fault; /* last fault type */ 8013 /* these are omitted to keep k_siginfo_t small */ 8014 /* long __sysarg[8]; */ 8015 /* int __mstate[10]; */ 8016 } __prof; 8017 8018 struct { /* SI_RCTL */ 8019 int32_t __entity; /* type of entity exceeding */ 8020 } __rctl; 8021 8022 } __data; 8023 8024 } k_siginfo_t; 8025 8026 typedef struct sigqueue { 8027 struct sigqueue *sq_next; 8028 k_siginfo_t sq_info; 8029 void (*sq_func)(struct sigqueue *); /* destructor function */ 8030 void *sq_backptr; /* pointer to the data structure */ 8031 /* associated by sq_func() */ 8032 int sq_external; /* comes from outside the contract */ 8033 } sigqueue_t; 8034 8035 /* indication whether to queue the signal or not */ 8036 # 60 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 2 8037 8038 8039 /* Duplicated in <sys/ucontext.h> as a result of XPG4v2 requirements */ 8040 8041 8042 8043 8044 8045 8046 8047 typedef struct { 8048 unsigned int __sigbits[3]; 8049 } k_sigset_t; 8050 8051 /* 8052 * The signal handler routine can have either one or three arguments. 8053 * Existing C code has used either form so not specifing the arguments 8054 * neatly finesses the problem. C++ doesn't accept this. To C++ 8055 * "(*sa_handler)()" indicates a routine with no arguments (ANSI C would 8056 * specify this as "(*sa_handler)(void)"). One or the other form must be 8057 * used for C++ and the only logical choice is "(*sa_handler)(int)" to allow 8058 * the SIG_* defines to work. "(*sa_sigaction)(int, siginfo_t *, void *)" 8059 * can be used for the three argument form. 8060 */ 8061 8062 /* 8063 * Note: storage overlap by sa_handler and sa_sigaction 8064 */ 8065 struct sigaction { 8066 int sa_flags; 8067 union { 8068 8069 8070 8071 void (*_handler)(); 8072 8073 8074 8075 8076 void (*_sigaction)(int, siginfo_t *, void *); 8077 8078 } _funcptr; 8079 sigset_t sa_mask; 8080 8081 8082 8083 }; 8084 # 126 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 8085 /* this is only valid for SIGCLD */ 8086 8087 8088 8089 8090 8091 8092 8093 /* non-conformant ANSI compilation */ 8094 8095 /* definitions for the sa_flags field */ 8096 # 153 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 8097 /* this is only valid for SIGCLD */ 8098 8099 8100 8101 /* 8102 * use of these symbols by applications is injurious 8103 * to binary compatibility 8104 */ 8105 # 171 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 8106 /* Duplicated in <sys/ucontext.h> as a result of XPG4v2 requirements. */ 8107 8108 8109 8110 typedef struct sigaltstack { 8111 8112 8113 8114 void *ss_sp; 8115 size_t ss_size; 8116 int ss_flags; 8117 } stack_t; 8118 # 203 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 8119 /* signotify id used only by libc for mq_notify()/aio_notify() */ 8120 typedef struct signotify_id { /* signotify id struct */ 8121 pid_t sn_pid; /* pid of proc to be notified */ 8122 int sn_index; /* index in preallocated pool */ 8123 int sn_pad; /* reserved */ 8124 } signotify_id_t; 8125 # 222 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 8126 /* Command codes for sig_notify call */ 8127 8128 8129 8130 8131 8132 8133 8134 /* Added as per XPG4v2 */ 8135 8136 8137 8138 struct sigstack { 8139 void *ss_sp; 8140 int ss_onstack; 8141 }; 8142 8143 8144 /* 8145 * For definition of ucontext_t; must follow struct definition 8146 * for sigset_t 8147 */ 8148 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 2 8149 8150 /* 8151 * Allow global visibility for symbols defined in 8152 * C++ "std" namespace in <iso/signal_iso.h>. 8153 */ 8154 # 60 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 8155 extern const char **_sys_siglistp; /* signal descriptions */ 8156 extern const int _sys_siglistn; /* # of signal descriptions */ 8157 # 70 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 8158 extern int kill(pid_t, int); 8159 extern int sigaction(int, const struct sigaction *, 8160 struct sigaction *); 8161 8162 extern int sigaddset(sigset_t *, int); 8163 extern int sigdelset(sigset_t *, int); 8164 extern int sigemptyset(sigset_t *); 8165 extern int sigfillset(sigset_t *); 8166 extern int sigismember(const sigset_t *, int); 8167 8168 extern int sigpending(sigset_t *); 8169 extern int sigprocmask(int, const sigset_t *, 8170 sigset_t *); 8171 extern int sigsuspend(const sigset_t *); 8172 8173 8174 8175 8176 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/procset.h" 1 8177 /* 8178 * CDDL HEADER START 8179 * 8180 * The contents of this file are subject to the terms of the 8181 * Common Development and Distribution License, Version 1.0 only 8182 * (the "License"). You may not use this file except in compliance 8183 * with the License. 8184 * 8185 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8186 * or http://www.opensolaris.org/os/licensing. 8187 * See the License for the specific language governing permissions 8188 * and limitations under the License. 8189 * 8190 * When distributing Covered Code, include this CDDL HEADER in each 8191 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8192 * If applicable, add the following below this CDDL HEADER, with the 8193 * fields enclosed by brackets "[]" replaced with your own identifying 8194 * information: Portions Copyright [yyyy] [name of copyright owner] 8195 * 8196 * CDDL HEADER END 8197 */ 8198 /* 8199 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 8200 * Use is subject to license terms. 8201 */ 8202 8203 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 8204 /* All Rights Reserved */ 8205 8206 8207 8208 8209 8210 #pragma ident "%Z%%M% %I% %E% SMI" 8211 8212 8213 8214 8215 8216 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 8217 /* 8218 * CDDL HEADER START 8219 * 8220 * The contents of this file are subject to the terms of the 8221 * Common Development and Distribution License (the "License"). 8222 * You may not use this file except in compliance with the License. 8223 * 8224 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8225 * or http://www.opensolaris.org/os/licensing. 8226 * See the License for the specific language governing permissions 8227 * and limitations under the License. 8228 * 8229 * When distributing Covered Code, include this CDDL HEADER in each 8230 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8231 * If applicable, add the following below this CDDL HEADER, with the 8232 * fields enclosed by brackets "[]" replaced with your own identifying 8233 * information: Portions Copyright [yyyy] [name of copyright owner] 8234 * 8235 * CDDL HEADER END 8236 */ 8237 8238 /* 8239 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 8240 * Copyright 2016 Joyent, Inc. 8241 * 8242 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 8243 * Use is subject to license terms. 8244 */ 8245 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/procset.h" 2 8246 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 8247 /* 8248 * CDDL HEADER START 8249 * 8250 * The contents of this file are subject to the terms of the 8251 * Common Development and Distribution License (the "License"). 8252 * You may not use this file except in compliance with the License. 8253 * 8254 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8255 * or http://www.opensolaris.org/os/licensing. 8256 * See the License for the specific language governing permissions 8257 * and limitations under the License. 8258 * 8259 * When distributing Covered Code, include this CDDL HEADER in each 8260 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8261 * If applicable, add the following below this CDDL HEADER, with the 8262 * fields enclosed by brackets "[]" replaced with your own identifying 8263 * information: Portions Copyright [yyyy] [name of copyright owner] 8264 * 8265 * CDDL HEADER END 8266 */ 8267 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 8268 /* All Rights Reserved */ 8269 8270 8271 /* 8272 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 8273 * Use is subject to license terms. 8274 * 8275 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 8276 * Copyright 2016 Joyent, Inc. 8277 */ 8278 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/procset.h" 2 8279 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/signal.h" 1 8280 /* 8281 * CDDL HEADER START 8282 * 8283 * The contents of this file are subject to the terms of the 8284 * Common Development and Distribution License (the "License"). 8285 * You may not use this file except in compliance with the License. 8286 * 8287 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8288 * or http://www.opensolaris.org/os/licensing. 8289 * See the License for the specific language governing permissions 8290 * and limitations under the License. 8291 * 8292 * When distributing Covered Code, include this CDDL HEADER in each 8293 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8294 * If applicable, add the following below this CDDL HEADER, with the 8295 * fields enclosed by brackets "[]" replaced with your own identifying 8296 * information: Portions Copyright [yyyy] [name of copyright owner] 8297 * 8298 * CDDL HEADER END 8299 */ 8300 8301 /* 8302 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 8303 * Use is subject to license terms. 8304 */ 8305 8306 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 8307 /* All Rights Reserved */ 8308 8309 /* 8310 * University Copyright- Copyright (c) 1982, 1986, 1988 8311 * The Regents of the University of California 8312 * All Rights Reserved 8313 * 8314 * University Acknowledgment- Portions of this document are derived from 8315 * software developed by the University of California, Berkeley, and its 8316 * contributors. 8317 */ 8318 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/procset.h" 2 8319 8320 /* 8321 * This file defines the data needed to specify a set of 8322 * processes. These types are used by the sigsend, sigsendset, 8323 * priocntl, priocntlset, waitid, evexit, and evexitset system 8324 * calls. 8325 */ 8326 8327 8328 8329 8330 8331 /* 8332 * The following defines the values for an identifier type. It 8333 * specifies the interpretation of an id value. An idtype and 8334 * id together define a simple set of processes. 8335 */ 8336 typedef enum 8337 8338 idtype /* pollutes XPG4.2 namespace */ 8339 8340 { 8341 P_PID, /* A process identifier. */ 8342 P_PPID, /* A parent process identifier. */ 8343 P_PGID, /* A process group (job control group) */ 8344 /* identifier. */ 8345 P_SID, /* A session identifier. */ 8346 P_CID, /* A scheduling class identifier. */ 8347 P_UID, /* A user identifier. */ 8348 P_GID, /* A group identifier. */ 8349 P_ALL, /* All processes. */ 8350 P_LWPID, /* An LWP identifier. */ 8351 P_TASKID, /* A task identifier. */ 8352 P_PROJID, /* A project identifier. */ 8353 P_POOLID, /* A pool identifier. */ 8354 P_ZONEID, /* A zone identifier. */ 8355 P_CTID, /* A (process) contract identifier. */ 8356 P_CPUID, /* CPU identifier. */ 8357 P_PSETID /* Processor set identifier */ 8358 } idtype_t; 8359 8360 8361 /* 8362 * The following defines the operations which can be performed to 8363 * combine two simple sets of processes to form another set of 8364 * processes. 8365 */ 8366 8367 typedef enum idop { 8368 POP_DIFF, /* Set difference. The processes which */ 8369 /* are in the left operand set and not */ 8370 /* in the right operand set. */ 8371 POP_AND, /* Set disjunction. The processes */ 8372 /* which are in both the left and right */ 8373 /* operand sets. */ 8374 POP_OR, /* Set conjunction. The processes */ 8375 /* which are in either the left or the */ 8376 /* right operand sets (or both). */ 8377 POP_XOR /* Set exclusive or. The processes */ 8378 /* which are in either the left or */ 8379 /* right operand sets but not in both. */ 8380 } idop_t; 8381 8382 8383 /* 8384 * The following structure is used to define a set of processes. 8385 * The set is defined in terms of two simple sets of processes 8386 * and an operator which operates on these two operand sets. 8387 */ 8388 typedef struct procset { 8389 idop_t p_op; /* The operator connection the */ 8390 /* following two operands each */ 8391 /* of which is a simple set of */ 8392 /* processes. */ 8393 8394 idtype_t p_lidtype; 8395 /* The type of the left operand */ 8396 /* simple set. */ 8397 id_t p_lid; /* The id of the left operand. */ 8398 8399 idtype_t p_ridtype; 8400 /* The type of the right */ 8401 /* operand simple set. */ 8402 id_t p_rid; /* The id of the right operand. */ 8403 } procset_t; 8404 8405 /* 8406 * The following macro can be used to initialize a procset_t 8407 * structure. 8408 */ 8409 # 89 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 2 8410 extern int gsignal(int); 8411 extern int (*ssignal(int, int (*)(int)))(int); 8412 extern int sigsend(idtype_t, id_t, int); 8413 extern int sigsendset(const procset_t *, int); 8414 extern int sig2str(int, char *); 8415 extern int str2sig(const char *, int *); 8416 8417 8418 8419 8420 8421 extern void (*bsd_signal(int, void (*)(int)))(int); 8422 extern int killpg(pid_t, int); 8423 extern int siginterrupt(int, int); 8424 extern int sigaltstack(const stack_t *, stack_t *); 8425 extern int sighold(int); 8426 extern int sigignore(int); 8427 extern int sigpause(int); 8428 extern int sigrelse(int); 8429 extern void (*sigset(int, void (*)(int)))(int); 8430 8431 8432 /* Marked as LEGACY in SUSv2 and removed in SUSv3 */ 8433 8434 8435 8436 extern int sigstack(struct sigstack *, struct sigstack *); 8437 8438 8439 8440 8441 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/siginfo.h" 1 8442 /* 8443 * CDDL HEADER START 8444 * 8445 * The contents of this file are subject to the terms of the 8446 * Common Development and Distribution License, Version 1.0 only 8447 * (the "License"). You may not use this file except in compliance 8448 * with the License. 8449 * 8450 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8451 * or http://www.opensolaris.org/os/licensing. 8452 * See the License for the specific language governing permissions 8453 * and limitations under the License. 8454 * 8455 * When distributing Covered Code, include this CDDL HEADER in each 8456 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8457 * If applicable, add the following below this CDDL HEADER, with the 8458 * fields enclosed by brackets "[]" replaced with your own identifying 8459 * information: Portions Copyright [yyyy] [name of copyright owner] 8460 * 8461 * CDDL HEADER END 8462 */ 8463 /* 8464 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 8465 * Use is subject to license terms. 8466 */ 8467 8468 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 8469 /* All Rights Reserved */ 8470 # 121 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 2 8471 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/time.h" 1 8472 /* 8473 * CDDL HEADER START 8474 * 8475 * The contents of this file are subject to the terms of the 8476 * Common Development and Distribution License (the "License"). 8477 * You may not use this file except in compliance with the License. 8478 * 8479 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8480 * or http://www.opensolaris.org/os/licensing. 8481 * See the License for the specific language governing permissions 8482 * and limitations under the License. 8483 * 8484 * When distributing Covered Code, include this CDDL HEADER in each 8485 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8486 * If applicable, add the following below this CDDL HEADER, with the 8487 * fields enclosed by brackets "[]" replaced with your own identifying 8488 * information: Portions Copyright [yyyy] [name of copyright owner] 8489 * 8490 * CDDL HEADER END 8491 */ 8492 /* Copyright (c) 1988 AT&T */ 8493 /* All Rights Reserved */ 8494 8495 8496 /* 8497 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 8498 * 8499 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 8500 * Use is subject to license terms. 8501 */ 8502 /* 8503 * Copyright 2010 Nexenta Systems, Inc. Al rights reserved. 8504 * Copyright 2016 Joyent, Inc. 8505 */ 8506 # 122 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 2 8507 extern int pthread_kill(pthread_t, int); 8508 extern int pthread_sigmask(int, const sigset_t *, 8509 sigset_t *); 8510 extern int sigwaitinfo(const sigset_t *, 8511 siginfo_t *); 8512 extern int sigtimedwait(const sigset_t *, 8513 siginfo_t *, const struct timespec *); 8514 extern int sigqueue(pid_t, int, const union sigval); 8515 8516 8517 /* 8518 * sigwait() prototype is defined here. 8519 */ 8520 # 165 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/signal.h" 8521 extern int sigwait(sigset_t *); 8522 # 43 "../common/zones_paths.c" 2 8523 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/assert.h" 1 8524 /* 8525 * CDDL HEADER START 8526 * 8527 * The contents of this file are subject to the terms of the 8528 * Common Development and Distribution License, Version 1.0 only 8529 * (the "License"). You may not use this file except in compliance 8530 * with the License. 8531 * 8532 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8533 * or http://www.opensolaris.org/os/licensing. 8534 * See the License for the specific language governing permissions 8535 * and limitations under the License. 8536 * 8537 * When distributing Covered Code, include this CDDL HEADER in each 8538 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8539 * If applicable, add the following below this CDDL HEADER, with the 8540 * fields enclosed by brackets "[]" replaced with your own identifying 8541 * information: Portions Copyright [yyyy] [name of copyright owner] 8542 * 8543 * CDDL HEADER END 8544 */ 8545 /* Copyright (c) 1988 AT&T */ 8546 /* All Rights Reserved */ 8547 8548 /* 8549 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 8550 * Copyright 2016 Joyent, Inc. 8551 * Copyright 2018 OmniOS Community Edition (OmniOSce) Association. 8552 * 8553 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 8554 * Use is subject to license terms. 8555 */ 8556 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/assert.h" 8557 extern void __assert(const char *, const char *, int); 8558 8559 8560 /* 8561 * In C11 the static_assert macro is always defined, unlike the assert macro. 8562 */ 8563 # 60 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/assert.h" 8564 /* 8565 * Note that the ANSI C Standard requires all headers to be idempotent except 8566 * <assert.h> which is explicitly required not to be idempotent (section 4.1.2). 8567 * Therefore, it is by intent that the header guards (#ifndef _ASSERT_H) do 8568 * not span this entire file. 8569 */ 8570 # 44 "../common/zones_paths.c" 2 8571 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/locale.h" 1 8572 /* 8573 * CDDL HEADER START 8574 * 8575 * The contents of this file are subject to the terms of the 8576 * Common Development and Distribution License, Version 1.0 only 8577 * (the "License"). You may not use this file except in compliance 8578 * with the License. 8579 * 8580 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8581 * or http://www.opensolaris.org/os/licensing. 8582 * See the License for the specific language governing permissions 8583 * and limitations under the License. 8584 * 8585 * When distributing Covered Code, include this CDDL HEADER in each 8586 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8587 * If applicable, add the following below this CDDL HEADER, with the 8588 * fields enclosed by brackets "[]" replaced with your own identifying 8589 * information: Portions Copyright [yyyy] [name of copyright owner] 8590 * 8591 * CDDL HEADER END 8592 */ 8593 /* 8594 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 8595 * Use is subject to license terms. 8596 */ 8597 8598 /* 8599 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 8600 * 8601 * Portions of this file developed by Garrett D'Amore are licensed 8602 * under the terms of the Common Development and Distribution License (CDDL) 8603 * version 1.0 only. The use of subsequent versions of the License are 8604 * is specifically prohibited unless those terms are not in conflict with 8605 * version 1.0 of the License. You can find this license on-line at 8606 * http://www.illumos.org/license/CDDL 8607 */ 8608 8609 8610 8611 8612 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/locale_iso.h" 1 8613 /* 8614 * CDDL HEADER START 8615 * 8616 * The contents of this file are subject to the terms of the 8617 * Common Development and Distribution License, Version 1.0 only 8618 * (the "License"). You may not use this file except in compliance 8619 * with the License. 8620 * 8621 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8622 * or http://www.opensolaris.org/os/licensing. 8623 * See the License for the specific language governing permissions 8624 * and limitations under the License. 8625 * 8626 * When distributing Covered Code, include this CDDL HEADER in each 8627 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8628 * If applicable, add the following below this CDDL HEADER, with the 8629 * fields enclosed by brackets "[]" replaced with your own identifying 8630 * information: Portions Copyright [yyyy] [name of copyright owner] 8631 * 8632 * CDDL HEADER END 8633 */ 8634 /* 8635 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 8636 * Copyright 2014 PALO, Richard. 8637 * 8638 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 8639 * Use is subject to license terms. 8640 */ 8641 8642 /* Copyright (c) 1988 AT&T */ 8643 /* All Rights Reserved */ 8644 8645 8646 /* 8647 * An application should not include this header directly. Instead it 8648 * should be included only through the inclusion of other Sun headers. 8649 * 8650 * The contents of this header is limited to identifiers specified in the 8651 * C Standard. Any new identifiers specified in future amendments to the 8652 * C Standard must be placed in this header. If these new identifiers 8653 * are required to also be in the C++ Standard "std" namespace, then for 8654 * anything other than macro definitions, corresponding "using" directives 8655 * must also be added to <locale.h>. 8656 */ 8657 8658 8659 8660 8661 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 8662 /* 8663 * CDDL HEADER START 8664 * 8665 * The contents of this file are subject to the terms of the 8666 * Common Development and Distribution License (the "License"). 8667 * You may not use this file except in compliance with the License. 8668 * 8669 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8670 * or http://www.opensolaris.org/os/licensing. 8671 * See the License for the specific language governing permissions 8672 * and limitations under the License. 8673 * 8674 * When distributing Covered Code, include this CDDL HEADER in each 8675 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8676 * If applicable, add the following below this CDDL HEADER, with the 8677 * fields enclosed by brackets "[]" replaced with your own identifying 8678 * information: Portions Copyright [yyyy] [name of copyright owner] 8679 * 8680 * CDDL HEADER END 8681 */ 8682 8683 /* 8684 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 8685 * Copyright 2016 Joyent, Inc. 8686 * 8687 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 8688 * Use is subject to license terms. 8689 */ 8690 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/locale_iso.h" 2 8691 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 8692 /* 8693 * This file and its contents are supplied under the terms of the 8694 * Common Development and Distribution License ("CDDL"), version 1.0. 8695 * You may only use this file in accordance with the terms of version 8696 * 1.0 of the CDDL. 8697 * 8698 * A full copy of the text of the CDDL should have accompanied this 8699 * source. A copy of the CDDL is also available via the Internet at 8700 * http://www.illumos.org/license/CDDL. 8701 */ 8702 8703 /* 8704 * Copyright 2014-2016 PALO, Richard. 8705 */ 8706 # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/locale_iso.h" 2 8707 # 60 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/locale_iso.h" 8708 struct lconv { 8709 char *decimal_point; 8710 char *thousands_sep; 8711 char *grouping; 8712 char *int_curr_symbol; 8713 char *currency_symbol; 8714 char *mon_decimal_point; 8715 char *mon_thousands_sep; 8716 char *mon_grouping; 8717 char *positive_sign; 8718 char *negative_sign; 8719 char int_frac_digits; 8720 char frac_digits; 8721 char p_cs_precedes; 8722 char p_sep_by_space; 8723 char n_cs_precedes; 8724 char n_sep_by_space; 8725 char p_sign_posn; 8726 char n_sign_posn; 8727 8728 /* 8729 * New in IEEE Std 1003.1-2001 for alignment with the ISO/IEC 9899:1999 8730 * standard. Namespace and binary compatibility dictate that visibility 8731 * of these new members be limited. Visibility is limited to a strictly 8732 * conforming ANSI C environment (-Xc) or if _LCONV_C99 is defined. 8733 */ 8734 # 94 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/locale_iso.h" 8735 }; 8736 # 104 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/locale_iso.h" 8737 extern char *setlocale(int, const char *); 8738 extern struct lconv *localeconv(void); 8739 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/locale.h" 2 8740 8741 8742 8743 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libintl.h" 1 8744 /* 8745 * CDDL HEADER START 8746 * 8747 * The contents of this file are subject to the terms of the 8748 * Common Development and Distribution License (the "License"). 8749 * You may not use this file except in compliance with the License. 8750 * 8751 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8752 * or http://www.opensolaris.org/os/licensing. 8753 * See the License for the specific language governing permissions 8754 * and limitations under the License. 8755 * 8756 * When distributing Covered Code, include this CDDL HEADER in each 8757 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8758 * If applicable, add the following below this CDDL HEADER, with the 8759 * fields enclosed by brackets "[]" replaced with your own identifying 8760 * information: Portions Copyright [yyyy] [name of copyright owner] 8761 * 8762 * CDDL HEADER END 8763 */ 8764 /* 8765 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 8766 * 8767 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 8768 * Use is subject to license terms. 8769 */ 8770 8771 8772 8773 8774 8775 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 8776 /* 8777 * CDDL HEADER START 8778 * 8779 * The contents of this file are subject to the terms of the 8780 * Common Development and Distribution License (the "License"). 8781 * You may not use this file except in compliance with the License. 8782 * 8783 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8784 * or http://www.opensolaris.org/os/licensing. 8785 * See the License for the specific language governing permissions 8786 * and limitations under the License. 8787 * 8788 * 8789 * When distributing Covered Code, include this CDDL HEADER in each 8790 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8791 * If applicable, add the following below this CDDL HEADER, with the 8792 * fields enclosed by brackets "[]" replaced with your own identifying 8793 * information: Portions Copyright [yyyy] [name of copyright owner] 8794 * 8795 * CDDL HEADER END 8796 */ 8797 8798 /* 8799 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 8800 * Use is subject to license terms. 8801 * Copyright 2016 Joyent, Inc. 8802 */ 8803 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libintl.h" 2 8804 8805 8806 8807 8808 8809 /* 8810 * wchar_t is a built-in type in standard C++ and as such is not 8811 * defined here when using standard C++. However, the GNU compiler 8812 * fixincludes utility nonetheless creates its own version of this 8813 * header for use by gcc and g++. In that version it adds a redundant 8814 * guard for __cplusplus. To avoid the creation of a gcc/g++ specific 8815 * header we need to include the following magic comment: 8816 * 8817 * we must use the C++ compiler's type 8818 * 8819 * The above comment should not be removed or changed until GNU 8820 * gcc/fixinc/inclhack.def is updated to bypass this header. 8821 */ 8822 # 67 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libintl.h" 8823 extern char *dcgettext(const char *, const char *, const int); 8824 extern char *dgettext(const char *, const char *); 8825 extern char *gettext(const char *); 8826 extern char *textdomain(const char *); 8827 extern char *bindtextdomain(const char *, const char *); 8828 8829 /* 8830 * LI18NUX 2000 Globalization Specification Version 1.0 8831 * with Amendment 2 8832 */ 8833 extern char *dcngettext(const char *, const char *, 8834 const char *, unsigned long int, int); 8835 extern char *dngettext(const char *, const char *, 8836 const char *, unsigned long int); 8837 extern char *ngettext(const char *, const char *, unsigned long int); 8838 extern char *bind_textdomain_codeset(const char *, const char *); 8839 8840 /* Word handling functions --- requires dynamic linking */ 8841 /* Warning: these are experimental and subject to change. */ 8842 extern int wdinit(void); 8843 extern int wdchkind(wchar_t); 8844 extern int wdbindf(wchar_t, wchar_t, int); 8845 extern wchar_t *wddelim(wchar_t, wchar_t, int); 8846 extern wchar_t mcfiller(void); 8847 extern int mcwrap(void); 8848 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/locale.h" 2 8849 8850 8851 /* 8852 * Allow global visibility for symbols defined in 8853 * C++ "std" namespace in <iso/locale_iso.h>. 8854 */ 8855 # 71 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/locale.h" 8856 /* 8857 * These were added in POSIX 2008 as part of the newlocale() specification. 8858 */ 8859 # 87 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/locale.h" 8860 extern locale_t duplocale(locale_t); 8861 extern void freelocale(locale_t); 8862 extern locale_t newlocale(int, const char *, locale_t); 8863 extern locale_t uselocale(locale_t); 8864 8865 8866 extern locale_t __global_locale(void); 8867 # 45 "../common/zones_paths.c" 2 8868 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libintl.h" 1 8869 /* 8870 * CDDL HEADER START 8871 * 8872 * The contents of this file are subject to the terms of the 8873 * Common Development and Distribution License (the "License"). 8874 * You may not use this file except in compliance with the License. 8875 * 8876 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8877 * or http://www.opensolaris.org/os/licensing. 8878 * See the License for the specific language governing permissions 8879 * and limitations under the License. 8880 * 8881 * When distributing Covered Code, include this CDDL HEADER in each 8882 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8883 * If applicable, add the following below this CDDL HEADER, with the 8884 * fields enclosed by brackets "[]" replaced with your own identifying 8885 * information: Portions Copyright [yyyy] [name of copyright owner] 8886 * 8887 * CDDL HEADER END 8888 */ 8889 /* 8890 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 8891 * 8892 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 8893 * Use is subject to license terms. 8894 */ 8895 # 46 "../common/zones_paths.c" 2 8896 8897 /* 8898 * local includes 8899 */ 8900 8901 # 1 "../common/instzones_lib.h" 1 8902 /* 8903 * CDDL HEADER START 8904 * 8905 * The contents of this file are subject to the terms of the 8906 * Common Development and Distribution License (the "License"). 8907 * You may not use this file except in compliance with the License. 8908 * 8909 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8910 * or http://www.opensolaris.org/os/licensing. 8911 * See the License for the specific language governing permissions 8912 * and limitations under the License. 8913 * 8914 * When distributing Covered Code, include this CDDL HEADER in each 8915 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8916 * If applicable, add the following below this CDDL HEADER, with the 8917 * fields enclosed by brackets "[]" replaced with your own identifying 8918 * information: Portions Copyright [yyyy] [name of copyright owner] 8919 * 8920 * CDDL HEADER END 8921 */ 8922 /* 8923 * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. 8924 */ 8925 8926 8927 8928 8929 8930 8931 8932 /* 8933 * Module: instzones_lib.h 8934 * Group: libinstzones 8935 * Description: This module contains the libinstzones internal data structures, 8936 * constants, and function prototypes. This include should not be 8937 * needed by any external code (consumers of this library). 8938 */ 8939 8940 /* 8941 * required includes 8942 */ 8943 8944 /* System includes */ 8945 8946 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/zone.h" 1 8947 /* 8948 * CDDL HEADER START 8949 * 8950 * The contents of this file are subject to the terms of the 8951 * Common Development and Distribution License (the "License"). 8952 * You may not use this file except in compliance with the License. 8953 * 8954 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8955 * or http://www.opensolaris.org/os/licensing. 8956 * See the License for the specific language governing permissions 8957 * and limitations under the License. 8958 * 8959 * When distributing Covered Code, include this CDDL HEADER in each 8960 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8961 * If applicable, add the following below this CDDL HEADER, with the 8962 * fields enclosed by brackets "[]" replaced with your own identifying 8963 * information: Portions Copyright [yyyy] [name of copyright owner] 8964 * 8965 * CDDL HEADER END 8966 */ 8967 /* 8968 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 8969 * Use is subject to license terms. 8970 */ 8971 8972 8973 8974 8975 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 8976 /* 8977 * CDDL HEADER START 8978 * 8979 * The contents of this file are subject to the terms of the 8980 * Common Development and Distribution License (the "License"). 8981 * You may not use this file except in compliance with the License. 8982 * 8983 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8984 * or http://www.opensolaris.org/os/licensing. 8985 * See the License for the specific language governing permissions 8986 * and limitations under the License. 8987 * 8988 * When distributing Covered Code, include this CDDL HEADER in each 8989 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 8990 * If applicable, add the following below this CDDL HEADER, with the 8991 * fields enclosed by brackets "[]" replaced with your own identifying 8992 * information: Portions Copyright [yyyy] [name of copyright owner] 8993 * 8994 * CDDL HEADER END 8995 */ 8996 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 8997 /* All Rights Reserved */ 8998 8999 9000 /* 9001 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9002 * Use is subject to license terms. 9003 * 9004 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9005 * Copyright 2016 Joyent, Inc. 9006 */ 9007 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/zone.h" 2 9008 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 1 9009 /* 9010 * CDDL HEADER START 9011 * 9012 * The contents of this file are subject to the terms of the 9013 * Common Development and Distribution License (the "License"). 9014 * You may not use this file except in compliance with the License. 9015 * 9016 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9017 * or http://www.opensolaris.org/os/licensing. 9018 * See the License for the specific language governing permissions 9019 * and limitations under the License. 9020 * 9021 * When distributing Covered Code, include this CDDL HEADER in each 9022 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9023 * If applicable, add the following below this CDDL HEADER, with the 9024 * fields enclosed by brackets "[]" replaced with your own identifying 9025 * information: Portions Copyright [yyyy] [name of copyright owner] 9026 * 9027 * CDDL HEADER END 9028 */ 9029 /* 9030 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 9031 * Copyright 2013, Joyent, Inc. All rights reserved. 9032 * Copyright 2014 Nexenta Systems, Inc. All rights reserved. 9033 * Copyright 2014 Igor Kozhukhov <ikozhukhov@gmail.com>. 9034 */ 9035 9036 9037 9038 9039 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 9040 /* 9041 * CDDL HEADER START 9042 * 9043 * The contents of this file are subject to the terms of the 9044 * Common Development and Distribution License (the "License"). 9045 * You may not use this file except in compliance with the License. 9046 * 9047 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9048 * or http://www.opensolaris.org/os/licensing. 9049 * See the License for the specific language governing permissions 9050 * and limitations under the License. 9051 * 9052 * When distributing Covered Code, include this CDDL HEADER in each 9053 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9054 * If applicable, add the following below this CDDL HEADER, with the 9055 * fields enclosed by brackets "[]" replaced with your own identifying 9056 * information: Portions Copyright [yyyy] [name of copyright owner] 9057 * 9058 * CDDL HEADER END 9059 */ 9060 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9061 /* All Rights Reserved */ 9062 9063 9064 /* 9065 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9066 * Use is subject to license terms. 9067 * 9068 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9069 * Copyright 2016 Joyent, Inc. 9070 */ 9071 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 9072 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mutex.h" 1 9073 /* 9074 * CDDL HEADER START 9075 * 9076 * The contents of this file are subject to the terms of the 9077 * Common Development and Distribution License (the "License"). 9078 * You may not use this file except in compliance with the License. 9079 * 9080 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9081 * or http://www.opensolaris.org/os/licensing. 9082 * See the License for the specific language governing permissions 9083 * and limitations under the License. 9084 * 9085 * When distributing Covered Code, include this CDDL HEADER in each 9086 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9087 * If applicable, add the following below this CDDL HEADER, with the 9088 * fields enclosed by brackets "[]" replaced with your own identifying 9089 * information: Portions Copyright [yyyy] [name of copyright owner] 9090 * 9091 * CDDL HEADER END 9092 */ 9093 /* 9094 * Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved. 9095 */ 9096 9097 9098 9099 9100 9101 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 9102 /* 9103 * CDDL HEADER START 9104 * 9105 * The contents of this file are subject to the terms of the 9106 * Common Development and Distribution License (the "License"). 9107 * You may not use this file except in compliance with the License. 9108 * 9109 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9110 * or http://www.opensolaris.org/os/licensing. 9111 * See the License for the specific language governing permissions 9112 * and limitations under the License. 9113 * 9114 * When distributing Covered Code, include this CDDL HEADER in each 9115 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9116 * If applicable, add the following below this CDDL HEADER, with the 9117 * fields enclosed by brackets "[]" replaced with your own identifying 9118 * information: Portions Copyright [yyyy] [name of copyright owner] 9119 * 9120 * CDDL HEADER END 9121 */ 9122 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9123 /* All Rights Reserved */ 9124 9125 9126 /* 9127 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9128 * Use is subject to license terms. 9129 * 9130 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9131 * Copyright 2016 Joyent, Inc. 9132 */ 9133 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mutex.h" 2 9134 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mutex.h" 9135 /* 9136 * Public interface to mutual exclusion locks. See mutex(9F) for details. 9137 * 9138 * The basic mutex type is MUTEX_ADAPTIVE, which is expected to be used 9139 * in almost all of the kernel. MUTEX_SPIN provides interrupt blocking 9140 * and must be used in interrupt handlers above LOCK_LEVEL. The iblock 9141 * cookie argument to mutex_init() encodes the interrupt level to block. 9142 * The iblock cookie must be NULL for adaptive locks. 9143 * 9144 * MUTEX_DEFAULT is the type usually specified (except in drivers) to 9145 * mutex_init(). It is identical to MUTEX_ADAPTIVE. 9146 * 9147 * MUTEX_DRIVER is always used by drivers. mutex_init() converts this to 9148 * either MUTEX_ADAPTIVE or MUTEX_SPIN depending on the iblock cookie. 9149 * 9150 * Mutex statistics can be gathered on the fly, without rebooting or 9151 * recompiling the kernel, via the lockstat driver (lockstat(7D)). 9152 */ 9153 typedef enum { 9154 MUTEX_ADAPTIVE = 0, /* spin if owner is running, otherwise block */ 9155 MUTEX_SPIN = 1, /* block interrupts and spin */ 9156 MUTEX_DRIVER = 4, /* driver (DDI) mutex */ 9157 MUTEX_DEFAULT = 6 /* kernel default mutex */ 9158 } kmutex_type_t; 9159 9160 typedef struct mutex { 9161 9162 void *_opaque[1]; 9163 9164 9165 9166 } kmutex_t; 9167 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 9168 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 1 9169 /* 9170 * CDDL HEADER START 9171 * 9172 * The contents of this file are subject to the terms of the 9173 * Common Development and Distribution License (the "License"). 9174 * You may not use this file except in compliance with the License. 9175 * 9176 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9177 * or http://www.opensolaris.org/os/licensing. 9178 * See the License for the specific language governing permissions 9179 * and limitations under the License. 9180 * 9181 * When distributing Covered Code, include this CDDL HEADER in each 9182 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9183 * If applicable, add the following below this CDDL HEADER, with the 9184 * fields enclosed by brackets "[]" replaced with your own identifying 9185 * information: Portions Copyright [yyyy] [name of copyright owner] 9186 * 9187 * CDDL HEADER END 9188 */ 9189 9190 /* 9191 * Copyright 2014 Nexenta Systems, Inc. All rights reserved. 9192 * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. 9193 */ 9194 9195 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 9196 /* All Rights Reserved */ 9197 9198 /* 9199 * University Copyright- Copyright (c) 1982, 1986, 1988 9200 * The Regents of the University of California 9201 * All Rights Reserved 9202 * 9203 * University Acknowledgment- Portions of this document are derived from 9204 * software developed by the University of California, Berkeley, and its 9205 * contributors. 9206 */ 9207 9208 9209 9210 9211 9212 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 9213 /* 9214 * CDDL HEADER START 9215 * 9216 * The contents of this file are subject to the terms of the 9217 * Common Development and Distribution License (the "License"). 9218 * You may not use this file except in compliance with the License. 9219 * 9220 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9221 * or http://www.opensolaris.org/os/licensing. 9222 * See the License for the specific language governing permissions 9223 * and limitations under the License. 9224 * 9225 * When distributing Covered Code, include this CDDL HEADER in each 9226 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9227 * If applicable, add the following below this CDDL HEADER, with the 9228 * fields enclosed by brackets "[]" replaced with your own identifying 9229 * information: Portions Copyright [yyyy] [name of copyright owner] 9230 * 9231 * CDDL HEADER END 9232 */ 9233 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9234 /* All Rights Reserved */ 9235 9236 9237 /* 9238 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9239 * Use is subject to license terms. 9240 * 9241 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9242 * Copyright 2016 Joyent, Inc. 9243 */ 9244 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 2 9245 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 9246 /* 9247 * CDDL HEADER START 9248 * 9249 * The contents of this file are subject to the terms of the 9250 * Common Development and Distribution License (the "License"). 9251 * You may not use this file except in compliance with the License. 9252 * 9253 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9254 * or http://www.opensolaris.org/os/licensing. 9255 * See the License for the specific language governing permissions 9256 * and limitations under the License. 9257 * 9258 * 9259 * When distributing Covered Code, include this CDDL HEADER in each 9260 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9261 * If applicable, add the following below this CDDL HEADER, with the 9262 * fields enclosed by brackets "[]" replaced with your own identifying 9263 * information: Portions Copyright [yyyy] [name of copyright owner] 9264 * 9265 * CDDL HEADER END 9266 */ 9267 9268 /* 9269 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 9270 * Use is subject to license terms. 9271 * Copyright 2016 Joyent, Inc. 9272 */ 9273 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 2 9274 9275 9276 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/null.h" 1 9277 /* 9278 * This file and its contents are supplied under the terms of the 9279 * Common Development and Distribution License ("CDDL"), version 1.0. 9280 * You may only use this file in accordance with the terms of version 9281 * 1.0 of the CDDL. 9282 * 9283 * A full copy of the text of the CDDL should have accompanied this 9284 * source. A copy of the CDDL is also available via the Internet at 9285 * http://www.illumos.org/license/CDDL. 9286 */ 9287 9288 /* 9289 * Copyright 2014-2016 PALO, Richard. 9290 */ 9291 # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 2 9292 9293 9294 9295 9296 9297 /* 9298 * Fundamental variables; don't change too often. 9299 */ 9300 9301 /* 9302 * _POSIX_VDISABLE has historically been defined in <sys/param.h> since 9303 * an early merge with AT&T source. It has also historically been defined 9304 * in <sys/termios.h>. The POSIX standard, IEEE Std. 1003.1-1988 initially 9305 * required the existence of _POSIX_VDISABLE in <sys/termios.h>. 9306 * Subsequent versions of the IEEE Standard as well as the X/Open 9307 * specifications required that _POSIX_VDISABLE be defined in <unistd.h> 9308 * while still allowing for it's existence in other headers. With the 9309 * introduction of XPG6, _POSIX_VDISABLE can only be defined in <unistd.h>. 9310 */ 9311 # 123 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 9312 /* compatibility purposes only */ 9313 /* and will be removed in a */ 9314 /* later release */ 9315 9316 /* 9317 * These define the maximum and minimum allowable values of the 9318 * configurable parameter NGROUPS_MAX. 9319 */ 9320 9321 9322 9323 9324 /* 9325 * NGROUPS_MAX_DEFAULT: *MUST* match NGROUPS_MAX value in limits.h. 9326 */ 9327 9328 9329 /* 9330 * Default process priority. Keep it in sync with limits.h. 9331 */ 9332 9333 9334 /* 9335 * Fundamental constants of the implementation--cannot be changed easily. 9336 */ 9337 # 171 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 9338 /* REMOTE -- whether machine is primary, secondary, or regular */ 9339 9340 9341 9342 /* 9343 * MAXPATHLEN defines the longest permissible path length, 9344 * including the terminating null, after expanding symbolic links. 9345 * TYPICALMAXPATHLEN is used in a few places as an optimization 9346 * with a local buffer on the stack to avoid kmem_alloc(). 9347 * MAXSYMLINKS defines the maximum number of symbolic links 9348 * that may be expanded in a path name. It should be set high 9349 * enough to allow all legitimate uses, but halt infinite loops 9350 * reasonably quickly. 9351 * MAXNAMELEN is the length (including the terminating null) of 9352 * the longest permissible file (component) name. 9353 */ 9354 9355 9356 9357 9358 9359 /* 9360 * MAXLINKNAMELEN defines the longest possible permitted datalink name, 9361 * including the terminating NUL. Note that this must not be larger 9362 * than related networking constants such as LIFNAMSIZ. 9363 */ 9364 9365 9366 9367 9368 9369 9370 /* 9371 * The following are defined to be the same as 9372 * defined in /usr/include/limits.h. They are 9373 * needed for pipe and FIFO compatibility. 9374 */ 9375 # 220 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 9376 /* macros replacing interleaving functions */ 9377 9378 9379 9380 /* 9381 * File system parameters and macros. 9382 * 9383 * The file system is made out of blocks of at most MAXBSIZE units, 9384 * with smaller units (fragments) only in the last direct block. 9385 * MAXBSIZE primarily determines the size of buffers in the buffer 9386 * pool. It may be made larger without any effect on existing 9387 * file systems; however making it smaller make make some file 9388 * systems unmountable. 9389 * 9390 * Note that the blocked devices are assumed to have DEV_BSIZE 9391 * "sectors" and that fragments must be some multiple of this size. 9392 */ 9393 # 261 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 9394 /* 64 bit versions of btodb and dbtob */ 9395 # 276 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 9396 /* 9397 * Size of arg list passed in by user. 9398 */ 9399 # 287 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 9400 /* 9401 * Scale factor for scaled integers used to count 9402 * %cpu time and load averages. 9403 */ 9404 9405 9406 9407 /* 9408 * Delay units are in microseconds. 9409 * 9410 * XXX These macros are not part of the DDI! 9411 */ 9412 # 317 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 9413 /* 9414 * The following is to free utilities from machine dependencies within 9415 * an architecture. Must be included after definition of DEV_BSIZE. 9416 */ 9417 # 471 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 9418 /* 9419 * The following are assorted machine dependent values which can be 9420 * obtained in a machine independent manner through sysconf(2) or 9421 * sysinfo(2). In order to guarantee that these provide the expected 9422 * value at all times, the System Private interface (leading underscore) 9423 * is used. 9424 */ 9425 9426 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/unistd.h" 1 9427 /* 9428 * CDDL HEADER START 9429 * 9430 * The contents of this file are subject to the terms of the 9431 * Common Development and Distribution License (the "License"). 9432 * You may not use this file except in compliance with the License. 9433 * 9434 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9435 * or http://www.opensolaris.org/os/licensing. 9436 * See the License for the specific language governing permissions 9437 * and limitations under the License. 9438 * 9439 * When distributing Covered Code, include this CDDL HEADER in each 9440 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9441 * If applicable, add the following below this CDDL HEADER, with the 9442 * fields enclosed by brackets "[]" replaced with your own identifying 9443 * information: Portions Copyright [yyyy] [name of copyright owner] 9444 * 9445 * CDDL HEADER END 9446 */ 9447 9448 /* 9449 * Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T 9450 * All Rights Reserved 9451 * 9452 */ 9453 9454 /* 9455 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9456 * Use is subject to license terms. 9457 */ 9458 9459 /* 9460 * WARNING: This is an implementation-specific header, 9461 * its contents are not guaranteed. Applications 9462 * should include <unistd.h> and not this header. 9463 */ 9464 # 480 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 2 9465 9466 9467 9468 9469 9470 9471 extern long _sysconf(int); /* System Private interface to sysconf() */ 9472 # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 9473 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 1 9474 /* 9475 * CDDL HEADER START 9476 * 9477 * The contents of this file are subject to the terms of the 9478 * Common Development and Distribution License (the "License"). 9479 * You may not use this file except in compliance with the License. 9480 * 9481 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9482 * or http://www.opensolaris.org/os/licensing. 9483 * See the License for the specific language governing permissions 9484 * and limitations under the License. 9485 * 9486 * When distributing Covered Code, include this CDDL HEADER in each 9487 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9488 * If applicable, add the following below this CDDL HEADER, with the 9489 * fields enclosed by brackets "[]" replaced with your own identifying 9490 * information: Portions Copyright [yyyy] [name of copyright owner] 9491 * 9492 * CDDL HEADER END 9493 */ 9494 /* 9495 * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. 9496 */ 9497 9498 9499 9500 9501 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kmem.h" 1 9502 /* 9503 * CDDL HEADER START 9504 * 9505 * The contents of this file are subject to the terms of the 9506 * Common Development and Distribution License (the "License"). 9507 * You may not use this file except in compliance with the License. 9508 * 9509 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9510 * or http://www.opensolaris.org/os/licensing. 9511 * See the License for the specific language governing permissions 9512 * and limitations under the License. 9513 * 9514 * When distributing Covered Code, include this CDDL HEADER in each 9515 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9516 * If applicable, add the following below this CDDL HEADER, with the 9517 * fields enclosed by brackets "[]" replaced with your own identifying 9518 * information: Portions Copyright [yyyy] [name of copyright owner] 9519 * 9520 * CDDL HEADER END 9521 */ 9522 9523 /* 9524 * Copyright (c) 1988, 2010, Oracle and/or its affiliates. All rights reserved. 9525 * Copyright (c) 2012 by Delphix. All rights reserved. 9526 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9527 */ 9528 9529 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9530 /* All Rights Reserved */ 9531 9532 9533 9534 9535 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 9536 /* 9537 * CDDL HEADER START 9538 * 9539 * The contents of this file are subject to the terms of the 9540 * Common Development and Distribution License (the "License"). 9541 * You may not use this file except in compliance with the License. 9542 * 9543 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9544 * or http://www.opensolaris.org/os/licensing. 9545 * See the License for the specific language governing permissions 9546 * and limitations under the License. 9547 * 9548 * When distributing Covered Code, include this CDDL HEADER in each 9549 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9550 * If applicable, add the following below this CDDL HEADER, with the 9551 * fields enclosed by brackets "[]" replaced with your own identifying 9552 * information: Portions Copyright [yyyy] [name of copyright owner] 9553 * 9554 * CDDL HEADER END 9555 */ 9556 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9557 /* All Rights Reserved */ 9558 9559 9560 /* 9561 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9562 * Use is subject to license terms. 9563 * 9564 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9565 * Copyright 2016 Joyent, Inc. 9566 */ 9567 # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kmem.h" 2 9568 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/vmem.h" 1 9569 /* 9570 * CDDL HEADER START 9571 * 9572 * The contents of this file are subject to the terms of the 9573 * Common Development and Distribution License (the "License"). 9574 * You may not use this file except in compliance with the License. 9575 * 9576 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9577 * or http://www.opensolaris.org/os/licensing. 9578 * See the License for the specific language governing permissions 9579 * and limitations under the License. 9580 * 9581 * When distributing Covered Code, include this CDDL HEADER in each 9582 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9583 * If applicable, add the following below this CDDL HEADER, with the 9584 * fields enclosed by brackets "[]" replaced with your own identifying 9585 * information: Portions Copyright [yyyy] [name of copyright owner] 9586 * 9587 * CDDL HEADER END 9588 */ 9589 /* 9590 * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved. 9591 * Copyright (c) 2012 by Delphix. All rights reserved. 9592 */ 9593 9594 9595 9596 9597 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 9598 /* 9599 * CDDL HEADER START 9600 * 9601 * The contents of this file are subject to the terms of the 9602 * Common Development and Distribution License (the "License"). 9603 * You may not use this file except in compliance with the License. 9604 * 9605 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9606 * or http://www.opensolaris.org/os/licensing. 9607 * See the License for the specific language governing permissions 9608 * and limitations under the License. 9609 * 9610 * When distributing Covered Code, include this CDDL HEADER in each 9611 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9612 * If applicable, add the following below this CDDL HEADER, with the 9613 * fields enclosed by brackets "[]" replaced with your own identifying 9614 * information: Portions Copyright [yyyy] [name of copyright owner] 9615 * 9616 * CDDL HEADER END 9617 */ 9618 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9619 /* All Rights Reserved */ 9620 9621 9622 /* 9623 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9624 * Use is subject to license terms. 9625 * 9626 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9627 * Copyright 2016 Joyent, Inc. 9628 */ 9629 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/vmem.h" 2 9630 9631 9632 9633 9634 9635 9636 /* 9637 * Per-allocation flags 9638 */ 9639 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/vmem.h" 9640 /* 9641 * The following flags are restricted for use only within the kernel. 9642 * VM_MEMLOAD is for use by the HAT to avoid infinite recursion. 9643 * VM_NORELOC is used by the kernel when static VA->PA mappings are required. 9644 */ 9645 9646 9647 /* 9648 * VM_ABORT requests that vmem_alloc() *ignore* the VM_SLEEP/VM_NOSLEEP flags 9649 * and forgo reaping if the allocation or attempted import, fails. This 9650 * flag is a segkmem-specific flag, and should not be used by anyone else. 9651 */ 9652 9653 9654 /* 9655 * VM_ENDALLOC requests that large addresses be preferred in allocations. 9656 * Has no effect if VM_NEXTFIT is active. 9657 */ 9658 9659 9660 9661 9662 /* 9663 * Arena creation flags 9664 */ 9665 9666 9667 9668 9669 /* 9670 * internal use only; the import function uses the vmem_ximport_t interface 9671 * and may increase the request size if it so desires. 9672 * VMC_XALIGN, for use with vmem_xcreate, specifies that 9673 * the address returned by the import function will be 9674 * aligned according to the alignment argument. 9675 */ 9676 9677 9678 9679 9680 /* 9681 * Public segment types 9682 */ 9683 9684 9685 9686 /* 9687 * Implementation-private segment types 9688 */ 9689 9690 9691 9692 9693 /* 9694 * VMEM_REENTRANT indicates to vmem_walk() that the callback routine may 9695 * call back into the arena being walked, so vmem_walk() must drop the 9696 * arena lock before each callback. The caveat is that since the arena 9697 * isn't locked, its state can change. Therefore it is up to the callback 9698 * routine to handle cases where the segment isn't of the expected type. 9699 * For example, we use this to walk heap_arena when generating a crash dump; 9700 * see segkmem_dump() for sample usage. 9701 */ 9702 9703 9704 typedef struct vmem vmem_t; 9705 typedef void *(vmem_alloc_t)(vmem_t *, size_t, int); 9706 typedef void (vmem_free_t)(vmem_t *, void *, size_t); 9707 9708 /* 9709 * Alternate import style; the requested size is passed in a pointer, 9710 * which can be increased by the import function if desired. 9711 */ 9712 typedef void *(vmem_ximport_t)(vmem_t *, size_t *, size_t, int); 9713 # 132 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/vmem.h" 9714 extern vmem_t *vmem_create(const char *, void *, size_t, size_t, 9715 vmem_alloc_t *, vmem_free_t *, vmem_t *, size_t, int); 9716 extern vmem_t *vmem_xcreate(const char *, void *, size_t, size_t, 9717 vmem_ximport_t *, vmem_free_t *, vmem_t *, size_t, int); 9718 extern void vmem_destroy(vmem_t *); 9719 extern void *vmem_alloc(vmem_t *, size_t, int); 9720 extern void *vmem_xalloc(vmem_t *, size_t, size_t, size_t, size_t, 9721 void *, void *, int); 9722 extern void vmem_free(vmem_t *, void *, size_t); 9723 extern void vmem_xfree(vmem_t *, void *, size_t); 9724 extern void *vmem_add(vmem_t *, void *, size_t, int); 9725 extern int vmem_contains(vmem_t *, void *, size_t); 9726 extern void vmem_walk(vmem_t *, int, void (*)(void *, void *, size_t), void *); 9727 extern size_t vmem_size(vmem_t *, int); 9728 extern void vmem_qcache_reap(vmem_t *vmp); 9729 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kmem.h" 2 9730 9731 9732 9733 9734 9735 /* 9736 * Kernel memory allocator: DDI interfaces. 9737 * See kmem_alloc(9F) for details. 9738 */ 9739 # 67 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kmem.h" 9740 /* 9741 * Kernel memory allocator: private interfaces. 9742 * These interfaces are still evolving. 9743 * Do not use them in unbundled drivers. 9744 */ 9745 9746 /* 9747 * Flags for kmem_cache_create() 9748 */ 9749 # 85 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kmem.h" 9750 struct kmem_cache; /* cache structure is opaque to kmem clients */ 9751 9752 typedef struct kmem_cache kmem_cache_t; 9753 9754 /* Client response to kmem move callback */ 9755 typedef enum kmem_cbrc { 9756 KMEM_CBRC_YES, 9757 KMEM_CBRC_NO, 9758 KMEM_CBRC_LATER, 9759 KMEM_CBRC_DONT_NEED, 9760 KMEM_CBRC_DONT_KNOW 9761 } kmem_cbrc_t; 9762 # 29 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 2 9763 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 1 9764 /* 9765 * CDDL HEADER START 9766 * 9767 * The contents of this file are subject to the terms of the 9768 * Common Development and Distribution License (the "License"). 9769 * You may not use this file except in compliance with the License. 9770 * 9771 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9772 * or http://www.opensolaris.org/os/licensing. 9773 * See the License for the specific language governing permissions 9774 * and limitations under the License. 9775 * 9776 * When distributing Covered Code, include this CDDL HEADER in each 9777 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9778 * If applicable, add the following below this CDDL HEADER, with the 9779 * fields enclosed by brackets "[]" replaced with your own identifying 9780 * information: Portions Copyright [yyyy] [name of copyright owner] 9781 * 9782 * CDDL HEADER END 9783 */ 9784 /* 9785 * Copyright 2014 Garrrett D'Amore <garrett@damore.org> 9786 * 9787 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 9788 * Use is subject to license terms. 9789 */ 9790 9791 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9792 /* All Rights Reserved */ 9793 9794 /* 9795 * University Copyright- Copyright (c) 1982, 1986, 1988 9796 * The Regents of the University of California 9797 * All Rights Reserved 9798 * 9799 * University Acknowledgment- Portions of this document are derived from 9800 * software developed by the University of California, Berkeley, and its 9801 * contributors. 9802 */ 9803 9804 9805 9806 9807 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 9808 /* 9809 * CDDL HEADER START 9810 * 9811 * The contents of this file are subject to the terms of the 9812 * Common Development and Distribution License (the "License"). 9813 * You may not use this file except in compliance with the License. 9814 * 9815 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9816 * or http://www.opensolaris.org/os/licensing. 9817 * See the License for the specific language governing permissions 9818 * and limitations under the License. 9819 * 9820 * When distributing Covered Code, include this CDDL HEADER in each 9821 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9822 * If applicable, add the following below this CDDL HEADER, with the 9823 * fields enclosed by brackets "[]" replaced with your own identifying 9824 * information: Portions Copyright [yyyy] [name of copyright owner] 9825 * 9826 * CDDL HEADER END 9827 */ 9828 9829 /* 9830 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 9831 * Copyright 2016 Joyent, Inc. 9832 * 9833 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 9834 * Use is subject to license terms. 9835 */ 9836 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 2 9837 9838 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 9839 /* 9840 * CDDL HEADER START 9841 * 9842 * The contents of this file are subject to the terms of the 9843 * Common Development and Distribution License (the "License"). 9844 * You may not use this file except in compliance with the License. 9845 * 9846 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9847 * or http://www.opensolaris.org/os/licensing. 9848 * See the License for the specific language governing permissions 9849 * and limitations under the License. 9850 * 9851 * When distributing Covered Code, include this CDDL HEADER in each 9852 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 9853 * If applicable, add the following below this CDDL HEADER, with the 9854 * fields enclosed by brackets "[]" replaced with your own identifying 9855 * information: Portions Copyright [yyyy] [name of copyright owner] 9856 * 9857 * CDDL HEADER END 9858 */ 9859 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9860 /* All Rights Reserved */ 9861 9862 9863 /* 9864 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9865 * Use is subject to license terms. 9866 * 9867 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9868 * Copyright 2016 Joyent, Inc. 9869 */ 9870 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 2 9871 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 9872 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 9873 /* All Rights Reserved */ 9874 9875 9876 /* 9877 * Copyright (c) 1982, 1986, 1993 Regents of the University of California. 9878 * All rights reserved. The Berkeley software License Agreement 9879 * specifies the terms and conditions for redistribution. 9880 */ 9881 9882 /* 9883 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 9884 * 9885 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 9886 * Use is subject to license terms. 9887 * 9888 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 9889 */ 9890 9891 /* 9892 * Copyright (c) 2013, 2015 by Delphix. All rights reserved. 9893 */ 9894 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 2 9895 9896 9897 9898 9899 9900 /* 9901 * Process priority specifications 9902 */ 9903 # 67 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9904 /* 9905 * Resource limits 9906 */ 9907 # 83 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9908 typedef unsigned long rlim_t; 9909 # 132 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9910 struct rlimit { 9911 rlim_t rlim_cur; /* current limit */ 9912 rlim_t rlim_max; /* maximum value for rlim_cur */ 9913 }; 9914 9915 /* transitional large file interface versions */ 9916 9917 9918 typedef u_longlong_t rlim64_t; 9919 9920 9921 9922 9923 9924 struct rlimit64 { 9925 rlim64_t rlim_cur; /* current limit */ 9926 rlim64_t rlim_max; /* maximum value for rlim_cur */ 9927 }; 9928 9929 9930 9931 /* 9932 * Although the saved rlimits were initially introduced by the large file API, 9933 * they are now available for all resource limits on the 64-bit kernel and for 9934 * cpu time and file size limits on the 32-bit kernel. 9935 */ 9936 # 171 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9937 struct rusage { 9938 struct timeval ru_utime; /* user time used */ 9939 struct timeval ru_stime; /* system time used */ 9940 long ru_maxrss; /* <unimp> */ 9941 long ru_ixrss; /* <unimp> */ 9942 long ru_idrss; /* <unimp> */ 9943 long ru_isrss; /* <unimp> */ 9944 long ru_minflt; /* any page faults not requiring I/O */ 9945 long ru_majflt; /* any page faults requiring I/O */ 9946 long ru_nswap; /* swaps */ 9947 long ru_inblock; /* block input operations */ 9948 long ru_oublock; /* block output operations */ 9949 long ru_msgsnd; /* streams messsages sent */ 9950 long ru_msgrcv; /* streams messages received */ 9951 long ru_nsignals; /* signals received */ 9952 long ru_nvcsw; /* voluntary context switches */ 9953 long ru_nivcsw; /* involuntary " */ 9954 }; 9955 # 247 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9956 /* 9957 * In the LP64 compilation environment, map large file interfaces 9958 * back to native versions where possible. 9959 */ 9960 9961 9962 # 252 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9963 #pragma redefine_extname setrlimit64 setrlimit 9964 # 252 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9965 9966 9967 # 253 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9968 #pragma redefine_extname getrlimit64 getrlimit 9969 # 253 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9970 # 261 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/resource.h" 9971 extern int setrlimit(int, const struct rlimit *); 9972 extern int getrlimit(int, struct rlimit *); 9973 9974 /* transitional large file interfaces */ 9975 9976 9977 extern int setrlimit64(int, const struct rlimit64 *); 9978 extern int getrlimit64(int, struct rlimit64 *); 9979 9980 9981 extern int getpriority(int, id_t); 9982 extern int setpriority(int, id_t, int); 9983 extern int getrusage(int, struct rusage *); 9984 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 2 9985 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 9986 /* 9987 * CDDL HEADER START 9988 * 9989 * The contents of this file are subject to the terms of the 9990 * Common Development and Distribution License (the "License"). 9991 * You may not use this file except in compliance with the License. 9992 * 9993 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9994 * or http://www.opensolaris.org/os/licensing. 9995 * See the License for the specific language governing permissions 9996 * and limitations under the License. 9997 * 9998 * When distributing Covered Code, include this CDDL HEADER in each 9999 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10000 * If applicable, add the following below this CDDL HEADER, with the 10001 * fields enclosed by brackets "[]" replaced with your own identifying 10002 * information: Portions Copyright [yyyy] [name of copyright owner] 10003 * 10004 * CDDL HEADER END 10005 */ 10006 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10007 /* All Rights Reserved */ 10008 10009 10010 /* 10011 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10012 * Use is subject to license terms. 10013 * 10014 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 10015 * Copyright 2016 Joyent, Inc. 10016 */ 10017 # 31 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 2 10018 10019 10020 10021 10022 10023 /* 10024 * Available local actions and flags. 10025 */ 10026 # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 10027 /* 10028 * Available global actions and flags. 10029 */ 10030 # 74 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 10031 /* 10032 * getrctl(2) flag values 10033 */ 10034 10035 10036 10037 10038 /* 10039 * setrctl(2) flag values 10040 */ 10041 # 94 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 10042 /* 10043 * rctl_priv_t: rctl privilege defined values 10044 * A large amount of space has been deliberately left between these privileges 10045 * to permit future enrichment of the control privilege value. 10046 */ 10047 10048 10049 10050 10051 typedef u_longlong_t rctl_qty_t; /* resource control numerical values */ 10052 typedef int rctl_priv_t; 10053 10054 typedef struct rctlblk rctlblk_t; 10055 10056 extern int setrctl(const char *, rctlblk_t *, rctlblk_t *, int); 10057 extern int getrctl(const char *, rctlblk_t *, rctlblk_t *, int); 10058 10059 typedef enum { 10060 RCENTITY_PROCESS, 10061 RCENTITY_TASK, 10062 RCENTITY_PROJECT, 10063 RCENTITY_ZONE 10064 } rctl_entity_t; 10065 10066 10067 10068 10069 typedef struct rctl_set rctl_set_t; 10070 # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 10071 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ipc_rctl.h" 1 10072 /* 10073 * CDDL HEADER START 10074 * 10075 * The contents of this file are subject to the terms of the 10076 * Common Development and Distribution License (the "License"). 10077 * You may not use this file except in compliance with the License. 10078 * 10079 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10080 * or http://www.opensolaris.org/os/licensing. 10081 * See the License for the specific language governing permissions 10082 * and limitations under the License. 10083 * 10084 * When distributing Covered Code, include this CDDL HEADER in each 10085 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10086 * If applicable, add the following below this CDDL HEADER, with the 10087 * fields enclosed by brackets "[]" replaced with your own identifying 10088 * information: Portions Copyright [yyyy] [name of copyright owner] 10089 * 10090 * CDDL HEADER END 10091 */ 10092 /* 10093 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 10094 * Use is subject to license terms. 10095 */ 10096 10097 10098 10099 10100 #pragma ident "%Z%%M% %I% %E% SMI" 10101 10102 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 1 10103 /* 10104 * CDDL HEADER START 10105 * 10106 * The contents of this file are subject to the terms of the 10107 * Common Development and Distribution License (the "License"). 10108 * You may not use this file except in compliance with the License. 10109 * 10110 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10111 * or http://www.opensolaris.org/os/licensing. 10112 * See the License for the specific language governing permissions 10113 * and limitations under the License. 10114 * 10115 * When distributing Covered Code, include this CDDL HEADER in each 10116 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10117 * If applicable, add the following below this CDDL HEADER, with the 10118 * fields enclosed by brackets "[]" replaced with your own identifying 10119 * information: Portions Copyright [yyyy] [name of copyright owner] 10120 * 10121 * CDDL HEADER END 10122 */ 10123 /* 10124 * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. 10125 */ 10126 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ipc_rctl.h" 2 10127 10128 10129 10130 10131 10132 typedef struct ipc_rqty { /* datum protected by: */ 10133 rctl_qty_t ipcq_shmmni; /* shm's ipcs_lock */ 10134 rctl_qty_t ipcq_semmni; /* sem's ipcs_lock */ 10135 rctl_qty_t ipcq_msgmni; /* msg's ipcs_lock */ 10136 } ipc_rqty_t; 10137 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 10138 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/pset.h" 1 10139 /* 10140 * CDDL HEADER START 10141 * 10142 * The contents of this file are subject to the terms of the 10143 * Common Development and Distribution License (the "License"). 10144 * You may not use this file except in compliance with the License. 10145 * 10146 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10147 * or http://www.opensolaris.org/os/licensing. 10148 * See the License for the specific language governing permissions 10149 * and limitations under the License. 10150 * 10151 * When distributing Covered Code, include this CDDL HEADER in each 10152 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10153 * If applicable, add the following below this CDDL HEADER, with the 10154 * fields enclosed by brackets "[]" replaced with your own identifying 10155 * information: Portions Copyright [yyyy] [name of copyright owner] 10156 * 10157 * CDDL HEADER END 10158 */ 10159 /* 10160 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 10161 * 10162 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10163 * Use is subject to license terms. 10164 */ 10165 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/pset.h" 10166 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 10167 /* 10168 * CDDL HEADER START 10169 * 10170 * The contents of this file are subject to the terms of the 10171 * Common Development and Distribution License (the "License"). 10172 * You may not use this file except in compliance with the License. 10173 * 10174 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10175 * or http://www.opensolaris.org/os/licensing. 10176 * See the License for the specific language governing permissions 10177 * and limitations under the License. 10178 * 10179 * When distributing Covered Code, include this CDDL HEADER in each 10180 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10181 * If applicable, add the following below this CDDL HEADER, with the 10182 * fields enclosed by brackets "[]" replaced with your own identifying 10183 * information: Portions Copyright [yyyy] [name of copyright owner] 10184 * 10185 * CDDL HEADER END 10186 */ 10187 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10188 /* All Rights Reserved */ 10189 10190 10191 /* 10192 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10193 * Use is subject to license terms. 10194 * 10195 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 10196 * Copyright 2016 Joyent, Inc. 10197 */ 10198 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/pset.h" 2 10199 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/processor.h" 1 10200 /* 10201 * CDDL HEADER START 10202 * 10203 * The contents of this file are subject to the terms of the 10204 * Common Development and Distribution License (the "License"). 10205 * You may not use this file except in compliance with the License. 10206 * 10207 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10208 * or http://www.opensolaris.org/os/licensing. 10209 * See the License for the specific language governing permissions 10210 * and limitations under the License. 10211 * 10212 * When distributing Covered Code, include this CDDL HEADER in each 10213 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10214 * If applicable, add the following below this CDDL HEADER, with the 10215 * fields enclosed by brackets "[]" replaced with your own identifying 10216 * information: Portions Copyright [yyyy] [name of copyright owner] 10217 * 10218 * CDDL HEADER END 10219 */ 10220 /* 10221 * Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T 10222 * All Rights Reserved 10223 * 10224 */ 10225 10226 /* 10227 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 10228 * 10229 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 10230 * Use is subject to license terms. 10231 */ 10232 10233 10234 10235 10236 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 10237 /* 10238 * CDDL HEADER START 10239 * 10240 * The contents of this file are subject to the terms of the 10241 * Common Development and Distribution License (the "License"). 10242 * You may not use this file except in compliance with the License. 10243 * 10244 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10245 * or http://www.opensolaris.org/os/licensing. 10246 * See the License for the specific language governing permissions 10247 * and limitations under the License. 10248 * 10249 * When distributing Covered Code, include this CDDL HEADER in each 10250 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10251 * If applicable, add the following below this CDDL HEADER, with the 10252 * fields enclosed by brackets "[]" replaced with your own identifying 10253 * information: Portions Copyright [yyyy] [name of copyright owner] 10254 * 10255 * CDDL HEADER END 10256 */ 10257 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10258 /* All Rights Reserved */ 10259 10260 10261 /* 10262 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10263 * Use is subject to license terms. 10264 * 10265 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 10266 * Copyright 2016 Joyent, Inc. 10267 */ 10268 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/processor.h" 2 10269 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/procset.h" 1 10270 /* 10271 * CDDL HEADER START 10272 * 10273 * The contents of this file are subject to the terms of the 10274 * Common Development and Distribution License, Version 1.0 only 10275 * (the "License"). You may not use this file except in compliance 10276 * with the License. 10277 * 10278 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10279 * or http://www.opensolaris.org/os/licensing. 10280 * See the License for the specific language governing permissions 10281 * and limitations under the License. 10282 * 10283 * When distributing Covered Code, include this CDDL HEADER in each 10284 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10285 * If applicable, add the following below this CDDL HEADER, with the 10286 * fields enclosed by brackets "[]" replaced with your own identifying 10287 * information: Portions Copyright [yyyy] [name of copyright owner] 10288 * 10289 * CDDL HEADER END 10290 */ 10291 /* 10292 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 10293 * Use is subject to license terms. 10294 */ 10295 10296 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10297 /* All Rights Reserved */ 10298 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/processor.h" 2 10299 10300 10301 10302 10303 10304 /* 10305 * Definitions for p_online, processor_info & lgrp system calls. 10306 */ 10307 10308 /* 10309 * Type for an lgrpid 10310 */ 10311 typedef uint16_t lgrpid_t; 10312 10313 /* 10314 * Type for processor name (CPU number). 10315 */ 10316 typedef int processorid_t; 10317 typedef int chipid_t; 10318 10319 /* 10320 * Flags and return values for p_online(2), and pi_state for processor_info(2). 10321 * These flags are *not* for in-kernel examination of CPU states. 10322 * See <sys/cpuvar.h> for appropriate informational functions. 10323 */ 10324 # 74 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/processor.h" 10325 /* 10326 * String names for processor states defined above. 10327 */ 10328 10329 10330 10331 10332 10333 10334 10335 /* 10336 * Structure filled in by processor_info(2). This structure 10337 * SHOULD NOT BE MODIFIED. Changes to the structure would 10338 * negate ABI compatibility. 10339 * 10340 * The string fields are guaranteed to contain a NULL. 10341 * 10342 * The pi_fputypes field contains a (possibly empty) comma-separated 10343 * list of floating point identifier strings. 10344 */ 10345 10346 10347 10348 typedef struct { 10349 int pi_state; /* processor state, see above */ 10350 char pi_processor_type[16]; /* ASCII CPU type */ 10351 char pi_fputypes[32]; /* ASCII FPU types */ 10352 int pi_clock; /* CPU clock freq in MHz */ 10353 } processor_info_t; 10354 10355 /* 10356 * Binding values for processor_bind(2) 10357 */ 10358 10359 10360 10361 10362 10363 10364 /* 10365 * User-level system call interface prototypes 10366 */ 10367 10368 10369 extern int p_online(processorid_t processorid, int flag); 10370 extern int processor_info(processorid_t processorid, 10371 processor_info_t *infop); 10372 extern int processor_bind(idtype_t idtype, id_t id, 10373 processorid_t processorid, processorid_t *obind); 10374 extern processorid_t getcpuid(void); 10375 extern lgrpid_t gethomelgroup(void); 10376 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/pset.h" 2 10377 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/procset.h" 1 10378 /* 10379 * CDDL HEADER START 10380 * 10381 * The contents of this file are subject to the terms of the 10382 * Common Development and Distribution License, Version 1.0 only 10383 * (the "License"). You may not use this file except in compliance 10384 * with the License. 10385 * 10386 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10387 * or http://www.opensolaris.org/os/licensing. 10388 * See the License for the specific language governing permissions 10389 * and limitations under the License. 10390 * 10391 * When distributing Covered Code, include this CDDL HEADER in each 10392 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10393 * If applicable, add the following below this CDDL HEADER, with the 10394 * fields enclosed by brackets "[]" replaced with your own identifying 10395 * information: Portions Copyright [yyyy] [name of copyright owner] 10396 * 10397 * CDDL HEADER END 10398 */ 10399 /* 10400 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 10401 * Use is subject to license terms. 10402 */ 10403 10404 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10405 /* All Rights Reserved */ 10406 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/pset.h" 2 10407 10408 typedef int psetid_t; 10409 10410 /* special processor set id's */ 10411 10412 10413 10414 10415 10416 10417 10418 /* types of processor sets */ 10419 10420 10421 10422 10423 10424 extern int pset_create(psetid_t *); 10425 extern int pset_destroy(psetid_t); 10426 extern int pset_assign(psetid_t, processorid_t, psetid_t *); 10427 extern int pset_info(psetid_t, int *, uint_t *, processorid_t *); 10428 extern int pset_bind(psetid_t, idtype_t, id_t, psetid_t *); 10429 extern int pset_bind_lwp(psetid_t, id_t, pid_t, psetid_t *); 10430 extern int pset_getloadavg(psetid_t, double [], int); 10431 extern int pset_list(psetid_t *, uint_t *); 10432 extern int pset_setattr(psetid_t, uint_t); 10433 extern int pset_getattr(psetid_t, uint_t *); 10434 10435 10436 10437 10438 10439 /* system call subcodes */ 10440 # 85 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/pset.h" 10441 /* attribute bits */ 10442 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 10443 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/tsol/label.h" 1 10444 /* 10445 * CDDL HEADER START 10446 * 10447 * The contents of this file are subject to the terms of the 10448 * Common Development and Distribution License (the "License"). 10449 * You may not use this file except in compliance with the License. 10450 * 10451 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10452 * or http://www.opensolaris.org/os/licensing. 10453 * See the License for the specific language governing permissions 10454 * and limitations under the License. 10455 * 10456 * When distributing Covered Code, include this CDDL HEADER in each 10457 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10458 * If applicable, add the following below this CDDL HEADER, with the 10459 * fields enclosed by brackets "[]" replaced with your own identifying 10460 * information: Portions Copyright [yyyy] [name of copyright owner] 10461 * 10462 * CDDL HEADER END 10463 */ 10464 /* 10465 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10466 * Use is subject to license terms. 10467 */ 10468 10469 10470 10471 10472 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 10473 /* 10474 * CDDL HEADER START 10475 * 10476 * The contents of this file are subject to the terms of the 10477 * Common Development and Distribution License (the "License"). 10478 * You may not use this file except in compliance with the License. 10479 * 10480 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10481 * or http://www.opensolaris.org/os/licensing. 10482 * See the License for the specific language governing permissions 10483 * and limitations under the License. 10484 * 10485 * When distributing Covered Code, include this CDDL HEADER in each 10486 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10487 * If applicable, add the following below this CDDL HEADER, with the 10488 * fields enclosed by brackets "[]" replaced with your own identifying 10489 * information: Portions Copyright [yyyy] [name of copyright owner] 10490 * 10491 * CDDL HEADER END 10492 */ 10493 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10494 /* All Rights Reserved */ 10495 10496 10497 /* 10498 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10499 * Use is subject to license terms. 10500 * 10501 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 10502 * Copyright 2016 Joyent, Inc. 10503 */ 10504 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/tsol/label.h" 2 10505 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/tsol/label.h" 10506 /* 10507 * types of label comparison 10508 */ 10509 10510 10511 10512 /* Manifest human readable label names */ 10513 10514 10515 10516 /* Binary Label Structure Definitions */ 10517 10518 typedef struct _mac_label_impl m_label_t; 10519 10520 typedef m_label_t blevel_t, /* compatibility */ 10521 bslabel_t, /* Sensitivity Label */ 10522 bclear_t; /* Clearance */ 10523 10524 typedef struct _tsol_binary_level_lrange { /* Level Range */ 10525 m_label_t *lower_bound; 10526 m_label_t *upper_bound; 10527 } m_range_t; 10528 10529 typedef m_range_t blrange_t; 10530 10531 typedef struct tsol_mlp_s { 10532 uchar_t mlp_ipp; 10533 uint16_t mlp_port; 10534 uint16_t mlp_port_upper; 10535 } tsol_mlp_t; 10536 10537 /* Procedure Interface Definitions available to user and kernel */ 10538 10539 extern int bltype(const void *, uint8_t); 10540 extern int blequal(const m_label_t *, const m_label_t *); 10541 extern int bldominates(const m_label_t *, const m_label_t *); 10542 extern int blstrictdom(const m_label_t *, const m_label_t *); 10543 extern int blinrange(const m_label_t *, const m_range_t *); 10544 extern void blmaximum(m_label_t *, const m_label_t *); 10545 extern void blminimum(m_label_t *, const m_label_t *); 10546 extern void bsllow(m_label_t *); 10547 extern void bslhigh(m_label_t *); 10548 extern void bclearlow(m_label_t *); 10549 extern void bclearhigh(m_label_t *); 10550 extern void bslundef(m_label_t *); 10551 extern void bclearundef(m_label_t *); 10552 extern void setbltype(void *, uint8_t); 10553 extern boolean_t bisinvalid(const void *); 10554 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 10555 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/cred.h" 1 10556 /* 10557 * CDDL HEADER START 10558 * 10559 * The contents of this file are subject to the terms of the 10560 * Common Development and Distribution License (the "License"). 10561 * You may not use this file except in compliance with the License. 10562 * 10563 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10564 * or http://www.opensolaris.org/os/licensing. 10565 * See the License for the specific language governing permissions 10566 * and limitations under the License. 10567 * 10568 * When distributing Covered Code, include this CDDL HEADER in each 10569 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10570 * If applicable, add the following below this CDDL HEADER, with the 10571 * fields enclosed by brackets "[]" replaced with your own identifying 10572 * information: Portions Copyright [yyyy] [name of copyright owner] 10573 * 10574 * CDDL HEADER END 10575 */ 10576 /* 10577 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10578 * Use is subject to license terms. 10579 */ 10580 10581 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 10582 /* All Rights Reserved */ 10583 10584 /* 10585 * Portions of this source code were derived from Berkeley 4.3 BSD 10586 * under license from the Regents of the University of California. 10587 */ 10588 10589 10590 10591 10592 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 10593 /* 10594 * CDDL HEADER START 10595 * 10596 * The contents of this file are subject to the terms of the 10597 * Common Development and Distribution License (the "License"). 10598 * You may not use this file except in compliance with the License. 10599 * 10600 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10601 * or http://www.opensolaris.org/os/licensing. 10602 * See the License for the specific language governing permissions 10603 * and limitations under the License. 10604 * 10605 * When distributing Covered Code, include this CDDL HEADER in each 10606 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10607 * If applicable, add the following below this CDDL HEADER, with the 10608 * fields enclosed by brackets "[]" replaced with your own identifying 10609 * information: Portions Copyright [yyyy] [name of copyright owner] 10610 * 10611 * CDDL HEADER END 10612 */ 10613 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10614 /* All Rights Reserved */ 10615 10616 10617 /* 10618 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10619 * Use is subject to license terms. 10620 * 10621 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 10622 * Copyright 2016 Joyent, Inc. 10623 */ 10624 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/cred.h" 2 10625 10626 10627 10628 10629 10630 /* 10631 * The credential is an opaque kernel private data structure defined in 10632 * <sys/cred_impl.h>. 10633 */ 10634 10635 typedef struct cred cred_t; 10636 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 10637 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netstack.h" 1 10638 /* 10639 * CDDL HEADER START 10640 * 10641 * The contents of this file are subject to the terms of the 10642 * Common Development and Distribution License (the "License"). 10643 * You may not use this file except in compliance with the License. 10644 * 10645 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10646 * or http://www.opensolaris.org/os/licensing. 10647 * See the License for the specific language governing permissions 10648 * and limitations under the License. 10649 * 10650 * When distributing Covered Code, include this CDDL HEADER in each 10651 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10652 * If applicable, add the following below this CDDL HEADER, with the 10653 * fields enclosed by brackets "[]" replaced with your own identifying 10654 * information: Portions Copyright [yyyy] [name of copyright owner] 10655 * 10656 * CDDL HEADER END 10657 */ 10658 10659 /* 10660 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10661 * Use is subject to license terms. 10662 */ 10663 10664 10665 10666 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 1 10667 /* 10668 * CDDL HEADER START 10669 * 10670 * The contents of this file are subject to the terms of the 10671 * Common Development and Distribution License (the "License"). 10672 * You may not use this file except in compliance with the License. 10673 * 10674 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10675 * or http://www.opensolaris.org/os/licensing. 10676 * See the License for the specific language governing permissions 10677 * and limitations under the License. 10678 * 10679 * When distributing Covered Code, include this CDDL HEADER in each 10680 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10681 * If applicable, add the following below this CDDL HEADER, with the 10682 * fields enclosed by brackets "[]" replaced with your own identifying 10683 * information: Portions Copyright [yyyy] [name of copyright owner] 10684 * 10685 * CDDL HEADER END 10686 */ 10687 /* 10688 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 10689 * Use is subject to license terms. 10690 * 10691 * Copyright 2015 Nexenta Systems, Inc. All rights reserved. 10692 */ 10693 10694 10695 10696 10697 /* 10698 * Definition of general kernel statistics structures and /dev/kstat ioctls 10699 */ 10700 10701 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 10702 /* 10703 * CDDL HEADER START 10704 * 10705 * The contents of this file are subject to the terms of the 10706 * Common Development and Distribution License (the "License"). 10707 * You may not use this file except in compliance with the License. 10708 * 10709 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10710 * or http://www.opensolaris.org/os/licensing. 10711 * See the License for the specific language governing permissions 10712 * and limitations under the License. 10713 * 10714 * When distributing Covered Code, include this CDDL HEADER in each 10715 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 10716 * If applicable, add the following below this CDDL HEADER, with the 10717 * fields enclosed by brackets "[]" replaced with your own identifying 10718 * information: Portions Copyright [yyyy] [name of copyright owner] 10719 * 10720 * CDDL HEADER END 10721 */ 10722 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10723 /* All Rights Reserved */ 10724 10725 10726 /* 10727 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10728 * Use is subject to license terms. 10729 * 10730 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 10731 * Copyright 2016 Joyent, Inc. 10732 */ 10733 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 2 10734 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 10735 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 10736 /* All Rights Reserved */ 10737 10738 10739 /* 10740 * Copyright (c) 1982, 1986, 1993 Regents of the University of California. 10741 * All rights reserved. The Berkeley software License Agreement 10742 * specifies the terms and conditions for redistribution. 10743 */ 10744 10745 /* 10746 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 10747 * 10748 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 10749 * Use is subject to license terms. 10750 * 10751 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 10752 */ 10753 10754 /* 10755 * Copyright (c) 2013, 2015 by Delphix. All rights reserved. 10756 */ 10757 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 2 10758 10759 10760 10761 10762 10763 typedef int kid_t; /* unique kstat id */ 10764 10765 /* 10766 * Kernel statistics driver (/dev/kstat) ioctls 10767 */ 10768 10769 10770 10771 10772 10773 10774 10775 /* 10776 * /dev/kstat ioctl usage (kd denotes /dev/kstat descriptor): 10777 * 10778 * kcid = ioctl(kd, KSTAT_IOC_CHAIN_ID, NULL); 10779 * kcid = ioctl(kd, KSTAT_IOC_READ, kstat_t *); 10780 * kcid = ioctl(kd, KSTAT_IOC_WRITE, kstat_t *); 10781 */ 10782 10783 10784 10785 /* 10786 * The generic kstat header 10787 */ 10788 10789 typedef struct kstat { 10790 /* 10791 * Fields relevant to both kernel and user 10792 */ 10793 hrtime_t ks_crtime; /* creation time (from gethrtime()) */ 10794 struct kstat *ks_next; /* kstat chain linkage */ 10795 kid_t ks_kid; /* unique kstat ID */ 10796 char ks_module[31]; /* provider module name */ 10797 uchar_t ks_resv; /* reserved, currently just padding */ 10798 int ks_instance; /* provider module's instance */ 10799 char ks_name[31]; /* kstat name */ 10800 uchar_t ks_type; /* kstat data type */ 10801 char ks_class[31]; /* kstat class */ 10802 uchar_t ks_flags; /* kstat flags */ 10803 void *ks_data; /* kstat type-specific data */ 10804 uint_t ks_ndata; /* # of type-specific data records */ 10805 size_t ks_data_size; /* total size of kstat data section */ 10806 hrtime_t ks_snaptime; /* time of last data shapshot */ 10807 /* 10808 * Fields relevant to kernel only 10809 */ 10810 int (*ks_update)(struct kstat *, int); /* dynamic update */ 10811 void *ks_private; /* arbitrary provider-private data */ 10812 int (*ks_snapshot)(struct kstat *, void *, int); 10813 void *ks_lock; /* protects this kstat's data */ 10814 } kstat_t; 10815 # 128 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 10816 /* 10817 * kstat structure and locking strategy 10818 * 10819 * Each kstat consists of a header section (a kstat_t) and a data section. 10820 * The system maintains a set of kstats, protected by kstat_chain_lock. 10821 * kstat_chain_lock protects all additions to/deletions from this set, 10822 * as well as all changes to kstat headers. kstat data sections are 10823 * *optionally* protected by the per-kstat ks_lock. If ks_lock is non-NULL, 10824 * kstat clients (e.g. /dev/kstat) will acquire this lock for all of their 10825 * operations on that kstat. It is up to the kstat provider to decide whether 10826 * guaranteeing consistent data to kstat clients is sufficiently important 10827 * to justify the locking cost. Note, however, that most statistic updates 10828 * already occur under one of the provider's mutexes, so if the provider sets 10829 * ks_lock to point to that mutex, then kstat data locking is free. 10830 * 10831 * NOTE: variable-size kstats MUST employ kstat data locking, to prevent 10832 * data-size races with kstat clients. 10833 * 10834 * NOTE: ks_lock is really of type (kmutex_t *); it is declared as (void *) 10835 * in the kstat header so that users don't have to be exposed to all of the 10836 * kernel's lock-related data structures. 10837 */ 10838 # 165 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 10839 /* 10840 * kstat time 10841 * 10842 * All times associated with kstats (e.g. creation time, snapshot time, 10843 * kstat_timer_t and kstat_io_t timestamps, etc.) are 64-bit nanosecond values, 10844 * as returned by gethrtime(). The accuracy of these timestamps is machine 10845 * dependent, but the precision (units) is the same across all platforms. 10846 */ 10847 10848 /* 10849 * kstat identity (KID) 10850 * 10851 * Each kstat is assigned a unique KID (kstat ID) when it is added to the 10852 * global kstat chain. The KID is used as a cookie by /dev/kstat to 10853 * request information about the corresponding kstat. There is also 10854 * an identity associated with the entire kstat chain, kstat_chain_id, 10855 * which is bumped each time a kstat is added or deleted. /dev/kstat uses 10856 * the chain ID to detect changes in the kstat chain (e.g., a new disk 10857 * coming online) between ioctl()s. 10858 */ 10859 10860 /* 10861 * kstat module, kstat instance 10862 * 10863 * ks_module and ks_instance contain the name and instance of the module 10864 * that created the kstat. In cases where there can only be one instance, 10865 * ks_instance is 0. The kernel proper (/kernel/unix) uses "unix" as its 10866 * module name. 10867 */ 10868 10869 /* 10870 * kstat name 10871 * 10872 * ks_name gives a meaningful name to a kstat. The full kstat namespace 10873 * is module.instance.name, so the name only need be unique within a 10874 * module. kstat_create() will fail if you try to create a kstat with 10875 * an already-used (ks_module, ks_instance, ks_name) triplet. Spaces are 10876 * allowed in kstat names, but strongly discouraged, since they hinder 10877 * awk-style processing at user level. 10878 */ 10879 10880 /* 10881 * kstat type 10882 * 10883 * The kstat mechanism provides several flavors of kstat data, defined 10884 * below. The "raw" kstat type is just treated as an array of bytes; you 10885 * can use this to export any kind of data you want. 10886 * 10887 * Some kstat types allow multiple data structures per kstat, e.g. 10888 * KSTAT_TYPE_NAMED; others do not. This is part of the spec for each 10889 * kstat data type. 10890 * 10891 * User-level tools should *not* rely on the #define KSTAT_NUM_TYPES. To 10892 * get this information, read out the standard system kstat "kstat_types". 10893 */ 10894 10895 10896 /* ks_ndata >= 1 */ 10897 10898 /* ks_ndata >= 1 */ 10899 10900 /* ks_ndata == 1 */ 10901 10902 /* ks_ndata == 1 */ 10903 10904 /* ks_ndata >= 1 */ 10905 10906 10907 10908 /* 10909 * kstat class 10910 * 10911 * Each kstat can be characterized as belonging to some broad class 10912 * of statistics, e.g. disk, tape, net, vm, streams, etc. This field 10913 * can be used as a filter to extract related kstats. The following 10914 * values are currently in use: disk, tape, net, controller, vm, kvm, 10915 * hat, streams, kstat, and misc. (The kstat class encompasses things 10916 * like kstat_types.) 10917 */ 10918 10919 /* 10920 * kstat flags 10921 * 10922 * Any of the following flags may be passed to kstat_create(). They are 10923 * all zero by default. 10924 * 10925 * KSTAT_FLAG_VIRTUAL: 10926 * 10927 * Tells kstat_create() not to allocate memory for the 10928 * kstat data section; instead, you will set the ks_data 10929 * field to point to the data you wish to export. This 10930 * provides a convenient way to export existing data 10931 * structures. 10932 * 10933 * KSTAT_FLAG_VAR_SIZE: 10934 * 10935 * The size of the kstat you are creating will vary over time. 10936 * For example, you may want to use the kstat mechanism to 10937 * export a linked list. NOTE: The kstat framework does not 10938 * manage the data section, so all variable-size kstats must be 10939 * virtual kstats. Moreover, variable-size kstats MUST employ 10940 * kstat data locking to prevent data-size races with kstat 10941 * clients. See the section on "kstat snapshot" for details. 10942 * 10943 * KSTAT_FLAG_WRITABLE: 10944 * 10945 * Makes the kstat's data section writable by root. 10946 * The ks_snapshot routine (see below) does not need to check for 10947 * this; permission checking is handled in the kstat driver. 10948 * 10949 * KSTAT_FLAG_PERSISTENT: 10950 * 10951 * Indicates that this kstat is to be persistent over time. 10952 * For persistent kstats, kstat_delete() simply marks the 10953 * kstat as dormant; a subsequent kstat_create() reactivates 10954 * the kstat. This feature is provided so that statistics 10955 * are not lost across driver close/open (e.g., raw disk I/O 10956 * on a disk with no mounted partitions.) 10957 * NOTE: Persistent kstats cannot be virtual, since ks_data 10958 * points to garbage as soon as the driver goes away. 10959 * 10960 * The following flags are maintained by the kstat framework: 10961 * 10962 * KSTAT_FLAG_DORMANT: 10963 * 10964 * For persistent kstats, indicates that the kstat is in the 10965 * dormant state (e.g., the corresponding device is closed). 10966 * 10967 * KSTAT_FLAG_INVALID: 10968 * 10969 * This flag is set when a kstat is in a transitional state, 10970 * e.g. between kstat_create() and kstat_install(). 10971 * kstat clients must not attempt to access the kstat's data 10972 * if this flag is set. 10973 * 10974 * KSTAT_FLAG_LONGSTRINGS: 10975 * 10976 * Indicates that this kstat contains long strings (which 10977 * are stored outside of the kstat data section). When copied 10978 * out to user space the string data will be held in the data 10979 * section provided by the user. 10980 */ 10981 # 316 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 10982 /* 10983 * Dynamic update support 10984 * 10985 * The kstat mechanism allows for an optional ks_update function to update 10986 * kstat data. This is useful for drivers where the underlying device 10987 * keeps cheap hardware stats, but extraction is expensive. Instead of 10988 * constantly keeping the kstat data section up to date, you can supply a 10989 * ks_update function which updates the kstat's data section on demand. 10990 * To take advantage of this feature, simply set the ks_update field before 10991 * calling kstat_install(). 10992 * 10993 * The ks_update function, if supplied, must have the following structure: 10994 * 10995 * int 10996 * foo_kstat_update(kstat_t *ksp, int rw) 10997 * { 10998 * if (rw == KSTAT_WRITE) { 10999 * ... update the native stats from ksp->ks_data; 11000 * return EACCES if you don't support this 11001 * } else { 11002 * ... update ksp->ks_data from the native stats 11003 * } 11004 * } 11005 * 11006 * The ks_update return codes are: 0 for success, EACCES if you don't allow 11007 * KSTAT_WRITE, and EIO for any other type of error. 11008 * 11009 * In general, the ks_update function may need to refer to provider-private 11010 * data; for example, it may need a pointer to the provider's raw statistics. 11011 * The ks_private field is available for this purpose. Its use is entirely 11012 * at the provider's discretion. 11013 * 11014 * All variable-size kstats MUST supply a ks_update routine, which computes 11015 * and sets ks_data_size (and ks_ndata if that is meaningful), since these 11016 * are needed to perform kstat snapshots (see below). 11017 * 11018 * No kstat locking should be done inside the ks_update routine. The caller 11019 * will already be holding the kstat's ks_lock (to ensure consistent data). 11020 */ 11021 11022 11023 11024 11025 /* 11026 * Kstat snapshot 11027 * 11028 * In order to get a consistent view of a kstat's data, clients must obey 11029 * the kstat's locking strategy. However, these clients may need to perform 11030 * operations on the data which could cause a fault (e.g. copyout()), or 11031 * operations which are simply expensive. Doing so could cause deadlock 11032 * (e.g. if you're holding a disk's kstat lock which is ultimately required 11033 * to resolve a copyout() fault), performance degradation (since the providers' 11034 * activity is serialized at the kstat lock), device timing problems, etc. 11035 * 11036 * To avoid these problems, kstat data is provided via snapshots. Taking 11037 * a snapshot is a simple process: allocate a wired-down kernel buffer, 11038 * acquire the kstat's data lock, copy the data into the buffer ("take the 11039 * snapshot"), and release the lock. This ensures that the kstat's data lock 11040 * will be held as briefly as possible, and that no faults will occur while 11041 * the lock is held. 11042 * 11043 * Normally, the snapshot is taken by default_kstat_snapshot(), which 11044 * timestamps the data (sets ks_snaptime), copies it, and does a little 11045 * massaging to deal with incomplete transactions on i/o kstats. However, 11046 * this routine only works for kstats with contiguous data (the typical case). 11047 * If you create a kstat whose data is, say, a linked list, you must provide 11048 * your own ks_snapshot routine. The routine you supply must have the 11049 * following prototype (replace "foo" with something appropriate): 11050 * 11051 * int foo_kstat_snapshot(kstat_t *ksp, void *buf, int rw); 11052 * 11053 * The minimal snapshot routine -- one which copies contiguous data that 11054 * doesn't need any massaging -- would be this: 11055 * 11056 * ksp->ks_snaptime = gethrtime(); 11057 * if (rw == KSTAT_WRITE) 11058 * bcopy(buf, ksp->ks_data, ksp->ks_data_size); 11059 * else 11060 * bcopy(ksp->ks_data, buf, ksp->ks_data_size); 11061 * return (0); 11062 * 11063 * A more illuminating example is taking a snapshot of a linked list: 11064 * 11065 * ksp->ks_snaptime = gethrtime(); 11066 * if (rw == KSTAT_WRITE) 11067 * return (EACCES); ... See below ... 11068 * for (foo = first_foo; foo; foo = foo->next) { 11069 * bcopy((char *) foo, (char *) buf, sizeof (struct foo)); 11070 * buf = ((struct foo *) buf) + 1; 11071 * } 11072 * return (0); 11073 * 11074 * In the example above, we have decided that we don't want to allow 11075 * KSTAT_WRITE access, so we return EACCES if this is attempted. 11076 * 11077 * The key points are: 11078 * 11079 * (1) ks_snaptime must be set (via gethrtime()) to timestamp the data. 11080 * (2) Data gets copied from the kstat to the buffer on KSTAT_READ, 11081 * and from the buffer to the kstat on KSTAT_WRITE. 11082 * (3) ks_snapshot return values are: 0 for success, EACCES if you 11083 * don't allow KSTAT_WRITE, and EIO for any other type of error. 11084 * 11085 * Named kstats (see section on "Named statistics" below) containing long 11086 * strings (KSTAT_DATA_STRING) need special handling. The kstat driver 11087 * assumes that all strings are copied into the buffer after the array of 11088 * named kstats, and the pointers (KSTAT_NAMED_STR_PTR()) are updated to point 11089 * into the copy within the buffer. The default snapshot routine does this, 11090 * but overriding routines should contain at least the following: 11091 * 11092 * if (rw == KSTAT_READ) { 11093 * kstat_named_t *knp = buf; 11094 * char *end = knp + ksp->ks_ndata; 11095 * uint_t i; 11096 * 11097 * ... Do the regular copy ... 11098 * bcopy(ksp->ks_data, buf, sizeof (kstat_named_t) * ksp->ks_ndata); 11099 * 11100 * for (i = 0; i < ksp->ks_ndata; i++, knp++) { 11101 * if (knp[i].data_type == KSTAT_DATA_STRING && 11102 * KSTAT_NAMED_STR_PTR(knp) != NULL) { 11103 * bcopy(KSTAT_NAMED_STR_PTR(knp), end, 11104 * KSTAT_NAMED_STR_BUFLEN(knp)); 11105 * KSTAT_NAMED_STR_PTR(knp) = end; 11106 * end += KSTAT_NAMED_STR_BUFLEN(knp); 11107 * } 11108 * } 11109 */ 11110 11111 /* 11112 * Named statistics. 11113 * 11114 * List of arbitrary name=value statistics. 11115 */ 11116 11117 typedef struct kstat_named { 11118 char name[31]; /* name of counter */ 11119 uchar_t data_type; /* data type */ 11120 union { 11121 char c[16]; /* enough for 128-bit ints */ 11122 int32_t i32; 11123 uint32_t ui32; 11124 struct { 11125 union { 11126 char *ptr; /* NULL-term string */ 11127 11128 11129 11130 char __pad[8]; /* 64-bit padding */ 11131 } addr; 11132 uint32_t len; /* # bytes for strlen + '\0' */ 11133 } str; 11134 /* 11135 * The int64_t and uint64_t types are not valid for a maximally conformant 11136 * 32-bit compilation environment (cc -Xc) using compilers prior to the 11137 * introduction of C99 conforming compiler (reference ISO/IEC 9899:1990). 11138 * In these cases, the visibility of i64 and ui64 is only permitted for 11139 * 64-bit compilation environments or 32-bit non-maximally conformant 11140 * C89 or C90 ANSI C compilation environments (cc -Xt and cc -Xa). In the 11141 * C99 ANSI C compilation environment, the long long type is supported. 11142 * The _INT64_TYPE is defined by the implementation (see sys/int_types.h). 11143 */ 11144 11145 int64_t i64; 11146 uint64_t ui64; 11147 11148 long l; 11149 ulong_t ul; 11150 11151 /* These structure members are obsolete */ 11152 11153 longlong_t ll; 11154 u_longlong_t ull; 11155 float f; 11156 double d; 11157 } value; /* value of counter */ 11158 } kstat_named_t; 11159 # 513 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 11160 /* 11161 * Statistics exporting named kstats with long strings (KSTAT_DATA_STRING) 11162 * may not make the assumption that ks_data_size is equal to (ks_ndata * sizeof 11163 * (kstat_named_t)). ks_data_size in these cases is equal to the sum of the 11164 * amount of space required to store the strings (ie, the sum of 11165 * KSTAT_NAMED_STR_BUFLEN() for all KSTAT_DATA_STRING statistics) plus the 11166 * space required to store the kstat_named_t's. 11167 * 11168 * The default update routine will update ks_data_size automatically for 11169 * variable-length kstats containing long strings (using the default update 11170 * routine only makes sense if the string is the only thing that is changing 11171 * in size, and ks_ndata is constant). Fixed-length kstats containing long 11172 * strings must explicitly change ks_data_size (after creation but before 11173 * initialization) to reflect the correct amount of space required for the 11174 * long strings and the kstat_named_t's. 11175 */ 11176 11177 11178 /* These types are obsolete */ 11179 # 540 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 11180 /* 11181 * Retrieve the pointer of the string contained in the given named kstat. 11182 */ 11183 11184 11185 /* 11186 * Retrieve the length of the buffer required to store the string in the given 11187 * named kstat. 11188 */ 11189 11190 11191 /* 11192 * Interrupt statistics. 11193 * 11194 * An interrupt is a hard interrupt (sourced from the hardware device 11195 * itself), a soft interrupt (induced by the system via the use of 11196 * some system interrupt source), a watchdog interrupt (induced by 11197 * a periodic timer call), spurious (an interrupt entry point was 11198 * entered but there was no interrupt condition to service), 11199 * or multiple service (an interrupt condition was detected and 11200 * serviced just prior to returning from any of the other types). 11201 * 11202 * Measurement of the spurious class of interrupts is useful for 11203 * autovectored devices in order to pinpoint any interrupt latency 11204 * problems in a particular system configuration. 11205 * 11206 * Devices that have more than one interrupt of the same 11207 * type should use multiple structures. 11208 */ 11209 # 578 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/kstat.h" 11210 typedef struct kstat_intr { 11211 uint_t intrs[5]; /* interrupt counters */ 11212 } kstat_intr_t; 11213 11214 11215 11216 /* 11217 * I/O statistics. 11218 */ 11219 11220 typedef struct kstat_io { 11221 11222 /* 11223 * Basic counters. 11224 * 11225 * The counters should be updated at the end of service 11226 * (e.g., just prior to calling biodone()). 11227 */ 11228 11229 u_longlong_t nread; /* number of bytes read */ 11230 u_longlong_t nwritten; /* number of bytes written */ 11231 uint_t reads; /* number of read operations */ 11232 uint_t writes; /* number of write operations */ 11233 11234 /* 11235 * Accumulated time and queue length statistics. 11236 * 11237 * Accumulated time statistics are kept as a running sum 11238 * of "active" time. Queue length statistics are kept as a 11239 * running sum of the product of queue length and elapsed time 11240 * at that length -- i.e., a Riemann sum for queue length 11241 * integrated against time. (You can also think of the active time 11242 * as a Riemann sum, for the boolean function (queue_length > 0) 11243 * integrated against time, or you can think of it as the 11244 * Lebesgue measure of the set on which queue_length > 0.) 11245 * 11246 * ^ 11247 * | _________ 11248 * 8 | i4 | 11249 * | | | 11250 * Queue 6 | | 11251 * Length | _________ | | 11252 * 4 | i2 |_______| | 11253 * | | i3 | 11254 * 2_______| | 11255 * | i1 | 11256 * |_______________________________| 11257 * Time-> t1 t2 t3 t4 11258 * 11259 * At each change of state (entry or exit from the queue), 11260 * we add the elapsed time (since the previous state change) 11261 * to the active time if the queue length was non-zero during 11262 * that interval; and we add the product of the elapsed time 11263 * times the queue length to the running length*time sum. 11264 * 11265 * This method is generalizable to measuring residency 11266 * in any defined system: instead of queue lengths, think 11267 * of "outstanding RPC calls to server X". 11268 * 11269 * A large number of I/O subsystems have at least two basic 11270 * "lists" of transactions they manage: one for transactions 11271 * that have been accepted for processing but for which processing 11272 * has yet to begin, and one for transactions which are actively 11273 * being processed (but not done). For this reason, two cumulative 11274 * time statistics are defined here: wait (pre-service) time, 11275 * and run (service) time. 11276 * 11277 * All times are 64-bit nanoseconds (hrtime_t), as returned by 11278 * gethrtime(). 11279 * 11280 * The units of cumulative busy time are accumulated nanoseconds. 11281 * The units of cumulative length*time products are elapsed time 11282 * times queue length. 11283 * 11284 * Updates to the fields below are performed implicitly by calls to 11285 * these five functions: 11286 * 11287 * kstat_waitq_enter() 11288 * kstat_waitq_exit() 11289 * kstat_runq_enter() 11290 * kstat_runq_exit() 11291 * 11292 * kstat_waitq_to_runq() (see below) 11293 * kstat_runq_back_to_waitq() (see below) 11294 * 11295 * Since kstat_waitq_exit() is typically followed immediately 11296 * by kstat_runq_enter(), there is a single kstat_waitq_to_runq() 11297 * function which performs both operations. This is a performance 11298 * win since only one timestamp is required. 11299 * 11300 * In some instances, it may be necessary to move a request from 11301 * the run queue back to the wait queue, e.g. for write throttling. 11302 * For these situations, call kstat_runq_back_to_waitq(). 11303 * 11304 * These fields should never be updated by any other means. 11305 */ 11306 11307 hrtime_t wtime; /* cumulative wait (pre-service) time */ 11308 hrtime_t wlentime; /* cumulative wait length*time product */ 11309 hrtime_t wlastupdate; /* last time wait queue changed */ 11310 hrtime_t rtime; /* cumulative run (service) time */ 11311 hrtime_t rlentime; /* cumulative run length*time product */ 11312 hrtime_t rlastupdate; /* last time run queue changed */ 11313 11314 uint_t wcnt; /* count of elements in wait state */ 11315 uint_t rcnt; /* count of elements in run state */ 11316 11317 } kstat_io_t; 11318 11319 11320 11321 /* 11322 * Event timer statistics - cumulative elapsed time and number of events. 11323 * 11324 * Updates to these fields are performed implicitly by calls to 11325 * kstat_timer_start() and kstat_timer_stop(). 11326 */ 11327 11328 typedef struct kstat_timer { 11329 char name[31]; /* event name */ 11330 uchar_t resv; /* reserved */ 11331 u_longlong_t num_events; /* number of events */ 11332 hrtime_t elapsed_time; /* cumulative elapsed time */ 11333 hrtime_t min_time; /* shortest event duration */ 11334 hrtime_t max_time; /* longest event duration */ 11335 hrtime_t start_time; /* previous event start time */ 11336 hrtime_t stop_time; /* previous event stop time */ 11337 } kstat_timer_t; 11338 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netstack.h" 2 11339 11340 11341 11342 11343 11344 /* 11345 * This allows various pieces in and around IP to have a separate instance 11346 * for each instance of IP. This is used to support zones that have an 11347 * exclusive stack. 11348 * Pieces of software far removed from IP (e.g., kernel software 11349 * sitting on top of TCP or UDP) probably should not use the netstack 11350 * support; if such software wants to support separate zones it 11351 * can do that using the zones framework (zone_key_create() etc) 11352 * whether there is a shared IP stack or and exclusive IP stack underneath. 11353 */ 11354 11355 /* 11356 * Each netstack has an identifier. We reuse the zoneid allocation for 11357 * this but have a separate typedef. Thus the shared stack (used by 11358 * the global zone and other shared stack zones) have a zero ID, and 11359 * the exclusive stacks have a netstackid that is the same as their zoneid. 11360 */ 11361 typedef id_t netstackid_t; 11362 11363 11364 11365 /* 11366 * One for each module which uses netstack support. 11367 * Used in netstack_register(). 11368 * 11369 * The order of these is important for some modules both for 11370 * the creation (which done in ascending order) and destruction (which is 11371 * done in in decending order). 11372 */ 11373 # 86 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netstack.h" 11374 /* 11375 * State maintained for each module which tracks the state of 11376 * the create, shutdown and destroy callbacks. 11377 * 11378 * Keeps track of pending actions to avoid holding locks when 11379 * calling into the create/shutdown/destroy functions in the module. 11380 */ 11381 # 122 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netstack.h" 11382 /* User-level compile like IP Filter needs a netstack_t. Dummy */ 11383 typedef uint_t nm_state_t; 11384 11385 11386 /* 11387 * One for every netstack in the system. 11388 * We use a union so that the compilar and lint can provide type checking - 11389 * in principle we could have 11390 * #define netstack_arp netstack_modules[NS_ARP] 11391 * etc, but that would imply void * types hence no type checking by the 11392 * compiler. 11393 * 11394 * All the fields in netstack_t except netstack_next are protected by 11395 * netstack_lock. netstack_next is protected by netstack_g_lock. 11396 */ 11397 struct netstack { 11398 union { 11399 void *nu_modules[(18 +1)]; 11400 struct { 11401 struct dls_stack *nu_dls; 11402 struct iptun_stack *nu_iptun; 11403 struct str_stack *nu_str; 11404 struct hook_stack *nu_hook; 11405 struct neti_stack *nu_neti; 11406 struct arp_stack *nu_arp; 11407 struct ip_stack *nu_ip; 11408 struct icmp_stack *nu_icmp; 11409 struct udp_stack *nu_udp; 11410 struct tcp_stack *nu_tcp; 11411 struct sctp_stack *nu_sctp; 11412 struct rts_stack *nu_rts; 11413 struct ipsec_stack *nu_ipsec; 11414 struct keysock_stack *nu_keysock; 11415 struct spd_stack *nu_spdsock; 11416 struct ipsecah_stack *nu_ipsecah; 11417 struct ipsecesp_stack *nu_ipsecesp; 11418 struct ipnet_stack *nu_ipnet; 11419 struct ilb_stack *nu_ilb; 11420 } nu_s; 11421 } netstack_u; 11422 # 183 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netstack.h" 11423 nm_state_t netstack_m_state[(18 +1)]; /* module state */ 11424 11425 kmutex_t netstack_lock; 11426 struct netstack *netstack_next; 11427 netstackid_t netstack_stackid; 11428 int netstack_numzones; /* Number of zones using this */ 11429 int netstack_refcnt; /* Number of hold-rele */ 11430 int netstack_flags; /* See below */ 11431 11432 11433 11434 11435 11436 }; 11437 typedef struct netstack netstack_t; 11438 11439 /* netstack_flags values */ 11440 # 209 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netstack.h" 11441 /* 11442 * One for each of the NS_* values. 11443 */ 11444 struct netstack_registry { 11445 int nr_flags; /* 0 if nothing registered */ 11446 void *(*nr_create)(netstackid_t, netstack_t *); 11447 void (*nr_shutdown)(netstackid_t, void *); 11448 void (*nr_destroy)(netstackid_t, void *); 11449 }; 11450 11451 /* nr_flags values */ 11452 11453 11454 11455 /* 11456 * To support kstat_create_netstack() using kstat_add_zone we need 11457 * to track both 11458 * - all zoneids that use the global/shared stack 11459 * - all kstats that have been added for the shared stack 11460 */ 11461 11462 extern void netstack_init(void); 11463 extern void netstack_hold(netstack_t *); 11464 extern void netstack_rele(netstack_t *); 11465 extern netstack_t *netstack_find_by_cred(const cred_t *); 11466 extern netstack_t *netstack_find_by_stackid(netstackid_t); 11467 extern netstack_t *netstack_find_by_zoneid(zoneid_t); 11468 11469 extern zoneid_t netstackid_to_zoneid(netstackid_t); 11470 extern zoneid_t netstack_get_zoneid(netstack_t *); 11471 extern netstackid_t zoneid_to_netstackid(zoneid_t); 11472 11473 extern netstack_t *netstack_get_current(void); 11474 11475 /* 11476 * Register interest in changes to the set of netstacks. 11477 * The createfn and destroyfn are required, but the shutdownfn can be 11478 * NULL. 11479 * Note that due to the current zsd implementation, when the create 11480 * function is called the zone isn't fully present, thus functions 11481 * like zone_find_by_* will fail, hence the create function can not 11482 * use many zones kernel functions including zcmn_err(). 11483 */ 11484 extern void netstack_register(int, 11485 void *(*)(netstackid_t, netstack_t *), 11486 void (*)(netstackid_t, void *), 11487 void (*)(netstackid_t, void *)); 11488 extern void netstack_unregister(int); 11489 extern kstat_t *kstat_create_netstack(char *, int, char *, char *, uchar_t, 11490 uint_t, uchar_t, netstackid_t); 11491 extern void kstat_delete_netstack(kstat_t *, netstackid_t); 11492 11493 /* 11494 * Simple support for walking all the netstacks. 11495 * The caller of netstack_next() needs to call netstack_rele() when 11496 * done with a netstack. 11497 */ 11498 typedef int netstack_handle_t; 11499 11500 extern void netstack_next_init(netstack_handle_t *); 11501 extern void netstack_next_fini(netstack_handle_t *); 11502 extern netstack_t *netstack_next(netstack_handle_t *); 11503 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 11504 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uadmin.h" 1 11505 /* 11506 * CDDL HEADER START 11507 * 11508 * The contents of this file are subject to the terms of the 11509 * Common Development and Distribution License (the "License"). 11510 * You may not use this file except in compliance with the License. 11511 * 11512 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11513 * or http://www.opensolaris.org/os/licensing. 11514 * See the License for the specific language governing permissions 11515 * and limitations under the License. 11516 * 11517 * When distributing Covered Code, include this CDDL HEADER in each 11518 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11519 * If applicable, add the following below this CDDL HEADER, with the 11520 * fields enclosed by brackets "[]" replaced with your own identifying 11521 * information: Portions Copyright [yyyy] [name of copyright owner] 11522 * 11523 * CDDL HEADER END 11524 */ 11525 /* 11526 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 11527 * 11528 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 11529 * Use is subject to license terms. 11530 */ 11531 11532 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 11533 /* All Rights Reserved */ 11534 11535 11536 11537 11538 11539 11540 11541 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 11542 /* 11543 * CDDL HEADER START 11544 * 11545 * The contents of this file are subject to the terms of the 11546 * Common Development and Distribution License (the "License"). 11547 * You may not use this file except in compliance with the License. 11548 * 11549 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11550 * or http://www.opensolaris.org/os/licensing. 11551 * See the License for the specific language governing permissions 11552 * and limitations under the License. 11553 * 11554 * When distributing Covered Code, include this CDDL HEADER in each 11555 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11556 * If applicable, add the following below this CDDL HEADER, with the 11557 * fields enclosed by brackets "[]" replaced with your own identifying 11558 * information: Portions Copyright [yyyy] [name of copyright owner] 11559 * 11560 * CDDL HEADER END 11561 */ 11562 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 11563 /* All Rights Reserved */ 11564 11565 11566 /* 11567 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 11568 * Use is subject to license terms. 11569 * 11570 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 11571 * Copyright 2016 Joyent, Inc. 11572 */ 11573 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uadmin.h" 2 11574 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/cred.h" 1 11575 /* 11576 * CDDL HEADER START 11577 * 11578 * The contents of this file are subject to the terms of the 11579 * Common Development and Distribution License (the "License"). 11580 * You may not use this file except in compliance with the License. 11581 * 11582 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11583 * or http://www.opensolaris.org/os/licensing. 11584 * See the License for the specific language governing permissions 11585 * and limitations under the License. 11586 * 11587 * When distributing Covered Code, include this CDDL HEADER in each 11588 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11589 * If applicable, add the following below this CDDL HEADER, with the 11590 * fields enclosed by brackets "[]" replaced with your own identifying 11591 * information: Portions Copyright [yyyy] [name of copyright owner] 11592 * 11593 * CDDL HEADER END 11594 */ 11595 /* 11596 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 11597 * Use is subject to license terms. 11598 */ 11599 11600 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 11601 /* All Rights Reserved */ 11602 11603 /* 11604 * Portions of this source code were derived from Berkeley 4.3 BSD 11605 * under license from the Regents of the University of California. 11606 */ 11607 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uadmin.h" 2 11608 # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uadmin.h" 11609 /* 17-21 reserved for obsolete interface */ 11610 # 67 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uadmin.h" 11611 /* 11612 * Functions reserved for A_FREEZE (may not be available on all platforms) 11613 * Note: AD_COMPRESS, AD_CHECK and AD_FORCE are now obsolete 11614 * The first two are succeeded by AD_SUSPEND_TO_DISK and 11615 * AD_CHECK_SUSPEND_TO_DISK respectively. 11616 * AD_FORCE should not be used by any new application 11617 * 11618 * We maintain compatibility with the earlier interfaces: 11619 * AD_COMPRESS and AD_CHECK, by preserving those values 11620 * in the corresponding new interfaces 11621 */ 11622 # 87 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uadmin.h" 11623 /* 11624 * NOTE: the following defines comprise an Unstable interface. Their semantics 11625 * may change or they may be removed completely in a later release 11626 */ 11627 11628 11629 11630 11631 11632 11633 11634 /* 11635 * Functions of A_CONFIG. Unstable interface. 11636 */ 11637 11638 11639 /* 11640 * When 'mdep' (the second argument to uadmin(2)) is initialized for A_REBOOT, 11641 * A_SHUTDOWN or A_DUMP, it represents the boot arguments string of at most 11642 * 256 characters. 11643 */ 11644 11645 11646 11647 /* 11648 * FMRI for boot-config service. 11649 */ 11650 11651 11652 11653 /* 11654 * Property group that contains all Fast Reboot configuration properties. 11655 */ 11656 11657 11658 /* 11659 * Property group that contains all Fast Reboot blacklisting information. 11660 */ 11661 11662 11663 /* 11664 * Non-persistent property group which contains all the properties that 11665 * will override settings in the BOOT_CONFIG_PG_PARAMS property group. 11666 */ 11667 11668 11669 11670 11671 /* 11672 * Flag representations of fastboot configuration. 11673 */ 11674 # 165 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uadmin.h" 11675 extern int uadmin(int, int, uintptr_t); 11676 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 11677 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ksynch.h" 1 11678 /* 11679 * CDDL HEADER START 11680 * 11681 * The contents of this file are subject to the terms of the 11682 * Common Development and Distribution License, Version 1.0 only 11683 * (the "License"). You may not use this file except in compliance 11684 * with the License. 11685 * 11686 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11687 * or http://www.opensolaris.org/os/licensing. 11688 * See the License for the specific language governing permissions 11689 * and limitations under the License. 11690 * 11691 * When distributing Covered Code, include this CDDL HEADER in each 11692 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11693 * If applicable, add the following below this CDDL HEADER, with the 11694 * fields enclosed by brackets "[]" replaced with your own identifying 11695 * information: Portions Copyright [yyyy] [name of copyright owner] 11696 * 11697 * CDDL HEADER END 11698 */ 11699 /* 11700 * Copyright (c) 1991, Sun Microsystems, Inc. 11701 */ 11702 11703 /* 11704 * DKI/DDI MT synchronization primitives. 11705 */ 11706 11707 11708 11709 11710 #pragma ident "%Z%%M% %I% %E% SMI" 11711 11712 /* 11713 * The presence of this file is specified by the DKI/DDI. 11714 */ 11715 11716 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 1 11717 /* 11718 * CDDL HEADER START 11719 * 11720 * The contents of this file are subject to the terms of the 11721 * Common Development and Distribution License, Version 1.0 only 11722 * (the "License"). You may not use this file except in compliance 11723 * with the License. 11724 * 11725 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11726 * or http://www.opensolaris.org/os/licensing. 11727 * See the License for the specific language governing permissions 11728 * and limitations under the License. 11729 * 11730 * When distributing Covered Code, include this CDDL HEADER in each 11731 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11732 * If applicable, add the following below this CDDL HEADER, with the 11733 * fields enclosed by brackets "[]" replaced with your own identifying 11734 * information: Portions Copyright [yyyy] [name of copyright owner] 11735 * 11736 * CDDL HEADER END 11737 */ 11738 /* 11739 * Copyright (c) 1991-1998 by Sun Microsystems, Inc. 11740 * All rights reserved. 11741 */ 11742 11743 /* 11744 * t_lock.h: Prototypes for disp_locks, plus include files 11745 * that describe the interfaces to kernel synch. 11746 * objects. 11747 */ 11748 11749 11750 11751 11752 #pragma ident "%Z%%M% %I% %E% SMI" 11753 11754 11755 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" 1 11756 /* 11757 * CDDL HEADER START 11758 * 11759 * The contents of this file are subject to the terms of the 11760 * Common Development and Distribution License (the "License"). 11761 * You may not use this file except in compliance with the License. 11762 * 11763 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11764 * or http://www.opensolaris.org/os/licensing. 11765 * See the License for the specific language governing permissions 11766 * and limitations under the License. 11767 * 11768 * When distributing Covered Code, include this CDDL HEADER in each 11769 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11770 * If applicable, add the following below this CDDL HEADER, with the 11771 * fields enclosed by brackets "[]" replaced with your own identifying 11772 * information: Portions Copyright [yyyy] [name of copyright owner] 11773 * 11774 * CDDL HEADER END 11775 */ 11776 /* 11777 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 11778 * Use is subject to license terms. 11779 * Copyright 2016 Joyent, Inc. 11780 */ 11781 11782 11783 11784 11785 #pragma ident "%Z%%M% %I% %E% SMI" 11786 11787 11788 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 11789 /* 11790 * CDDL HEADER START 11791 * 11792 * The contents of this file are subject to the terms of the 11793 * Common Development and Distribution License (the "License"). 11794 * You may not use this file except in compliance with the License. 11795 * 11796 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11797 * or http://www.opensolaris.org/os/licensing. 11798 * See the License for the specific language governing permissions 11799 * and limitations under the License. 11800 * 11801 * When distributing Covered Code, include this CDDL HEADER in each 11802 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11803 * If applicable, add the following below this CDDL HEADER, with the 11804 * fields enclosed by brackets "[]" replaced with your own identifying 11805 * information: Portions Copyright [yyyy] [name of copyright owner] 11806 * 11807 * CDDL HEADER END 11808 */ 11809 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 11810 /* All Rights Reserved */ 11811 11812 11813 /* 11814 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 11815 * Use is subject to license terms. 11816 * 11817 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 11818 * Copyright 2016 Joyent, Inc. 11819 */ 11820 # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" 2 11821 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 11822 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 11823 /* All Rights Reserved */ 11824 11825 11826 /* 11827 * Copyright (c) 1982, 1986, 1993 Regents of the University of California. 11828 * All rights reserved. The Berkeley software License Agreement 11829 * specifies the terms and conditions for redistribution. 11830 */ 11831 11832 /* 11833 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 11834 * 11835 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 11836 * Use is subject to license terms. 11837 * 11838 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 11839 */ 11840 11841 /* 11842 * Copyright (c) 2013, 2015 by Delphix. All rights reserved. 11843 */ 11844 # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" 2 11845 # 61 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" 11846 typedef lock_t disp_lock_t; /* dispatcher lock type */ 11847 11848 /* 11849 * SPIN_LOCK() macro indicates whether lock is implemented as a spin lock or 11850 * an adaptive mutex, depending on what interrupt levels use it. 11851 */ 11852 11853 11854 /* 11855 * Macro to control loops which spin on a lock and then check state 11856 * periodically. Its passed an integer, and returns a boolean value 11857 * that if true indicates its a good time to get the scheduler lock and 11858 * check the state of the current owner of the lock. 11859 */ 11860 11861 11862 /* 11863 * Externs for CLOCK_LOCK and clock resolution 11864 */ 11865 extern volatile uint32_t hres_lock; 11866 extern hrtime_t hrtime_base; 11867 extern int clock_res; 11868 11869 11870 11871 /* 11872 * The definitions of the symbolic interrupt levels: 11873 * 11874 * CLOCK_LEVEL => The level at which one must be to block the clock. 11875 * 11876 * LOCK_LEVEL => The highest level at which one may block (and thus the 11877 * highest level at which one may acquire adaptive locks) 11878 * Also the highest level at which one may be preempted. 11879 * 11880 * DISP_LEVEL => The level at which one must be to perform dispatcher 11881 * operations. 11882 * 11883 * The constraints on the platform: 11884 * 11885 * - CLOCK_LEVEL must be less than or equal to LOCK_LEVEL 11886 * - LOCK_LEVEL must be less than DISP_LEVEL 11887 * - DISP_LEVEL should be as close to LOCK_LEVEL as possible 11888 * 11889 * Note that LOCK_LEVEL and CLOCK_LEVEL have historically always been equal; 11890 * changing this relationship is probably possible but not advised. 11891 * 11892 */ 11893 # 117 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/machlock.h" 11894 /* 11895 * The following mask is for the cpu_intr_actv bits corresponding to 11896 * high-level PILs. It should equal: 11897 * ((((1 << PIL_MAX + 1) - 1) >> LOCK_LEVEL + 1) << LOCK_LEVEL + 1) 11898 */ 11899 11900 11901 /* 11902 * The semaphore code depends on being able to represent a lock plus 11903 * owner in a single 32-bit word. (Mutexes used to have a similar 11904 * dependency, but no longer.) Thus the owner must contain at most 11905 * 24 significant bits. At present only threads and semaphores 11906 * must be aware of this vile constraint. Different ISAs may handle this 11907 * differently depending on their capabilities (e.g. compare-and-swap) 11908 * and limitations (e.g. constraints on alignment and/or KERNELBASE). 11909 */ 11910 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 11911 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 1 11912 /* 11913 * CDDL HEADER START 11914 * 11915 * The contents of this file are subject to the terms of the 11916 * Common Development and Distribution License (the "License"). 11917 * You may not use this file except in compliance with the License. 11918 * 11919 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11920 * or http://www.opensolaris.org/os/licensing. 11921 * See the License for the specific language governing permissions 11922 * and limitations under the License. 11923 * 11924 * When distributing Covered Code, include this CDDL HEADER in each 11925 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11926 * If applicable, add the following below this CDDL HEADER, with the 11927 * fields enclosed by brackets "[]" replaced with your own identifying 11928 * information: Portions Copyright [yyyy] [name of copyright owner] 11929 * 11930 * CDDL HEADER END 11931 */ 11932 11933 /* 11934 * Copyright 2014 Nexenta Systems, Inc. All rights reserved. 11935 * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. 11936 */ 11937 11938 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 11939 /* All Rights Reserved */ 11940 11941 /* 11942 * University Copyright- Copyright (c) 1982, 1986, 1988 11943 * The Regents of the University of California 11944 * All Rights Reserved 11945 * 11946 * University Acknowledgment- Portions of this document are derived from 11947 * software developed by the University of California, Berkeley, and its 11948 * contributors. 11949 */ 11950 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 11951 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mutex.h" 1 11952 /* 11953 * CDDL HEADER START 11954 * 11955 * The contents of this file are subject to the terms of the 11956 * Common Development and Distribution License (the "License"). 11957 * You may not use this file except in compliance with the License. 11958 * 11959 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11960 * or http://www.opensolaris.org/os/licensing. 11961 * See the License for the specific language governing permissions 11962 * and limitations under the License. 11963 * 11964 * When distributing Covered Code, include this CDDL HEADER in each 11965 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11966 * If applicable, add the following below this CDDL HEADER, with the 11967 * fields enclosed by brackets "[]" replaced with your own identifying 11968 * information: Portions Copyright [yyyy] [name of copyright owner] 11969 * 11970 * CDDL HEADER END 11971 */ 11972 /* 11973 * Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved. 11974 */ 11975 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 11976 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rwlock.h" 1 11977 /* 11978 * CDDL HEADER START 11979 * 11980 * The contents of this file are subject to the terms of the 11981 * Common Development and Distribution License (the "License"). 11982 * You may not use this file except in compliance with the License. 11983 * 11984 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 11985 * or http://www.opensolaris.org/os/licensing. 11986 * See the License for the specific language governing permissions 11987 * and limitations under the License. 11988 * 11989 * When distributing Covered Code, include this CDDL HEADER in each 11990 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 11991 * If applicable, add the following below this CDDL HEADER, with the 11992 * fields enclosed by brackets "[]" replaced with your own identifying 11993 * information: Portions Copyright [yyyy] [name of copyright owner] 11994 * 11995 * CDDL HEADER END 11996 */ 11997 /* 11998 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 11999 * Use is subject to license terms. 12000 */ 12001 12002 /* 12003 * Copyright (c) 2013, Joyent, Inc. All rights reserved. 12004 */ 12005 12006 12007 12008 12009 /* 12010 * Public interface to readers/writer locks. See rwlock(9F) for details. 12011 */ 12012 12013 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 12014 /* 12015 * CDDL HEADER START 12016 * 12017 * The contents of this file are subject to the terms of the 12018 * Common Development and Distribution License (the "License"). 12019 * You may not use this file except in compliance with the License. 12020 * 12021 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12022 * or http://www.opensolaris.org/os/licensing. 12023 * See the License for the specific language governing permissions 12024 * and limitations under the License. 12025 * 12026 * When distributing Covered Code, include this CDDL HEADER in each 12027 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12028 * If applicable, add the following below this CDDL HEADER, with the 12029 * fields enclosed by brackets "[]" replaced with your own identifying 12030 * information: Portions Copyright [yyyy] [name of copyright owner] 12031 * 12032 * CDDL HEADER END 12033 */ 12034 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 12035 /* All Rights Reserved */ 12036 12037 12038 /* 12039 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12040 * Use is subject to license terms. 12041 * 12042 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 12043 * Copyright 2016 Joyent, Inc. 12044 */ 12045 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rwlock.h" 2 12046 12047 12048 12049 12050 12051 12052 12053 typedef enum { 12054 RW_DRIVER = 2, /* driver (DDI) rwlock */ 12055 RW_DEFAULT = 4 /* kernel default rwlock */ 12056 } krw_type_t; 12057 12058 typedef enum { 12059 RW_WRITER, 12060 RW_READER, 12061 RW_READER_STARVEWRITER 12062 } krw_t; 12063 12064 typedef struct _krwlock { 12065 void *_opaque[1]; 12066 } krwlock_t; 12067 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 12068 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/semaphore.h" 1 12069 /* 12070 * CDDL HEADER START 12071 * 12072 * The contents of this file are subject to the terms of the 12073 * Common Development and Distribution License, Version 1.0 only 12074 * (the "License"). You may not use this file except in compliance 12075 * with the License. 12076 * 12077 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12078 * or http://www.opensolaris.org/os/licensing. 12079 * See the License for the specific language governing permissions 12080 * and limitations under the License. 12081 * 12082 * When distributing Covered Code, include this CDDL HEADER in each 12083 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12084 * If applicable, add the following below this CDDL HEADER, with the 12085 * fields enclosed by brackets "[]" replaced with your own identifying 12086 * information: Portions Copyright [yyyy] [name of copyright owner] 12087 * 12088 * CDDL HEADER END 12089 */ 12090 /* 12091 * Copyright (c) 1993-1998 by Sun Microsystems, Inc. 12092 * All rights reserved. 12093 */ 12094 12095 12096 12097 12098 #pragma ident "%Z%%M% %I% %E% SMI" 12099 12100 /* 12101 * Public interface to semaphores. See semaphore(9F) for details. 12102 */ 12103 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/semaphore.h" 12104 typedef enum { 12105 SEMA_DEFAULT, 12106 SEMA_DRIVER 12107 } ksema_type_t; 12108 12109 typedef struct _ksema { 12110 void * _opaque[2]; /* 2 words on 4 byte alignment */ 12111 } ksema_t; 12112 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 12113 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/condvar.h" 1 12114 /* 12115 * CDDL HEADER START 12116 * 12117 * The contents of this file are subject to the terms of the 12118 * Common Development and Distribution License (the "License"). 12119 * You may not use this file except in compliance with the License. 12120 * 12121 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12122 * or http://www.opensolaris.org/os/licensing. 12123 * See the License for the specific language governing permissions 12124 * and limitations under the License. 12125 * 12126 * When distributing Covered Code, include this CDDL HEADER in each 12127 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12128 * If applicable, add the following below this CDDL HEADER, with the 12129 * fields enclosed by brackets "[]" replaced with your own identifying 12130 * information: Portions Copyright [yyyy] [name of copyright owner] 12131 * 12132 * CDDL HEADER END 12133 */ 12134 /* 12135 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12136 * Use is subject to license terms. 12137 */ 12138 12139 /* 12140 * Copyright (c) 2012 by Delphix. All rights reserved. 12141 */ 12142 12143 /* 12144 * condvar.h: 12145 * 12146 * definitions for thread synchronization primitives: condition variables 12147 * This is the public part of the interface to condition variables. The 12148 * private (implementation-specific) part is in <arch>/sys/condvar_impl.h. 12149 */ 12150 12151 12152 12153 12154 12155 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 12156 /* 12157 * CDDL HEADER START 12158 * 12159 * The contents of this file are subject to the terms of the 12160 * Common Development and Distribution License (the "License"). 12161 * You may not use this file except in compliance with the License. 12162 * 12163 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12164 * or http://www.opensolaris.org/os/licensing. 12165 * See the License for the specific language governing permissions 12166 * and limitations under the License. 12167 * 12168 * When distributing Covered Code, include this CDDL HEADER in each 12169 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12170 * If applicable, add the following below this CDDL HEADER, with the 12171 * fields enclosed by brackets "[]" replaced with your own identifying 12172 * information: Portions Copyright [yyyy] [name of copyright owner] 12173 * 12174 * CDDL HEADER END 12175 */ 12176 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 12177 /* All Rights Reserved */ 12178 12179 12180 /* 12181 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12182 * Use is subject to license terms. 12183 * 12184 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 12185 * Copyright 2016 Joyent, Inc. 12186 */ 12187 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/condvar.h" 2 12188 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 12189 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 12190 /* All Rights Reserved */ 12191 12192 12193 /* 12194 * Copyright (c) 1982, 1986, 1993 Regents of the University of California. 12195 * All rights reserved. The Berkeley software License Agreement 12196 * specifies the terms and conditions for redistribution. 12197 */ 12198 12199 /* 12200 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 12201 * 12202 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12203 * Use is subject to license terms. 12204 * 12205 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 12206 */ 12207 12208 /* 12209 * Copyright (c) 2013, 2015 by Delphix. All rights reserved. 12210 */ 12211 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/condvar.h" 2 12212 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/condvar.h" 12213 /* 12214 * Condtion variables. 12215 */ 12216 12217 typedef struct _kcondvar { 12218 ushort_t _opaque; 12219 } kcondvar_t; 12220 12221 typedef enum { 12222 CV_DEFAULT, 12223 CV_DRIVER 12224 } kcv_type_t; 12225 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 2 12226 # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 12227 /* 12228 * Mutual exclusion locks described in common/sys/mutex.h. 12229 * 12230 * Semaphores described in common/sys/semaphore.h. 12231 * 12232 * Readers/Writer locks described in common/sys/rwlock.h. 12233 * 12234 * Condition variables described in common/sys/condvar.h 12235 */ 12236 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ksynch.h" 2 12237 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 12238 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 1 12239 /* 12240 * CDDL HEADER START 12241 * 12242 * The contents of this file are subject to the terms of the 12243 * Common Development and Distribution License (the "License"). 12244 * You may not use this file except in compliance with the License. 12245 * 12246 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12247 * or http://www.opensolaris.org/os/licensing. 12248 * See the License for the specific language governing permissions 12249 * and limitations under the License. 12250 * 12251 * When distributing Covered Code, include this CDDL HEADER in each 12252 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12253 * If applicable, add the following below this CDDL HEADER, with the 12254 * fields enclosed by brackets "[]" replaced with your own identifying 12255 * information: Portions Copyright [yyyy] [name of copyright owner] 12256 * 12257 * CDDL HEADER END 12258 */ 12259 /* 12260 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12261 * Use is subject to license terms. 12262 */ 12263 12264 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 12265 /* All Rights Reserved */ 12266 12267 /* 12268 * Portions of this source code were derived from Berkeley 4.3 BSD 12269 * under license from the Regents of the University of California. 12270 */ 12271 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 12272 typedef uint16_t sa_family_t; 12273 12274 12275 /* 12276 * Structure used by kernel to store most 12277 * addresses. 12278 */ 12279 struct sockaddr { 12280 sa_family_t sa_family; /* address family */ 12281 char sa_data[14]; /* up to 14 bytes of direct address */ 12282 }; 12283 12284 12285 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/un.h" 1 12286 /* 12287 * CDDL HEADER START 12288 * 12289 * The contents of this file are subject to the terms of the 12290 * Common Development and Distribution License (the "License"). 12291 * You may not use this file except in compliance with the License. 12292 * 12293 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12294 * or http://www.opensolaris.org/os/licensing. 12295 * See the License for the specific language governing permissions 12296 * and limitations under the License. 12297 * 12298 * When distributing Covered Code, include this CDDL HEADER in each 12299 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12300 * If applicable, add the following below this CDDL HEADER, with the 12301 * fields enclosed by brackets "[]" replaced with your own identifying 12302 * information: Portions Copyright [yyyy] [name of copyright owner] 12303 * 12304 * CDDL HEADER END 12305 */ 12306 /* 12307 * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved. 12308 */ 12309 12310 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 12311 /* All Rights Reserved */ 12312 12313 /* 12314 * University Copyright- Copyright (c) 1982, 1986, 1988 12315 * The Regents of the University of California 12316 * All Rights Reserved 12317 * 12318 * University Acknowledgment- Portions of this document are derived from 12319 * software developed by the University of California, Berkeley, and its 12320 * contributors. 12321 */ 12322 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/un.h" 12323 /* 12324 * Definitions for UNIX IPC domain. 12325 */ 12326 struct sockaddr_un { 12327 sa_family_t sun_family; /* AF_UNIX */ 12328 char sun_path[108]; /* path name (gag) */ 12329 }; 12330 12331 12332 12333 /* 12334 * NOTE: If we ever go to BSD-style sun_len + sun_family, this macro needs to 12335 * change. 12336 * 12337 * Also, include a strlen() prototype, and we have to protect it w.r.t. 12338 * UNIX{98,03}. And because there's strlen, we need size_t as well. 12339 */ 12340 # 76 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/un.h" 12341 extern size_t strlen(const char *); 12342 # 57 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 2 12343 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if_dl.h" 1 12344 /* 12345 * Copyright 1993-2003 Sun Microsystems, Inc. All rights reserved. 12346 * Use is subject to license terms. 12347 */ 12348 /* 12349 * Copyright (c) 1990, 1993 12350 * The Regents of the University of California. All rights reserved. 12351 * 12352 * Redistribution and use in source and binary forms, with or without 12353 * modification, are permitted provided that the following conditions 12354 * are met: 12355 * 1. Redistributions of source code must retain the above copyright 12356 * notice, this list of conditions and the following disclaimer. 12357 * 2. Redistributions in binary form must reproduce the above copyright 12358 * notice, this list of conditions and the following disclaimer in the 12359 * documentation and/or other materials provided with the distribution. 12360 * 3. All advertising materials mentioning features or use of this software 12361 * must display the following acknowledgement: 12362 * This product includes software developed by the University of 12363 * California, Berkeley and its contributors. 12364 * 4. Neither the name of the University nor the names of its contributors 12365 * may be used to endorse or promote products derived from this software 12366 * without specific prior written permission. 12367 * 12368 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 12369 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 12370 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 12371 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 12372 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 12373 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 12374 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 12375 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 12376 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 12377 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 12378 * SUCH DAMAGE. 12379 */ 12380 12381 12382 12383 12384 #pragma ident "%Z%%M% %I% %E% SMI" 12385 /* from UCB 8.1 (Berkeley) 6/10/93 */ 12386 12387 12388 12389 12390 12391 /* 12392 * A Link-Level Sockaddr may specify the interface in one of two 12393 * ways: either by means of a system-provided index number (computed 12394 * anew and possibly differently on every reboot), or by a human-readable 12395 * string such as "il0" (for managerial convenience). 12396 * 12397 * Census taking actions, such as something akin to SIOCGCONF would return 12398 * both the index and the human name. 12399 * 12400 * High volume transactions (such as giving a link-level ``from'' address 12401 * in a recvfrom or recvmsg call) may be likely only to provide the indexed 12402 * form, (which requires fewer copy operations and less space). 12403 * 12404 * The form and interpretation of the link-level address is purely a matter 12405 * of convention between the device driver and its consumers; however, it is 12406 * expected that all drivers for an interface of a given if_type will agree. 12407 */ 12408 12409 /* 12410 * Structure of a Link-Level sockaddr: 12411 */ 12412 struct sockaddr_dl { 12413 ushort_t sdl_family; /* AF_LINK */ 12414 ushort_t sdl_index; /* if != 0, system given index for interface */ 12415 uchar_t sdl_type; /* interface type */ 12416 uchar_t sdl_nlen; /* interface name length, no trailing 0 reqd. */ 12417 uchar_t sdl_alen; /* link level address length */ 12418 uchar_t sdl_slen; /* link layer selector length */ 12419 char sdl_data[244]; /* contains both if name and ll address */ 12420 }; 12421 12422 12423 12424 12425 extern char *_link_ntoa(const unsigned char *, char *, int, int); 12426 extern unsigned char *_link_aton(const char *, int *); 12427 # 58 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 2 12428 12429 12430 12431 /* 12432 * sockaddr_storage: 12433 * Common superset of at least AF_INET, AF_INET6 and AF_LINK sockaddr 12434 * structures. Has sufficient size and alignment for those sockaddrs. 12435 */ 12436 12437 /* 12438 * Desired maximum size, alignment size and related types. 12439 */ 12440 12441 12442 /* 12443 * To represent desired sockaddr max alignment for platform, a 12444 * type is chosen which may depend on implementation platform architecture. 12445 * Type chosen based on alignment size restrictions from <sys/isa_defs.h>. 12446 * We desire to force up to (but no more than) 64-bit (8 byte) alignment, 12447 * on platforms where it is possible to do so. (e.g not possible on ia32). 12448 * For all currently supported platforms by our implementation 12449 * in <sys/isa_defs.h>, (i.e. sparc, sparcv9, ia32, ia64) 12450 * type "double" is suitable for that intent. 12451 * 12452 * Note: Type "double" is chosen over the more obvious integer type int64_t. 12453 * int64_t is not a valid type for strict ANSI/ISO C compilation on ILP32. 12454 */ 12455 typedef double sockaddr_maxalign_t; 12456 12457 12458 12459 /* 12460 * Definitions used for sockaddr_storage structure paddings design. 12461 */ 12462 12463 12464 12465 12466 struct sockaddr_storage { 12467 sa_family_t ss_family; /* Address family */ 12468 /* Following fields are implementation specific */ 12469 char _ss_pad1[((sizeof (sockaddr_maxalign_t)) - sizeof (sa_family_t))]; 12470 sockaddr_maxalign_t _ss_align; 12471 char _ss_pad2[(256 - (sizeof (sa_family_t)+ ((sizeof (sockaddr_maxalign_t)) - sizeof (sa_family_t)) + (sizeof (sockaddr_maxalign_t))))]; 12472 }; 12473 12474 12475 /* 12476 * To be compatible with the Linux interfaces used, this structure is 12477 * placed in socket_impl.h so that an include for <sys/socket.h> will 12478 * pickup this structure. This structure is for use with PF_PACKET 12479 * sockets. 12480 */ 12481 struct sockaddr_ll { 12482 uint16_t sll_family; 12483 uint16_t sll_protocol; 12484 int32_t sll_ifindex; 12485 uint16_t sll_hatype; 12486 uint8_t sll_pkttype; 12487 uint8_t sll_halen; 12488 uint8_t sll_addr[8]; 12489 }; 12490 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 12491 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 12492 /* 12493 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12494 * Use is subject to license terms. 12495 * 12496 * Copyright 2011 Nexenta Systems, Inc. All rights reserved. 12497 */ 12498 /* 12499 * Copyright (c) 1982, 1986 Regents of the University of California. 12500 * All rights reserved. 12501 * 12502 * Redistribution and use in source and binary forms are permitted 12503 * provided that this notice is preserved and that due credit is given 12504 * to the University of California at Berkeley. The name of the University 12505 * may not be used to endorse or promote products derived from this 12506 * software without specific prior written permission. This software 12507 * is provided ``as is'' without express or implied warranty. 12508 */ 12509 12510 /* 12511 * Constants and structures defined by the internet system, 12512 * according to following documents 12513 * 12514 * Internet ASSIGNED NUMBERS (RFC1700) and its successors: 12515 * http://www.iana.org/assignments/protocol-numbers 12516 * http://www.iana.org/assignments/port-numbers 12517 * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) 12518 * 12519 */ 12520 12521 12522 12523 12524 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 12525 /* 12526 * CDDL HEADER START 12527 * 12528 * The contents of this file are subject to the terms of the 12529 * Common Development and Distribution License (the "License"). 12530 * You may not use this file except in compliance with the License. 12531 * 12532 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12533 * or http://www.opensolaris.org/os/licensing. 12534 * See the License for the specific language governing permissions 12535 * and limitations under the License. 12536 * 12537 * When distributing Covered Code, include this CDDL HEADER in each 12538 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12539 * If applicable, add the following below this CDDL HEADER, with the 12540 * fields enclosed by brackets "[]" replaced with your own identifying 12541 * information: Portions Copyright [yyyy] [name of copyright owner] 12542 * 12543 * CDDL HEADER END 12544 */ 12545 12546 /* 12547 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 12548 * Copyright 2016 Joyent, Inc. 12549 * 12550 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 12551 * Use is subject to license terms. 12552 */ 12553 # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 12554 12555 12556 12557 12558 12559 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 12560 /* 12561 * CDDL HEADER START 12562 * 12563 * The contents of this file are subject to the terms of the 12564 * Common Development and Distribution License (the "License"). 12565 * You may not use this file except in compliance with the License. 12566 * 12567 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12568 * or http://www.opensolaris.org/os/licensing. 12569 * See the License for the specific language governing permissions 12570 * and limitations under the License. 12571 * 12572 * When distributing Covered Code, include this CDDL HEADER in each 12573 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12574 * If applicable, add the following below this CDDL HEADER, with the 12575 * fields enclosed by brackets "[]" replaced with your own identifying 12576 * information: Portions Copyright [yyyy] [name of copyright owner] 12577 * 12578 * CDDL HEADER END 12579 */ 12580 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 12581 /* All Rights Reserved */ 12582 12583 12584 /* 12585 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12586 * Use is subject to license terms. 12587 * 12588 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 12589 * Copyright 2016 Joyent, Inc. 12590 */ 12591 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 12592 12593 12594 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 1 12595 /* 12596 * CDDL HEADER START 12597 * 12598 * The contents of this file are subject to the terms of the 12599 * Common Development and Distribution License (the "License"). 12600 * You may not use this file except in compliance with the License. 12601 * 12602 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12603 * or http://www.opensolaris.org/os/licensing. 12604 * See the License for the specific language governing permissions 12605 * and limitations under the License. 12606 * 12607 * When distributing Covered Code, include this CDDL HEADER in each 12608 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12609 * If applicable, add the following below this CDDL HEADER, with the 12610 * fields enclosed by brackets "[]" replaced with your own identifying 12611 * information: Portions Copyright [yyyy] [name of copyright owner] 12612 * 12613 * CDDL HEADER END 12614 */ 12615 /* 12616 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12617 * Use is subject to license terms. 12618 */ 12619 12620 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 12621 /* All Rights Reserved */ 12622 12623 /* 12624 * Portions of this source code were derived from Berkeley 4.3 BSD 12625 * under license from the Regents of the University of California. 12626 */ 12627 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 12628 12629 12630 12631 12632 12633 /* 12634 * The socklen definitions are reproduced here from sys/socket.h so as to 12635 * not introduce that namespace into existing users of netinet/in.h. 12636 */ 12637 12638 12639 12640 typedef uint32_t socklen_t; 12641 12642 12643 12644 12645 12646 typedef void *Psocklen_t; 12647 12648 12649 12650 12651 12652 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 1 12653 /* 12654 * CDDL HEADER START 12655 * 12656 * The contents of this file are subject to the terms of the 12657 * Common Development and Distribution License (the "License"). 12658 * You may not use this file except in compliance with the License. 12659 * 12660 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12661 * or http://www.opensolaris.org/os/licensing. 12662 * See the License for the specific language governing permissions 12663 * and limitations under the License. 12664 * 12665 * When distributing Covered Code, include this CDDL HEADER in each 12666 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12667 * If applicable, add the following below this CDDL HEADER, with the 12668 * fields enclosed by brackets "[]" replaced with your own identifying 12669 * information: Portions Copyright [yyyy] [name of copyright owner] 12670 * 12671 * CDDL HEADER END 12672 */ 12673 /* 12674 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12675 * Use is subject to license terms. 12676 */ 12677 12678 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 12679 /* All Rights Reserved */ 12680 12681 12682 12683 12684 12685 /* 12686 * For source compatibility 12687 */ 12688 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 12689 /* 12690 * CDDL HEADER START 12691 * 12692 * The contents of this file are subject to the terms of the 12693 * Common Development and Distribution License (the "License"). 12694 * You may not use this file except in compliance with the License. 12695 * 12696 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12697 * or http://www.opensolaris.org/os/licensing. 12698 * See the License for the specific language governing permissions 12699 * and limitations under the License. 12700 * 12701 * 12702 * When distributing Covered Code, include this CDDL HEADER in each 12703 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12704 * If applicable, add the following below this CDDL HEADER, with the 12705 * fields enclosed by brackets "[]" replaced with your own identifying 12706 * information: Portions Copyright [yyyy] [name of copyright owner] 12707 * 12708 * CDDL HEADER END 12709 */ 12710 12711 /* 12712 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 12713 * Use is subject to license terms. 12714 * Copyright 2016 Joyent, Inc. 12715 */ 12716 # 37 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 12717 12718 12719 12720 12721 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/poll.h" 1 12722 /* 12723 * CDDL HEADER START 12724 * 12725 * The contents of this file are subject to the terms of the 12726 * Common Development and Distribution License, Version 1.0 only 12727 * (the "License"). You may not use this file except in compliance 12728 * with the License. 12729 * 12730 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12731 * or http://www.opensolaris.org/os/licensing. 12732 * See the License for the specific language governing permissions 12733 * and limitations under the License. 12734 * 12735 * When distributing Covered Code, include this CDDL HEADER in each 12736 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12737 * If applicable, add the following below this CDDL HEADER, with the 12738 * fields enclosed by brackets "[]" replaced with your own identifying 12739 * information: Portions Copyright [yyyy] [name of copyright owner] 12740 * 12741 * CDDL HEADER END 12742 */ 12743 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 12744 /* All Rights Reserved */ 12745 12746 12747 /* 12748 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 12749 * 12750 * Copyright (c) 1995, 1998 by Sun Microsystems, Inc. 12751 * All rights reserved. 12752 */ 12753 12754 /* 12755 * Copyright 2015, Joyent, Inc. 12756 */ 12757 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/poll.h" 12758 /* 12759 * Structure of file descriptor/event pairs supplied in 12760 * the poll arrays. 12761 */ 12762 typedef struct pollfd { 12763 int fd; /* file desc to poll */ 12764 short events; /* events of interest on fd */ 12765 short revents; /* events that occurred on fd */ 12766 } pollfd_t; 12767 12768 typedef unsigned long nfds_t; 12769 12770 /* 12771 * Testable select events 12772 */ 12773 # 70 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/poll.h" 12774 /* 12775 * Non-testable poll events (may not be specified in events field, 12776 * but may be returned in revents field). 12777 */ 12778 12779 12780 12781 12782 /* 12783 * These events will never be specified in revents, but may be specified in 12784 * events to control /dev/poll behavior. 12785 */ 12786 # 152 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/poll.h" 12787 int poll(struct pollfd *, nfds_t, int); 12788 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 12789 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/strmdep.h" 1 12790 /* 12791 * CDDL HEADER START 12792 * 12793 * The contents of this file are subject to the terms of the 12794 * Common Development and Distribution License, Version 1.0 only 12795 * (the "License"). You may not use this file except in compliance 12796 * with the License. 12797 * 12798 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12799 * or http://www.opensolaris.org/os/licensing. 12800 * See the License for the specific language governing permissions 12801 * and limitations under the License. 12802 * 12803 * When distributing Covered Code, include this CDDL HEADER in each 12804 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12805 * If applicable, add the following below this CDDL HEADER, with the 12806 * fields enclosed by brackets "[]" replaced with your own identifying 12807 * information: Portions Copyright [yyyy] [name of copyright owner] 12808 * 12809 * CDDL HEADER END 12810 */ 12811 /* 12812 * Copyright (c) 1997-1998 by Sun Microsystems, Inc. 12813 * All rights reserved. 12814 */ 12815 12816 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 12817 /* All Rights Reserved */ 12818 12819 12820 12821 12822 12823 #pragma ident "%Z%%M% %I% %E% SMI" 12824 12825 12826 12827 12828 12829 /* 12830 * This file contains all machine-dependent declarations 12831 * in STREAMS. 12832 */ 12833 12834 /* 12835 * Copy data from one data buffer to another. 12836 * The addresses must be word aligned - if not, use bcopy! 12837 */ 12838 12839 12840 /* 12841 * save the address of the calling function on the 3b2 to 12842 * enable tracking of who is allocating message blocks 12843 */ 12844 12845 12846 /* 12847 * macro to check pointer alignment 12848 * (true if alignment is sufficient for worst case) 12849 */ 12850 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 12851 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/cred.h" 1 12852 /* 12853 * CDDL HEADER START 12854 * 12855 * The contents of this file are subject to the terms of the 12856 * Common Development and Distribution License (the "License"). 12857 * You may not use this file except in compliance with the License. 12858 * 12859 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12860 * or http://www.opensolaris.org/os/licensing. 12861 * See the License for the specific language governing permissions 12862 * and limitations under the License. 12863 * 12864 * When distributing Covered Code, include this CDDL HEADER in each 12865 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12866 * If applicable, add the following below this CDDL HEADER, with the 12867 * fields enclosed by brackets "[]" replaced with your own identifying 12868 * information: Portions Copyright [yyyy] [name of copyright owner] 12869 * 12870 * CDDL HEADER END 12871 */ 12872 /* 12873 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 12874 * Use is subject to license terms. 12875 */ 12876 12877 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 12878 /* All Rights Reserved */ 12879 12880 /* 12881 * Portions of this source code were derived from Berkeley 4.3 BSD 12882 * under license from the Regents of the University of California. 12883 */ 12884 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 12885 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/t_lock.h" 1 12886 /* 12887 * CDDL HEADER START 12888 * 12889 * The contents of this file are subject to the terms of the 12890 * Common Development and Distribution License, Version 1.0 only 12891 * (the "License"). You may not use this file except in compliance 12892 * with the License. 12893 * 12894 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12895 * or http://www.opensolaris.org/os/licensing. 12896 * See the License for the specific language governing permissions 12897 * and limitations under the License. 12898 * 12899 * When distributing Covered Code, include this CDDL HEADER in each 12900 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12901 * If applicable, add the following below this CDDL HEADER, with the 12902 * fields enclosed by brackets "[]" replaced with your own identifying 12903 * information: Portions Copyright [yyyy] [name of copyright owner] 12904 * 12905 * CDDL HEADER END 12906 */ 12907 /* 12908 * Copyright (c) 1991-1998 by Sun Microsystems, Inc. 12909 * All rights reserved. 12910 */ 12911 12912 /* 12913 * t_lock.h: Prototypes for disp_locks, plus include files 12914 * that describe the interfaces to kernel synch. 12915 * objects. 12916 */ 12917 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 12918 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/model.h" 1 12919 /* 12920 * CDDL HEADER START 12921 * 12922 * The contents of this file are subject to the terms of the 12923 * Common Development and Distribution License, Version 1.0 only 12924 * (the "License"). You may not use this file except in compliance 12925 * with the License. 12926 * 12927 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12928 * or http://www.opensolaris.org/os/licensing. 12929 * See the License for the specific language governing permissions 12930 * and limitations under the License. 12931 * 12932 * When distributing Covered Code, include this CDDL HEADER in each 12933 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12934 * If applicable, add the following below this CDDL HEADER, with the 12935 * fields enclosed by brackets "[]" replaced with your own identifying 12936 * information: Portions Copyright [yyyy] [name of copyright owner] 12937 * 12938 * CDDL HEADER END 12939 */ 12940 /* 12941 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 12942 * Use is subject to license terms. 12943 */ 12944 12945 12946 12947 12948 #pragma ident "%Z%%M% %I% %E% SMI" 12949 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/model.h" 12950 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 12951 /* 12952 * CDDL HEADER START 12953 * 12954 * The contents of this file are subject to the terms of the 12955 * Common Development and Distribution License (the "License"). 12956 * You may not use this file except in compliance with the License. 12957 * 12958 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 12959 * or http://www.opensolaris.org/os/licensing. 12960 * See the License for the specific language governing permissions 12961 * and limitations under the License. 12962 * 12963 * 12964 * When distributing Covered Code, include this CDDL HEADER in each 12965 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 12966 * If applicable, add the following below this CDDL HEADER, with the 12967 * fields enclosed by brackets "[]" replaced with your own identifying 12968 * information: Portions Copyright [yyyy] [name of copyright owner] 12969 * 12970 * CDDL HEADER END 12971 */ 12972 12973 /* 12974 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 12975 * Use is subject to license terms. 12976 * Copyright 2016 Joyent, Inc. 12977 */ 12978 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/model.h" 2 12979 # 69 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/model.h" 12980 /* 12981 * XXX Ick. This type needs to be visible outside the above guard because 12982 * the proc structure is visible outside the _KERNEL | _KMEMUSER guard. 12983 * If we can make proc internals less visible, (which we obviously should) 12984 * then this can be invisible too. 12985 */ 12986 typedef unsigned int model_t; 12987 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 2 12988 12989 12990 12991 12992 12993 /* 12994 * Data queue. 12995 * 12996 * NOTE: The *only* public fields are documented in queue(9S). 12997 * Everything else is implementation-private. 12998 * 12999 * The locking rules for the queue_t structure are extremely subtle and vary 13000 * widely depending on the field in question. As such, each field is 13001 * annotated according to the following legend: 13002 * 13003 * Q9S: The field is documented in queue(9S) and may be accessed without 13004 * locks by a STREAMS module when inside an entry point (e.g., put(9E)). 13005 * However, no fields can be directly modified unless q_lock is held 13006 * (which is not possible in a DDI compliant STREAMS module), with the 13007 * following exceptions: 13008 * 13009 * - q_ptr: can be modified as per the rules of the STREAMS module. 13010 * The STREAMS framework ignores q_ptr and thus imposes *no* 13011 * locking rules on it. 13012 * - q_qinfo: can be modified before qprocson(). 13013 * 13014 * - q_minpsz, q_maxpsz, q_hiwat, q_lowat: can be modified as per the 13015 * rules of the STREAMS module. The STREAMS framework never 13016 * modifies these fields, and is tolerant of temporarily 13017 * stale field values. 13018 * 13019 * In general, the STREAMS framework employs one of the following 13020 * techniques to ensure STREAMS modules can safely access Q9S fields: 13021 * 13022 * - The field is only modified by the framework when the stream is 13023 * locked with strlock() (q_next). 13024 * 13025 * - The field is modified by the framework, but the modifies are 13026 * atomic, and temporarily stale values are harmless (q_count, 13027 * q_first, q_last). 13028 * 13029 * - The field is modified by the framework, but the field's visible 13030 * values are either constant or directly under the control 13031 * of the STREAMS module itself (q_flag). 13032 * 13033 * QLK: The field must be accessed or modified under q_lock, except when 13034 * the stream has been locked with strlock(). If multiple q_locks must 13035 * be acquired, q_locks at higher addresses must be taken first. 13036 * 13037 * STR: The field can be accessed without a lock, but must be modified under 13038 * strlock(). 13039 * 13040 * SQLK: The field must be accessed or modified under SQLOCK(). 13041 * 13042 * NOLK: The field can be accessed without a lock, but can only be modified 13043 * when the queue_t is not known to any other threads. 13044 * 13045 * SVLK: The field must be accessed or modified under the service_queue lock. 13046 * Note that service_lock must be taken after any needed q_locks, 13047 * and that no other lock should be taken while service_lock is held. 13048 * 13049 * In addition, it is always acceptable to modify a field that is not yet 13050 * known to any other threads -- and other special case exceptions exist in 13051 * the code. Also, q_lock is used with q_wait to implement a stream head 13052 * monitor for reads and writes. 13053 */ 13054 typedef struct queue { 13055 struct qinit *q_qinfo; /* Q9S: Q processing procedure */ 13056 struct msgb *q_first; /* Q9S: first message in Q */ 13057 struct msgb *q_last; /* Q9S: last message in Q */ 13058 struct queue *q_next; /* Q9S: next Q in stream */ 13059 struct queue *q_link; /* SVLK: next Q for scheduling */ 13060 void *q_ptr; /* Q9S: module-specific data */ 13061 size_t q_count; /* Q9S: number of bytes on Q */ 13062 uint_t q_flag; /* Q9S: Q state */ 13063 ssize_t q_minpsz; /* Q9S: smallest packet OK on Q */ 13064 ssize_t q_maxpsz; /* Q9S: largest packet OK on Q */ 13065 size_t q_hiwat; /* Q9S: Q high water mark */ 13066 size_t q_lowat; /* Q9S: Q low water mark */ 13067 struct qband *q_bandp; /* QLK: band flow information */ 13068 kmutex_t q_lock; /* NOLK: structure lock */ 13069 struct stdata *q_stream; /* NOLK: stream backpointer */ 13070 struct syncq *q_syncq; /* NOLK: associated syncq */ 13071 unsigned char q_nband; /* QLK: number of bands */ 13072 kcondvar_t q_wait; /* NOLK: read/write sleep CV */ 13073 struct queue *q_nfsrv; /* STR: next Q with svc routine */ 13074 ushort_t q_draining; /* QLK: Q is draining */ 13075 short q_struiot; /* QLK: sync streams Q UIO mode */ 13076 clock_t q_qtstamp; /* QLK: when Q was enabled */ 13077 size_t q_mblkcnt; /* QLK: mblk count */ 13078 uint_t q_syncqmsgs; /* QLK: syncq message count */ 13079 size_t q_rwcnt; /* QLK: # threads in rwnext() */ 13080 pri_t q_spri; /* QLK: Q scheduling priority */ 13081 13082 /* 13083 * Syncq scheduling 13084 */ 13085 struct msgb *q_sqhead; /* QLK: first syncq message */ 13086 struct msgb *q_sqtail; /* QLK: last syncq message */ 13087 struct queue *q_sqnext; /* SQLK: next Q on syncq list */ 13088 struct queue *q_sqprev; /* SQLK: prev Q on syncq list */ 13089 uint_t q_sqflags; /* SQLK: syncq flags */ 13090 clock_t q_sqtstamp; /* SQLK: when Q was scheduled for sq */ 13091 13092 /* 13093 * NOLK: Reference to the queue's module's implementation 13094 * structure. This will be NULL for queues associated with drivers. 13095 */ 13096 struct fmodsw_impl *q_fp; 13097 } queue_t; 13098 13099 /* 13100 * Queue flags; unused flags not documented in queue(9S) can be recycled. 13101 */ 13102 # 169 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 13103 /* UNUSED 0x00000200 was QHLIST */ 13104 /* UNUSED 0x00000400 was QUNSAFE */ 13105 13106 13107 13108 13109 13110 13111 /* all MT type flags */ 13112 13113 13114 13115 13116 13117 13118 /* UNUSED 0x00400000 was QHOT */ 13119 /* UNUSED 0x00800000 was QNEXTHOT */ 13120 /* UNUSED 0x01000000 was _QNEXTLESS */ 13121 13122 13123 13124 13125 /* direct interface to/from sockfs */ 13126 13127 /* queue sqflags (protected by SQLOCK). */ 13128 13129 13130 /* This is also noted by the */ 13131 /* q_draining field, but this one is */ 13132 /* protected by SQLOCK */ 13133 13134 /* 13135 * Structure that describes the separate information 13136 * for each priority band in the queue. 13137 */ 13138 typedef struct qband { 13139 struct qband *qb_next; /* next band's info */ 13140 size_t qb_count; /* number of bytes in band */ 13141 struct msgb *qb_first; /* beginning of band's data */ 13142 struct msgb *qb_last; /* end of band's data */ 13143 size_t qb_hiwat; /* high water mark for band */ 13144 size_t qb_lowat; /* low water mark for band */ 13145 uint_t qb_flag; /* see below */ 13146 size_t qb_mblkcnt; /* mblk counter for runaway msgs */ 13147 } qband_t; 13148 13149 /* 13150 * qband flags 13151 */ 13152 13153 13154 13155 13156 /* 13157 * Maximum number of bands. 13158 */ 13159 13160 13161 /* 13162 * Fields that can be manipulated through strqset() and strqget(). 13163 */ 13164 typedef enum qfields { 13165 QHIWAT = 0, /* q_hiwat or qb_hiwat */ 13166 QLOWAT = 1, /* q_lowat or qb_lowat */ 13167 QMAXPSZ = 2, /* q_maxpsz */ 13168 QMINPSZ = 3, /* q_minpsz */ 13169 QCOUNT = 4, /* q_count or qb_count */ 13170 QFIRST = 5, /* q_first or qb_first */ 13171 QLAST = 6, /* q_last or qb_last */ 13172 QFLAG = 7, /* q_flag or qb_flag */ 13173 QSTRUIOT = 8, /* q_struiot */ 13174 QBAD = 9 13175 } qfields_t; 13176 13177 /* 13178 * Module information structure 13179 */ 13180 struct module_info { 13181 ushort_t mi_idnum; /* module id number */ 13182 char *mi_idname; /* module name */ 13183 ssize_t mi_minpsz; /* min packet size accepted */ 13184 ssize_t mi_maxpsz; /* max packet size accepted */ 13185 size_t mi_hiwat; /* hi-water mark */ 13186 size_t mi_lowat; /* lo-water mark */ 13187 }; 13188 13189 /* 13190 * queue information structure (with Synchronous STREAMS extensions) 13191 */ 13192 struct qinit { 13193 int (*qi_putp)(); /* put procedure */ 13194 int (*qi_srvp)(); /* service procedure */ 13195 int (*qi_qopen)(); /* called on startup */ 13196 int (*qi_qclose)(); /* called on finish */ 13197 int (*qi_qadmin)(); /* for future use */ 13198 struct module_info *qi_minfo; /* module information structure */ 13199 struct module_stat *qi_mstat; /* module statistics structure */ 13200 int (*qi_rwp)(); /* r/w procedure */ 13201 int (*qi_infop)(); /* information procedure */ 13202 int qi_struiot; /* stream uio type for struio() */ 13203 }; 13204 13205 /* 13206 * Values for qi_struiot and q_struiot: 13207 */ 13208 13209 13210 13211 13212 /* 13213 * Streamtab (used in cdevsw and fmodsw to point to module or driver) 13214 */ 13215 struct streamtab { 13216 struct qinit *st_rdinit; 13217 struct qinit *st_wrinit; 13218 struct qinit *st_muxrinit; 13219 struct qinit *st_muxwinit; 13220 }; 13221 13222 /* 13223 * Structure sent to mux drivers to indicate a link. 13224 */ 13225 struct linkblk { 13226 queue_t *l_qtop; /* lowest level write queue of upper stream */ 13227 /* (set to NULL for persistent links) */ 13228 queue_t *l_qbot; /* highest level write queue of lower stream */ 13229 int l_index; /* index for lower stream. */ 13230 }; 13231 13232 /* 13233 * Esballoc data buffer freeing routine 13234 */ 13235 typedef struct free_rtn { 13236 void (*free_func)(); 13237 caddr_t free_arg; 13238 } frtn_t; 13239 13240 /* 13241 * Data block descriptor 13242 * 13243 * NOTE: db_base, db_lim, db_ref and db_type are the *only* public fields, 13244 * as described in datab(9S). Everything else is implementation-private. 13245 */ 13246 13247 13248 13249 typedef struct datab { 13250 frtn_t *db_frtnp; 13251 unsigned char *db_base; 13252 unsigned char *db_lim; 13253 unsigned char db_ref; 13254 unsigned char db_type; 13255 unsigned char db_flags; 13256 unsigned char db_struioflag; 13257 pid_t db_cpid; /* cached pid, needs verification */ 13258 void *db_cache; /* kmem cache descriptor */ 13259 struct msgb *db_mblk; 13260 void (*db_free)(struct msgb *, struct datab *); 13261 void (*db_lastfree)(struct msgb *, struct datab *); 13262 intptr_t db_cksumstart; 13263 intptr_t db_cksumend; 13264 intptr_t db_cksumstuff; 13265 union { 13266 double enforce_alignment; 13267 unsigned char data[8]; 13268 struct { 13269 union { 13270 uint32_t u32; 13271 uint16_t u16; 13272 } cksum_val; /* used to store calculated cksum */ 13273 uint16_t flags; 13274 uint16_t pad; 13275 } cksum; 13276 /* 13277 * Union used for future extensions (pointer to data ?). 13278 */ 13279 } db_struioun; 13280 struct fthdr *db_fthdr; 13281 cred_t *db_credp; /* credential */ 13282 } dblk_t; 13283 13284 13285 13286 13287 /* 13288 * Accessor macros for private dblk_t fields (the rest are in <sys/strsun.h>). 13289 */ 13290 13291 13292 13293 /* 13294 * Used by GLDv2 to store the TCI information. 13295 */ 13296 13297 13298 /* 13299 * Message block descriptor 13300 */ 13301 typedef struct msgb { 13302 struct msgb *b_next; 13303 struct msgb *b_prev; 13304 struct msgb *b_cont; 13305 unsigned char *b_rptr; 13306 unsigned char *b_wptr; 13307 struct datab *b_datap; 13308 unsigned char b_band; 13309 unsigned char b_tag; 13310 unsigned short b_flag; 13311 queue_t *b_queue; /* for sync queues */ 13312 } mblk_t; 13313 13314 /* 13315 * bcache descriptor 13316 */ 13317 typedef struct bcache { 13318 kmutex_t mutex; 13319 struct kmem_cache *buffer_cache; 13320 struct kmem_cache *dblk_cache; 13321 int alloc; 13322 int destroy; 13323 size_t size; 13324 uint_t align; 13325 } bcache_t; 13326 13327 /* 13328 * db_flags values (all implementation private!) 13329 */ 13330 13331 13332 13333 13334 /* 13335 * db_struioflag values: 13336 */ 13337 13338 13339 13340 13341 13342 13343 /* 13344 * Message flags. These are interpreted by the stream head. 13345 */ 13346 13347 13348 /* write side of stream */ 13349 13350 /* UNUSED 0x08 was MSGNOGET (can be recycled) */ 13351 13352 13353 13354 13355 /* 13356 * Streams message types. 13357 */ 13358 13359 /* 13360 * Data and protocol messages (regular and priority) 13361 */ 13362 13363 13364 13365 13366 /* 13367 * Control messages (regular and priority) 13368 */ 13369 # 445 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 13370 /* 13371 * Control messages (high priority; go to head of queue) 13372 */ 13373 # 468 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 13374 /* 13375 * Queue message class definitions. 13376 */ 13377 13378 13379 13380 /* 13381 * IOCTL structure - this structure is the format of the M_IOCTL message type. 13382 */ 13383 13384 struct iocblk { 13385 int ioc_cmd; /* ioctl command type */ 13386 cred_t *ioc_cr; /* full credentials */ 13387 uint_t ioc_id; /* ioctl id */ 13388 uint_t ioc_flag; /* see below */ 13389 size_t ioc_count; /* count of bytes in data field */ 13390 int ioc_rval; /* return value */ 13391 int ioc_error; /* error code */ 13392 }; 13393 # 501 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 13394 typedef struct iocblk *IOCP; 13395 13396 /* {ioc,cp}_flags values */ 13397 13398 13399 13400 13401 13402 13403 13404 /* 13405 * Is the ioctl data formatted for our native model? 13406 */ 13407 13408 13409 13410 /* 13411 * structure for the M_COPYIN and M_COPYOUT message types. 13412 */ 13413 13414 struct copyreq { 13415 int cq_cmd; /* ioctl command (from ioc_cmd) */ 13416 cred_t *cq_cr; /* full credentials (from ioc_cmd) */ 13417 uint_t cq_id; /* ioctl id (from ioc_id) */ 13418 uint_t cq_flag; /* must be zero */ 13419 mblk_t *cq_private; /* private state information */ 13420 caddr_t cq_addr; /* address to copy data to/from */ 13421 size_t cq_size; /* number of bytes to copy */ 13422 }; 13423 # 543 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 13424 /* 13425 * structure for the M_IOCDATA message type. 13426 */ 13427 13428 struct copyresp { 13429 int cp_cmd; /* ioctl command (from ioc_cmd) */ 13430 cred_t *cp_cr; /* full credentials (from ioc_cmd) */ 13431 uint_t cp_id; /* ioctl id (from ioc_id) */ 13432 uint_t cp_flag; /* datamodel IOC_ flags; see above */ 13433 mblk_t *cp_private; /* private state information */ 13434 caddr_t cp_rval; /* status of request: 0 -> success */ 13435 /* non-zero -> failure */ 13436 }; 13437 # 571 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 13438 /* 13439 * Since these structures are all intended to travel in the same message 13440 * at different stages of a STREAMS ioctl, this union is used to determine 13441 * the message size in strdoioctl(). 13442 */ 13443 union ioctypes { 13444 struct iocblk iocblk; 13445 struct copyreq copyreq; 13446 struct copyresp copyresp; 13447 }; 13448 13449 /* 13450 * Options structure for M_SETOPTS message. This is sent upstream 13451 * by a module or driver to set stream head options. 13452 */ 13453 struct stroptions { 13454 uint_t so_flags; /* options to set */ 13455 short so_readopt; /* read option */ 13456 ushort_t so_wroff; /* write offset */ 13457 ssize_t so_minpsz; /* minimum read packet size */ 13458 ssize_t so_maxpsz; /* maximum read packet size */ 13459 size_t so_hiwat; /* read queue high water mark */ 13460 size_t so_lowat; /* read queue low water mark */ 13461 unsigned char so_band; /* band for water marks */ 13462 ushort_t so_erropt; /* error option */ 13463 ssize_t so_maxblk; /* maximum message block size */ 13464 ushort_t so_copyopt; /* copy options (see stropts.h) */ 13465 ushort_t so_tail; /* space available at the end */ 13466 }; 13467 13468 /* flags for stream options set message */ 13469 # 673 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/stream.h" 13470 /* 13471 * Miscellaneous parameters and flags. 13472 */ 13473 13474 /* 13475 * Values for stream flag in open to indicate module open, clone open, 13476 * and the return value for failure. 13477 */ 13478 13479 13480 13481 13482 /* 13483 * Priority definitions for block allocation. 13484 */ 13485 13486 13487 13488 13489 /* 13490 * Value for packet size that denotes infinity 13491 */ 13492 13493 13494 /* 13495 * Flags for flushq() 13496 */ 13497 13498 13499 13500 /* 13501 * Flag for transparent ioctls 13502 */ 13503 13504 13505 /* 13506 * Stream head default high/low water marks 13507 */ 13508 13509 13510 13511 /* 13512 * qwriter perimeter types 13513 */ 13514 13515 13516 13517 /* 13518 * Definitions of Streams macros and function interfaces. 13519 */ 13520 13521 /* 13522 * canenable - check if queue can be enabled by putq(). 13523 */ 13524 13525 13526 /* 13527 * Test if data block type is one of the data messages (i.e. not a control 13528 * message). 13529 */ 13530 13531 13532 13533 13534 13535 13536 13537 /* 13538 * Extract queue class of message block. 13539 */ 13540 13541 13542 /* 13543 * Align address on next lower word boundary. 13544 */ 13545 13546 13547 /* 13548 * Find the max size of data block. 13549 */ 13550 # 68 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 13551 13552 /* 13553 * Symbols such as htonl() are required to be exposed through this file, 13554 * per XNS Issue 5. This is achieved by inclusion of <sys/byteorder.h> 13555 */ 13556 13557 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 1 13558 /* 13559 * CDDL HEADER START 13560 * 13561 * The contents of this file are subject to the terms of the 13562 * Common Development and Distribution License (the "License"). 13563 * You may not use this file except in compliance with the License. 13564 * 13565 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 13566 * or http://www.opensolaris.org/os/licensing. 13567 * See the License for the specific language governing permissions 13568 * and limitations under the License. 13569 * 13570 * When distributing Covered Code, include this CDDL HEADER in each 13571 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 13572 * If applicable, add the following below this CDDL HEADER, with the 13573 * fields enclosed by brackets "[]" replaced with your own identifying 13574 * information: Portions Copyright [yyyy] [name of copyright owner] 13575 * 13576 * CDDL HEADER END 13577 */ 13578 13579 /* 13580 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 13581 * Use is subject to license terms. 13582 */ 13583 13584 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 13585 /* All Rights Reserved */ 13586 13587 /* 13588 * University Copyright- Copyright (c) 1982, 1986, 1988 13589 * The Regents of the University of California 13590 * All Rights Reserved 13591 * 13592 * University Acknowledgment- Portions of this document are derived from 13593 * software developed by the University of California, Berkeley, and its 13594 * contributors. 13595 */ 13596 13597 13598 13599 13600 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/isa_defs.h" 1 13601 /* 13602 * CDDL HEADER START 13603 * 13604 * The contents of this file are subject to the terms of the 13605 * Common Development and Distribution License (the "License"). 13606 * You may not use this file except in compliance with the License. 13607 * 13608 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 13609 * or http://www.opensolaris.org/os/licensing. 13610 * See the License for the specific language governing permissions 13611 * and limitations under the License. 13612 * 13613 * 13614 * When distributing Covered Code, include this CDDL HEADER in each 13615 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 13616 * If applicable, add the following below this CDDL HEADER, with the 13617 * fields enclosed by brackets "[]" replaced with your own identifying 13618 * information: Portions Copyright [yyyy] [name of copyright owner] 13619 * 13620 * CDDL HEADER END 13621 */ 13622 13623 /* 13624 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 13625 * Use is subject to license terms. 13626 * Copyright 2016 Joyent, Inc. 13627 */ 13628 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 2 13629 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 13630 /* 13631 * CDDL HEADER START 13632 * 13633 * The contents of this file are subject to the terms of the 13634 * Common Development and Distribution License, Version 1.0 only 13635 * (the "License"). You may not use this file except in compliance 13636 * with the License. 13637 * 13638 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 13639 * or http://www.opensolaris.org/os/licensing. 13640 * See the License for the specific language governing permissions 13641 * and limitations under the License. 13642 * 13643 * When distributing Covered Code, include this CDDL HEADER in each 13644 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 13645 * If applicable, add the following below this CDDL HEADER, with the 13646 * fields enclosed by brackets "[]" replaced with your own identifying 13647 * information: Portions Copyright [yyyy] [name of copyright owner] 13648 * 13649 * CDDL HEADER END 13650 */ 13651 /* 13652 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 13653 * 13654 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 13655 * Use is subject to license terms. 13656 */ 13657 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 2 13658 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 13659 /* 13660 * macros for conversion between host and (internet) network byte order 13661 */ 13662 # 74 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 13663 typedef uint16_t in_port_t; 13664 13665 13666 13667 13668 typedef uint32_t in_addr_t; 13669 13670 13671 13672 extern uint32_t htonl(uint32_t); 13673 extern uint16_t htons(uint16_t); 13674 extern uint32_t ntohl(uint32_t); 13675 extern uint16_t ntohs(uint16_t); 13676 # 96 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 13677 extern uint64_t htonll(uint64_t); 13678 extern uint64_t ntohll(uint64_t); 13679 13680 13681 13682 13683 13684 13685 /* 13686 * Macros to reverse byte order 13687 */ 13688 # 141 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 13689 /* 13690 * Macros to convert from a specific byte order to/from native byte order 13691 */ 13692 # 164 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 13693 /* 13694 * Macros to read unaligned values from a specific byte order to 13695 * native byte order 13696 */ 13697 # 204 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 13698 /* 13699 * Macros to write unaligned values from native byte order to a specific byte 13700 * order. 13701 */ 13702 # 75 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 2 13703 13704 13705 13706 13707 13708 13709 13710 /* 13711 * Note: IPv4 address data structures usage conventions. 13712 * The "in_addr_t" type below (required by Unix standards) 13713 * is NOT a typedef of "struct in_addr" and violates the usual 13714 * conventions where "struct <name>" and <name>_t are corresponding 13715 * typedefs. 13716 * To minimize confusion, kernel data structures/usage prefers use 13717 * of "ipaddr_t" as atomic uint32_t type and avoid using "in_addr_t" 13718 * The user level APIs continue to follow the historic popular 13719 * practice of using "struct in_addr". 13720 */ 13721 13722 13723 13724 13725 13726 13727 13728 typedef uint32_t ipaddr_t; 13729 13730 13731 13732 13733 struct in6_addr { 13734 union { 13735 /* 13736 * Note: Static initalizers of "union" type assume 13737 * the constant on the RHS is the type of the first member 13738 * of union. 13739 * To make static initializers (and efficient usage) work, 13740 * the order of members exposed to user and kernel view of 13741 * this data structure is different. 13742 * User environment sees specified uint8_t type as first 13743 * member whereas kernel sees most efficient type as 13744 * first member. 13745 */ 13746 13747 13748 13749 13750 uint8_t _S6_u8[16]; /* IPv6 address */ 13751 uint32_t _S6_u32[4]; /* IPv6 address */ 13752 13753 uint32_t __S6_align; /* Align on 32 bit boundary */ 13754 } _S6_un; 13755 }; 13756 13757 13758 13759 13760 13761 13762 13763 typedef struct in6_addr in6_addr_t; 13764 # 144 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13765 /* 13766 * Protocols 13767 * 13768 * Some of these constant names are copied for the DTrace IP provider in 13769 * usr/src/lib/libdtrace/common/{ip.d.in, ip.sed.in}, which should be kept 13770 * in sync. 13771 */ 13772 # 177 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13773 /* Transmission Protocol */ 13774 # 186 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13775 /* 13776 * Port/socket numbers: network standard functions 13777 * 13778 * Entries should exist here for each port number compiled into an ON 13779 * component, such as snoop. 13780 */ 13781 # 208 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13782 /* 13783 * Port/socket numbers: host specific functions 13784 */ 13785 # 229 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13786 /* 13787 * Internet Key Exchange (IKE) ports 13788 */ 13789 13790 13791 13792 /* 13793 * UNIX TCP sockets 13794 */ 13795 13796 13797 13798 13799 13800 13801 /* 13802 * UNIX UDP sockets 13803 */ 13804 13805 13806 13807 13808 13809 13810 13811 /* 13812 * DHCPv6 UDP ports 13813 */ 13814 13815 13816 13817 13818 13819 /* 13820 * Ports < IPPORT_RESERVED are reserved for 13821 * privileged processes (e.g. root). 13822 * Ports > IPPORT_USERRESERVED are reserved 13823 * for servers, not necessarily privileged. 13824 */ 13825 13826 13827 13828 /* 13829 * Link numbers 13830 */ 13831 13832 13833 13834 13835 /* 13836 * IPv4 Internet address 13837 * This definition contains obsolete fields for compatibility 13838 * with SunOS 3.x and 4.2bsd. The presence of subnets renders 13839 * divisions into fixed fields misleading at best. New code 13840 * should use only the s_addr field. 13841 */ 13842 # 293 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13843 struct in_addr { 13844 union { 13845 struct { uint8_t s_b1, s_b2, s_b3, s_b4; } S_un_b; 13846 struct { uint16_t s_w1, s_w2; } S_un_w; 13847 13848 uint32_t S_addr; 13849 13850 13851 13852 } S_un; 13853 13854 13855 13856 13857 13858 13859 }; 13860 13861 /* 13862 * Definitions of bits in internet address integers. 13863 * On subnets, the decomposition of addresses to host and net parts 13864 * is done according to subnet mask, not the masks here. 13865 * 13866 * Note that with the introduction of CIDR, IN_CLASSA, IN_CLASSB, 13867 * IN_CLASSC, IN_CLASSD and IN_CLASSE macros have become "de-facto 13868 * obsolete". IN_MULTICAST macro should be used to test if a address 13869 * is a multicast address. 13870 */ 13871 # 348 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13872 /* 13873 * We have removed CLASS E checks from the kernel 13874 * But we preserve these defines for userland in order 13875 * to avoid compile breakage of some 3rd party piece of software 13876 */ 13877 # 369 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13878 /* Scoped IPv4 prefixes (in host byte-order) */ 13879 # 379 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13880 /* RFC 3927 IPv4 link local address (i in host byte-order) */ 13881 13882 13883 /* Well known 6to4 Relay Router Anycast address defined in RFC 3068 */ 13884 13885 13886 13887 13888 13889 13890 /* 13891 * Define a macro to stuff the loopback address into an Internet address 13892 */ 13893 13894 13895 13896 13897 13898 13899 /* 13900 * IPv4 Socket address. 13901 */ 13902 struct sockaddr_in { 13903 sa_family_t sin_family; 13904 in_port_t sin_port; 13905 struct in_addr sin_addr; 13906 13907 char sin_zero[8]; 13908 13909 13910 13911 }; 13912 13913 13914 /* 13915 * IPv6 socket address. 13916 */ 13917 struct sockaddr_in6 { 13918 sa_family_t sin6_family; 13919 in_port_t sin6_port; 13920 uint32_t sin6_flowinfo; 13921 struct in6_addr sin6_addr; 13922 uint32_t sin6_scope_id; /* Depends on scope of sin6_addr */ 13923 uint32_t __sin6_src_id; /* Impl. specific - UDP replies */ 13924 }; 13925 13926 /* 13927 * Macros for accessing the traffic class and flow label fields from 13928 * sin6_flowinfo. 13929 * These are designed to be applied to a 32-bit value. 13930 */ 13931 # 438 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13932 /* masks */ 13933 13934 13935 13936 13937 13938 /* 13939 * Note: Macros IN6ADDR_ANY_INIT and IN6ADDR_LOOPBACK_INIT are for 13940 * use as RHS of Static initializers of "struct in6_addr" (or in6_addr_t) 13941 * only. They need to be different for User/Kernel versions because union 13942 * component data structure is defined differently (it is identical at 13943 * binary representation level). 13944 * 13945 * const struct in6_addr IN6ADDR_ANY_INIT; 13946 * const struct in6_addr IN6ADDR_LOOPBACK_INIT; 13947 */ 13948 # 478 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13949 /* 13950 * RFC 2553 specifies the following macros. Their type is defined 13951 * as "int" in the RFC but they only have boolean significance 13952 * (zero or non-zero). For the purposes of our comment notation, 13953 * we assume a hypothetical type "bool" defined as follows to 13954 * write the prototypes assumed for macros in our comments better. 13955 * 13956 * typedef int bool; 13957 */ 13958 13959 /* 13960 * IN6 macros used to test for special IPv6 addresses 13961 * (Mostly from spec) 13962 * 13963 * bool IN6_IS_ADDR_UNSPECIFIED (const struct in6_addr *); 13964 * bool IN6_IS_ADDR_LOOPBACK (const struct in6_addr *); 13965 * bool IN6_IS_ADDR_MULTICAST (const struct in6_addr *); 13966 * bool IN6_IS_ADDR_LINKLOCAL (const struct in6_addr *); 13967 * bool IN6_IS_ADDR_SITELOCAL (const struct in6_addr *); 13968 * bool IN6_IS_ADDR_V4MAPPED (const struct in6_addr *); 13969 * bool IN6_IS_ADDR_V4MAPPED_ANY(const struct in6_addr *); -- Not from RFC2553 13970 * bool IN6_IS_ADDR_V4COMPAT (const struct in6_addr *); 13971 * bool IN6_IS_ADDR_MC_RESERVED (const struct in6_addr *); -- Not from RFC2553 13972 * bool IN6_IS_ADDR_MC_NODELOCAL(const struct in6_addr *); 13973 * bool IN6_IS_ADDR_MC_LINKLOCAL(const struct in6_addr *); 13974 * bool IN6_IS_ADDR_MC_SITELOCAL(const struct in6_addr *); 13975 * bool IN6_IS_ADDR_MC_ORGLOCAL (const struct in6_addr *); 13976 * bool IN6_IS_ADDR_MC_GLOBAL (const struct in6_addr *); 13977 * bool IN6_IS_ADDR_6TO4 (const struct in6_addr *); -- Not from RFC2553 13978 * bool IN6_ARE_6TO4_PREFIX_EQUAL(const struct in6_addr *, 13979 * const struct in6_addr *); -- Not from RFC2553 13980 * bool IN6_IS_ADDR_LINKSCOPE (const struct in6addr *); -- Not from RFC2553 13981 */ 13982 # 568 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13983 /* 13984 * IN6_IS_ADDR_V4MAPPED - A IPv4 mapped INADDR_ANY 13985 * Note: This macro is currently NOT defined in RFC2553 specification 13986 * and not a standard macro that portable applications should use. 13987 */ 13988 # 587 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13989 /* Exclude loopback and unspecified address */ 13990 # 605 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13991 /* 13992 * Note: 13993 * IN6_IS_ADDR_MC_RESERVED macro is currently NOT defined in RFC2553 13994 * specification and not a standard macro that portable applications 13995 * should use. 13996 */ 13997 # 660 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 13998 /* 13999 * The IN6_IS_ADDR_MC_SOLICITEDNODE macro is not defined in any standard or 14000 * RFC, and shouldn't be used by portable applications. It is used to see 14001 * if an address is a solicited-node multicast address, which is prefixed 14002 * with ff02:0:0:0:0:1:ff00::/104. 14003 */ 14004 # 680 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14005 /* 14006 * Macros to a) test for 6to4 IPv6 address, and b) to test if two 14007 * 6to4 addresses have the same /48 prefix, and, hence, are from the 14008 * same 6to4 site. 14009 */ 14010 # 699 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14011 /* 14012 * IN6_IS_ADDR_LINKSCOPE 14013 * Identifies an address as being either link-local, link-local multicast or 14014 * node-local multicast. All types of addresses are considered to be unique 14015 * within the scope of a given link. 14016 */ 14017 14018 14019 14020 14021 /* 14022 * Useful utility macros for operations with IPv6 addresses 14023 * Note: These macros are NOT defined in the RFC2553 or any other 14024 * standard specification and are not standard macros that portable 14025 * applications should use. 14026 */ 14027 14028 /* 14029 * IN6_V4MAPPED_TO_INADDR 14030 * IN6_V4MAPPED_TO_IPADDR 14031 * Assign a IPv4-Mapped IPv6 address to an IPv4 address. 14032 * Note: These macros are NOT defined in RFC2553 or any other standard 14033 * specification and are not macros that portable applications should 14034 * use. 14035 * 14036 * void IN6_V4MAPPED_TO_INADDR(const in6_addr_t *v6, struct in_addr *v4); 14037 * void IN6_V4MAPPED_TO_IPADDR(const in6_addr_t *v6, ipaddr_t v4); 14038 * 14039 */ 14040 14041 14042 14043 14044 14045 /* 14046 * IN6_INADDR_TO_V4MAPPED 14047 * IN6_IPADDR_TO_V4MAPPED 14048 * Assign a IPv4 address address to an IPv6 address as a IPv4-mapped 14049 * address. 14050 * Note: These macros are NOT defined in RFC2553 or any other standard 14051 * specification and are not macros that portable applications should 14052 * use. 14053 * 14054 * void IN6_INADDR_TO_V4MAPPED(const struct in_addr *v4, in6_addr_t *v6); 14055 * void IN6_IPADDR_TO_V4MAPPED(const ipaddr_t v4, in6_addr_t *v6); 14056 * 14057 */ 14058 # 770 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14059 /* 14060 * IN6_6TO4_TO_V4ADDR 14061 * Extract the embedded IPv4 address from the prefix to a 6to4 IPv6 14062 * address. 14063 * Note: This macro is NOT defined in RFC2553 or any other standard 14064 * specification and is not a macro that portable applications should 14065 * use. 14066 * Note: we don't use the IPADDR form of the macro because we need 14067 * to do a bytewise copy; the V4ADDR in the 6to4 address is not 14068 * 32-bit aligned. 14069 * 14070 * void IN6_6TO4_TO_V4ADDR(const in6_addr_t *v6, struct in_addr *v4); 14071 * 14072 */ 14073 14074 14075 14076 14077 14078 14079 /* 14080 * IN6_V4ADDR_TO_6TO4 14081 * Given an IPv4 address and an IPv6 address for output, a 6to4 address 14082 * will be created from the IPv4 Address. 14083 * Note: This method for creating 6to4 addresses is not standardized 14084 * outside of Solaris. The newly created 6to4 address will be of the form 14085 * 2002:<V4ADDR>:<SUBNETID>::<HOSTID>, where SUBNETID will equal 0 and 14086 * HOSTID will equal 1. 14087 * 14088 * void IN6_V4ADDR_TO_6TO4(const struct in_addr *v4, in6_addr_t *v6) 14089 * 14090 */ 14091 # 828 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14092 /* 14093 * IN6_ARE_ADDR_EQUAL (defined in RFC2292) 14094 * Compares if IPv6 addresses are equal. 14095 * Note: Compares in order of high likelyhood of a miss so we minimize 14096 * compares. (Current heuristic order, compare in reverse order of 14097 * uint32_t units) 14098 * 14099 * bool IN6_ARE_ADDR_EQUAL(const struct in6_addr *, 14100 * const struct in6_addr *); 14101 */ 14102 14103 14104 14105 14106 14107 14108 /* 14109 * IN6_ARE_PREFIXEDADDR_EQUAL (not defined in RFCs) 14110 * Compares if prefixed parts of IPv6 addresses are equal. 14111 * 14112 * uint32_t IN6_MASK_FROM_PREFIX(int, int); 14113 * bool IN6_ARE_PREFIXEDADDR_EQUAL(const struct in6_addr *, 14114 * const struct in6_addr *, 14115 * int); 14116 */ 14117 # 879 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14118 /* 14119 * Options for use with [gs]etsockopt at the IP level. 14120 * 14121 * Note: Some of the IP_ namespace has conflict with and 14122 * and is exposed through <xti.h>. (It also requires exposing 14123 * options not implemented). The options with potential 14124 * for conflicts use #ifndef guards. 14125 */ 14126 # 919 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14127 /* 14128 * IP_PKTINFO and IP_RECVPKTINFO have same value. Size of argument passed in 14129 * is used to differentiate b/w the two. 14130 */ 14131 14132 14133 14134 14135 14136 /* 14137 * Different preferences that can be requested from IPSEC protocols. 14138 */ 14139 14140 14141 14142 14143 /* 14144 * This can be used with the setsockopt() call to set per socket security 14145 * options. When the application uses per-socket API, we will reflect 14146 * the request on both outbound and inbound packets. 14147 */ 14148 14149 typedef struct ipsec_req { 14150 uint_t ipsr_ah_req; /* AH request */ 14151 uint_t ipsr_esp_req; /* ESP request */ 14152 uint_t ipsr_self_encap_req; /* Self-Encap request */ 14153 uint8_t ipsr_auth_alg; /* Auth algs for AH */ 14154 uint8_t ipsr_esp_alg; /* Encr algs for ESP */ 14155 uint8_t ipsr_esp_auth_alg; /* Auth algs for ESP */ 14156 } ipsec_req_t; 14157 14158 /* 14159 * MCAST_* options are protocol-independent. The actual definitions 14160 * are with the v6 options below; this comment is here to note the 14161 * namespace usage. 14162 * 14163 * #define MCAST_JOIN_GROUP 0x29 14164 * #define MCAST_LEAVE_GROUP 0x2a 14165 * #define MCAST_BLOCK_SOURCE 0x2b 14166 * #define MCAST_UNBLOCK_SOURCE 0x2c 14167 * #define MCAST_JOIN_SOURCE_GROUP 0x2d 14168 * #define MCAST_LEAVE_SOURCE_GROUP 0x2e 14169 */ 14170 14171 14172 /* 14173 * SunOS private (potentially not portable) IP_ option names 14174 */ 14175 14176 14177 14178 /* can be reused 0x44 */ 14179 14180 14181 /* 14182 * Option values and names (when !_XPG5) shared with <xti_inet.h> 14183 */ 14184 # 988 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14185 /* 14186 * The following option values are reserved by <xti_inet.h> 14187 * 14188 * T_IP_OPTIONS 0x107 - IP per-packet options 14189 * T_IP_TOS 0x108 - IP per packet type of service 14190 */ 14191 14192 /* 14193 * Default value constants for multicast attributes controlled by 14194 * IP*_MULTICAST_LOOP and IP*_MULTICAST_{TTL,HOPS} options. 14195 */ 14196 14197 14198 14199 14200 /* 14201 * Argument structure for IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP. 14202 */ 14203 struct ip_mreq { 14204 struct in_addr imr_multiaddr; /* IP multicast address of group */ 14205 struct in_addr imr_interface; /* local IP address of interface */ 14206 }; 14207 14208 /* 14209 * Argument structure for IP_BLOCK_SOURCE, IP_UNBLOCK_SOURCE, 14210 * IP_ADD_SOURCE_MEMBERSHIP, and IP_DROP_SOURCE_MEMBERSHIP. 14211 */ 14212 struct ip_mreq_source { 14213 struct in_addr imr_multiaddr; /* IP address of group */ 14214 struct in_addr imr_sourceaddr; /* IP address of source */ 14215 struct in_addr imr_interface; /* IP address of interface */ 14216 }; 14217 14218 /* 14219 * Argument structure for IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP on 14220 * IPv6 addresses. 14221 */ 14222 struct ipv6_mreq { 14223 struct in6_addr ipv6mr_multiaddr; /* IPv6 multicast addr */ 14224 unsigned int ipv6mr_interface; /* interface index */ 14225 }; 14226 14227 /* 14228 * Use #pragma pack() construct to force 32-bit alignment on amd64. 14229 * This is needed to keep the structure size and offsets consistent 14230 * between a 32-bit app and the 64-bit amd64 kernel in structures 14231 * where 64-bit alignment would create gaps (in this case, structures 14232 * which have a uint32_t followed by a struct sockaddr_storage). 14233 */ 14234 14235 14236 # 1038 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14237 #pragma pack(4) 14238 # 1038 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14239 14240 14241 14242 /* 14243 * Argument structure for MCAST_JOIN_GROUP and MCAST_LEAVE_GROUP. 14244 */ 14245 struct group_req { 14246 uint32_t gr_interface; /* interface index */ 14247 struct sockaddr_storage gr_group; /* group address */ 14248 }; 14249 14250 /* 14251 * Argument structure for MCAST_BLOCK_SOURCE, MCAST_UNBLOCK_SOURCE, 14252 * MCAST_JOIN_SOURCE_GROUP, MCAST_LEAVE_SOURCE_GROUP. 14253 */ 14254 struct group_source_req { 14255 uint32_t gsr_interface; /* interface index */ 14256 struct sockaddr_storage gsr_group; /* group address */ 14257 struct sockaddr_storage gsr_source; /* source address */ 14258 }; 14259 14260 /* 14261 * Argument for SIOC[GS]MSFILTER ioctls 14262 */ 14263 struct group_filter { 14264 uint32_t gf_interface; /* interface index */ 14265 struct sockaddr_storage gf_group; /* multicast address */ 14266 uint32_t gf_fmode; /* filter mode */ 14267 uint32_t gf_numsrc; /* number of sources */ 14268 struct sockaddr_storage gf_slist[1]; /* source address */ 14269 }; 14270 14271 14272 14273 # 1071 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14274 #pragma pack() 14275 # 1071 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14276 14277 14278 14279 14280 14281 14282 14283 /* 14284 * Argument for SIOC[GS]IPMSFILTER ioctls (IPv4-specific) 14285 */ 14286 struct ip_msfilter { 14287 struct in_addr imsf_multiaddr; /* IP multicast address of group */ 14288 struct in_addr imsf_interface; /* local IP address of interface */ 14289 uint32_t imsf_fmode; /* filter mode */ 14290 uint32_t imsf_numsrc; /* number of sources in src_list */ 14291 struct in_addr imsf_slist[1]; /* start of source list */ 14292 }; 14293 14294 14295 14296 14297 14298 /* 14299 * Multicast source filter manipulation functions in libsocket; 14300 * defined in RFC 3678. 14301 */ 14302 int setsourcefilter(int, uint32_t, struct sockaddr *, socklen_t, uint32_t, 14303 uint_t, struct sockaddr_storage *); 14304 14305 int getsourcefilter(int, uint32_t, struct sockaddr *, socklen_t, uint32_t *, 14306 uint_t *, struct sockaddr_storage *); 14307 14308 int setipv4sourcefilter(int, struct in_addr, struct in_addr, uint32_t, 14309 uint32_t, struct in_addr *); 14310 14311 int getipv4sourcefilter(int, struct in_addr, struct in_addr, uint32_t *, 14312 uint32_t *, struct in_addr *); 14313 14314 /* 14315 * Definitions needed for [gs]etsourcefilter(), [gs]etipv4sourcefilter() 14316 */ 14317 14318 14319 14320 /* 14321 * Argument struct for IP_PKTINFO option 14322 */ 14323 typedef struct in_pktinfo { 14324 unsigned int ipi_ifindex; /* send/recv interface index */ 14325 struct in_addr ipi_spec_dst; /* matched source address */ 14326 struct in_addr ipi_addr; /* src/dst address in IP hdr */ 14327 } in_pktinfo_t; 14328 14329 /* 14330 * Argument struct for IPV6_PKTINFO option 14331 */ 14332 struct in6_pktinfo { 14333 struct in6_addr ipi6_addr; /* src/dst IPv6 address */ 14334 unsigned int ipi6_ifindex; /* send/recv interface index */ 14335 }; 14336 14337 /* 14338 * Argument struct for IPV6_MTUINFO option 14339 */ 14340 struct ip6_mtuinfo { 14341 struct sockaddr_in6 ip6m_addr; /* dst address including zone ID */ 14342 uint32_t ip6m_mtu; /* path MTU in host byte order */ 14343 }; 14344 14345 /* 14346 * IPv6 routing header types 14347 */ 14348 14349 14350 extern socklen_t inet6_rth_space(int type, int segments); 14351 extern void *inet6_rth_init(void *bp, socklen_t bp_len, int type, int segments); 14352 extern int inet6_rth_add(void *bp, const struct in6_addr *addr); 14353 extern int inet6_rth_reverse(const void *in, void *out); 14354 extern int inet6_rth_segments(const void *bp); 14355 extern struct in6_addr *inet6_rth_getaddr(const void *bp, int index); 14356 14357 extern int inet6_opt_init(void *extbuf, socklen_t extlen); 14358 extern int inet6_opt_append(void *extbuf, socklen_t extlen, int offset, 14359 uint8_t type, socklen_t len, uint_t align, void **databufp); 14360 extern int inet6_opt_finish(void *extbuf, socklen_t extlen, int offset); 14361 extern int inet6_opt_set_val(void *databuf, int offset, void *val, 14362 socklen_t vallen); 14363 extern int inet6_opt_next(void *extbuf, socklen_t extlen, int offset, 14364 uint8_t *typep, socklen_t *lenp, void **databufp); 14365 extern int inet6_opt_find(void *extbufp, socklen_t extlen, int offset, 14366 uint8_t type, socklen_t *lenp, void **databufp); 14367 extern int inet6_opt_get_val(void *databuf, int offset, void *val, 14368 socklen_t vallen); 14369 14370 14371 /* 14372 * Argument structure for IP_ADD_PROXY_ADDR. 14373 * Note that this is an unstable, experimental interface. It may change 14374 * later. Don't use it unless you know what it is. 14375 */ 14376 typedef struct { 14377 struct in_addr in_prefix_addr; 14378 unsigned int in_prefix_len; 14379 } in_prefix_t; 14380 14381 14382 14383 /* 14384 * IPv6 options 14385 */ 14386 14387 /* packets. */ 14388 /* argument type: uint_t */ 14389 14390 /* multicast packets. */ 14391 /* argument type: struct in6_addr */ 14392 14393 /* multicast packets. */ 14394 /* argument type: uint_t */ 14395 14396 /* multicast packets on same socket. */ 14397 /* argument type: uint_t */ 14398 14399 /* argument type: struct ipv6_mreq */ 14400 14401 /* argument type: struct ipv6_mreq */ 14402 14403 /* 14404 * Other XPG6 constants. 14405 */ 14406 14407 /* decimal notation. */ 14408 14409 /* standard colon-hex notation. */ 14410 14411 14412 14413 14414 14415 /* 14416 * IPV6_ADD_MEMBERSHIP and IPV6_DROP_MEMBERSHIP are being kept 14417 * for backward compatibility. They have the same meaning as IPV6_JOIN_GROUP 14418 * and IPV6_LEAVE_GROUP respectively. 14419 */ 14420 14421 /* argument type: struct ipv6_mreq */ 14422 14423 /* argument type: struct ipv6_mreq */ 14424 14425 14426 /* arg type: "struct in6_pktingo" - */ 14427 14428 14429 14430 14431 /* the routing header */ 14432 14433 14434 /* the routing header */ 14435 14436 14437 14438 14439 /* 14440 * This options exists for backwards compatability and should no longer be 14441 * used. Use IPV6_RECVDSTOPTS instead. 14442 */ 14443 14444 14445 14446 14447 /* 14448 * enable/disable IPV6_RTHDRDSTOPTS. Now obsolete. IPV6_RECVDSTOPTS enables 14449 * the receipt of both headers. 14450 */ 14451 # 1259 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14452 /* 14453 * enable/disable receipt of both both IPV6_DSTOPTS headers. 14454 */ 14455 14456 14457 /* 14458 * protocol-independent multicast membership options. 14459 */ 14460 14461 14462 14463 14464 14465 14466 14467 /* 32Bit field for IPV6_SRC_PREFERENCES */ 14468 # 1295 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 14469 /* 14470 * SunOS private (potentially not portable) IPV6_ option names 14471 */ 14472 14473 14474 /* unspecified (all zeros) */ 14475 14476 /* 14477 * Miscellaneous IPv6 constants. 14478 */ 14479 14480 14481 14482 14483 /* 14484 * Extern declarations for pre-defined global const variables 14485 */ 14486 14487 14488 14489 extern const struct in6_addr in6addr_any; 14490 extern const struct in6_addr in6addr_loopback; 14491 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 2 14492 14493 14494 14495 14496 14497 /* 14498 * NOTE 14499 * 14500 * The contents of this file are private to the implementation of 14501 * Solaris and are subject to change at any time without notice. 14502 * Applications and drivers using these interfaces may fail to 14503 * run on future releases. 14504 */ 14505 14506 /* Available both in kernel and for user space */ 14507 14508 /* zone id restrictions and special ids */ 14509 14510 14511 14512 14513 14514 14515 /* 14516 * Special zoneid_t token to refer to all zones. 14517 */ 14518 14519 14520 /* system call subcodes */ 14521 # 88 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 14522 /* zone attributes */ 14523 # 108 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 14524 /* Start of the brand-specific attribute namespace */ 14525 # 129 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 14526 /* 14527 * Exit values that may be returned by scripts or programs invoked by various 14528 * zone commands. 14529 * 14530 * These are defined as: 14531 * 14532 * ZONE_SUBPROC_OK 14533 * =============== 14534 * The subprocess completed successfully. 14535 * 14536 * ZONE_SUBPROC_USAGE 14537 * ================== 14538 * The subprocess failed with a usage message, or a usage message should 14539 * be output in its behalf. 14540 * 14541 * ZONE_SUBPROC_NOTCOMPLETE 14542 * ======================== 14543 * The subprocess did not complete, but the actions performed by the 14544 * subprocess require no recovery actions by the user. 14545 * 14546 * For example, if the subprocess were called by "zoneadm install," the 14547 * installation of the zone did not succeed but the user need not perform 14548 * a "zoneadm uninstall" before attempting another install. 14549 * 14550 * ZONE_SUBPROC_FATAL 14551 * ================== 14552 * The subprocess failed in a fatal manner, usually one that will require 14553 * some type of recovery action by the user. 14554 * 14555 * For example, if the subprocess were called by "zoneadm install," the 14556 * installation of the zone did not succeed and the user will need to 14557 * perform a "zoneadm uninstall" before another install attempt is 14558 * possible. 14559 * 14560 * The non-success exit values are large to avoid accidental collision 14561 * with values used internally by some commands (e.g. "Z_ERR" and 14562 * "Z_USAGE" as used by zoneadm.) 14563 */ 14564 # 189 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/zone.h" 14565 typedef struct { 14566 const char *zone_name; 14567 const char *zone_root; 14568 const struct priv_set *zone_privs; 14569 size_t zone_privssz; 14570 const char *rctlbuf; 14571 size_t rctlbufsz; 14572 int *extended_error; 14573 const char *zfsbuf; 14574 size_t zfsbufsz; 14575 int match; /* match level */ 14576 uint32_t doi; /* DOI for label */ 14577 const bslabel_t *label; /* label associated with zone */ 14578 int flags; 14579 } zone_def; 14580 14581 /* extended error information */ 14582 14583 14584 14585 14586 14587 /* 14588 * zone_status values 14589 * 14590 * You must modify zone_status_names in mdb(1M)'s genunix module 14591 * (genunix/zone.c) when you modify this enum. 14592 */ 14593 typedef enum { 14594 ZONE_IS_UNINITIALIZED = 0, 14595 ZONE_IS_INITIALIZED, 14596 ZONE_IS_READY, 14597 ZONE_IS_BOOTING, 14598 ZONE_IS_RUNNING, 14599 ZONE_IS_SHUTTING_DOWN, 14600 ZONE_IS_EMPTY, 14601 ZONE_IS_DOWN, 14602 ZONE_IS_DYING, 14603 ZONE_IS_DEAD 14604 } zone_status_t; 14605 14606 14607 14608 /* 14609 * Valid commands which may be issued by zoneadm to zoneadmd. The kernel also 14610 * communicates with zoneadmd, but only uses Z_REBOOT and Z_HALT. 14611 */ 14612 typedef enum zone_cmd { 14613 Z_READY, Z_BOOT, Z_FORCEBOOT, Z_REBOOT, Z_HALT, Z_NOTE_UNINSTALLING, 14614 Z_MOUNT, Z_FORCEMOUNT, Z_UNMOUNT, Z_SHUTDOWN 14615 } zone_cmd_t; 14616 14617 /* 14618 * The structure of a request to zoneadmd. 14619 */ 14620 typedef struct zone_cmd_arg { 14621 uint64_t uniqid; /* unique "generation number" */ 14622 zone_cmd_t cmd; /* requested action */ 14623 uint32_t _pad; /* need consistent 32/64 bit alignmt */ 14624 char locale[1024]; /* locale in which to render messages */ 14625 char bootbuf[256]; /* arguments passed to zone_boot() */ 14626 } zone_cmd_arg_t; 14627 14628 /* 14629 * Structure of zoneadmd's response to a request. A NULL return value means 14630 * the caller should attempt to restart zoneadmd and retry. 14631 */ 14632 typedef struct zone_cmd_rval { 14633 int rval; /* return value of request */ 14634 char errbuf[1]; /* variable-sized buffer containing error messages */ 14635 } zone_cmd_rval_t; 14636 14637 /* 14638 * The zone support infrastructure uses the zone name as a component 14639 * of unix domain (AF_UNIX) sockets, which are limited to 108 characters 14640 * in length, so ZONENAME_MAX is limited by that. 14641 */ 14642 14643 14644 14645 14646 /* 14647 * Extended Regular expression (see regex(5)) which matches all valid zone 14648 * names. 14649 */ 14650 14651 14652 /* 14653 * Where the zones support infrastructure places temporary files. 14654 */ 14655 14656 14657 /* 14658 * The path to the door used by clients to communicate with zoneadmd. 14659 */ 14660 14661 14662 14663 /* zone_flags */ 14664 /* 14665 * Threads that read or write the following flag must hold zone_lock. 14666 */ 14667 14668 14669 /* 14670 * The following threads are set when the zone is created and never changed. 14671 * Threads that test for these flags don't have to hold zone_lock. 14672 */ 14673 14674 14675 14676 14677 14678 /* zone_create flags */ 14679 14680 14681 /* zone network properties */ 14682 14683 14684 14685 14686 14687 14688 typedef struct zone_net_data { 14689 int zn_type; 14690 int zn_len; 14691 datalink_id_t zn_linkid; 14692 uint8_t zn_val[1]; 14693 } zone_net_data_t; 14694 # 31 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/zone.h" 2 14695 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 1 14696 /* 14697 * CDDL HEADER START 14698 * 14699 * The contents of this file are subject to the terms of the 14700 * Common Development and Distribution License (the "License"). 14701 * You may not use this file except in compliance with the License. 14702 * 14703 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 14704 * or http://www.opensolaris.org/os/licensing. 14705 * See the License for the specific language governing permissions 14706 * and limitations under the License. 14707 * 14708 * When distributing Covered Code, include this CDDL HEADER in each 14709 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 14710 * If applicable, add the following below this CDDL HEADER, with the 14711 * fields enclosed by brackets "[]" replaced with your own identifying 14712 * information: Portions Copyright [yyyy] [name of copyright owner] 14713 * 14714 * CDDL HEADER END 14715 */ 14716 /* 14717 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 14718 * 14719 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 14720 */ 14721 14722 14723 14724 14725 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 14726 /* 14727 * CDDL HEADER START 14728 * 14729 * The contents of this file are subject to the terms of the 14730 * Common Development and Distribution License (the "License"). 14731 * You may not use this file except in compliance with the License. 14732 * 14733 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 14734 * or http://www.opensolaris.org/os/licensing. 14735 * See the License for the specific language governing permissions 14736 * and limitations under the License. 14737 * 14738 * When distributing Covered Code, include this CDDL HEADER in each 14739 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 14740 * If applicable, add the following below this CDDL HEADER, with the 14741 * fields enclosed by brackets "[]" replaced with your own identifying 14742 * information: Portions Copyright [yyyy] [name of copyright owner] 14743 * 14744 * CDDL HEADER END 14745 */ 14746 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 14747 /* All Rights Reserved */ 14748 14749 14750 /* 14751 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 14752 * Use is subject to license terms. 14753 * 14754 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 14755 * Copyright 2016 Joyent, Inc. 14756 */ 14757 # 31 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 2 14758 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/cred.h" 1 14759 /* 14760 * CDDL HEADER START 14761 * 14762 * The contents of this file are subject to the terms of the 14763 * Common Development and Distribution License (the "License"). 14764 * You may not use this file except in compliance with the License. 14765 * 14766 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 14767 * or http://www.opensolaris.org/os/licensing. 14768 * See the License for the specific language governing permissions 14769 * and limitations under the License. 14770 * 14771 * When distributing Covered Code, include this CDDL HEADER in each 14772 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 14773 * If applicable, add the following below this CDDL HEADER, with the 14774 * fields enclosed by brackets "[]" replaced with your own identifying 14775 * information: Portions Copyright [yyyy] [name of copyright owner] 14776 * 14777 * CDDL HEADER END 14778 */ 14779 /* 14780 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 14781 * Use is subject to license terms. 14782 */ 14783 14784 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 14785 /* All Rights Reserved */ 14786 14787 /* 14788 * Portions of this source code were derived from Berkeley 4.3 BSD 14789 * under license from the Regents of the University of California. 14790 */ 14791 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 2 14792 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv_names.h" 1 14793 /* 14794 * CDDL HEADER START 14795 * 14796 * The contents of this file are subject to the terms of the 14797 * Common Development and Distribution License (the "License"). 14798 * You may not use this file except in compliance with the License. 14799 * 14800 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 14801 * or http://www.opensolaris.org/os/licensing. 14802 * See the License for the specific language governing permissions 14803 * and limitations under the License. 14804 * 14805 * When distributing Covered Code, include this CDDL HEADER in each 14806 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 14807 * If applicable, add the following below this CDDL HEADER, with the 14808 * fields enclosed by brackets "[]" replaced with your own identifying 14809 * information: Portions Copyright [yyyy] [name of copyright owner] 14810 * 14811 * CDDL HEADER END 14812 */ 14813 /* 14814 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 14815 * Copyright 2015, Joyent, Inc. All rights reserved. 14816 * 14817 * Privilege constant definitions. Privileges and privilege sets 14818 * are only known by name and should be mapped at runtime. 14819 * 14820 * THIS FILE WAS GENERATED; DO NOT EDIT 14821 */ 14822 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv_names.h" 14823 /* 14824 * Privilege names 14825 */ 14826 /* 14827 * Allows a process to request critical events without limitation. 14828 * Allows a process to request reliable delivery of all events on 14829 * any event queue. 14830 */ 14831 14832 14833 /* 14834 * Allows a process to set the service FMRI value of a process 14835 * contract template. 14836 */ 14837 14838 14839 /* 14840 * Allows a process to observe contract events generated by 14841 * contracts created and owned by users other than the process's 14842 * effective user ID. 14843 * Allows a process to open contract event endpoints belonging to 14844 * contracts created and owned by users other than the process's 14845 * effective user ID. 14846 */ 14847 14848 14849 /* 14850 * Allow a process to access per-CPU hardware performance counters. 14851 */ 14852 14853 14854 /* 14855 * Allows DTrace kernel-level tracing. 14856 */ 14857 14858 14859 /* 14860 * Allows DTrace process-level tracing. 14861 * Allows process-level tracing probes to be placed and enabled in 14862 * processes to which the user has permissions. 14863 */ 14864 14865 14866 /* 14867 * Allows DTrace user-level tracing. 14868 * Allows use of the syscall and profile DTrace providers to 14869 * examine processes to which the user has permissions. 14870 */ 14871 14872 14873 /* 14874 * Allows a process to change a file's owner user ID. 14875 * Allows a process to change a file's group ID to one other than 14876 * the process' effective group ID or one of the process' 14877 * supplemental group IDs. 14878 */ 14879 14880 14881 /* 14882 * Allows a process to give away its files; a process with this 14883 * privilege will run as if {_POSIX_CHOWN_RESTRICTED} is not 14884 * in effect. 14885 */ 14886 14887 14888 /* 14889 * Allows a process to execute an executable file whose permission 14890 * bits or ACL do not allow the process execute permission. 14891 */ 14892 14893 14894 /* 14895 * Allows a process to read a file or directory whose permission 14896 * bits or ACL do not allow the process read permission. 14897 */ 14898 14899 14900 /* 14901 * Allows a process to search a directory whose permission bits or 14902 * ACL do not allow the process search permission. 14903 */ 14904 14905 14906 /* 14907 * Allows a process to write a file or directory whose permission 14908 * bits or ACL do not allow the process write permission. 14909 * In order to write files owned by uid 0 in the absence of an 14910 * effective uid of 0 ALL privileges are required. 14911 */ 14912 14913 14914 /* 14915 * Allows a process to set the sensitivity label of a file or 14916 * directory to a sensitivity label that does not dominate the 14917 * existing sensitivity label. 14918 * This privilege is interpreted only if the system is configured 14919 * with Trusted Extensions. 14920 */ 14921 14922 14923 /* 14924 * Allows a process to set immutable, nounlink or appendonly 14925 * file attributes. 14926 */ 14927 14928 14929 /* 14930 * Allows a process to create hardlinks to files owned by a uid 14931 * different from the process' effective uid. 14932 */ 14933 14934 14935 /* 14936 * Allows a process which is not the owner of a file or directory 14937 * to perform the following operations that are normally permitted 14938 * only for the file owner: modify that file's access and 14939 * modification times; remove or rename a file or directory whose 14940 * parent directory has the ``save text image after execution'' 14941 * (sticky) bit set; mount a ``namefs'' upon a file; modify 14942 * permission bits or ACL except for the set-uid and set-gid 14943 * bits. 14944 */ 14945 14946 14947 /* 14948 * Allows a process to read objects in the filesystem. 14949 */ 14950 14951 14952 /* 14953 * Allows a process to change the ownership of a file or write to 14954 * a file without the set-user-ID and set-group-ID bits being 14955 * cleared. 14956 * Allows a process to set the set-group-ID bit on a file or 14957 * directory whose group is not the process' effective group or 14958 * one of the process' supplemental groups. 14959 * Allows a process to set the set-user-ID bit on a file with 14960 * different ownership in the presence of PRIV_FILE_OWNER. 14961 * Additional restrictions apply when creating or modifying a 14962 * set-uid 0 file. 14963 */ 14964 14965 14966 /* 14967 * Allows a process to set the sensitivity label of a file or 14968 * directory to a sensitivity label that dominates the existing 14969 * sensitivity label. 14970 * This privilege is interpreted only if the system is configured 14971 * with Trusted Extensions. 14972 */ 14973 14974 14975 /* 14976 * Allows a process to modify objects in the filesystem. 14977 */ 14978 14979 14980 /* 14981 * Allows a process to make privileged ioctls to graphics devices. 14982 * Typically only xserver process needs to have this privilege. 14983 * A process with this privilege is also allowed to perform 14984 * privileged graphics device mappings. 14985 */ 14986 14987 14988 /* 14989 * Allows a process to perform privileged mappings through a 14990 * graphics device. 14991 */ 14992 14993 14994 /* 14995 * Allows a process to read a System V IPC 14996 * Message Queue, Semaphore Set, or Shared Memory Segment whose 14997 * permission bits do not allow the process read permission. 14998 * Allows a process to read remote shared memory whose 14999 * permission bits do not allow the process read permission. 15000 */ 15001 15002 15003 /* 15004 * Allows a process to write a System V IPC 15005 * Message Queue, Semaphore Set, or Shared Memory Segment whose 15006 * permission bits do not allow the process write permission. 15007 * Allows a process to read remote shared memory whose 15008 * permission bits do not allow the process write permission. 15009 * Additional restrictions apply if the owner of the object has uid 0 15010 * and the effective uid of the current process is not 0. 15011 */ 15012 15013 15014 /* 15015 * Allows a process which is not the owner of a System 15016 * V IPC Message Queue, Semaphore Set, or Shared Memory Segment to 15017 * remove, change ownership of, or change permission bits of the 15018 * Message Queue, Semaphore Set, or Shared Memory Segment. 15019 * Additional restrictions apply if the owner of the object has uid 0 15020 * and the effective uid of the current process is not 0. 15021 */ 15022 15023 15024 /* 15025 * Allows a process to open a TCP, UDP, SDP or SCTP network endpoint. 15026 */ 15027 15028 15029 /* 15030 * Allow a process to bind to a port that is configured as a 15031 * multi-level port(MLP) for the process's zone. This privilege 15032 * applies to both shared address and zone-specific address MLPs. 15033 * See tnzonecfg(4) from the Trusted Extensions manual pages for 15034 * information on configuring MLP ports. 15035 * This privilege is interpreted only if the system is configured 15036 * with Trusted Extensions. 15037 */ 15038 15039 15040 /* 15041 * Allows a process to send and receive ICMP packets. 15042 */ 15043 15044 15045 /* 15046 * Allows a process to set NET_MAC_AWARE process flag by using 15047 * setpflags(2). This privilege also allows a process to set 15048 * SO_MAC_EXEMPT socket option by using setsockopt(3SOCKET). 15049 * The NET_MAC_AWARE process flag and the SO_MAC_EXEMPT socket 15050 * option both allow a local process to communicate with an 15051 * unlabeled peer if the local process' label dominates the 15052 * peer's default label, or if the local process runs in the 15053 * global zone. 15054 * This privilege is interpreted only if the system is configured 15055 * with Trusted Extensions. 15056 */ 15057 15058 15059 /* 15060 * Allows a process to set SO_MAC_IMPLICIT option by using 15061 * setsockopt(3SOCKET). This allows a privileged process to 15062 * transmit implicitly-labeled packets to a peer. 15063 * This privilege is interpreted only if the system is configured 15064 * with Trusted Extensions. 15065 */ 15066 15067 15068 /* 15069 * Allows a process to access /dev/lo0 and the devices in /dev/ipnet/ 15070 * while not requiring them to need PRIV_NET_RAWACCESS. 15071 */ 15072 15073 15074 /* 15075 * Allows a process to bind to a privileged port 15076 * number. The privilege port numbers are 1-1023 (the traditional 15077 * UNIX privileged ports) as well as those ports marked as 15078 * "udp/tcp_extra_priv_ports" with the exception of the ports 15079 * reserved for use by NFS. 15080 */ 15081 15082 15083 /* 15084 * Allows a process to have direct access to the network layer. 15085 */ 15086 15087 15088 /* 15089 * Allows a process to generate audit records. 15090 * Allows a process to get its own audit pre-selection information. 15091 */ 15092 15093 15094 /* 15095 * Allows a process to change its root directory. 15096 */ 15097 15098 15099 /* 15100 * Allows a process to use high resolution timers. 15101 */ 15102 15103 15104 /* 15105 * Allows a process to call execve(). 15106 */ 15107 15108 15109 /* 15110 * Allows a process to call fork1()/forkall()/vfork() 15111 */ 15112 15113 15114 /* 15115 * Allows a process to examine the status of processes other 15116 * than those it can send signals to. Processes which cannot 15117 * be examined cannot be seen in /proc and appear not to exist. 15118 */ 15119 15120 15121 /* 15122 * Allows a process to lock pages in physical memory. 15123 */ 15124 15125 15126 /* 15127 * Allows a process to access physical memory information. 15128 */ 15129 15130 15131 /* 15132 * Allows a process to send signals to other processes, inspect 15133 * and modify process state to other processes regardless of 15134 * ownership. When modifying another process, additional 15135 * restrictions apply: the effective privilege set of the 15136 * attaching process must be a superset of the target process' 15137 * effective, permitted and inheritable sets; the limit set must 15138 * be a superset of the target's limit set; if the target process 15139 * has any uid set to 0 all privilege must be asserted unless the 15140 * effective uid is 0. 15141 * Allows a process to bind arbitrary processes to CPUs. 15142 */ 15143 15144 15145 /* 15146 * Allows a process to elevate its priority above its current level. 15147 */ 15148 15149 15150 /* 15151 * Allows all that PRIV_PROC_PRIOUP allows. 15152 * Allows a process to change its scheduling class to any scheduling class, 15153 * including the RT class. 15154 */ 15155 15156 15157 /* 15158 * Allows a process to send signals or trace processes outside its 15159 * session. 15160 */ 15161 15162 15163 /* 15164 * Allows a process to set its uids at will. 15165 * Assuming uid 0 requires all privileges to be asserted. 15166 */ 15167 15168 15169 /* 15170 * Allows a process to assign a new task ID to the calling process. 15171 */ 15172 15173 15174 /* 15175 * Allows a process to trace or send signals to processes in 15176 * other zones. 15177 */ 15178 15179 15180 /* 15181 * Allows a process to enable and disable and manage accounting through 15182 * acct(2), getacct(2), putacct(2) and wracct(2). 15183 */ 15184 15185 15186 /* 15187 * Allows a process to perform system administration tasks such 15188 * as setting node and domain name and specifying nscd and coreadm 15189 * settings. 15190 */ 15191 15192 15193 /* 15194 * Allows a process to start the (kernel) audit daemon. 15195 * Allows a process to view and set audit state (audit user ID, 15196 * audit terminal ID, audit sessions ID, audit pre-selection mask). 15197 * Allows a process to turn off and on auditing. 15198 * Allows a process to configure the audit parameters (cache and 15199 * queue sizes, event to class mappings, policy options). 15200 */ 15201 15202 15203 /* 15204 * Allows a process to perform various system configuration tasks. 15205 * Allows a process to add and remove swap devices; when adding a swap 15206 * device, a process must also have sufficient privileges to read from 15207 * and write to the swap device. 15208 */ 15209 15210 15211 /* 15212 * Allows a process to successfully call a kernel module that 15213 * calls the kernel drv_priv(9F) function to check for allowed 15214 * access. 15215 * Allows a process to open the real console device directly. 15216 * Allows a process to open devices that have been exclusively opened. 15217 */ 15218 15219 15220 /* 15221 * Allows a process to increase the size of a System V IPC Message 15222 * Queue buffer. 15223 */ 15224 15225 15226 /* 15227 * Allows a process to unlink and link directories. 15228 */ 15229 15230 15231 /* 15232 * Allows filesystem specific administrative procedures, such as 15233 * filesystem configuration ioctls, quota calls and creation/deletion 15234 * of snapshots. 15235 * Allows a process to mount and unmount filesystems which would 15236 * otherwise be restricted (i.e., most filesystems except 15237 * namefs). 15238 * A process performing a mount operation needs to have 15239 * appropriate access to the device being mounted (read-write for 15240 * "rw" mounts, read for "ro" mounts). 15241 * A process performing any of the aforementioned 15242 * filesystem operations needs to have read/write/owner 15243 * access to the mount point. 15244 * Only regular files and directories can serve as mount points 15245 * for processes which do not have all zone privileges asserted. 15246 * Unless a process has all zone privileges, the mount(2) 15247 * system call will force the "nosuid" and "restrict" options, the 15248 * latter only for autofs mountpoints. 15249 * Regardless of privileges, a process running in a non-global zone may 15250 * only control mounts performed from within said zone. 15251 * Outside the global zone, the "nodevices" option is always forced. 15252 */ 15253 15254 15255 /* 15256 * Allows a process to configure IP tunnel links. 15257 */ 15258 15259 15260 /* 15261 * Allows a process to configure all classes of datalinks, including 15262 * configuration allowed by PRIV_SYS_IPTUN_CONFIG. 15263 */ 15264 15265 15266 /* 15267 * Allows a process to configure a system's IP interfaces and routes. 15268 * Allows a process to configure network parameters using ndd. 15269 * Allows a process access to otherwise restricted information using ndd. 15270 * Allows a process to configure IPsec. 15271 * Allows a process to pop anchored STREAMs modules with matching zoneid. 15272 */ 15273 15274 15275 /* 15276 * Allows all that PRIV_SYS_IP_CONFIG, PRIV_SYS_DL_CONFIG, and 15277 * PRIV_SYS_PPP_CONFIG allow. 15278 * Allows a process to push the rpcmod STREAMs module. 15279 * Allows a process to INSERT/REMOVE STREAMs modules on locations other 15280 * than the top of the module stack. 15281 */ 15282 15283 15284 /* 15285 * Allows a process to perform Sun private NFS specific system calls. 15286 * Allows a process to bind to ports reserved by NFS: ports 2049 (nfs) 15287 * and port 4045 (lockd). 15288 */ 15289 15290 15291 /* 15292 * Allows a process to create and destroy PPP (sppp) interfaces. 15293 * Allows a process to configure PPP tunnels (sppptun). 15294 */ 15295 15296 15297 /* 15298 * Allows a process to bind processes to processor sets. 15299 */ 15300 15301 15302 /* 15303 * Allows all that PRIV_SYS_RES_BIND allows. 15304 * Allows a process to create and delete processor sets, assign 15305 * CPUs to processor sets and override the PSET_NOESCAPE property. 15306 * Allows a process to change the operational status of CPUs in 15307 * the system using p_online(2). 15308 * Allows a process to configure resource pools and to bind 15309 * processes to pools 15310 */ 15311 15312 15313 /* 15314 * Allows a process to modify the resource limits specified 15315 * by setrlimit(2) and setrctl(2) without restriction. 15316 * Allows a process to exceed the per-user maximum number of 15317 * processes. 15318 * Allows a process to extend or create files on a filesystem that 15319 * has less than minfree space in reserve. 15320 */ 15321 15322 15323 /* 15324 * Allows a process to access the Sun private SMB kernel module. 15325 * Allows a process to bind to ports reserved by NetBIOS and SMB: 15326 * ports 137 (NBNS), 138 (NetBIOS Datagram Service), 139 (NetBIOS 15327 * Session Service and SMB-over-NBT) and 445 (SMB-over-TCP). 15328 */ 15329 15330 15331 /* 15332 * Allows a process to successfully call a third party loadable module 15333 * that calls the kernel suser() function to check for allowed access. 15334 * This privilege exists only for third party loadable module 15335 * compatibility and is not used by Solaris proper. 15336 */ 15337 15338 15339 /* 15340 * Allows a process to manipulate system time using any of the 15341 * appropriate system calls: stime, adjtime, ntp_adjtime and 15342 * the IA specific RTC calls. 15343 */ 15344 15345 15346 /* 15347 * Allows a process to translate labels that are not dominated 15348 * by the process' sensitivity label to and from an external 15349 * string form. 15350 * This privilege is interpreted only if the system is configured 15351 * with Trusted Extensions. 15352 */ 15353 15354 15355 /* 15356 * Allows a process to manage virtualized environments such as 15357 * xVM(5). 15358 */ 15359 15360 15361 /* 15362 * Allows a process to override colormap restrictions. 15363 * Allows a process to install or remove colormaps. 15364 * Allows a process to retrieve colormap cell entries allocated 15365 * by other processes. 15366 * This privilege is interpreted only if the system is configured 15367 * with Trusted Extensions. 15368 */ 15369 15370 15371 /* 15372 * Allows a process to configure or destroy resources that are 15373 * permanently retained by the X server. 15374 * Allows a process to use SetScreenSaver to set the screen 15375 * saver timeout value. 15376 * Allows a process to use ChangeHosts to modify the display 15377 * access control list. 15378 * Allows a process to use GrabServer. 15379 * Allows a process to use the SetCloseDownMode request which 15380 * may retain window, pixmap, colormap, property, cursor, font, 15381 * or graphic context resources. 15382 * This privilege is interpreted only if the system is configured 15383 * with Trusted Extensions. 15384 */ 15385 15386 15387 /* 15388 * Allows a process to read from a window resource that it does 15389 * not own (has a different user ID). 15390 * This privilege is interpreted only if the system is configured 15391 * with Trusted Extensions. 15392 */ 15393 15394 15395 /* 15396 * Allows a process to write to or create a window resource that 15397 * it does not own (has a different user ID). A newly created 15398 * window property is created with the window's user ID. 15399 * This privilege is interpreted only if the system is configured 15400 * with Trusted Extensions. 15401 */ 15402 15403 15404 /* 15405 * Allows a process to perform operations on window input devices. 15406 * Allows a process to get and set keyboard and pointer controls. 15407 * Allows a process to modify pointer button and key mappings. 15408 * This privilege is interpreted only if the system is configured 15409 * with Trusted Extensions. 15410 */ 15411 15412 15413 /* 15414 * Allows a process to use the direct graphics access (DGA) X protocol 15415 * extensions. Direct process access to the frame buffer is still 15416 * required. Thus the process must have MAC and DAC privileges that 15417 * allow access to the frame buffer, or the frame buffer must be 15418 * allocated to the process. 15419 * This privilege is interpreted only if the system is configured 15420 * with Trusted Extensions. 15421 */ 15422 15423 15424 /* 15425 * Allows a process to set the sensitivity label of a window resource 15426 * to a sensitivity label that does not dominate the existing 15427 * sensitivity label. 15428 * This privilege is interpreted only if the system is configured 15429 * with Trusted Extensions. 15430 */ 15431 15432 15433 /* 15434 * Allows a process to set a font path. 15435 * This privilege is interpreted only if the system is configured 15436 * with Trusted Extensions. 15437 */ 15438 15439 15440 /* 15441 * Allows a process to read from a window resource whose sensitivity 15442 * label is not equal to the process sensitivity label. 15443 * This privilege is interpreted only if the system is configured 15444 * with Trusted Extensions. 15445 */ 15446 15447 15448 /* 15449 * Allows a process to create a window resource whose sensitivity 15450 * label is not equal to the process sensitivity label. 15451 * A newly created window property is created with the window's 15452 * sensitivity label. 15453 * This privilege is interpreted only if the system is configured 15454 * with Trusted Extensions. 15455 */ 15456 15457 15458 /* 15459 * Allows a process to request inter-window data moves without the 15460 * intervention of the selection confirmer. 15461 * This privilege is interpreted only if the system is configured 15462 * with Trusted Extensions. 15463 */ 15464 15465 15466 /* 15467 * Allows a process to set the sensitivity label of a window 15468 * resource to a sensitivity label that dominates the existing 15469 * sensitivity label. 15470 * This privilege is interpreted only if the system is configured 15471 * with Trusted Extensions. 15472 */ 15473 15474 15475 /* 15476 * Allows a process access to the xVM(5) control devices for 15477 * managing guest domains and the hypervisor. This privilege is 15478 * used only if booted into xVM on x86 platforms. 15479 */ 15480 15481 15482 15483 /* 15484 * Privilege set names 15485 */ 15486 /* 15487 * Set of privileges currently in effect. 15488 */ 15489 15490 15491 /* 15492 * Set of privileges that comes into effect on exec. 15493 */ 15494 15495 15496 /* 15497 * Set of privileges that can be put into the effective set without 15498 * restriction. 15499 */ 15500 15501 15502 /* 15503 * Set of privileges that determines the absolute upper bound of 15504 * privileges this process and its off-spring can obtain. 15505 */ 15506 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 2 15507 15508 15509 15510 15511 15512 typedef uint32_t priv_chunk_t; 15513 typedef struct priv_set priv_set_t; 15514 # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 15515 /* 15516 * Userland type definitions. 15517 */ 15518 15519 typedef const char *priv_ptype_t; 15520 typedef const char *priv_t; 15521 15522 15523 15524 /* 15525 * priv_op_t indicates a privilege operation type 15526 */ 15527 typedef enum priv_op { 15528 PRIV_ON, 15529 PRIV_OFF, 15530 PRIV_SET 15531 } priv_op_t; 15532 15533 /* 15534 * Privilege system call subcodes. 15535 */ 15536 # 85 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 15537 /* 15538 * Maximum length of a user defined privilege name. 15539 */ 15540 15541 15542 /* 15543 * Privilege interface functions for those parts of the kernel that 15544 * know nothing of the privilege internals. 15545 * 15546 * A privilege implementation can have a varying number of sets; sets 15547 * consist of a number of priv_chunk_t's and the size is expressed as such. 15548 * The privileges can be represented as 15549 * 15550 * priv_chunk_t privs[info.priv_nsets][info.priv_setsize] 15551 * ... priv_infosize of extra information ... 15552 * 15553 * Extra data contained in the privilege information consists of chunks 15554 * of data with specified size and type all headed by a priv_info_t header 15555 * which defines both the type of information as well as the size of the 15556 * information. ((char*)&info)+info->priv_info_size should be rounded up 15557 * to point to the next piece of information. 15558 */ 15559 15560 typedef struct priv_impl_info { 15561 uint32_t priv_headersize; /* sizeof (priv_impl_info) */ 15562 uint32_t priv_flags; /* additional flags */ 15563 uint32_t priv_nsets; /* number of priv sets */ 15564 uint32_t priv_setsize; /* size in priv_chunk_t */ 15565 uint32_t priv_max; /* highest actual valid priv */ 15566 uint32_t priv_infosize; /* Per proc. additional info */ 15567 uint32_t priv_globalinfosize; /* Per system info */ 15568 } priv_impl_info_t; 15569 # 128 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 15570 /* 15571 * Per credential flags. 15572 */ 15573 # 141 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 15574 /* user-settable flags: */ 15575 15576 15577 15578 /* 15579 * Header of the privilege info data structure; multiple structures can 15580 * follow the privilege sets and priv_impl_info structures. 15581 */ 15582 typedef struct priv_info { 15583 uint32_t priv_info_type; 15584 uint32_t priv_info_size; 15585 } priv_info_t; 15586 15587 typedef struct priv_info_uint { 15588 priv_info_t info; 15589 uint_t val; 15590 } priv_info_uint_t; 15591 15592 /* 15593 * Global privilege set information item; the actual size of the array is 15594 * {priv_setsize}. 15595 */ 15596 typedef struct priv_info_set { 15597 priv_info_t info; 15598 priv_chunk_t set[1]; 15599 } priv_info_set_t; 15600 15601 /* 15602 * names[1] is a place holder which can contain multiple NUL terminated, 15603 * non-empty strings. 15604 */ 15605 15606 typedef struct priv_info_names { 15607 priv_info_t info; 15608 int cnt; /* number of strings */ 15609 char names[1]; /* "string1\0string2\0 ..stringN\0" */ 15610 } priv_info_names_t; 15611 15612 /* 15613 * Privilege information types. 15614 */ 15615 15616 15617 15618 15619 15620 /* 15621 * Special "privileges" used to indicate special conditions in privilege 15622 * debugging/tracing code. 15623 */ 15624 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/zone.h" 2 15625 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/tsol/label.h" 1 15626 /* 15627 * CDDL HEADER START 15628 * 15629 * The contents of this file are subject to the terms of the 15630 * Common Development and Distribution License (the "License"). 15631 * You may not use this file except in compliance with the License. 15632 * 15633 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 15634 * or http://www.opensolaris.org/os/licensing. 15635 * See the License for the specific language governing permissions 15636 * and limitations under the License. 15637 * 15638 * When distributing Covered Code, include this CDDL HEADER in each 15639 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15640 * If applicable, add the following below this CDDL HEADER, with the 15641 * fields enclosed by brackets "[]" replaced with your own identifying 15642 * information: Portions Copyright [yyyy] [name of copyright owner] 15643 * 15644 * CDDL HEADER END 15645 */ 15646 /* 15647 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 15648 * Use is subject to license terms. 15649 */ 15650 15651 15652 15653 15654 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types32.h" 1 15655 /* 15656 * CDDL HEADER START 15657 * 15658 * The contents of this file are subject to the terms of the 15659 * Common Development and Distribution License (the "License"). 15660 * You may not use this file except in compliance with the License. 15661 * 15662 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 15663 * or http://www.opensolaris.org/os/licensing. 15664 * See the License for the specific language governing permissions 15665 * and limitations under the License. 15666 * 15667 * When distributing Covered Code, include this CDDL HEADER in each 15668 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15669 * If applicable, add the following below this CDDL HEADER, with the 15670 * fields enclosed by brackets "[]" replaced with your own identifying 15671 * information: Portions Copyright [yyyy] [name of copyright owner] 15672 * 15673 * CDDL HEADER END 15674 */ 15675 /* 15676 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 15677 * Use is subject to license terms. 15678 * Copyright 2015 Nexenta Systems, Inc. 15679 */ 15680 15681 15682 15683 15684 #pragma ident "%Z%%M% %I% %E% SMI" 15685 15686 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/int_types.h" 1 15687 /* 15688 * CDDL HEADER START 15689 * 15690 * The contents of this file are subject to the terms of the 15691 * Common Development and Distribution License, Version 1.0 only 15692 * (the "License"). You may not use this file except in compliance 15693 * with the License. 15694 * 15695 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 15696 * or http://www.opensolaris.org/os/licensing. 15697 * See the License for the specific language governing permissions 15698 * and limitations under the License. 15699 * 15700 * When distributing Covered Code, include this CDDL HEADER in each 15701 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15702 * If applicable, add the following below this CDDL HEADER, with the 15703 * fields enclosed by brackets "[]" replaced with your own identifying 15704 * information: Portions Copyright [yyyy] [name of copyright owner] 15705 * 15706 * CDDL HEADER END 15707 */ 15708 /* 15709 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 15710 * 15711 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 15712 * Use is subject to license terms. 15713 */ 15714 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types32.h" 2 15715 15716 15717 15718 15719 15720 /* 15721 * Interoperability types for programs. Used for: 15722 * 15723 * Crossing between 32-bit and 64-bit domains. 15724 * 15725 * On disk data formats such as filesystem meta data 15726 * and disk label. 15727 * 15728 * Note: Applications should never include this 15729 * header file. 15730 */ 15731 typedef uint32_t caddr32_t; 15732 typedef int32_t daddr32_t; 15733 typedef int32_t off32_t; 15734 typedef uint32_t ino32_t; 15735 typedef int32_t blkcnt32_t; 15736 typedef uint32_t fsblkcnt32_t; 15737 typedef uint32_t fsfilcnt32_t; 15738 typedef int32_t id32_t; 15739 typedef uint32_t major32_t; 15740 typedef uint32_t minor32_t; 15741 typedef int32_t key32_t; 15742 typedef uint32_t mode32_t; 15743 typedef uint32_t uid32_t; 15744 typedef uint32_t gid32_t; 15745 typedef uint32_t nlink32_t; 15746 typedef uint32_t dev32_t; 15747 typedef int32_t pid32_t; 15748 typedef uint32_t size32_t; 15749 typedef int32_t ssize32_t; 15750 typedef int32_t time32_t; 15751 typedef int32_t clock32_t; 15752 typedef uint32_t uintptr32_t; 15753 typedef int32_t intptr32_t; 15754 15755 struct timeval32 { 15756 time32_t tv_sec; /* seconds */ 15757 int32_t tv_usec; /* and microseconds */ 15758 }; 15759 15760 typedef struct timespec32 { 15761 time32_t tv_sec; /* seconds */ 15762 int32_t tv_nsec; /* and nanoseconds */ 15763 } timespec32_t; 15764 15765 typedef struct timespec32 timestruc32_t; 15766 15767 typedef struct itimerspec32 { 15768 struct timespec32 it_interval; 15769 struct timespec32 it_value; 15770 } itimerspec32_t; 15771 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/tsol/label.h" 2 15772 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/tsol/label.h" 1 15773 /* 15774 * CDDL HEADER START 15775 * 15776 * The contents of this file are subject to the terms of the 15777 * Common Development and Distribution License (the "License"). 15778 * You may not use this file except in compliance with the License. 15779 * 15780 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 15781 * or http://www.opensolaris.org/os/licensing. 15782 * See the License for the specific language governing permissions 15783 * and limitations under the License. 15784 * 15785 * When distributing Covered Code, include this CDDL HEADER in each 15786 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15787 * If applicable, add the following below this CDDL HEADER, with the 15788 * fields enclosed by brackets "[]" replaced with your own identifying 15789 * information: Portions Copyright [yyyy] [name of copyright owner] 15790 * 15791 * CDDL HEADER END 15792 */ 15793 /* 15794 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 15795 * Use is subject to license terms. 15796 */ 15797 # 31 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/tsol/label.h" 2 15798 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/priv.h" 1 15799 /* 15800 * CDDL HEADER START 15801 * 15802 * The contents of this file are subject to the terms of the 15803 * Common Development and Distribution License (the "License"). 15804 * You may not use this file except in compliance with the License. 15805 * 15806 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 15807 * or http://www.opensolaris.org/os/licensing. 15808 * See the License for the specific language governing permissions 15809 * and limitations under the License. 15810 * 15811 * When distributing Covered Code, include this CDDL HEADER in each 15812 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15813 * If applicable, add the following below this CDDL HEADER, with the 15814 * fields enclosed by brackets "[]" replaced with your own identifying 15815 * information: Portions Copyright [yyyy] [name of copyright owner] 15816 * 15817 * CDDL HEADER END 15818 */ 15819 /* 15820 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 15821 * 15822 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 15823 * Use is subject to license terms. 15824 */ 15825 15826 15827 15828 15829 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/priv.h" 1 15830 /* 15831 * CDDL HEADER START 15832 * 15833 * The contents of this file are subject to the terms of the 15834 * Common Development and Distribution License (the "License"). 15835 * You may not use this file except in compliance with the License. 15836 * 15837 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 15838 * or http://www.opensolaris.org/os/licensing. 15839 * See the License for the specific language governing permissions 15840 * and limitations under the License. 15841 * 15842 * When distributing Covered Code, include this CDDL HEADER in each 15843 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15844 * If applicable, add the following below this CDDL HEADER, with the 15845 * fields enclosed by brackets "[]" replaced with your own identifying 15846 * information: Portions Copyright [yyyy] [name of copyright owner] 15847 * 15848 * CDDL HEADER END 15849 */ 15850 /* 15851 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 15852 * 15853 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 15854 */ 15855 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/priv.h" 2 15856 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/priv.h" 15857 /* 15858 * library functions prototype. 15859 */ 15860 15861 extern int setppriv(priv_op_t, priv_ptype_t, const priv_set_t *); 15862 extern int getppriv(priv_ptype_t, priv_set_t *); 15863 extern int setpflags(uint_t, uint_t); 15864 extern uint_t getpflags(uint_t); 15865 extern const priv_impl_info_t *getprivimplinfo(void); 15866 15867 extern int priv_set(priv_op_t, priv_ptype_t, ...); 15868 extern boolean_t priv_ineffect(const char *); 15869 extern priv_set_t *priv_str_to_set(const char *, const char *, const char **); 15870 extern char *priv_set_to_str(const priv_set_t *, char, int); 15871 15872 extern int priv_getbyname(const char *); 15873 extern const char *priv_getbynum(int); 15874 extern int priv_getsetbyname(const char *); 15875 extern const char *priv_getsetbynum(int); 15876 extern char *priv_gettext(const char *); 15877 15878 extern priv_set_t *priv_allocset(void); 15879 extern void priv_freeset(priv_set_t *); 15880 15881 extern void priv_emptyset(priv_set_t *); 15882 extern void priv_basicset(priv_set_t *); 15883 extern void priv_fillset(priv_set_t *); 15884 extern boolean_t priv_isemptyset(const priv_set_t *); 15885 extern boolean_t priv_isfullset(const priv_set_t *); 15886 extern boolean_t priv_isequalset(const priv_set_t *, const priv_set_t *); 15887 extern boolean_t priv_issubset(const priv_set_t *, const priv_set_t *); 15888 extern void priv_intersect(const priv_set_t *, priv_set_t *); 15889 extern void priv_union(const priv_set_t *, priv_set_t *); 15890 extern void priv_inverse(priv_set_t *); 15891 extern int priv_addset(priv_set_t *, const char *); 15892 extern void priv_copyset(const priv_set_t *, priv_set_t *); 15893 extern int priv_delset(priv_set_t *, const char *); 15894 extern boolean_t priv_ismember(const priv_set_t *, const char *); 15895 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/tsol/label.h" 2 15896 15897 15898 15899 15900 15901 /* Procedural Interface Structure Definitions */ 15902 15903 struct label_info { /* structure returned by label_info */ 15904 short ilabel_len; /* max Information Label length */ 15905 short slabel_len; /* max Sensitivity Label length */ 15906 short clabel_len; /* max CMW Label length */ 15907 short clear_len; /* max Clearance Label length */ 15908 short vers_len; /* version string length */ 15909 short header_len; /* max len of banner page header */ 15910 short protect_as_len; /* max len of banner page protect as */ 15911 short caveats_len; /* max len of banner page caveats */ 15912 short channels_len; /* max len of banner page channels */ 15913 }; 15914 15915 typedef struct label_set_identifier { /* valid label set identifier */ 15916 int type; /* type of the set */ 15917 char *name; /* name of the set if needed */ 15918 } set_id; 15919 15920 struct name_fields { /* names for label builder fields */ 15921 char *class_name; /* Classifications field name */ 15922 char *comps_name; /* Compartments field name */ 15923 char *marks_name; /* Markings field name */ 15924 }; 15925 15926 /* Label Set Identifier Types */ 15927 15928 /* 15929 * The accreditation ranges as specified in the label encodings file. 15930 * The name parameter is ignored. 15931 * 15932 * System Accreditation Range is all valid labels plus Admin High and Low. 15933 * 15934 * User Accreditation Range is valid user labels as defined in the 15935 * ACCREDITATION RANGE: section of the label encodings file. 15936 */ 15937 15938 15939 15940 15941 15942 /* System Call Interface Definitions */ 15943 15944 extern int getlabel(const char *, m_label_t *); 15945 extern int fgetlabel(int, m_label_t *); 15946 15947 extern int getplabel(m_label_t *); 15948 extern int setflabel(const char *, m_label_t *); 15949 extern char *getpathbylabel(const char *, char *, size_t, 15950 const m_label_t *sl); 15951 extern m_label_t *getzonelabelbyid(zoneid_t); 15952 extern m_label_t *getzonelabelbyname(const char *); 15953 extern zoneid_t getzoneidbylabel(const m_label_t *); 15954 extern char *getzonenamebylabel(const m_label_t *); 15955 extern char *getzonerootbyid(zoneid_t); 15956 extern char *getzonerootbyname(const char *); 15957 extern char *getzonerootbylabel(const m_label_t *); 15958 extern m_label_t *getlabelbypath(const char *); 15959 15960 15961 /* Flag word values */ 15962 # 114 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/tsol/label.h" 15963 /* implies NEW_LABEL */ 15964 15965 15966 15967 15968 /* Procedure Interface Definitions available to user */ 15969 15970 /* APIs shared with the kernel are in <sys/tsol/label.h */ 15971 15972 extern m_label_t *blabel_alloc(void); 15973 extern void blabel_free(m_label_t *); 15974 extern size32_t blabel_size(void); 15975 extern char *bsltoh(const m_label_t *); 15976 extern char *bcleartoh(const m_label_t *); 15977 15978 extern char *bsltoh_r(const m_label_t *, char *); 15979 extern char *bcleartoh_r(const m_label_t *, char *); 15980 extern char *h_alloc(uint8_t); 15981 extern void h_free(char *); 15982 15983 extern int htobsl(const char *, m_label_t *); 15984 extern int htobclear(const char *, m_label_t *); 15985 15986 extern m_range_t *getuserrange(const char *); 15987 extern m_range_t *getdevicerange(const char *); 15988 15989 extern int set_effective_priv(priv_op_t, int, ...); 15990 extern int set_inheritable_priv(priv_op_t, int, ...); 15991 extern int set_permitted_priv(priv_op_t, int, ...); 15992 extern int is_system_labeled(void); 15993 15994 /* Procedures needed for multi-level printing */ 15995 15996 extern int tsol_check_admin_auth(uid_t uid); 15997 15998 /* APIs implemented via labeld */ 15999 16000 extern int blinset(const m_label_t *, const set_id *); 16001 extern int labelinfo(struct label_info *); 16002 extern ssize_t labelvers(char **, size_t); 16003 extern char *bltocolor(const m_label_t *); 16004 extern char *bltocolor_r(const m_label_t *, size_t, char *); 16005 16006 extern ssize_t bsltos(const m_label_t *, char **, size_t, int); 16007 extern ssize_t bcleartos(const m_label_t *, char **, size_t, int); 16008 16009 16010 extern char *sbsltos(const m_label_t *, size_t); 16011 extern char *sbcleartos(const m_label_t *, size_t); 16012 16013 16014 extern int stobsl(const char *, m_label_t *, int, int *); 16015 extern int stobclear(const char *, m_label_t *, int, int *); 16016 extern int bslvalid(const m_label_t *); 16017 extern int bclearvalid(const m_label_t *); 16018 16019 /* DIA label conversion and parsing */ 16020 16021 /* Conversion types */ 16022 16023 typedef enum _m_label_str { 16024 M_LABEL = 1, /* process or user clearance */ 16025 M_INTERNAL = 2, /* internal form for use in public databases */ 16026 M_COLOR = 3, /* process label color */ 16027 PRINTER_TOP_BOTTOM = 4, /* DIA banner page top/bottom */ 16028 PRINTER_LABEL = 5, /* DIA banner page label */ 16029 PRINTER_CAVEATS = 6, /* DIA banner page caveats */ 16030 PRINTER_CHANNELS = 7 /* DIA banner page handling channels */ 16031 } m_label_str_t; 16032 16033 /* Flags for conversion, not all flags apply to all types */ 16034 16035 16036 16037 16038 extern int label_to_str(const m_label_t *, char **, const m_label_str_t, 16039 uint_t); 16040 extern int l_to_str_internal(const m_label_t *, char **); 16041 16042 /* Parsing types */ 16043 typedef enum _m_label_type { 16044 MAC_LABEL = 1, /* process or object label */ 16045 USER_CLEAR = 2 /* user's clearance (LUB) */ 16046 } m_label_type_t; 16047 16048 /* Flags for parsing */ 16049 16050 16051 16052 16053 16054 16055 /* EINVAL sub codes */ 16056 16057 16058 16059 /* bad requested label type, bad previous label type */ 16060 16061 16062 extern int str_to_label(const char *, m_label_t **, const m_label_type_t, 16063 uint_t, int *); 16064 extern int hexstr_to_label(const char *, m_label_t *); 16065 16066 extern m_label_t *m_label_alloc(const m_label_type_t); 16067 16068 extern int m_label_dup(m_label_t **, const m_label_t *); 16069 16070 extern void m_label_free(m_label_t *); 16071 16072 /* Contract Private interfaces with the label builder GUIs */ 16073 16074 extern int bslcvtfull(const m_label_t *, const m_range_t *, int, 16075 char **, char **[], char **[], char *[], int *, int *); 16076 extern int bslcvt(const m_label_t *, int, char **, char *[]); 16077 extern int bclearcvtfull(const m_label_t *, const m_range_t *, int, 16078 char **, char **[], char **[], char *[], int *, int *); 16079 extern int bclearcvt(const m_label_t *, int, char **, char *[]); 16080 16081 extern int labelfields(struct name_fields *); 16082 extern int userdefs(m_label_t *, m_label_t *); 16083 extern int zonecopy(m_label_t *, char *, char *, char *, int); 16084 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/zone.h" 2 16085 16086 16087 16088 16089 16090 /* 16091 * Functions for mapping between id and name for active zones. 16092 */ 16093 extern zoneid_t getzoneid(void); 16094 extern zoneid_t getzoneidbyname(const char *); 16095 extern ssize_t getzonenamebyid(zoneid_t, char *, size_t); 16096 16097 /* 16098 * NOTE 16099 * 16100 * The remaining contents of this file are private to the implementation 16101 * of Solaris and are subject to change at any time without notice, 16102 * Applications using these interfaces may fail to run on future releases. 16103 */ 16104 16105 extern int zonept(int, zoneid_t); 16106 extern int zone_get_id(const char *, zoneid_t *); 16107 16108 /* System call API */ 16109 extern zoneid_t zone_create(const char *, const char *, 16110 const struct priv_set *, const char *, size_t, const char *, size_t, int *, 16111 int, int, const bslabel_t *, int); 16112 extern int zone_boot(zoneid_t); 16113 extern int zone_destroy(zoneid_t); 16114 extern ssize_t zone_getattr(zoneid_t, int, void *, size_t); 16115 extern int zone_setattr(zoneid_t, int, void *, size_t); 16116 extern int zone_enter(zoneid_t); 16117 extern int zone_list(zoneid_t *, uint_t *); 16118 extern int zone_shutdown(zoneid_t); 16119 extern int zone_version(int *); 16120 extern int zone_add_datalink(zoneid_t, datalink_id_t); 16121 extern int zone_remove_datalink(zoneid_t, datalink_id_t); 16122 extern int zone_check_datalink(zoneid_t *, datalink_id_t); 16123 extern int zone_list_datalink(zoneid_t, int *, datalink_id_t *); 16124 # 46 "../common/instzones_lib.h" 2 16125 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 1 16126 /* 16127 * CDDL HEADER START 16128 * 16129 * The contents of this file are subject to the terms of the 16130 * Common Development and Distribution License (the "License"). 16131 * You may not use this file except in compliance with the License. 16132 * 16133 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16134 * or http://www.opensolaris.org/os/licensing. 16135 * See the License for the specific language governing permissions 16136 * and limitations under the License. 16137 * 16138 * When distributing Covered Code, include this CDDL HEADER in each 16139 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16140 * If applicable, add the following below this CDDL HEADER, with the 16141 * fields enclosed by brackets "[]" replaced with your own identifying 16142 * information: Portions Copyright [yyyy] [name of copyright owner] 16143 * 16144 * CDDL HEADER END 16145 */ 16146 16147 /* 16148 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 16149 */ 16150 16151 16152 16153 16154 /* 16155 * Zone configuration header file. 16156 */ 16157 16158 16159 16160 16161 16162 /* sys/socket.h is required by net/if.h, which has a constant needed here */ 16163 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 1 16164 /* 16165 * CDDL HEADER START 16166 * 16167 * The contents of this file are subject to the terms of the 16168 * Common Development and Distribution License (the "License"). 16169 * You may not use this file except in compliance with the License. 16170 * 16171 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16172 * or http://www.opensolaris.org/os/licensing. 16173 * See the License for the specific language governing permissions 16174 * and limitations under the License. 16175 * 16176 * When distributing Covered Code, include this CDDL HEADER in each 16177 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16178 * If applicable, add the following below this CDDL HEADER, with the 16179 * fields enclosed by brackets "[]" replaced with your own identifying 16180 * information: Portions Copyright [yyyy] [name of copyright owner] 16181 * 16182 * CDDL HEADER END 16183 */ 16184 16185 /* 16186 * Copyright 2014 Nexenta Systems, Inc. All rights reserved. 16187 * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. 16188 */ 16189 16190 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 16191 /* All Rights Reserved */ 16192 16193 /* 16194 * University Copyright- Copyright (c) 1982, 1986, 1988 16195 * The Regents of the University of California 16196 * All Rights Reserved 16197 * 16198 * University Acknowledgment- Portions of this document are derived from 16199 * software developed by the University of California, Berkeley, and its 16200 * contributors. 16201 */ 16202 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 16203 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fstyp.h" 1 16204 /* 16205 * CDDL HEADER START 16206 * 16207 * The contents of this file are subject to the terms of the 16208 * Common Development and Distribution License, Version 1.0 only 16209 * (the "License"). You may not use this file except in compliance 16210 * with the License. 16211 * 16212 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16213 * or http://www.opensolaris.org/os/licensing. 16214 * See the License for the specific language governing permissions 16215 * and limitations under the License. 16216 * 16217 * When distributing Covered Code, include this CDDL HEADER in each 16218 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16219 * If applicable, add the following below this CDDL HEADER, with the 16220 * fields enclosed by brackets "[]" replaced with your own identifying 16221 * information: Portions Copyright [yyyy] [name of copyright owner] 16222 * 16223 * CDDL HEADER END 16224 */ 16225 /* 16226 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 16227 */ 16228 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 16229 /* All Rights Reserved */ 16230 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/fstyp.h" 16231 /* 16232 * Opcodes for the sysfs() system call. 16233 */ 16234 16235 16236 16237 16238 16239 int sysfs(int, ...); 16240 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 16241 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mount.h" 1 16242 /* 16243 * CDDL HEADER START 16244 * 16245 * The contents of this file are subject to the terms of the 16246 * Common Development and Distribution License, Version 1.0 only 16247 * (the "License"). You may not use this file except in compliance 16248 * with the License. 16249 * 16250 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16251 * or http://www.opensolaris.org/os/licensing. 16252 * See the License for the specific language governing permissions 16253 * and limitations under the License. 16254 * 16255 * When distributing Covered Code, include this CDDL HEADER in each 16256 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16257 * If applicable, add the following below this CDDL HEADER, with the 16258 * fields enclosed by brackets "[]" replaced with your own identifying 16259 * information: Portions Copyright [yyyy] [name of copyright owner] 16260 * 16261 * CDDL HEADER END 16262 */ 16263 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 16264 /* All Rights Reserved */ 16265 16266 16267 /* 16268 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 16269 * 16270 * Copyright (c) 1996, 1999 by Sun Microsystems, Inc. 16271 * All rights reserved. 16272 */ 16273 # 40 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mount.h" 16274 /* 16275 * Flag bits passed to mount(2). 16276 */ 16277 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mount.h" 16278 /* 16279 * Additional flag bits that domount() is prepared to interpret, but that 16280 * can't be passed through mount(2). 16281 */ 16282 16283 16284 16285 /* 16286 * Mask to sift out flag bits allowable from mount(2). 16287 */ 16288 16289 16290 16291 16292 /* 16293 * Mask to sift out flag bits allowable from umount2(2). 16294 */ 16295 16296 16297 16298 /* 16299 * Maximum option string length accepted or returned by mount(2). 16300 */ 16301 16302 16303 16304 int mount(const char *, const char *, int, ...); 16305 int umount(const char *); 16306 int umount2(const char *, int); 16307 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 16308 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/priv.h" 1 16309 /* 16310 * CDDL HEADER START 16311 * 16312 * The contents of this file are subject to the terms of the 16313 * Common Development and Distribution License (the "License"). 16314 * You may not use this file except in compliance with the License. 16315 * 16316 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16317 * or http://www.opensolaris.org/os/licensing. 16318 * See the License for the specific language governing permissions 16319 * and limitations under the License. 16320 * 16321 * When distributing Covered Code, include this CDDL HEADER in each 16322 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16323 * If applicable, add the following below this CDDL HEADER, with the 16324 * fields enclosed by brackets "[]" replaced with your own identifying 16325 * information: Portions Copyright [yyyy] [name of copyright owner] 16326 * 16327 * CDDL HEADER END 16328 */ 16329 /* 16330 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 16331 * 16332 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 16333 * Use is subject to license terms. 16334 */ 16335 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 16336 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 16337 /* 16338 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 16339 * Use is subject to license terms. 16340 * 16341 * Copyright 2011 Nexenta Systems, Inc. All rights reserved. 16342 */ 16343 /* 16344 * Copyright (c) 1982, 1986 Regents of the University of California. 16345 * All rights reserved. 16346 * 16347 * Redistribution and use in source and binary forms are permitted 16348 * provided that this notice is preserved and that due credit is given 16349 * to the University of California at Berkeley. The name of the University 16350 * may not be used to endorse or promote products derived from this 16351 * software without specific prior written permission. This software 16352 * is provided ``as is'' without express or implied warranty. 16353 */ 16354 16355 /* 16356 * Constants and structures defined by the internet system, 16357 * according to following documents 16358 * 16359 * Internet ASSIGNED NUMBERS (RFC1700) and its successors: 16360 * http://www.iana.org/assignments/protocol-numbers 16361 * http://www.iana.org/assignments/port-numbers 16362 * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) 16363 * 16364 */ 16365 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 16366 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 1 16367 /* 16368 * CDDL HEADER START 16369 * 16370 * The contents of this file are subject to the terms of the 16371 * Common Development and Distribution License (the "License"). 16372 * You may not use this file except in compliance with the License. 16373 * 16374 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16375 * or http://www.opensolaris.org/os/licensing. 16376 * See the License for the specific language governing permissions 16377 * and limitations under the License. 16378 * 16379 * When distributing Covered Code, include this CDDL HEADER in each 16380 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16381 * If applicable, add the following below this CDDL HEADER, with the 16382 * fields enclosed by brackets "[]" replaced with your own identifying 16383 * information: Portions Copyright [yyyy] [name of copyright owner] 16384 * 16385 * CDDL HEADER END 16386 */ 16387 /* 16388 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 16389 * 16390 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 16391 */ 16392 16393 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 16394 /* All Rights Reserved */ 16395 16396 /* 16397 * University Copyright- Copyright (c) 1982, 1986, 1988 16398 * The Regents of the University of California 16399 * All Rights Reserved 16400 * 16401 * University Acknowledgment- Portions of this document are derived from 16402 * software developed by the University of California, Berkeley, and its 16403 * contributors. 16404 */ 16405 16406 /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ 16407 16408 16409 16410 16411 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 16412 /* 16413 * CDDL HEADER START 16414 * 16415 * The contents of this file are subject to the terms of the 16416 * Common Development and Distribution License (the "License"). 16417 * You may not use this file except in compliance with the License. 16418 * 16419 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16420 * or http://www.opensolaris.org/os/licensing. 16421 * See the License for the specific language governing permissions 16422 * and limitations under the License. 16423 * 16424 * When distributing Covered Code, include this CDDL HEADER in each 16425 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16426 * If applicable, add the following below this CDDL HEADER, with the 16427 * fields enclosed by brackets "[]" replaced with your own identifying 16428 * information: Portions Copyright [yyyy] [name of copyright owner] 16429 * 16430 * CDDL HEADER END 16431 */ 16432 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 16433 /* All Rights Reserved */ 16434 16435 16436 /* 16437 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 16438 * Use is subject to license terms. 16439 * 16440 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 16441 * Copyright 2016 Joyent, Inc. 16442 */ 16443 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 16444 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 1 16445 /* 16446 * CDDL HEADER START 16447 * 16448 * The contents of this file are subject to the terms of the 16449 * Common Development and Distribution License (the "License"). 16450 * You may not use this file except in compliance with the License. 16451 * 16452 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16453 * or http://www.opensolaris.org/os/licensing. 16454 * See the License for the specific language governing permissions 16455 * and limitations under the License. 16456 * 16457 * When distributing Covered Code, include this CDDL HEADER in each 16458 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16459 * If applicable, add the following below this CDDL HEADER, with the 16460 * fields enclosed by brackets "[]" replaced with your own identifying 16461 * information: Portions Copyright [yyyy] [name of copyright owner] 16462 * 16463 * CDDL HEADER END 16464 */ 16465 /* 16466 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 16467 * 16468 * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 16469 * Use is subject to license terms. 16470 * 16471 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 16472 * Copyright (c) 2015, Joyent, Inc. All rights reserved. 16473 */ 16474 16475 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 16476 /* All Rights Reserved */ 16477 16478 /* 16479 * University Copyright- Copyright (c) 1982, 1986, 1988 16480 * The Regents of the University of California 16481 * All Rights Reserved 16482 * 16483 * University Acknowledgment- Portions of this document are derived from 16484 * software developed by the University of California, Berkeley, and its 16485 * contributors. 16486 */ 16487 16488 16489 16490 16491 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 16492 /* 16493 * CDDL HEADER START 16494 * 16495 * The contents of this file are subject to the terms of the 16496 * Common Development and Distribution License (the "License"). 16497 * You may not use this file except in compliance with the License. 16498 * 16499 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16500 * or http://www.opensolaris.org/os/licensing. 16501 * See the License for the specific language governing permissions 16502 * and limitations under the License. 16503 * 16504 * When distributing Covered Code, include this CDDL HEADER in each 16505 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16506 * If applicable, add the following below this CDDL HEADER, with the 16507 * fields enclosed by brackets "[]" replaced with your own identifying 16508 * information: Portions Copyright [yyyy] [name of copyright owner] 16509 * 16510 * CDDL HEADER END 16511 */ 16512 16513 /* 16514 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 16515 * Copyright 2016 Joyent, Inc. 16516 * 16517 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 16518 * Use is subject to license terms. 16519 */ 16520 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 2 16521 16522 16523 16524 16525 16526 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 16527 /* 16528 * CDDL HEADER START 16529 * 16530 * The contents of this file are subject to the terms of the 16531 * Common Development and Distribution License (the "License"). 16532 * You may not use this file except in compliance with the License. 16533 * 16534 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16535 * or http://www.opensolaris.org/os/licensing. 16536 * See the License for the specific language governing permissions 16537 * and limitations under the License. 16538 * 16539 * When distributing Covered Code, include this CDDL HEADER in each 16540 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16541 * If applicable, add the following below this CDDL HEADER, with the 16542 * fields enclosed by brackets "[]" replaced with your own identifying 16543 * information: Portions Copyright [yyyy] [name of copyright owner] 16544 * 16545 * CDDL HEADER END 16546 */ 16547 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 16548 /* All Rights Reserved */ 16549 16550 16551 /* 16552 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 16553 * Use is subject to license terms. 16554 * 16555 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 16556 * Copyright 2016 Joyent, Inc. 16557 */ 16558 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 2 16559 16560 /* 16561 * I/O parameter information. A uio structure describes the I/O which 16562 * is to be performed by an operation. Typically the data movement will 16563 * be performed by a routine such as uiomove(), which updates the uio 16564 * structure to reflect what was done. 16565 */ 16566 16567 16568 16569 16570 16571 16572 16573 typedef struct iovec { 16574 caddr_t iov_base; 16575 16576 size_t iov_len; 16577 16578 16579 16580 } iovec_t; 16581 # 90 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 16582 /* 16583 * Segment flag values. 16584 */ 16585 typedef enum uio_seg { UIO_USERSPACE, UIO_SYSSPACE, UIO_USERISPACE } uio_seg_t; 16586 16587 typedef struct uio { 16588 iovec_t *uio_iov; /* pointer to array of iovecs */ 16589 int uio_iovcnt; /* number of iovecs */ 16590 lloff_t _uio_offset; /* file offset */ 16591 uio_seg_t uio_segflg; /* address space (kernel or user) */ 16592 uint16_t uio_fmode; /* file mode flags */ 16593 uint16_t uio_extflg; /* extended flags */ 16594 lloff_t _uio_limit; /* u-limit (maximum byte offset) */ 16595 ssize_t uio_resid; /* residual count */ 16596 } uio_t; 16597 16598 /* 16599 * Extended uio_t uioa_t used for asynchronous uio. 16600 * 16601 * Note: UIOA_IOV_MAX is defined and used as it is in "fs/vncalls.c" 16602 * as there isn't a formal definition of IOV_MAX for the kernel. 16603 */ 16604 16605 16606 typedef struct uioa_page_s { /* locked uio_iov state */ 16607 int uioa_pfncnt; /* count of pfn_t(s) in *uioa_ppp */ 16608 void **uioa_ppp; /* page_t or pfn_t arrary */ 16609 caddr_t uioa_base; /* address base */ 16610 size_t uioa_len; /* span length */ 16611 } uioa_page_t; 16612 16613 typedef struct uioa_s { 16614 iovec_t *uio_iov; /* pointer to array of iovecs */ 16615 int uio_iovcnt; /* number of iovecs */ 16616 lloff_t _uio_offset; /* file offset */ 16617 uio_seg_t uio_segflg; /* address space (kernel or user) */ 16618 uint16_t uio_fmode; /* file mode flags */ 16619 uint16_t uio_extflg; /* extended flags */ 16620 lloff_t _uio_limit; /* u-limit (maximum byte offset) */ 16621 ssize_t uio_resid; /* residual count */ 16622 /* 16623 * uioa extended members. 16624 */ 16625 uint32_t uioa_state; /* state of asynch i/o */ 16626 ssize_t uioa_mbytes; /* bytes that have been uioamove()ed */ 16627 uioa_page_t *uioa_lcur; /* pointer into uioa_locked[] */ 16628 void **uioa_lppp; /* pointer into lcur->uioa_ppp[] */ 16629 void *uioa_hwst[4]; /* opaque hardware state */ 16630 uioa_page_t uioa_locked[16]; /* Per iov locked pages */ 16631 } uioa_t; 16632 16633 /* 16634 * uio extensions 16635 * 16636 * PSARC 2009/478: Copy Reduction Interfaces 16637 */ 16638 typedef enum xuio_type { 16639 UIOTYPE_ASYNCIO, 16640 UIOTYPE_ZEROCOPY 16641 } xuio_type_t; 16642 16643 typedef struct xuio { 16644 uio_t xu_uio; /* Embedded UIO structure */ 16645 16646 /* Extended uio fields */ 16647 enum xuio_type xu_type; /* What kind of uio structure? */ 16648 union { 16649 /* Async I/O Support, intend to replace uioa_t. */ 16650 struct { 16651 uint32_t xu_a_state; /* state of async i/o */ 16652 /* bytes that have been uioamove()ed */ 16653 ssize_t xu_a_mbytes; 16654 uioa_page_t *xu_a_lcur; /* pointer into uioa_locked[] */ 16655 /* pointer into lcur->uioa_ppp[] */ 16656 void **xu_a_lppp; 16657 void *xu_a_hwst[4]; /* opaque hardware state */ 16658 /* Per iov locked pages */ 16659 uioa_page_t xu_a_locked[16]; 16660 } xu_aio; 16661 16662 /* 16663 * Copy Reduction Support -- facilate loaning / returning of 16664 * filesystem cache buffers. 16665 */ 16666 struct { 16667 int xu_zc_rw; /* read or write buffer */ 16668 void *xu_zc_priv; /* fs specific */ 16669 } xu_zc; 16670 } xu_ext; 16671 } xuio_t; 16672 # 207 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 16673 /* 16674 * I/O direction. 16675 */ 16676 typedef enum uio_rw { UIO_READ, UIO_WRITE } uio_rw_t; 16677 16678 /* 16679 * uio_extflg: extended flags 16680 * 16681 * NOTE: This flag will be used in uiomove to determine if non-temporal 16682 * access, ie, access bypassing caches, should be used. Filesystems that 16683 * don't initialize this field could experience suboptimal performance due to 16684 * the random data the field contains. 16685 * 16686 * NOTE: This flag is also used by uioasync callers to pass an extended 16687 * uio_t (uioa_t), to uioasync enabled consumers. Unlike above all 16688 * consumers of a uioa_t require the uio_extflg to be initialized. 16689 */ 16690 16691 16692 16693 16694 16695 16696 /* 16697 * Global uioasync capability shadow state. 16698 */ 16699 typedef struct uioasync_s { 16700 boolean_t enabled; /* Is uioasync enabled? */ 16701 size_t mincnt; /* Minimum byte count for use of */ 16702 } uioasync_t; 16703 # 257 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 16704 extern ssize_t readv(int, const struct iovec *, int); 16705 extern ssize_t writev(int, const struct iovec *, int); 16706 16707 /* 16708 * When in the large file compilation environment, 16709 * map preadv/pwritev to their 64 bit offset versions 16710 */ 16711 # 274 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 16712 /* In the LP64 compilation environment, the APIs are already large file */ 16713 16714 16715 16716 # 277 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 16717 #pragma redefine_extname preadv64 preadv 16718 # 277 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 16719 16720 16721 # 278 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 16722 #pragma redefine_extname pwritev64 pwritev 16723 # 278 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uio.h" 16724 16725 16726 16727 16728 16729 16730 16731 extern ssize_t preadv(int, const struct iovec *, int, off_t); 16732 extern ssize_t pwritev(int, const struct iovec *, int, off_t); 16733 16734 /* 16735 * preadv64 and pwritev64 should be defined when: 16736 * - Using the transitional compilation environment, and not 16737 * the large file compilation environment. 16738 */ 16739 16740 16741 extern ssize_t preadv64(int, const struct iovec *, int, off64_t); 16742 extern ssize_t pwritev64(int, const struct iovec *, int, off64_t); 16743 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 16744 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 16745 /* 16746 * CDDL HEADER START 16747 * 16748 * The contents of this file are subject to the terms of the 16749 * Common Development and Distribution License (the "License"). 16750 * You may not use this file except in compliance with the License. 16751 * 16752 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16753 * or http://www.opensolaris.org/os/licensing. 16754 * See the License for the specific language governing permissions 16755 * and limitations under the License. 16756 * 16757 * When distributing Covered Code, include this CDDL HEADER in each 16758 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16759 * If applicable, add the following below this CDDL HEADER, with the 16760 * fields enclosed by brackets "[]" replaced with your own identifying 16761 * information: Portions Copyright [yyyy] [name of copyright owner] 16762 * 16763 * CDDL HEADER END 16764 */ 16765 16766 /* 16767 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 16768 * Copyright 2016 Joyent, Inc. 16769 * 16770 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 16771 * Use is subject to license terms. 16772 */ 16773 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 16774 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket_impl.h" 1 16775 /* 16776 * CDDL HEADER START 16777 * 16778 * The contents of this file are subject to the terms of the 16779 * Common Development and Distribution License (the "License"). 16780 * You may not use this file except in compliance with the License. 16781 * 16782 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16783 * or http://www.opensolaris.org/os/licensing. 16784 * See the License for the specific language governing permissions 16785 * and limitations under the License. 16786 * 16787 * When distributing Covered Code, include this CDDL HEADER in each 16788 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16789 * If applicable, add the following below this CDDL HEADER, with the 16790 * fields enclosed by brackets "[]" replaced with your own identifying 16791 * information: Portions Copyright [yyyy] [name of copyright owner] 16792 * 16793 * CDDL HEADER END 16794 */ 16795 /* 16796 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 16797 * Use is subject to license terms. 16798 */ 16799 16800 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 16801 /* All Rights Reserved */ 16802 16803 /* 16804 * Portions of this source code were derived from Berkeley 4.3 BSD 16805 * under license from the Regents of the University of California. 16806 */ 16807 # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 16808 16809 16810 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netconfig.h" 1 16811 /* 16812 * CDDL HEADER START 16813 * 16814 * The contents of this file are subject to the terms of the 16815 * Common Development and Distribution License, Version 1.0 only 16816 * (the "License"). You may not use this file except in compliance 16817 * with the License. 16818 * 16819 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 16820 * or http://www.opensolaris.org/os/licensing. 16821 * See the License for the specific language governing permissions 16822 * and limitations under the License. 16823 * 16824 * When distributing Covered Code, include this CDDL HEADER in each 16825 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16826 * If applicable, add the following below this CDDL HEADER, with the 16827 * fields enclosed by brackets "[]" replaced with your own identifying 16828 * information: Portions Copyright [yyyy] [name of copyright owner] 16829 * 16830 * CDDL HEADER END 16831 */ 16832 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 16833 /* All Rights Reserved */ 16834 16835 16836 /* 16837 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 16838 * 16839 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 16840 * Use is subject to license terms. 16841 */ 16842 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netconfig.h" 16843 struct netconfig { 16844 char *nc_netid; /* network identifier */ 16845 unsigned int nc_semantics; /* defined below */ 16846 unsigned int nc_flag; /* defined below */ 16847 char *nc_protofmly; /* protocol family name */ 16848 char *nc_proto; /* protocol name */ 16849 char *nc_device; /* device name for network id */ 16850 unsigned int nc_nlookups; /* # of entries in nc_lookups */ 16851 char **nc_lookups; /* list of lookup directories */ 16852 unsigned int nc_unused[8]; /* borrowed for lockd etc. */ 16853 }; 16854 16855 typedef struct { 16856 struct netconfig **nc_head; 16857 struct netconfig **nc_curr; 16858 } NCONF_HANDLE; 16859 16860 /* 16861 * Values of nc_semantics 16862 */ 16863 16864 16865 16866 16867 16868 /* 16869 * NOT FOR PUBLIC USE, Solaris internal only. 16870 * This value of nc_semantics is strictly for use of Remote Direct 16871 * Memory Access provider interfaces in Solaris only and not for 16872 * general use. Do not use this value for general purpose user or 16873 * kernel programming. If used the behavior is undefined. 16874 * This is a PRIVATE interface to be used by Solaris kRPC only. 16875 */ 16876 16877 16878 /* 16879 * Values of nc_flag 16880 */ 16881 16882 16883 16884 16885 16886 /* 16887 * Values of nc_protofmly 16888 */ 16889 # 114 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/netconfig.h" 16890 /* 16891 * NOT FOR PUBLIC USE, Solaris internal only. 16892 * This value of nc_semantics is strictly for use of Remote Direct 16893 * Memory Access provider interfaces in Solaris only and not for 16894 * general use. Do not use this value for general purpose user or 16895 * kernel programming. If used the behavior is undefined. 16896 * This is a PRIVATE interface to be used by Solaris kRPC only. 16897 */ 16898 16899 16900 /* 16901 * Values for nc_proto 16902 */ 16903 16904 16905 16906 16907 16908 16909 /* 16910 * Values for nc_proto for "rdma" protofmly 16911 */ 16912 16913 16914 16915 16916 extern void *setnetconfig(void); 16917 extern int endnetconfig(void *); 16918 extern struct netconfig *getnetconfig(void *); 16919 extern struct netconfig *getnetconfigent(const char *); 16920 extern void freenetconfigent(struct netconfig *); 16921 extern void *setnetpath(void); 16922 extern int endnetpath(void *); 16923 extern struct netconfig *getnetpath(void *); 16924 extern void nc_perror(const char *); 16925 extern char *nc_sperror(void); 16926 # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 16927 16928 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 16929 /* 16930 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 16931 * Use is subject to license terms. 16932 * 16933 * Copyright 2011 Nexenta Systems, Inc. All rights reserved. 16934 */ 16935 /* 16936 * Copyright (c) 1982, 1986 Regents of the University of California. 16937 * All rights reserved. 16938 * 16939 * Redistribution and use in source and binary forms are permitted 16940 * provided that this notice is preserved and that due credit is given 16941 * to the University of California at Berkeley. The name of the University 16942 * may not be used to endorse or promote products derived from this 16943 * software without specific prior written permission. This software 16944 * is provided ``as is'' without express or implied warranty. 16945 */ 16946 16947 /* 16948 * Constants and structures defined by the internet system, 16949 * according to following documents 16950 * 16951 * Internet ASSIGNED NUMBERS (RFC1700) and its successors: 16952 * http://www.iana.org/assignments/protocol-numbers 16953 * http://www.iana.org/assignments/port-numbers 16954 * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) 16955 * 16956 */ 16957 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 2 16958 # 82 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 16959 /* 16960 * Definitions related to sockets: types, address families, options. 16961 */ 16962 # 94 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 16963 /* 16964 * Types 16965 */ 16966 # 110 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 16967 /* 16968 * Flags for socket() and accept4() 16969 */ 16970 16971 16972 16973 16974 /* 16975 * Option flags per-socket. 16976 */ 16977 # 132 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 16978 /* 16979 * Socket options are passed using a signed integer, but it is also rare 16980 * for more than one to ever be passed at the same time with setsockopt 16981 * and only one at a time can be retrieved with getsockopt. 16982 * 16983 * Since the lower numbers cannot be renumbered for compatibility reasons, 16984 * it would seem that we need to start a new number space (0x40000000 - 16985 * 0x7fffffff) for those that don't need to be stored as a bit flag 16986 * somewhere. This limits the flag options to 30 but that seems to be 16987 * plenty, anyway. 0x40000000 is reserved for future use. 16988 */ 16989 # 159 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 16990 /* 16991 * N.B.: The following definition is present only for compatibility 16992 * with release 3.0. It will disappear in later releases. 16993 */ 16994 16995 16996 /* 16997 * Additional options, not kept in so_options. 16998 */ 16999 # 183 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 17000 /* "Socket"-level control message types: */ 17001 # 200 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 17002 /* 17003 * Socket filter options 17004 */ 17005 17006 17007 17008 17009 17010 /* 17011 * Structure returned by FIL_LIST 17012 */ 17013 struct fil_info { 17014 int fi_flags; /* see below (FILF_*) */ 17015 int fi_pos; /* position (0 is bottom) */ 17016 char fi_name[32]; /* filter name */ 17017 }; 17018 # 237 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 17019 /* 17020 * Structure used for manipulating linger option. 17021 */ 17022 struct linger { 17023 int l_onoff; /* option on/off */ 17024 int l_linger; /* linger time */ 17025 }; 17026 17027 /* 17028 * Levels for (get/set)sockopt() that don't apply to a specific protocol. 17029 */ 17030 17031 17032 17033 17034 17035 17036 17037 /* 17038 * Address families. 17039 * 17040 * Some of these constant names are copied for the DTrace IP provider in 17041 * usr/src/lib/libdtrace/common/{ip.d.in, ip.sed.in}, which should be kept 17042 * in sync. 17043 */ 17044 # 300 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 17045 /* 17046 * Protocol families, same as address families for now. 17047 */ 17048 # 341 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 17049 /* 17050 * Maximum queue length specifiable by listen. 17051 */ 17052 17053 17054 /* 17055 * Message header for recvmsg and sendmsg calls. 17056 */ 17057 struct msghdr { 17058 void *msg_name; /* optional address */ 17059 socklen_t msg_namelen; /* size of address */ 17060 struct iovec *msg_iov; /* scatter/gather array */ 17061 int msg_iovlen; /* # elements in msg_iov */ 17062 17063 17064 17065 17066 17067 17068 caddr_t msg_accrights; /* access rights sent/received */ 17069 int msg_accrightslen; 17070 17071 }; 17072 # 412 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 17073 /* Added for XPGv2 compliance */ 17074 17075 17076 17077 17078 17079 /* with left over data */ 17080 /* End of XPGv2 compliance */ 17081 # 438 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 17082 /* Added for XPGv2 compliance */ 17083 17084 17085 17086 17087 struct cmsghdr { 17088 socklen_t cmsg_len; /* data byte count, including hdr */ 17089 int cmsg_level; /* originating protocol */ 17090 int cmsg_type; /* protocol-specific type */ 17091 }; 17092 # 528 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 17093 extern int accept(int, struct sockaddr *, Psocklen_t); 17094 extern int accept4(int, struct sockaddr *, Psocklen_t, int); 17095 extern int bind(int, const struct sockaddr *, socklen_t); 17096 extern int connect(int, const struct sockaddr *, socklen_t); 17097 extern int getpeername(int, struct sockaddr *, Psocklen_t); 17098 extern int getsockname(int, struct sockaddr *, Psocklen_t); 17099 extern int getsockopt(int, int, int, void *, Psocklen_t); 17100 extern int listen(int, int); /* XXX - fixme??? where do I go */ 17101 extern int socketpair(int, int, int, int *); 17102 extern ssize_t recv(int, void *, size_t, int); 17103 extern ssize_t recvfrom(int, void *, size_t, int, 17104 struct sockaddr *, Psocklen_t); 17105 extern ssize_t recvmsg(int, struct msghdr *, int); 17106 extern ssize_t send(int, const void *, size_t, int); 17107 extern ssize_t sendmsg(int, const struct msghdr *, int); 17108 extern ssize_t sendto(int, const void *, size_t, int, const struct sockaddr *, 17109 socklen_t); 17110 extern int setsockopt(int, int, int, const void *, socklen_t); 17111 extern int shutdown(int, int); 17112 extern int socket(int, int, int); 17113 17114 17115 extern int sockatmark(int); 17116 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 17117 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 1 17118 /* 17119 * Copyright (c) 1991, 2010, Oracle and/or its affiliates. All rights reserved. 17120 */ 17121 17122 /* 17123 * Copyright (c) 1982, 1986 Regents of the University of California. 17124 * All rights reserved. The Berkeley software License Agreement 17125 * specifies the terms and conditions for redistribution. 17126 */ 17127 17128 17129 17130 17131 /* if.h 1.26 90/05/29 SMI; from UCB 7.1 6/4/86 */ 17132 17133 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 17134 /* 17135 * CDDL HEADER START 17136 * 17137 * The contents of this file are subject to the terms of the 17138 * Common Development and Distribution License (the "License"). 17139 * You may not use this file except in compliance with the License. 17140 * 17141 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17142 * or http://www.opensolaris.org/os/licensing. 17143 * See the License for the specific language governing permissions 17144 * and limitations under the License. 17145 * 17146 * When distributing Covered Code, include this CDDL HEADER in each 17147 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17148 * If applicable, add the following below this CDDL HEADER, with the 17149 * fields enclosed by brackets "[]" replaced with your own identifying 17150 * information: Portions Copyright [yyyy] [name of copyright owner] 17151 * 17152 * CDDL HEADER END 17153 */ 17154 17155 /* 17156 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 17157 * Copyright 2016 Joyent, Inc. 17158 * 17159 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 17160 * Use is subject to license terms. 17161 */ 17162 # 17 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 2 17163 17164 17165 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/socket.h" 1 17166 /* 17167 * CDDL HEADER START 17168 * 17169 * The contents of this file are subject to the terms of the 17170 * Common Development and Distribution License (the "License"). 17171 * You may not use this file except in compliance with the License. 17172 * 17173 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17174 * or http://www.opensolaris.org/os/licensing. 17175 * See the License for the specific language governing permissions 17176 * and limitations under the License. 17177 * 17178 * When distributing Covered Code, include this CDDL HEADER in each 17179 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17180 * If applicable, add the following below this CDDL HEADER, with the 17181 * fields enclosed by brackets "[]" replaced with your own identifying 17182 * information: Portions Copyright [yyyy] [name of copyright owner] 17183 * 17184 * CDDL HEADER END 17185 */ 17186 /* 17187 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 17188 * 17189 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 17190 */ 17191 17192 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 17193 /* All Rights Reserved */ 17194 17195 /* 17196 * University Copyright- Copyright (c) 1982, 1986, 1988 17197 * The Regents of the University of California 17198 * All Rights Reserved 17199 * 17200 * University Acknowledgment- Portions of this document are derived from 17201 * software developed by the University of California, Berkeley, and its 17202 * contributors. 17203 */ 17204 17205 /* Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. */ 17206 # 20 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 2 17207 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/netinet/in.h" 1 17208 /* 17209 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 17210 * Use is subject to license terms. 17211 * 17212 * Copyright 2011 Nexenta Systems, Inc. All rights reserved. 17213 */ 17214 /* 17215 * Copyright (c) 1982, 1986 Regents of the University of California. 17216 * All rights reserved. 17217 * 17218 * Redistribution and use in source and binary forms are permitted 17219 * provided that this notice is preserved and that due credit is given 17220 * to the University of California at Berkeley. The name of the University 17221 * may not be used to endorse or promote products derived from this 17222 * software without specific prior written permission. This software 17223 * is provided ``as is'' without express or implied warranty. 17224 */ 17225 17226 /* 17227 * Constants and structures defined by the internet system, 17228 * according to following documents 17229 * 17230 * Internet ASSIGNED NUMBERS (RFC1700) and its successors: 17231 * http://www.iana.org/assignments/protocol-numbers 17232 * http://www.iana.org/assignments/port-numbers 17233 * Basic Socket Interface Extensions for IPv6 (RFC2133 and its successors) 17234 * 17235 */ 17236 # 21 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 2 17237 17238 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types32.h" 1 17239 /* 17240 * CDDL HEADER START 17241 * 17242 * The contents of this file are subject to the terms of the 17243 * Common Development and Distribution License (the "License"). 17244 * You may not use this file except in compliance with the License. 17245 * 17246 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17247 * or http://www.opensolaris.org/os/licensing. 17248 * See the License for the specific language governing permissions 17249 * and limitations under the License. 17250 * 17251 * When distributing Covered Code, include this CDDL HEADER in each 17252 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17253 * If applicable, add the following below this CDDL HEADER, with the 17254 * fields enclosed by brackets "[]" replaced with your own identifying 17255 * information: Portions Copyright [yyyy] [name of copyright owner] 17256 * 17257 * CDDL HEADER END 17258 */ 17259 /* 17260 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 17261 * Use is subject to license terms. 17262 * Copyright 2015 Nexenta Systems, Inc. 17263 */ 17264 # 23 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 2 17265 17266 17267 17268 17269 17270 17271 17272 /* 17273 * Structures defining a network interface, providing a packet 17274 * transport mechanism (ala level 0 of the PUP protocols). 17275 * 17276 * Each interface accepts output datagrams of a specified maximum 17277 * length, and provides higher level routines with input datagrams 17278 * received from its medium. 17279 * 17280 * Output occurs when the routine if_output is called, with three parameters: 17281 * (*ifp->if_output)(ifp, m, dst) 17282 * Here m is the mbuf chain to be sent and dst is the destination address. 17283 * The output routine encapsulates the supplied datagram if necessary, 17284 * and then transmits it on its medium. 17285 * 17286 * On input, each interface unwraps the data received by it, and either 17287 * places it on the input queue of a internetwork datagram routine 17288 * and posts the associated software interrupt, or passes the datagram to a raw 17289 * packet input routine. 17290 * 17291 * Routines exist for locating interfaces by their addresses 17292 * or for locating a interface on a certain network, as well as more general 17293 * routing and gateway routines maintaining information used to locate 17294 * interfaces. These routines live in the files if.c and route.c 17295 */ 17296 17297 17298 17299 /* 17300 * Structure defining a queue for a network interface. 17301 * 17302 * (Would like to call this struct ``if'', but C isn't PL/1.) 17303 */ 17304 struct ifnet { 17305 char *if_name; /* name, e.g. ``en'' or ``lo'' */ 17306 short if_unit; /* sub-unit for lower level driver */ 17307 short if_mtu; /* maximum transmission unit */ 17308 short if_flags; /* up/down, broadcast, etc. */ 17309 short if_timer; /* time 'til if_watchdog called */ 17310 ushort_t if_promisc; /* net # of requests for promisc mode */ 17311 int if_metric; /* routing metric (external only) */ 17312 struct ifaddr *if_addrlist; /* linked list of addresses per if */ 17313 struct ifqueue { 17314 struct mbuf *ifq_head; 17315 struct mbuf *ifq_tail; 17316 int ifq_len; 17317 int ifq_maxlen; 17318 int ifq_drops; 17319 } if_snd; /* output queue */ 17320 /* procedure handles */ 17321 int (*if_init)(); /* init routine */ 17322 int (*if_output)(); /* output routine */ 17323 int (*if_ioctl)(); /* ioctl routine */ 17324 int (*if_reset)(); /* bus reset routine */ 17325 int (*if_watchdog)(); /* timer routine */ 17326 /* generic interface statistics */ 17327 int if_ipackets; /* packets received on interface */ 17328 int if_ierrors; /* input errors on interface */ 17329 int if_opackets; /* packets sent on interface */ 17330 int if_oerrors; /* output errors on interface */ 17331 int if_collisions; /* collisions on csma interfaces */ 17332 /* end statistics */ 17333 struct ifnet *if_next; 17334 struct ifnet *if_upper; /* next layer up */ 17335 struct ifnet *if_lower; /* next layer down */ 17336 int (*if_input)(); /* input routine */ 17337 int (*if_ctlin)(); /* control input routine */ 17338 int (*if_ctlout)(); /* control output routine */ 17339 struct map *if_memmap; /* rmap for interface specific memory */ 17340 }; 17341 17342 /* 17343 * NOTE : These flags are not directly used within IP. 17344 * ip_if.h has definitions derived from this which is used within IP. 17345 * If you define a flag here, you need to define one in ip_if.h before 17346 * using the new flag in IP. Don't use these flags directly in IP. 17347 */ 17348 # 119 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17349 /* 17350 * The IFF_MULTICAST flag indicates that the network can support the 17351 * transmission and reception of higher-level (e.g., IP) multicast packets. 17352 * It is independent of hardware support for multicasting; for example, 17353 * point-to-point links or pure broadcast networks may well support 17354 * higher-level multicasts. 17355 */ 17356 17357 17358 17359 17360 17361 17362 17363 /* 17364 * The following flags can't be grabbed or altered by SIOC[GS]IFFLAGS. 17365 * Should use SIOC[GS]LIFFLAGS which has a larger flags field. 17366 */ 17367 # 157 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17368 /* 17369 * The IFF_XRESOLV flag is an evolving interface and is subject 17370 * to change without notice. 17371 */ 17372 # 175 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17373 /* flags that cannot be changed by userland on any interface */ 17374 17375 17376 17377 17378 17379 17380 17381 /* flags that cannot be changed by userland on an IPMP interface */ 17382 17383 17384 /* flags that can never be set on an IPMP interface */ 17385 17386 17387 17388 /* 17389 * Output queues (ifp->if_snd) and internetwork datagram level (pup level 1) 17390 * input routines have queues of messages stored on ifqueue structures 17391 * (defined above). Entries are added to and deleted from these structures 17392 * by these macros, which should be called with ipl raised to splimp(). 17393 */ 17394 # 215 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17395 /* 17396 * Packets destined for level-1 protocol input routines 17397 * have a pointer to the receiving interface prepended to the data. 17398 * IF_DEQUEUEIF extracts and returns this pointer when dequeuing the packet. 17399 * IF_ADJ should be used otherwise to adjust for its presence. 17400 */ 17401 # 254 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17402 /* 17403 * The ifaddr structure contains information about one address 17404 * of an interface. They are maintained by the different address families, 17405 * are allocated and attached when an address is set, and are linked 17406 * together so all addresses for an interface can be located. 17407 */ 17408 struct ifaddr { 17409 struct sockaddr ifa_addr; /* address of interface */ 17410 union { 17411 struct sockaddr ifu_broadaddr; 17412 struct sockaddr ifu_dstaddr; 17413 } ifa_ifu; 17414 17415 17416 struct ifnet *ifa_ifp; /* back-pointer to interface */ 17417 struct ifaddr *ifa_next; /* next address for interface */ 17418 }; 17419 17420 /* 17421 * For SIOCLIF*ND ioctls. 17422 * 17423 * The lnr_state_* fields use the ND_* neighbor reachability states. 17424 * The 3 different fields are for use with SIOCLIFSETND to cover the cases 17425 * when 17426 * A new entry is created 17427 * The entry already exists and the link-layer address is the same 17428 * The entry already exists and the link-layer address differs 17429 * 17430 * Use ND_UNCHANGED to not change any state. 17431 */ 17432 17433 typedef struct lif_nd_req { 17434 struct sockaddr_storage lnr_addr; 17435 uint8_t lnr_state_create; /* When creating */ 17436 uint8_t lnr_state_same_lla; /* Update same addr */ 17437 uint8_t lnr_state_diff_lla; /* Update w/ diff. */ 17438 int lnr_hdw_len; 17439 int lnr_flags; /* See below */ 17440 /* padding because ia32 "long long"s are only 4-byte aligned. */ 17441 int lnr_pad0; 17442 char lnr_hdw_addr[64]; 17443 } lif_nd_req_t; 17444 17445 /* 17446 * Neighbor reachability states 17447 * Used with SIOCLIF*ND ioctls. 17448 */ 17449 # 313 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17450 /* 17451 * lnr_flags value of lif_nd_req. 17452 * Used with SIOCLIF*ND ioctls. 17453 */ 17454 17455 17456 17457 17458 17459 17460 /* 17461 * the NDF_STATIC entry ensures that an NCE will not be deleted, and is 17462 * used by non-ON applications like IPv6 test suites. 17463 */ 17464 17465 17466 /* For SIOC[GS]LIFLNKINFO */ 17467 typedef struct lif_ifinfo_req { 17468 uint8_t lir_maxhops; 17469 uint32_t lir_reachtime; /* Reachable time in msec */ 17470 uint32_t lir_reachretrans; /* Retransmission timer msec */ 17471 uint32_t lir_maxmtu; 17472 } lif_ifinfo_req_t; 17473 17474 17475 17476 /* 17477 * Maximum lengths of interface name and IPMP group name; these are the same 17478 * for historical reasons. Note that the actual maximum length of a name is 17479 * one byte less than these constants since the kernel always sets the final 17480 * byte of lifr_name and lifr_groupname to NUL. 17481 */ 17482 17483 17484 17485 17486 17487 17488 17489 /* 17490 * Interface request structure used for socket 17491 * ioctl's. All interface ioctl's must have parameter 17492 * definitions which begin with ifr_name. The 17493 * remainder may be interface specific. 17494 * Note: This data structure uses 64bit type uint64_t which is not 17495 * a valid type for strict ANSI/ISO C compilation for ILP32. 17496 * Applications with ioctls using this structure that insist on 17497 * building with strict ANSI/ISO C (-Xc) will need to be LP64. 17498 */ 17499 17500 struct lifreq { 17501 char lifr_name[32]; /* if name, e.g. "en0" */ 17502 union { 17503 int lifru_addrlen; /* for subnet/token etc */ 17504 uint_t lifru_ppa; /* SIOCSLIFNAME */ 17505 } lifr_lifru1; 17506 17507 17508 uint_t lifr_type; /* IFT_ETHER, ... */ 17509 union { 17510 struct sockaddr_storage lifru_addr; 17511 struct sockaddr_storage lifru_dstaddr; 17512 struct sockaddr_storage lifru_broadaddr; 17513 struct sockaddr_storage lifru_token; /* With lifr_addrlen */ 17514 struct sockaddr_storage lifru_subnet; /* With lifr_addrlen */ 17515 int lifru_index; /* interface index */ 17516 uint64_t lifru_flags; /* Flags for SIOC?LIFFLAGS */ 17517 int lifru_metric; 17518 uint_t lifru_mtu; 17519 int lif_muxid[2]; /* mux id's for arp and ip */ 17520 struct lif_nd_req lifru_nd_req; /* SIOCLIF*ND */ 17521 struct lif_ifinfo_req lifru_ifinfo_req; 17522 char lifru_groupname[32]; /* SIOC[GS]LIFGROUPNAME */ 17523 char lifru_binding[32]; /* SIOCGLIFBINDING */ 17524 zoneid_t lifru_zoneid; /* SIOC[GS]LIFZONE */ 17525 uint_t lifru_dadstate; /* SIOCGLIFDADSTATE */ 17526 } lifr_lifru; 17527 # 408 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17528 }; 17529 17530 17531 /* 17532 * Argument structure for SIOCT* address testing ioctls. 17533 */ 17534 struct sioc_addrreq { 17535 struct sockaddr_storage sa_addr; /* Address to test */ 17536 int sa_res; /* Result - 0/1 */ 17537 int sa_pad; 17538 }; 17539 17540 /* 17541 * Argument structure used by mrouted to get src-grp pkt counts using 17542 * SIOCGETLSGCNT. See <netinet/ip_mroute.h>. 17543 */ 17544 struct sioc_lsg_req { 17545 struct sockaddr_storage slr_src; 17546 struct sockaddr_storage slr_grp; 17547 uint_t slr_pktcnt; 17548 uint_t slr_bytecnt; 17549 uint_t slr_wrong_if; 17550 uint_t slr_pad; 17551 }; 17552 17553 /* Argument structure for SIOCGLIFDADSTATE ioctl */ 17554 typedef enum { 17555 DAD_IN_PROGRESS = 0x1, 17556 DAD_DONE = 0x2 17557 } glif_dad_state_t; 17558 17559 /* 17560 * OBSOLETE: Replaced by struct lifreq. Supported for compatibility. 17561 * 17562 * Interface request structure used for socket 17563 * ioctl's. All interface ioctl's must have parameter 17564 * definitions which begin with ifr_name. The 17565 * remainder may be interface specific. 17566 */ 17567 struct ifreq { 17568 17569 char ifr_name[16]; /* if name, e.g. "en0" */ 17570 union { 17571 struct sockaddr ifru_addr; 17572 struct sockaddr ifru_dstaddr; 17573 char ifru_oname[16]; /* other if name */ 17574 struct sockaddr ifru_broadaddr; 17575 int ifru_index; /* interface index */ 17576 uint_t ifru_mtu; 17577 short ifru_flags; 17578 int ifru_metric; 17579 char ifru_data[1]; /* interface dependent data */ 17580 char ifru_enaddr[6]; 17581 int if_muxid[2]; /* mux id's for arp and ip */ 17582 17583 /* Struct for flags/ppa */ 17584 struct ifr_ppaflags { 17585 short ifrup_flags; /* Space of ifru_flags. */ 17586 short ifrup_filler; 17587 uint_t ifrup_ppa; 17588 } ifru_ppaflags; 17589 17590 /* Struct for FDDI ioctl's */ 17591 struct ifr_dnld_reqs { 17592 uint32_t v_addr; 17593 uint32_t m_addr; 17594 uint32_t ex_addr; 17595 uint32_t size; 17596 } ifru_dnld_req; 17597 17598 /* Struct for FDDI stats */ 17599 struct ifr_fddi_stats { 17600 uint32_t stat_size; 17601 uint32_t fddi_stats; 17602 } ifru_fddi_stat; 17603 17604 struct ifr_netmapents { 17605 uint32_t map_ent_size, /* size of netmap structure */ 17606 entry_number; /* index into netmap list */ 17607 uint32_t fddi_map_ent; /* pointer to user structure */ 17608 } ifru_netmapent; 17609 17610 /* Field for generic ioctl for fddi */ 17611 17612 struct ifr_fddi_gen_struct { 17613 uint32_t ifru_fddi_gioctl; /* field for gen ioctl */ 17614 uint32_t ifru_fddi_gaddr; /* Generic ptr to a field */ 17615 } ifru_fddi_gstruct; 17616 17617 } ifr_ifru; 17618 # 509 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17619 /* For setting ppa */ 17620 17621 17622 /* FDDI specific */ 17623 17624 17625 17626 17627 17628 17629 17630 }; 17631 17632 /* Used by SIOCGLIFNUM. Uses same flags as in struct lifconf */ 17633 struct lifnum { 17634 sa_family_t lifn_family; 17635 int lifn_flags; /* request specific interfaces */ 17636 int lifn_count; /* Result */ 17637 }; 17638 17639 /* 17640 * Structure used in SIOCGLIFCONF request. 17641 * Used to retrieve interface configuration 17642 * for machine (useful for programs which 17643 * must know all networks accessible) for a given address family. 17644 * Using AF_UNSPEC will retrieve all address families. 17645 */ 17646 struct lifconf { 17647 sa_family_t lifc_family; 17648 int lifc_flags; /* request specific interfaces */ 17649 int lifc_len; /* size of associated buffer */ 17650 union { 17651 caddr_t lifcu_buf; 17652 struct lifreq *lifcu_req; 17653 } lifc_lifcu; 17654 17655 17656 }; 17657 17658 /* 17659 * Structure used in SIOCGLIFSRCOF to get the interface 17660 * configuration list for those interfaces that use an address 17661 * hosted on the interface (set in lifs_ifindex), as the source 17662 * address. 17663 */ 17664 struct lifsrcof { 17665 uint_t lifs_ifindex; /* interface of interest */ 17666 size_t lifs_maxlen; /* size of buffer: input */ 17667 size_t lifs_len; /* size of buffer: output */ 17668 union { 17669 caddr_t lifsu_buf; 17670 struct lifreq *lifsu_req; 17671 } lifs_lifsu; 17672 17673 17674 }; 17675 17676 /* Flags */ 17677 17678 17679 /* be used to communicate outside the */ 17680 /* node (exclude interfaces which are */ 17681 /* IFF_NOXMIT, IFF_NOLOCAL, */ 17682 /* IFF_LOOPBACK, IFF_DEPRECATED, or */ 17683 /* not IFF_UP). Has priority over */ 17684 /* LIFC_NOXMIT. */ 17685 17686 17687 /* (must be issued from global zone) */ 17688 # 605 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17689 /* 17690 * IPMP group information, for use with SIOCGLIFGROUPINFO. 17691 */ 17692 typedef struct lifgroupinfo { 17693 char gi_grname[32]; /* group name (set by caller) */ 17694 char gi_grifname[32]; /* IPMP meta-interface name */ 17695 char gi_m4ifname[32]; /* v4 mcast interface name */ 17696 char gi_m6ifname[32]; /* v6 mcast interface name */ 17697 char gi_bcifname[32]; /* v4 bcast interface name */ 17698 boolean_t gi_v4; /* group is plumbed for v4 */ 17699 boolean_t gi_v6; /* group is plumbed for v6 */ 17700 uint_t gi_nv4; /* # of underlying v4 if's */ 17701 uint_t gi_nv6; /* # of underlying v6 if's */ 17702 uint_t gi_mactype; /* DLPI mac type of group */ 17703 } lifgroupinfo_t; 17704 17705 /* 17706 * OBSOLETE: Structure used in SIOCGIFCONF request. 17707 * Used to retrieve interface configuration 17708 * for machine (useful for programs which 17709 * must know all networks accessible). 17710 */ 17711 struct ifconf { 17712 int ifc_len; /* size of associated buffer */ 17713 union { 17714 caddr_t ifcu_buf; 17715 struct ifreq *ifcu_req; 17716 } ifc_ifcu; 17717 17718 17719 }; 17720 # 649 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/net/if.h" 17721 typedef struct if_data { 17722 /* generic interface information */ 17723 uchar_t ifi_type; /* ethernet, tokenring, etc */ 17724 uchar_t ifi_addrlen; /* media address length */ 17725 uchar_t ifi_hdrlen; /* media header length */ 17726 uint_t ifi_mtu; /* maximum transmission unit */ 17727 uint_t ifi_metric; /* routing metric (external only) */ 17728 uint_t ifi_baudrate; /* linespeed */ 17729 /* volatile statistics */ 17730 uint_t ifi_ipackets; /* packets received on interface */ 17731 uint_t ifi_ierrors; /* input errors on interface */ 17732 uint_t ifi_opackets; /* packets sent on interface */ 17733 uint_t ifi_oerrors; /* output errors on interface */ 17734 uint_t ifi_collisions; /* collisions on csma interfaces */ 17735 uint_t ifi_ibytes; /* total number of octets received */ 17736 uint_t ifi_obytes; /* total number of octets sent */ 17737 uint_t ifi_imcasts; /* packets received via multicast */ 17738 uint_t ifi_omcasts; /* packets sent via multicast */ 17739 uint_t ifi_iqdrops; /* dropped on input, this interface */ 17740 uint_t ifi_noproto; /* destined for unsupported protocol */ 17741 17742 struct timeval32 ifi_lastchange; /* last updated */ 17743 17744 17745 17746 } if_data_t; 17747 17748 /* 17749 * Message format for use in obtaining information about interfaces 17750 * from the routing socket 17751 */ 17752 typedef struct if_msghdr { 17753 ushort_t ifm_msglen; /* to skip over non-understood messages */ 17754 uchar_t ifm_version; /* future binary compatibility */ 17755 uchar_t ifm_type; /* message type */ 17756 int ifm_addrs; /* like rtm_addrs */ 17757 int ifm_flags; /* value of if_flags */ 17758 ushort_t ifm_index; /* index for associated ifp */ 17759 struct if_data ifm_data; /* statistics and other data about if */ 17760 } if_msghdr_t; 17761 17762 /* 17763 * Message format for use in obtaining information about interface addresses 17764 * from the routing socket 17765 */ 17766 typedef struct ifa_msghdr { 17767 ushort_t ifam_msglen; /* to skip over non-understood messages */ 17768 uchar_t ifam_version; /* future binary compatibility */ 17769 uchar_t ifam_type; /* message type */ 17770 int ifam_addrs; /* like rtm_addrs */ 17771 int ifam_flags; /* route flags */ 17772 ushort_t ifam_index; /* index for associated ifp */ 17773 int ifam_metric; /* value of ipif_metric */ 17774 } ifa_msghdr_t; 17775 17776 17777 17778 /* 17779 * The if_nameindex structure holds the interface index value about 17780 * a single interface. An array of this structure is used to return 17781 * all interfaces and indexes. 17782 */ 17783 struct if_nameindex { 17784 unsigned if_index; /* positive interface index */ 17785 char *if_name; /* if name, e.g. "en0" */ 17786 }; 17787 17788 /* Interface index identification API definitions */ 17789 extern unsigned if_nametoindex(const char *); 17790 extern char *if_indextoname(unsigned, char *); 17791 extern struct if_nameindex *if_nameindex(void); 17792 extern void if_freenameindex(struct if_nameindex *); 17793 17794 17795 /* 17796 * If changing IF_MAX_INDEX to a value greater than UINT16_MAX, check if 17797 * struct sockaddr_dl needs to be modified as the interface index is placed 17798 * in this structure by the kernel. 17799 */ 17800 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 17801 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1 17802 /* 17803 * CDDL HEADER START 17804 * 17805 * The contents of this file are subject to the terms of the 17806 * Common Development and Distribution License (the "License"). 17807 * You may not use this file except in compliance with the License. 17808 * 17809 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17810 * or http://www.opensolaris.org/os/licensing. 17811 * See the License for the specific language governing permissions 17812 * and limitations under the License. 17813 * 17814 * When distributing Covered Code, include this CDDL HEADER in each 17815 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17816 * If applicable, add the following below this CDDL HEADER, with the 17817 * fields enclosed by brackets "[]" replaced with your own identifying 17818 * information: Portions Copyright [yyyy] [name of copyright owner] 17819 * 17820 * CDDL HEADER END 17821 */ 17822 17823 /* 17824 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 17825 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 17826 */ 17827 17828 /* Copyright (c) 1988 AT&T */ 17829 /* All Rights Reserved */ 17830 17831 /* 17832 * User-visible pieces of the ANSI C standard I/O package. 17833 */ 17834 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 17835 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/rctl.h" 1 17836 /* 17837 * CDDL HEADER START 17838 * 17839 * The contents of this file are subject to the terms of the 17840 * Common Development and Distribution License, Version 1.0 only 17841 * (the "License"). You may not use this file except in compliance 17842 * with the License. 17843 * 17844 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17845 * or http://www.opensolaris.org/os/licensing. 17846 * See the License for the specific language governing permissions 17847 * and limitations under the License. 17848 * 17849 * When distributing Covered Code, include this CDDL HEADER in each 17850 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17851 * If applicable, add the following below this CDDL HEADER, with the 17852 * fields enclosed by brackets "[]" replaced with your own identifying 17853 * information: Portions Copyright [yyyy] [name of copyright owner] 17854 * 17855 * CDDL HEADER END 17856 */ 17857 /* 17858 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 17859 * Use is subject to license terms. 17860 */ 17861 17862 17863 17864 17865 #pragma ident "%Z%%M% %I% %E% SMI" 17866 17867 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/rctl.h" 1 17868 /* 17869 * CDDL HEADER START 17870 * 17871 * The contents of this file are subject to the terms of the 17872 * Common Development and Distribution License (the "License"). 17873 * You may not use this file except in compliance with the License. 17874 * 17875 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17876 * or http://www.opensolaris.org/os/licensing. 17877 * See the License for the specific language governing permissions 17878 * and limitations under the License. 17879 * 17880 * When distributing Covered Code, include this CDDL HEADER in each 17881 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17882 * If applicable, add the following below this CDDL HEADER, with the 17883 * fields enclosed by brackets "[]" replaced with your own identifying 17884 * information: Portions Copyright [yyyy] [name of copyright owner] 17885 * 17886 * CDDL HEADER END 17887 */ 17888 /* 17889 * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. 17890 */ 17891 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/rctl.h" 2 17892 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 17893 /* 17894 * CDDL HEADER START 17895 * 17896 * The contents of this file are subject to the terms of the 17897 * Common Development and Distribution License (the "License"). 17898 * You may not use this file except in compliance with the License. 17899 * 17900 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17901 * or http://www.opensolaris.org/os/licensing. 17902 * See the License for the specific language governing permissions 17903 * and limitations under the License. 17904 * 17905 * When distributing Covered Code, include this CDDL HEADER in each 17906 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17907 * If applicable, add the following below this CDDL HEADER, with the 17908 * fields enclosed by brackets "[]" replaced with your own identifying 17909 * information: Portions Copyright [yyyy] [name of copyright owner] 17910 * 17911 * CDDL HEADER END 17912 */ 17913 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 17914 /* All Rights Reserved */ 17915 17916 17917 /* 17918 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 17919 * Use is subject to license terms. 17920 * 17921 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 17922 * Copyright 2016 Joyent, Inc. 17923 */ 17924 # 34 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/rctl.h" 2 17925 17926 17927 17928 17929 17930 int rctl_walk(int (*)(const char *, void *), void *); 17931 17932 hrtime_t rctlblk_get_firing_time(rctlblk_t *); 17933 uint_t rctlblk_get_global_action(rctlblk_t *); 17934 uint_t rctlblk_get_global_flags(rctlblk_t *); 17935 uint_t rctlblk_get_local_action(rctlblk_t *, int *); 17936 uint_t rctlblk_get_local_flags(rctlblk_t *); 17937 id_t rctlblk_get_recipient_pid(rctlblk_t *); 17938 rctl_priv_t rctlblk_get_privilege(rctlblk_t *); 17939 rctl_qty_t rctlblk_get_value(rctlblk_t *); 17940 rctl_qty_t rctlblk_get_enforced_value(rctlblk_t *); 17941 17942 void rctlblk_set_local_action(rctlblk_t *, uint_t, int); 17943 void rctlblk_set_local_flags(rctlblk_t *, uint_t); 17944 void rctlblk_set_recipient_pid(rctlblk_t *, id_t); 17945 void rctlblk_set_privilege(rctlblk_t *, rctl_priv_t); 17946 void rctlblk_set_value(rctlblk_t *, rctl_qty_t); 17947 17948 size_t rctlblk_size(void); 17949 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 17950 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/zone.h" 1 17951 /* 17952 * CDDL HEADER START 17953 * 17954 * The contents of this file are subject to the terms of the 17955 * Common Development and Distribution License (the "License"). 17956 * You may not use this file except in compliance with the License. 17957 * 17958 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17959 * or http://www.opensolaris.org/os/licensing. 17960 * See the License for the specific language governing permissions 17961 * and limitations under the License. 17962 * 17963 * When distributing Covered Code, include this CDDL HEADER in each 17964 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17965 * If applicable, add the following below this CDDL HEADER, with the 17966 * fields enclosed by brackets "[]" replaced with your own identifying 17967 * information: Portions Copyright [yyyy] [name of copyright owner] 17968 * 17969 * CDDL HEADER END 17970 */ 17971 /* 17972 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 17973 * Use is subject to license terms. 17974 */ 17975 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 17976 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libbrand.h" 1 17977 /* 17978 * CDDL HEADER START 17979 * 17980 * The contents of this file are subject to the terms of the 17981 * Common Development and Distribution License (the "License"). 17982 * You may not use this file except in compliance with the License. 17983 * 17984 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 17985 * or http://www.opensolaris.org/os/licensing. 17986 * See the License for the specific language governing permissions 17987 * and limitations under the License. 17988 * 17989 * When distributing Covered Code, include this CDDL HEADER in each 17990 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 17991 * If applicable, add the following below this CDDL HEADER, with the 17992 * fields enclosed by brackets "[]" replaced with your own identifying 17993 * information: Portions Copyright [yyyy] [name of copyright owner] 17994 * 17995 * CDDL HEADER END 17996 */ 17997 17998 /* 17999 * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. 18000 * Copyright (c) 2011, Joyent, Inc. All rights reserved. 18001 * Copyright 2014 Nexenta Systems, Inc. All rights reserved. 18002 */ 18003 # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libbrand.h" 18004 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 18005 /* 18006 * CDDL HEADER START 18007 * 18008 * The contents of this file are subject to the terms of the 18009 * Common Development and Distribution License (the "License"). 18010 * You may not use this file except in compliance with the License. 18011 * 18012 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18013 * or http://www.opensolaris.org/os/licensing. 18014 * See the License for the specific language governing permissions 18015 * and limitations under the License. 18016 * 18017 * When distributing Covered Code, include this CDDL HEADER in each 18018 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18019 * If applicable, add the following below this CDDL HEADER, with the 18020 * fields enclosed by brackets "[]" replaced with your own identifying 18021 * information: Portions Copyright [yyyy] [name of copyright owner] 18022 * 18023 * CDDL HEADER END 18024 */ 18025 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 18026 /* All Rights Reserved */ 18027 18028 18029 /* 18030 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 18031 * Use is subject to license terms. 18032 * 18033 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 18034 * Copyright 2016 Joyent, Inc. 18035 */ 18036 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libbrand.h" 2 18037 18038 typedef struct __brand_handle *brand_handle_t; 18039 18040 typedef struct priv_iter_s { 18041 char *pi_name; 18042 char *pi_set; 18043 char *pi_iptype; 18044 } priv_iter_t; 18045 18046 extern brand_handle_t brand_open(const char *); 18047 extern void brand_close(brand_handle_t); 18048 18049 extern boolean_t brand_allow_exclusive_ip(brand_handle_t); 18050 18051 extern int brand_get_attach(brand_handle_t, const char *, const char *, 18052 char *, size_t); 18053 extern int brand_get_boot(brand_handle_t, const char *, const char *, 18054 char *, size_t); 18055 extern int brand_get_brandname(brand_handle_t, char *, size_t); 18056 extern int brand_get_clone(brand_handle_t, const char *, const char *, 18057 char *, size_t); 18058 extern int brand_get_detach(brand_handle_t, const char *, const char *, 18059 char *, size_t); 18060 extern int brand_get_shutdown(brand_handle_t, const char *, const char *, 18061 char *, size_t); 18062 extern int brand_get_halt(brand_handle_t, const char *, const char *, 18063 char *, size_t); 18064 extern int brand_get_initname(brand_handle_t, char *, size_t); 18065 extern boolean_t brand_restartinit(brand_handle_t); 18066 extern int brand_get_install(brand_handle_t, const char *, const char *, 18067 char *, size_t); 18068 extern int brand_get_installopts(brand_handle_t, char *, size_t); 18069 extern int brand_get_login_cmd(brand_handle_t, const char *, char *, size_t); 18070 extern int brand_get_forcedlogin_cmd(brand_handle_t, const char *, 18071 char *, size_t); 18072 extern int brand_get_modname(brand_handle_t, char *, size_t); 18073 extern int brand_get_postattach(brand_handle_t, const char *, const char *, 18074 char *, size_t); 18075 extern int brand_get_postclone(brand_handle_t, const char *, const char *, 18076 char *, size_t); 18077 extern int brand_get_postinstall(brand_handle_t, const char *, const char *, 18078 char *, size_t); 18079 extern int brand_get_postsnap(brand_handle_t, const char *, const char *, 18080 char *, size_t); 18081 extern int brand_get_poststatechange(brand_handle_t, const char *, const char *, 18082 char *, size_t); 18083 extern int brand_get_predetach(brand_handle_t, const char *, const char *, 18084 char *, size_t); 18085 extern int brand_get_presnap(brand_handle_t, const char *, const char *, 18086 char *, size_t); 18087 extern int brand_get_prestatechange(brand_handle_t, const char *, const char *, 18088 char *, size_t); 18089 extern int brand_get_preuninstall(brand_handle_t, const char *, const char *, 18090 char *, size_t); 18091 extern int brand_get_query(brand_handle_t, const char *, const char *, 18092 char *, size_t); 18093 extern int brand_get_uninstall(brand_handle_t, const char *, const char *, 18094 char *, size_t); 18095 extern int brand_get_validatesnap(brand_handle_t, const char *, const char *, 18096 char *, size_t); 18097 extern int brand_get_user_cmd(brand_handle_t, const char *, char *, size_t); 18098 extern int brand_get_verify_cfg(brand_handle_t, char *, size_t); 18099 extern int brand_get_verify_adm(brand_handle_t, const char *, const char *, 18100 char *, size_t); 18101 extern int brand_get_sysboot(brand_handle_t, const char *, const char *, char *, 18102 size_t); 18103 18104 extern int brand_config_iter_privilege(brand_handle_t, 18105 int (*func)(void *, priv_iter_t *), void *); 18106 18107 extern int brand_platform_iter_devices(brand_handle_t, const char *, 18108 int (*)(void *, const char *, const char *), void *, const char *); 18109 extern int brand_platform_iter_gmounts(brand_handle_t, const char *, 18110 int (*)(void *, const char *, const char *, const char *, const char *), 18111 void *); 18112 extern int brand_platform_iter_link(brand_handle_t, int (*)(void *, 18113 const char *, const char *), void *); 18114 extern int brand_platform_iter_mounts(brand_handle_t, int (*)(void *, 18115 const char *, const char *, const char *, const char *), void *); 18116 # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 18117 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uuid.h" 1 18118 /* 18119 * CDDL HEADER START 18120 * 18121 * The contents of this file are subject to the terms of the 18122 * Common Development and Distribution License, Version 1.0 only 18123 * (the "License"). You may not use this file except in compliance 18124 * with the License. 18125 * 18126 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18127 * or http://www.opensolaris.org/os/licensing. 18128 * See the License for the specific language governing permissions 18129 * and limitations under the License. 18130 * 18131 * When distributing Covered Code, include this CDDL HEADER in each 18132 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18133 * If applicable, add the following below this CDDL HEADER, with the 18134 * fields enclosed by brackets "[]" replaced with your own identifying 18135 * information: Portions Copyright [yyyy] [name of copyright owner] 18136 * 18137 * CDDL HEADER END 18138 */ 18139 /* 18140 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 18141 * Use is subject to license terms. 18142 */ 18143 18144 18145 18146 18147 #pragma ident "%Z%%M% %I% %E% SMI" 18148 18149 18150 18151 18152 18153 /* 18154 * The copyright in this file is taken from the original Leach 18155 * & Salz UUID specification, from which this implementation 18156 * is derived. 18157 */ 18158 18159 /* 18160 * Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. 18161 * Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & 18162 * Digital Equipment Corporation, Maynard, Mass. Copyright (c) 1998 18163 * Microsoft. To anyone who acknowledges that this file is provided 18164 * "AS IS" without any express or implied warranty: permission to use, 18165 * copy, modify, and distribute this file for any purpose is hereby 18166 * granted without fee, provided that the above copyright notices and 18167 * this notice appears in all source code copies, and that none of the 18168 * names of Open Software Foundation, Inc., Hewlett-Packard Company, 18169 * or Digital Equipment Corporation be used in advertising or 18170 * publicity pertaining to distribution of the software without 18171 * specific, written prior permission. Neither Open Software 18172 * Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital 18173 * Equipment Corporation makes any representations about the 18174 * suitability of this software for any purpose. 18175 */ 18176 18177 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 18178 /* 18179 * CDDL HEADER START 18180 * 18181 * The contents of this file are subject to the terms of the 18182 * Common Development and Distribution License (the "License"). 18183 * You may not use this file except in compliance with the License. 18184 * 18185 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18186 * or http://www.opensolaris.org/os/licensing. 18187 * See the License for the specific language governing permissions 18188 * and limitations under the License. 18189 * 18190 * When distributing Covered Code, include this CDDL HEADER in each 18191 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18192 * If applicable, add the following below this CDDL HEADER, with the 18193 * fields enclosed by brackets "[]" replaced with your own identifying 18194 * information: Portions Copyright [yyyy] [name of copyright owner] 18195 * 18196 * CDDL HEADER END 18197 */ 18198 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 18199 /* All Rights Reserved */ 18200 18201 18202 /* 18203 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 18204 * Use is subject to license terms. 18205 * 18206 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 18207 * Copyright 2016 Joyent, Inc. 18208 */ 18209 # 61 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uuid.h" 2 18210 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/byteorder.h" 1 18211 /* 18212 * CDDL HEADER START 18213 * 18214 * The contents of this file are subject to the terms of the 18215 * Common Development and Distribution License (the "License"). 18216 * You may not use this file except in compliance with the License. 18217 * 18218 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18219 * or http://www.opensolaris.org/os/licensing. 18220 * See the License for the specific language governing permissions 18221 * and limitations under the License. 18222 * 18223 * When distributing Covered Code, include this CDDL HEADER in each 18224 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18225 * If applicable, add the following below this CDDL HEADER, with the 18226 * fields enclosed by brackets "[]" replaced with your own identifying 18227 * information: Portions Copyright [yyyy] [name of copyright owner] 18228 * 18229 * CDDL HEADER END 18230 */ 18231 18232 /* 18233 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 18234 * Use is subject to license terms. 18235 */ 18236 18237 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 18238 /* All Rights Reserved */ 18239 18240 /* 18241 * University Copyright- Copyright (c) 1982, 1986, 1988 18242 * The Regents of the University of California 18243 * All Rights Reserved 18244 * 18245 * University Acknowledgment- Portions of this document are derived from 18246 * software developed by the University of California, Berkeley, and its 18247 * contributors. 18248 */ 18249 # 62 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/uuid.h" 2 18250 18251 typedef struct { 18252 uint8_t nodeID[6]; 18253 } uuid_node_t; 18254 18255 /* 18256 * The uuid type used throughout when referencing uuids themselves 18257 */ 18258 struct uuid { 18259 uint32_t time_low; 18260 uint16_t time_mid; 18261 uint16_t time_hi_and_version; 18262 uint8_t clock_seq_hi_and_reserved; 18263 uint8_t clock_seq_low; 18264 uint8_t node_addr[6]; 18265 }; 18266 18267 18268 18269 18270 18271 typedef uchar_t uuid_t[16]; 18272 18273 /* 18274 * Convert a uuid to/from little-endian format 18275 */ 18276 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 18277 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libuutil.h" 1 18278 /* 18279 * CDDL HEADER START 18280 * 18281 * The contents of this file are subject to the terms of the 18282 * Common Development and Distribution License (the "License"). 18283 * You may not use this file except in compliance with the License. 18284 * 18285 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18286 * or http://www.opensolaris.org/os/licensing. 18287 * See the License for the specific language governing permissions 18288 * and limitations under the License. 18289 * 18290 * When distributing Covered Code, include this CDDL HEADER in each 18291 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18292 * If applicable, add the following below this CDDL HEADER, with the 18293 * fields enclosed by brackets "[]" replaced with your own identifying 18294 * information: Portions Copyright [yyyy] [name of copyright owner] 18295 * 18296 * CDDL HEADER END 18297 */ 18298 /* 18299 * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 18300 */ 18301 18302 18303 18304 18305 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 18306 /* 18307 * CDDL HEADER START 18308 * 18309 * The contents of this file are subject to the terms of the 18310 * Common Development and Distribution License (the "License"). 18311 * You may not use this file except in compliance with the License. 18312 * 18313 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18314 * or http://www.opensolaris.org/os/licensing. 18315 * See the License for the specific language governing permissions 18316 * and limitations under the License. 18317 * 18318 * When distributing Covered Code, include this CDDL HEADER in each 18319 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18320 * If applicable, add the following below this CDDL HEADER, with the 18321 * fields enclosed by brackets "[]" replaced with your own identifying 18322 * information: Portions Copyright [yyyy] [name of copyright owner] 18323 * 18324 * CDDL HEADER END 18325 */ 18326 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 18327 /* All Rights Reserved */ 18328 18329 18330 /* 18331 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 18332 * Use is subject to license terms. 18333 * 18334 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 18335 * Copyright 2016 Joyent, Inc. 18336 */ 18337 # 29 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libuutil.h" 2 18338 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdarg.h" 1 18339 /* 18340 * CDDL HEADER START 18341 * 18342 * The contents of this file are subject to the terms of the 18343 * Common Development and Distribution License, Version 1.0 only 18344 * (the "License"). You may not use this file except in compliance 18345 * with the License. 18346 * 18347 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18348 * or http://www.opensolaris.org/os/licensing. 18349 * See the License for the specific language governing permissions 18350 * and limitations under the License. 18351 * 18352 * When distributing Covered Code, include this CDDL HEADER in each 18353 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18354 * If applicable, add the following below this CDDL HEADER, with the 18355 * fields enclosed by brackets "[]" replaced with your own identifying 18356 * information: Portions Copyright [yyyy] [name of copyright owner] 18357 * 18358 * CDDL HEADER END 18359 */ 18360 /* Copyright (c) 1988 AT&T */ 18361 /* All Rights Reserved */ 18362 18363 /* 18364 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 18365 * 18366 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 18367 * Use is subject to license terms. 18368 */ 18369 18370 18371 18372 18373 /* 18374 * This header defines the ISO C 1989, ISO C++ 1998, and ISO C 1999 18375 * variable argument definitions. For legacy support, it also defines 18376 * the pre-standard variable argument definitions. 18377 * 18378 * The varargs definitions within this header are defined in terms of 18379 * implementation definitions. These implementation definitions reside 18380 * in <sys/va_list.h>. This organization enables protected use of 18381 * the implementation by other standard headers without introducing 18382 * names into the users' namespace. 18383 */ 18384 18385 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdarg_iso.h" 1 18386 /* 18387 * CDDL HEADER START 18388 * 18389 * The contents of this file are subject to the terms of the 18390 * Common Development and Distribution License, Version 1.0 only 18391 * (the "License"). You may not use this file except in compliance 18392 * with the License. 18393 * 18394 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18395 * or http://www.opensolaris.org/os/licensing. 18396 * See the License for the specific language governing permissions 18397 * and limitations under the License. 18398 * 18399 * When distributing Covered Code, include this CDDL HEADER in each 18400 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18401 * If applicable, add the following below this CDDL HEADER, with the 18402 * fields enclosed by brackets "[]" replaced with your own identifying 18403 * information: Portions Copyright [yyyy] [name of copyright owner] 18404 * 18405 * CDDL HEADER END 18406 */ 18407 /* Copyright (c) 1988 AT&T */ 18408 /* All Rights Reserved */ 18409 18410 18411 /* 18412 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 18413 * Use is subject to license terms. 18414 */ 18415 18416 /* 18417 * An application should not include this header directly. Instead it 18418 * should be included only through the inclusion of other Sun headers. 18419 * 18420 * The contents of this header is limited to identifiers specified in the 18421 * C Standard. Any new identifiers specified in future amendments to the 18422 * C Standard must be placed in this header. If these new identifiers 18423 * are required to also be in the C++ Standard "std" namespace, then for 18424 * anything other than macro definitions, corresponding "using" directives 18425 * must also be added to <stdarg.h>. 18426 */ 18427 18428 18429 18430 18431 #pragma ident "%Z%%M% %I% %E% SMI" 18432 18433 /* 18434 * This header defines the ISO C 1989 and ISO C++ 1998 variable 18435 * argument definitions. 18436 * 18437 * The varargs definitions within this header are defined in terms of 18438 * implementation definitions. These implementation definitions reside 18439 * in <sys/va_impl.h>. This organization enables protected use of 18440 * the implementation by other standard headers without introducing 18441 * names into the users' namespace. 18442 */ 18443 18444 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_impl.h" 1 18445 /* 18446 * CDDL HEADER START 18447 * 18448 * The contents of this file are subject to the terms of the 18449 * Common Development and Distribution License, Version 1.0 only 18450 * (the "License"). You may not use this file except in compliance 18451 * with the License. 18452 * 18453 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18454 * or http://www.opensolaris.org/os/licensing. 18455 * See the License for the specific language governing permissions 18456 * and limitations under the License. 18457 * 18458 * When distributing Covered Code, include this CDDL HEADER in each 18459 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18460 * If applicable, add the following below this CDDL HEADER, with the 18461 * fields enclosed by brackets "[]" replaced with your own identifying 18462 * information: Portions Copyright [yyyy] [name of copyright owner] 18463 * 18464 * CDDL HEADER END 18465 */ 18466 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 18467 /* All Rights Reserved */ 18468 18469 18470 /* 18471 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 18472 * 18473 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 18474 * Use is subject to license terms. 18475 */ 18476 18477 18478 18479 18480 /* 18481 * An application should not include this header directly. Instead it 18482 * should be included only through the inclusion of other Sun headers, 18483 * specifically <stdarg.h> and <varargs.h>. 18484 * 18485 * This header serves two purposes. 18486 * 18487 * First, it provides a common set of definitions that implementations 18488 * of the various standards for variable argument lists may use. These 18489 * various standards are implemented in <varargs.h>, <stdarg.h>, 18490 * <iso/stdarg_iso.h>, <iso/stdarg_c99.h>, and <sys/varargs.h>. 18491 * 18492 * Second, it provides varying implementations of the common definitions, 18493 * depending upon the compiler. 18494 */ 18495 18496 /* 18497 * The common definitions exported by this header or compilers using 18498 * this header are: 18499 * 18500 * the macro __va_start(list, name) starting the list iteration 18501 * the macro __va_arg(list, type) getting the current arg and iterating 18502 * the macro __va_copy(to, from) to bookmark the list iteration 18503 * the macro __va_end(list) to end the iteration 18504 * 18505 * In addition, the following are exported via inclusion of <sys/va_list.h>: 18506 * 18507 * the identifier __builtin_va_alist for the variable list pseudo parameter 18508 * the type __va_alist_type for the variable list pseudo parameter 18509 * the type __va_list defining the type of the variable list iterator 18510 */ 18511 18512 /* 18513 * This header uses feature macros (e.g. __BUILTIN_VA_ARG_INCR and 18514 * __BUILTIN_VA_STRUCT), compiler macros (e.g. __GNUC__), and processor 18515 * macros (e.g. __sparc) to determine the protocol appropriate to the 18516 * current compilation. It is intended that the compilation system 18517 * define the feature, processor, and compiler macros, not the user of 18518 * the system. 18519 */ 18520 18521 /* 18522 * Many compilation systems depend upon the use of special functions 18523 * built into the the compilation system to handle variable argument 18524 * lists. These built-in symbols may include one or more of the 18525 * following: 18526 * 18527 * __builtin_va_alist 18528 * __builtin_va_start 18529 * __builtin_va_arg_incr 18530 * __builtin_stdarg_start 18531 * __builtin_va_end 18532 * __builtin_va_arg 18533 * __builtin_va_copy 18534 */ 18535 18536 /* 18537 * The following are defined in <sys/va_list.h>: 18538 * 18539 * __va_alist_type 18540 * __va_void() 18541 * __va_ptr_base 18542 * ISA definitions via inclusion of <sys/isa_defs.h> 18543 * 18544 * Inclusion of this header also makes visible the symbols in <sys/va_list.h>. 18545 * This header is included in <varargs.h>, <sys/varargs.h> and in <stdarg.h> 18546 * via inclusion of <iso/stdarg_iso.h>. 18547 */ 18548 18549 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_list.h" 1 18550 /* 18551 * CDDL HEADER START 18552 * 18553 * The contents of this file are subject to the terms of the 18554 * Common Development and Distribution License, Version 1.0 only 18555 * (the "License"). You may not use this file except in compliance 18556 * with the License. 18557 * 18558 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18559 * or http://www.opensolaris.org/os/licensing. 18560 * See the License for the specific language governing permissions 18561 * and limitations under the License. 18562 * 18563 * When distributing Covered Code, include this CDDL HEADER in each 18564 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18565 * If applicable, add the following below this CDDL HEADER, with the 18566 * fields enclosed by brackets "[]" replaced with your own identifying 18567 * information: Portions Copyright [yyyy] [name of copyright owner] 18568 * 18569 * CDDL HEADER END 18570 */ 18571 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 18572 /* All Rights Reserved */ 18573 18574 18575 /* 18576 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 18577 * 18578 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 18579 * Use is subject to license terms. 18580 */ 18581 # 106 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/va_impl.h" 2 18582 # 60 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdarg_iso.h" 2 18583 # 71 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdarg_iso.h" 18584 typedef __va_list va_list; 18585 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdarg.h" 2 18586 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdarg_c99.h" 1 18587 /* 18588 * CDDL HEADER START 18589 * 18590 * The contents of this file are subject to the terms of the 18591 * Common Development and Distribution License, Version 1.0 only 18592 * (the "License"). You may not use this file except in compliance 18593 * with the License. 18594 * 18595 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18596 * or http://www.opensolaris.org/os/licensing. 18597 * See the License for the specific language governing permissions 18598 * and limitations under the License. 18599 * 18600 * When distributing Covered Code, include this CDDL HEADER in each 18601 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18602 * If applicable, add the following below this CDDL HEADER, with the 18603 * fields enclosed by brackets "[]" replaced with your own identifying 18604 * information: Portions Copyright [yyyy] [name of copyright owner] 18605 * 18606 * CDDL HEADER END 18607 */ 18608 /* Copyright (c) 1988 AT&T */ 18609 /* All Rights Reserved */ 18610 18611 18612 /* 18613 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 18614 * Use is subject to license terms. 18615 */ 18616 18617 18618 18619 18620 #pragma ident "%Z%%M% %I% %E% SMI" 18621 18622 /* 18623 * An application should not include this header directly. Instead it 18624 * should be included only through the inclusion of other Sun headers. 18625 * 18626 * This header defines the va_copy variable argument macro, which is 18627 * new in ISO C 1999, and thus not present in ISO C 1989 and ISO C++ 18628 * 1998. Because this macro is a long-standing Solaris extension, it 18629 * is also permitted in other contexts. 18630 * 18631 * The varargs definitions within this header are defined in terms of 18632 * implementation definitions. These implementation definitions reside 18633 * in <sys/va_list.h>. This organization enables protected use of 18634 * the implementation by other standard headers without introducing 18635 * names into the users' namespace. 18636 */ 18637 18638 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 18639 /* 18640 * CDDL HEADER START 18641 * 18642 * The contents of this file are subject to the terms of the 18643 * Common Development and Distribution License (the "License"). 18644 * You may not use this file except in compliance with the License. 18645 * 18646 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18647 * or http://www.opensolaris.org/os/licensing. 18648 * See the License for the specific language governing permissions 18649 * and limitations under the License. 18650 * 18651 * When distributing Covered Code, include this CDDL HEADER in each 18652 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18653 * If applicable, add the following below this CDDL HEADER, with the 18654 * fields enclosed by brackets "[]" replaced with your own identifying 18655 * information: Portions Copyright [yyyy] [name of copyright owner] 18656 * 18657 * CDDL HEADER END 18658 */ 18659 18660 /* 18661 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 18662 * Copyright 2016 Joyent, Inc. 18663 * 18664 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 18665 * Use is subject to license terms. 18666 */ 18667 # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/iso/stdarg_c99.h" 2 18668 18669 18670 18671 18672 18673 /* 18674 * va_copy was initially a Solaris extension to provide a portable 18675 * way to perform a variable argument list ``bookmarking'' function. 18676 * It is now specified in the ISO/IEC 9899:1999 standard. 18677 */ 18678 # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdarg.h" 2 18679 18680 /* 18681 * Allow global visibility for symbols defined in 18682 * C++ "std" namespace in <iso/stdarg_iso.h>. 18683 */ 18684 # 30 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libuutil.h" 2 18685 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1 18686 /* 18687 * CDDL HEADER START 18688 * 18689 * The contents of this file are subject to the terms of the 18690 * Common Development and Distribution License (the "License"). 18691 * You may not use this file except in compliance with the License. 18692 * 18693 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 18694 * or http://www.opensolaris.org/os/licensing. 18695 * See the License for the specific language governing permissions 18696 * and limitations under the License. 18697 * 18698 * When distributing Covered Code, include this CDDL HEADER in each 18699 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 18700 * If applicable, add the following below this CDDL HEADER, with the 18701 * fields enclosed by brackets "[]" replaced with your own identifying 18702 * information: Portions Copyright [yyyy] [name of copyright owner] 18703 * 18704 * CDDL HEADER END 18705 */ 18706 18707 /* 18708 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 18709 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 18710 */ 18711 18712 /* Copyright (c) 1988 AT&T */ 18713 /* All Rights Reserved */ 18714 18715 /* 18716 * User-visible pieces of the ANSI C standard I/O package. 18717 */ 18718 # 31 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libuutil.h" 2 18719 18720 18721 18722 18723 18724 /* 18725 * Standard flags codes. 18726 */ 18727 18728 18729 /* 18730 * Standard error codes. 18731 */ 18732 # 59 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libuutil.h" 18733 /* 18734 * Standard program exit codes. 18735 */ 18736 18737 18738 18739 18740 /* 18741 * Exit status profiles. 18742 */ 18743 18744 18745 18746 /* 18747 * Error reporting functions. 18748 */ 18749 uint32_t uu_error(void); 18750 const char *uu_strerror(uint32_t); 18751 18752 /* 18753 * Program notification functions. 18754 */ 18755 extern void uu_alt_exit(int); 18756 extern const char *uu_setpname(char *); 18757 extern const char *uu_getpname(void); 18758 /*PRINTFLIKE1*/ 18759 extern void uu_warn(const char *, ...); 18760 extern void uu_vwarn(const char *, va_list); 18761 /*PRINTFLIKE1*/ 18762 extern void uu_die(const char *, ...) __attribute__((__noreturn__)); 18763 extern void uu_vdie(const char *, va_list) __attribute__((__noreturn__)); 18764 /*PRINTFLIKE2*/ 18765 extern void uu_xdie(int, const char *, ...) __attribute__((__noreturn__)); 18766 extern void uu_vxdie(int, const char *, va_list) __attribute__((__noreturn__)); 18767 18768 /* 18769 * Exit status functions (not to be used directly) 18770 */ 18771 extern int *uu_exit_ok(void); 18772 extern int *uu_exit_fatal(void); 18773 extern int *uu_exit_usage(void); 18774 18775 /* 18776 * string->number conversions 18777 */ 18778 extern int uu_strtoint(const char *, void *, size_t, int, int64_t, int64_t); 18779 extern int uu_strtouint(const char *, void *, size_t, int, uint64_t, uint64_t); 18780 18781 /* 18782 * Debug print facility functions. 18783 */ 18784 typedef struct uu_dprintf uu_dprintf_t; 18785 18786 typedef enum { 18787 UU_DPRINTF_SILENT, 18788 UU_DPRINTF_FATAL, 18789 UU_DPRINTF_WARNING, 18790 UU_DPRINTF_NOTICE, 18791 UU_DPRINTF_INFO, 18792 UU_DPRINTF_DEBUG 18793 } uu_dprintf_severity_t; 18794 18795 extern uu_dprintf_t *uu_dprintf_create(const char *, uu_dprintf_severity_t, 18796 uint_t); 18797 /*PRINTFLIKE3*/ 18798 extern void uu_dprintf(uu_dprintf_t *, uu_dprintf_severity_t, 18799 const char *, ...); 18800 extern void uu_dprintf_destroy(uu_dprintf_t *); 18801 extern const char *uu_dprintf_getname(uu_dprintf_t *); 18802 18803 /* 18804 * Identifier test flags and function. 18805 */ 18806 18807 18808 18809 int uu_check_name(const char *, uint_t); 18810 18811 /* 18812 * File creation functions. 18813 */ 18814 extern int uu_open_tmp(const char *dir, uint_t uflags); 18815 18816 /* 18817 * Convenience functions. 18818 */ 18819 18820 18821 /*PRINTFLIKE1*/ 18822 extern char *uu_msprintf(const char *format, ...); 18823 extern void *uu_zalloc(size_t); 18824 extern char *uu_strdup(const char *); 18825 extern void uu_free(void *); 18826 18827 extern boolean_t uu_strcaseeq(const char *a, const char *b); 18828 extern boolean_t uu_streq(const char *a, const char *b); 18829 extern char *uu_strndup(const char *s, size_t n); 18830 extern boolean_t uu_strbw(const char *a, const char *b); 18831 extern void *uu_memdup(const void *buf, size_t sz); 18832 extern void uu_dump(FILE *out, const char *prefix, const void *buf, size_t len); 18833 18834 /* 18835 * Comparison function type definition. 18836 * Developers should be careful in their use of the _private argument. If you 18837 * break interface guarantees, you get undefined behavior. 18838 */ 18839 typedef int uu_compare_fn_t(const void *__left, const void *__right, 18840 void *__private); 18841 18842 /* 18843 * Walk variant flags. 18844 * A data structure need not provide support for all variants and 18845 * combinations. Refer to the appropriate documentation. 18846 */ 18847 18848 18849 18850 18851 18852 18853 /* 18854 * Walk callback function return codes. 18855 */ 18856 18857 18858 18859 18860 /* 18861 * Walk callback function type definition. 18862 */ 18863 typedef int uu_walk_fn_t(void *_elem, void *_private); 18864 18865 /* 18866 * lists: opaque structures 18867 */ 18868 typedef struct uu_list_pool uu_list_pool_t; 18869 typedef struct uu_list uu_list_t; 18870 18871 typedef struct uu_list_node { 18872 uintptr_t uln_opaque[2]; 18873 } uu_list_node_t; 18874 18875 typedef struct uu_list_walk uu_list_walk_t; 18876 18877 typedef uintptr_t uu_list_index_t; 18878 18879 /* 18880 * lists: interface 18881 * 18882 * basic usage: 18883 * typedef struct foo { 18884 * ... 18885 * uu_list_node_t foo_node; 18886 * ... 18887 * } foo_t; 18888 * 18889 * static int 18890 * foo_compare(void *l_arg, void *r_arg, void *private) 18891 * { 18892 * foo_t *l = l_arg; 18893 * foo_t *r = r_arg; 18894 * 18895 * if (... l greater than r ...) 18896 * return (1); 18897 * if (... l less than r ...) 18898 * return (-1); 18899 * return (0); 18900 * } 18901 * 18902 * ... 18903 * // at initialization time 18904 * foo_pool = uu_list_pool_create("foo_pool", 18905 * sizeof (foo_t), offsetof(foo_t, foo_node), foo_compare, 18906 * debugging? 0 : UU_AVL_POOL_DEBUG); 18907 * ... 18908 */ 18909 uu_list_pool_t *uu_list_pool_create(const char *, size_t, size_t, 18910 uu_compare_fn_t *, uint32_t); 18911 18912 18913 void uu_list_pool_destroy(uu_list_pool_t *); 18914 18915 /* 18916 * usage: 18917 * 18918 * foo_t *a; 18919 * a = malloc(sizeof(*a)); 18920 * uu_list_node_init(a, &a->foo_list, pool); 18921 * ... 18922 * uu_list_node_fini(a, &a->foo_list, pool); 18923 * free(a); 18924 */ 18925 void uu_list_node_init(void *, uu_list_node_t *, uu_list_pool_t *); 18926 void uu_list_node_fini(void *, uu_list_node_t *, uu_list_pool_t *); 18927 18928 uu_list_t *uu_list_create(uu_list_pool_t *, void *_parent, uint32_t); 18929 18930 18931 18932 void uu_list_destroy(uu_list_t *); /* list must be empty */ 18933 18934 size_t uu_list_numnodes(uu_list_t *); 18935 18936 void *uu_list_first(uu_list_t *); 18937 void *uu_list_last(uu_list_t *); 18938 18939 void *uu_list_next(uu_list_t *, void *); 18940 void *uu_list_prev(uu_list_t *, void *); 18941 18942 int uu_list_walk(uu_list_t *, uu_walk_fn_t *, void *, uint32_t); 18943 18944 uu_list_walk_t *uu_list_walk_start(uu_list_t *, uint32_t); 18945 void *uu_list_walk_next(uu_list_walk_t *); 18946 void uu_list_walk_end(uu_list_walk_t *); 18947 18948 void *uu_list_find(uu_list_t *, void *, void *, uu_list_index_t *); 18949 void uu_list_insert(uu_list_t *, void *, uu_list_index_t); 18950 18951 void *uu_list_nearest_next(uu_list_t *, uu_list_index_t); 18952 void *uu_list_nearest_prev(uu_list_t *, uu_list_index_t); 18953 18954 void *uu_list_teardown(uu_list_t *, void **); 18955 18956 void uu_list_remove(uu_list_t *, void *); 18957 18958 /* 18959 * lists: interfaces for non-sorted lists only 18960 */ 18961 int uu_list_insert_before(uu_list_t *, void *_target, void *_elem); 18962 int uu_list_insert_after(uu_list_t *, void *_target, void *_elem); 18963 18964 /* 18965 * avl trees: opaque structures 18966 */ 18967 typedef struct uu_avl_pool uu_avl_pool_t; 18968 typedef struct uu_avl uu_avl_t; 18969 18970 typedef struct uu_avl_node { 18971 18972 uintptr_t uan_opaque[3]; 18973 18974 18975 18976 } uu_avl_node_t; 18977 18978 typedef struct uu_avl_walk uu_avl_walk_t; 18979 18980 typedef uintptr_t uu_avl_index_t; 18981 18982 /* 18983 * avl trees: interface 18984 * 18985 * basic usage: 18986 * typedef struct foo { 18987 * ... 18988 * uu_avl_node_t foo_node; 18989 * ... 18990 * } foo_t; 18991 * 18992 * static int 18993 * foo_compare(void *l_arg, void *r_arg, void *private) 18994 * { 18995 * foo_t *l = l_arg; 18996 * foo_t *r = r_arg; 18997 * 18998 * if (... l greater than r ...) 18999 * return (1); 19000 * if (... l less than r ...) 19001 * return (-1); 19002 * return (0); 19003 * } 19004 * 19005 * ... 19006 * // at initialization time 19007 * foo_pool = uu_avl_pool_create("foo_pool", 19008 * sizeof (foo_t), offsetof(foo_t, foo_node), foo_compare, 19009 * debugging? 0 : UU_AVL_POOL_DEBUG); 19010 * ... 19011 */ 19012 uu_avl_pool_t *uu_avl_pool_create(const char *, size_t, size_t, 19013 uu_compare_fn_t *, uint32_t); 19014 19015 19016 void uu_avl_pool_destroy(uu_avl_pool_t *); 19017 19018 /* 19019 * usage: 19020 * 19021 * foo_t *a; 19022 * a = malloc(sizeof(*a)); 19023 * uu_avl_node_init(a, &a->foo_avl, pool); 19024 * ... 19025 * uu_avl_node_fini(a, &a->foo_avl, pool); 19026 * free(a); 19027 */ 19028 void uu_avl_node_init(void *, uu_avl_node_t *, uu_avl_pool_t *); 19029 void uu_avl_node_fini(void *, uu_avl_node_t *, uu_avl_pool_t *); 19030 19031 uu_avl_t *uu_avl_create(uu_avl_pool_t *, void *_parent, uint32_t); 19032 19033 19034 void uu_avl_destroy(uu_avl_t *); /* list must be empty */ 19035 19036 size_t uu_avl_numnodes(uu_avl_t *); 19037 19038 void *uu_avl_first(uu_avl_t *); 19039 void *uu_avl_last(uu_avl_t *); 19040 19041 void *uu_avl_next(uu_avl_t *, void *); 19042 void *uu_avl_prev(uu_avl_t *, void *); 19043 19044 int uu_avl_walk(uu_avl_t *, uu_walk_fn_t *, void *, uint32_t); 19045 19046 uu_avl_walk_t *uu_avl_walk_start(uu_avl_t *, uint32_t); 19047 void *uu_avl_walk_next(uu_avl_walk_t *); 19048 void uu_avl_walk_end(uu_avl_walk_t *); 19049 19050 void *uu_avl_find(uu_avl_t *, void *, void *, uu_avl_index_t *); 19051 void uu_avl_insert(uu_avl_t *, void *, uu_avl_index_t); 19052 19053 void *uu_avl_nearest_next(uu_avl_t *, uu_avl_index_t); 19054 void *uu_avl_nearest_prev(uu_avl_t *, uu_avl_index_t); 19055 19056 void *uu_avl_teardown(uu_avl_t *, void **); 19057 19058 void uu_avl_remove(uu_avl_t *, void *); 19059 # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 19060 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mnttab.h" 1 19061 /* 19062 * CDDL HEADER START 19063 * 19064 * The contents of this file are subject to the terms of the 19065 * Common Development and Distribution License (the "License"). 19066 * You may not use this file except in compliance with the License. 19067 * 19068 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19069 * or http://www.opensolaris.org/os/licensing. 19070 * See the License for the specific language governing permissions 19071 * and limitations under the License. 19072 * 19073 * When distributing Covered Code, include this CDDL HEADER in each 19074 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19075 * If applicable, add the following below this CDDL HEADER, with the 19076 * fields enclosed by brackets "[]" replaced with your own identifying 19077 * information: Portions Copyright [yyyy] [name of copyright owner] 19078 * 19079 * CDDL HEADER END 19080 */ 19081 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 19082 /* All Rights Reserved */ 19083 19084 19085 /* 19086 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 19087 * 19088 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 19089 * Use is subject to license terms. 19090 */ 19091 19092 19093 19094 19095 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 19096 /* 19097 * CDDL HEADER START 19098 * 19099 * The contents of this file are subject to the terms of the 19100 * Common Development and Distribution License (the "License"). 19101 * You may not use this file except in compliance with the License. 19102 * 19103 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19104 * or http://www.opensolaris.org/os/licensing. 19105 * See the License for the specific language governing permissions 19106 * and limitations under the License. 19107 * 19108 * When distributing Covered Code, include this CDDL HEADER in each 19109 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19110 * If applicable, add the following below this CDDL HEADER, with the 19111 * fields enclosed by brackets "[]" replaced with your own identifying 19112 * information: Portions Copyright [yyyy] [name of copyright owner] 19113 * 19114 * CDDL HEADER END 19115 */ 19116 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 19117 /* All Rights Reserved */ 19118 19119 19120 /* 19121 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 19122 * Use is subject to license terms. 19123 * 19124 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 19125 * Copyright 2016 Joyent, Inc. 19126 */ 19127 # 36 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mnttab.h" 2 19128 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mnttab.h" 19129 /* 19130 * The fields in struct extmnttab should match those in struct mnttab until new 19131 * fields are encountered. This allows hasmntopt(), getmntent_common() and 19132 * mntioctl() to cast one type to the other safely. 19133 * 19134 * The fields in struct mnttab, struct extmnttab and struct mntentbuf must all 19135 * match those in the corresponding 32-bit versions defined in mntvnops.c. 19136 */ 19137 struct mnttab { 19138 char *mnt_special; 19139 char *mnt_mountp; 19140 char *mnt_fstype; 19141 char *mnt_mntopts; 19142 char *mnt_time; 19143 }; 19144 19145 struct extmnttab { 19146 char *mnt_special; 19147 char *mnt_mountp; 19148 char *mnt_fstype; 19149 char *mnt_mntopts; 19150 char *mnt_time; 19151 uint_t mnt_major; 19152 uint_t mnt_minor; 19153 }; 19154 19155 struct mntentbuf { 19156 struct extmnttab *mbuf_emp; 19157 size_t mbuf_bufsize; 19158 char *mbuf_buf; 19159 }; 19160 19161 19162 extern void resetmnttab(FILE *); 19163 extern int getmntent(FILE *, struct mnttab *); 19164 extern int getextmntent(FILE *, struct extmnttab *, size_t); 19165 extern int getmntany(FILE *, struct mnttab *, struct mnttab *); 19166 extern char *hasmntopt(struct mnttab *, char *); 19167 extern char *mntopt(char **); 19168 # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 19169 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/limits.h" 1 19170 /* 19171 * CDDL HEADER START 19172 * 19173 * The contents of this file are subject to the terms of the 19174 * Common Development and Distribution License (the "License"). 19175 * You may not use this file except in compliance with the License. 19176 * 19177 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19178 * or http://www.opensolaris.org/os/licensing. 19179 * See the License for the specific language governing permissions 19180 * and limitations under the License. 19181 * 19182 * When distributing Covered Code, include this CDDL HEADER in each 19183 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19184 * If applicable, add the following below this CDDL HEADER, with the 19185 * fields enclosed by brackets "[]" replaced with your own identifying 19186 * information: Portions Copyright [yyyy] [name of copyright owner] 19187 * 19188 * CDDL HEADER END 19189 */ 19190 19191 /* 19192 * Copyright (c) 2013 Gary Mills 19193 * 19194 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 19195 * Use is subject to license terms. 19196 */ 19197 19198 /* Copyright (c) 1988 AT&T */ 19199 /* All Rights Reserved */ 19200 # 53 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 19201 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmpx.h" 1 19202 /* 19203 * CDDL HEADER START 19204 * 19205 * The contents of this file are subject to the terms of the 19206 * Common Development and Distribution License, Version 1.0 only 19207 * (the "License"). You may not use this file except in compliance 19208 * with the License. 19209 * 19210 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19211 * or http://www.opensolaris.org/os/licensing. 19212 * See the License for the specific language governing permissions 19213 * and limitations under the License. 19214 * 19215 * When distributing Covered Code, include this CDDL HEADER in each 19216 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19217 * If applicable, add the following below this CDDL HEADER, with the 19218 * fields enclosed by brackets "[]" replaced with your own identifying 19219 * information: Portions Copyright [yyyy] [name of copyright owner] 19220 * 19221 * CDDL HEADER END 19222 */ 19223 /* 19224 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 19225 * 19226 * Copyright 1997 Sun Microsystems, Inc. All rights reserved. 19227 * Use is subject to license terms. 19228 */ 19229 19230 /* Copyright (c) 1983,1984,1985,1986,1987,1988,1989 AT&T */ 19231 /* All Rights Reserved */ 19232 19233 /* 19234 * Portions of this source code were derived from Berkeley 4.3 BSD 19235 * under license from the Regents of the University of California. 19236 */ 19237 19238 19239 19240 19241 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 19242 /* 19243 * CDDL HEADER START 19244 * 19245 * The contents of this file are subject to the terms of the 19246 * Common Development and Distribution License (the "License"). 19247 * You may not use this file except in compliance with the License. 19248 * 19249 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19250 * or http://www.opensolaris.org/os/licensing. 19251 * See the License for the specific language governing permissions 19252 * and limitations under the License. 19253 * 19254 * When distributing Covered Code, include this CDDL HEADER in each 19255 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19256 * If applicable, add the following below this CDDL HEADER, with the 19257 * fields enclosed by brackets "[]" replaced with your own identifying 19258 * information: Portions Copyright [yyyy] [name of copyright owner] 19259 * 19260 * CDDL HEADER END 19261 */ 19262 19263 /* 19264 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 19265 * Copyright 2016 Joyent, Inc. 19266 * 19267 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 19268 * Use is subject to license terms. 19269 */ 19270 # 41 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmpx.h" 2 19271 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 19272 /* 19273 * CDDL HEADER START 19274 * 19275 * The contents of this file are subject to the terms of the 19276 * Common Development and Distribution License (the "License"). 19277 * You may not use this file except in compliance with the License. 19278 * 19279 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19280 * or http://www.opensolaris.org/os/licensing. 19281 * See the License for the specific language governing permissions 19282 * and limitations under the License. 19283 * 19284 * When distributing Covered Code, include this CDDL HEADER in each 19285 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19286 * If applicable, add the following below this CDDL HEADER, with the 19287 * fields enclosed by brackets "[]" replaced with your own identifying 19288 * information: Portions Copyright [yyyy] [name of copyright owner] 19289 * 19290 * CDDL HEADER END 19291 */ 19292 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 19293 /* All Rights Reserved */ 19294 19295 19296 /* 19297 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 19298 * Use is subject to license terms. 19299 * 19300 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 19301 * Copyright 2016 Joyent, Inc. 19302 */ 19303 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmpx.h" 2 19304 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 19305 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 19306 /* All Rights Reserved */ 19307 19308 19309 /* 19310 * Copyright (c) 1982, 1986, 1993 Regents of the University of California. 19311 * All rights reserved. The Berkeley software License Agreement 19312 * specifies the terms and conditions for redistribution. 19313 */ 19314 19315 /* 19316 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 19317 * 19318 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 19319 * Use is subject to license terms. 19320 * 19321 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 19322 */ 19323 19324 /* 19325 * Copyright (c) 2013, 2015 by Delphix. All rights reserved. 19326 */ 19327 # 43 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmpx.h" 2 19328 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmp.h" 1 19329 /* 19330 * CDDL HEADER START 19331 * 19332 * The contents of this file are subject to the terms of the 19333 * Common Development and Distribution License, Version 1.0 only 19334 * (the "License"). You may not use this file except in compliance 19335 * with the License. 19336 * 19337 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19338 * or http://www.opensolaris.org/os/licensing. 19339 * See the License for the specific language governing permissions 19340 * and limitations under the License. 19341 * 19342 * When distributing Covered Code, include this CDDL HEADER in each 19343 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19344 * If applicable, add the following below this CDDL HEADER, with the 19345 * fields enclosed by brackets "[]" replaced with your own identifying 19346 * information: Portions Copyright [yyyy] [name of copyright owner] 19347 * 19348 * CDDL HEADER END 19349 */ 19350 /* Copyright (c) 1988 AT&T */ 19351 /* All Rights Reserved */ 19352 19353 19354 /* 19355 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 19356 * 19357 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 19358 * Use is subject to license terms. 19359 */ 19360 19361 19362 19363 19364 19365 /* 19366 * Note: The getutent(3c) family of interfaces are obsolete. 19367 * The getutxent(3c) family provide a superset of this functionality 19368 * and should be used in place of getutent(3c). 19369 */ 19370 19371 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 19372 /* 19373 * CDDL HEADER START 19374 * 19375 * The contents of this file are subject to the terms of the 19376 * Common Development and Distribution License (the "License"). 19377 * You may not use this file except in compliance with the License. 19378 * 19379 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19380 * or http://www.opensolaris.org/os/licensing. 19381 * See the License for the specific language governing permissions 19382 * and limitations under the License. 19383 * 19384 * When distributing Covered Code, include this CDDL HEADER in each 19385 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19386 * If applicable, add the following below this CDDL HEADER, with the 19387 * fields enclosed by brackets "[]" replaced with your own identifying 19388 * information: Portions Copyright [yyyy] [name of copyright owner] 19389 * 19390 * CDDL HEADER END 19391 */ 19392 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 19393 /* All Rights Reserved */ 19394 19395 19396 /* 19397 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 19398 * Use is subject to license terms. 19399 * 19400 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 19401 * Copyright 2016 Joyent, Inc. 19402 */ 19403 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmp.h" 2 19404 # 57 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmp.h" 19405 struct exit_status { 19406 short e_termination; /* Process termination status */ 19407 short e_exit; /* Process exit status */ 19408 }; 19409 # 70 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmp.h" 19410 /* 19411 * This data structure describes the utmp entries returned by 19412 * the getutent(3c) family of APIs. It does not (necessarily) 19413 * correspond to the contents of the utmp or wtmp files. 19414 * 19415 * Applications should only interact with this subsystem via 19416 * the getutxent(3c) family of APIs, as the getutent(3c) family 19417 * are obsolete. 19418 */ 19419 struct utmp { 19420 char ut_user[8]; /* User login name */ 19421 char ut_id[4]; /* /etc/inittab id(usually line #) */ 19422 char ut_line[12]; /* device name (console, lnxx) */ 19423 short ut_pid; /* short for compat. - process id */ 19424 short ut_type; /* type of entry */ 19425 struct exit_status ut_exit; /* The exit status of a process */ 19426 /* marked as DEAD_PROCESS. */ 19427 time_t ut_time; /* time entry was made */ 19428 }; 19429 19430 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types32.h" 1 19431 /* 19432 * CDDL HEADER START 19433 * 19434 * The contents of this file are subject to the terms of the 19435 * Common Development and Distribution License (the "License"). 19436 * You may not use this file except in compliance with the License. 19437 * 19438 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19439 * or http://www.opensolaris.org/os/licensing. 19440 * See the License for the specific language governing permissions 19441 * and limitations under the License. 19442 * 19443 * When distributing Covered Code, include this CDDL HEADER in each 19444 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19445 * If applicable, add the following below this CDDL HEADER, with the 19446 * fields enclosed by brackets "[]" replaced with your own identifying 19447 * information: Portions Copyright [yyyy] [name of copyright owner] 19448 * 19449 * CDDL HEADER END 19450 */ 19451 /* 19452 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 19453 * Use is subject to license terms. 19454 * Copyright 2015 Nexenta Systems, Inc. 19455 */ 19456 # 91 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmp.h" 2 19457 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 1 19458 /* 19459 * CDDL HEADER START 19460 * 19461 * The contents of this file are subject to the terms of the 19462 * Common Development and Distribution License, Version 1.0 only 19463 * (the "License"). You may not use this file except in compliance 19464 * with the License. 19465 * 19466 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19467 * or http://www.opensolaris.org/os/licensing. 19468 * See the License for the specific language governing permissions 19469 * and limitations under the License. 19470 * 19471 * When distributing Covered Code, include this CDDL HEADER in each 19472 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19473 * If applicable, add the following below this CDDL HEADER, with the 19474 * fields enclosed by brackets "[]" replaced with your own identifying 19475 * information: Portions Copyright [yyyy] [name of copyright owner] 19476 * 19477 * CDDL HEADER END 19478 */ 19479 /* 19480 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 19481 * 19482 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 19483 * Use is subject to license terms. 19484 */ 19485 # 92 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmp.h" 2 19486 19487 /* 19488 * This data structure describes the utmp *file* contents using 19489 * fixed-width data types. It should only be used by the implementation. 19490 * 19491 * Applications should use the getutxent(3c) family of routines to interact 19492 * with this database. 19493 */ 19494 19495 struct futmp { 19496 char ut_user[8]; /* User login name */ 19497 char ut_id[4]; /* /etc/inittab id */ 19498 char ut_line[12]; /* device name (console, lnxx) */ 19499 int16_t ut_pid; /* process id */ 19500 int16_t ut_type; /* type of entry */ 19501 struct { 19502 int16_t e_termination; /* Process termination status */ 19503 int16_t e_exit; /* Process exit status */ 19504 } ut_exit; /* The exit status of a process */ 19505 time32_t ut_time; /* time entry was made */ 19506 }; 19507 19508 19509 19510 /* Definitions for ut_type */ 19511 # 135 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmp.h" 19512 /* Special strings or formats used in the "ut_line" field when */ 19513 /* accounting for something other than a process. */ 19514 /* No string for the ut_line field can be more than 11 chars + */ 19515 /* a NULL in length. */ 19516 # 147 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmp.h" 19517 /* Define and macro for determing if a normal user wrote the entry */ 19518 /* and marking the utmpx entry as a normal user */ 19519 19520 19521 19522 19523 19524 extern void endutent(void); 19525 extern struct utmp *getutent(void); 19526 extern struct utmp *getutid(const struct utmp *); 19527 extern struct utmp *getutline(const struct utmp *); 19528 extern struct utmp *pututline(const struct utmp *); 19529 extern void setutent(void); 19530 extern int utmpname(const char *); 19531 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmpx.h" 2 19532 # 59 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmpx.h" 19533 /* 19534 * This data structure describes the utmpx entries returned by 19535 * the getutxent(3c) family of APIs. It does not (necessarily) 19536 * correspond to the contents of the utmpx or wtmpx files. 19537 * 19538 * Applications should only interact with this subsystem via 19539 * the getutxent(3c) family of APIs. 19540 */ 19541 struct utmpx { 19542 char ut_user[32]; /* user login name */ 19543 char ut_id[4]; /* inittab id */ 19544 char ut_line[32]; /* device name (console, lnxx) */ 19545 pid_t ut_pid; /* process id */ 19546 short ut_type; /* type of entry */ 19547 19548 struct exit_status ut_exit; /* process termination/exit status */ 19549 19550 19551 19552 struct timeval ut_tv; /* time entry was made */ 19553 int ut_session; /* session ID, used for windowing */ 19554 19555 int pad[5]; /* reserved for future use */ 19556 19557 19558 19559 short ut_syslen; /* significant length of ut_host */ 19560 /* including terminating null */ 19561 char ut_host[257]; /* remote host name */ 19562 }; 19563 19564 19565 19566 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types32.h" 1 19567 /* 19568 * CDDL HEADER START 19569 * 19570 * The contents of this file are subject to the terms of the 19571 * Common Development and Distribution License (the "License"). 19572 * You may not use this file except in compliance with the License. 19573 * 19574 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19575 * or http://www.opensolaris.org/os/licensing. 19576 * See the License for the specific language governing permissions 19577 * and limitations under the License. 19578 * 19579 * When distributing Covered Code, include this CDDL HEADER in each 19580 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19581 * If applicable, add the following below this CDDL HEADER, with the 19582 * fields enclosed by brackets "[]" replaced with your own identifying 19583 * information: Portions Copyright [yyyy] [name of copyright owner] 19584 * 19585 * CDDL HEADER END 19586 */ 19587 /* 19588 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 19589 * Use is subject to license terms. 19590 * Copyright 2015 Nexenta Systems, Inc. 19591 */ 19592 # 93 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmpx.h" 2 19593 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/inttypes.h" 1 19594 /* 19595 * CDDL HEADER START 19596 * 19597 * The contents of this file are subject to the terms of the 19598 * Common Development and Distribution License, Version 1.0 only 19599 * (the "License"). You may not use this file except in compliance 19600 * with the License. 19601 * 19602 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 19603 * or http://www.opensolaris.org/os/licensing. 19604 * See the License for the specific language governing permissions 19605 * and limitations under the License. 19606 * 19607 * When distributing Covered Code, include this CDDL HEADER in each 19608 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 19609 * If applicable, add the following below this CDDL HEADER, with the 19610 * fields enclosed by brackets "[]" replaced with your own identifying 19611 * information: Portions Copyright [yyyy] [name of copyright owner] 19612 * 19613 * CDDL HEADER END 19614 */ 19615 /* 19616 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 19617 * 19618 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 19619 * Use is subject to license terms. 19620 */ 19621 # 94 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/utmpx.h" 2 19622 19623 /* 19624 * This data structure describes the utmp *file* contents using 19625 * fixed-width data types. It should only be used by the implementation. 19626 * 19627 * Applications should use the getutxent(3c) family of routines to interact 19628 * with this database. 19629 */ 19630 19631 struct futmpx { 19632 char ut_user[32]; /* user login name */ 19633 char ut_id[4]; /* inittab id */ 19634 char ut_line[32]; /* device name (console, lnxx) */ 19635 pid32_t ut_pid; /* process id */ 19636 int16_t ut_type; /* type of entry */ 19637 struct { 19638 int16_t e_termination; /* process termination status */ 19639 int16_t e_exit; /* process exit status */ 19640 } ut_exit; /* exit status of a process */ 19641 struct timeval32 ut_tv; /* time entry was made */ 19642 int32_t ut_session; /* session ID, user for windowing */ 19643 int32_t pad[5]; /* reserved for future use */ 19644 int16_t ut_syslen; /* significant length of ut_host */ 19645 char ut_host[257]; /* remote host name */ 19646 }; 19647 19648 19649 19650 /* Define and macro for determing if a normal user wrote the entry */ 19651 /* and marking the utmpx entry as a normal user */ 19652 19653 19654 19655 19656 19657 19658 extern void endutxent(void); 19659 extern struct utmpx *getutxent(void); 19660 extern struct utmpx *getutxid(const struct utmpx *); 19661 extern struct utmpx *getutxline(const struct utmpx *); 19662 extern struct utmpx *pututxline(const struct utmpx *); 19663 extern void setutxent(void); 19664 19665 19666 extern int utmpxname(const char *); 19667 extern struct utmpx *makeutx(const struct utmpx *); 19668 extern struct utmpx *modutx(const struct utmpx *); 19669 extern void getutmp(const struct utmpx *, struct utmp *); 19670 extern void getutmpx(const struct utmp *, struct utmpx *); 19671 extern void updwtmp(const char *, struct utmp *); 19672 extern void updwtmpx(const char *, struct utmpx *); 19673 # 54 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 2 19674 # 105 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 19675 /* 19676 * Warning: these are shared with the admin/install consolidation. 19677 * Do not insert states between any of the currently defined states, 19678 * and any new states must be evaluated for impact on range comparisons. 19679 */ 19680 # 130 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 19681 /* Owner, group, and mode (defined by packaging) for the config directory */ 19682 19683 19684 19685 19686 /* Owner, group, and mode (defined by packaging) for the index file */ 19687 19688 19689 19690 19691 /* The maximum length of the VERSION string in the pkginfo(4) file. */ 19692 19693 19694 /* 19695 * Shortened alias names for the zones rctls. 19696 */ 19697 # 157 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 19698 /* Default name for zone detached manifest */ 19699 19700 19701 /* 19702 * Bit flag definitions for passing into libzonecfg functions. 19703 */ 19704 19705 19706 /* 19707 * The integer field expresses the current values on a get. 19708 * On a put, it represents the new values if >= 0 or "don't change" if < 0. 19709 */ 19710 struct zoneent { 19711 char zone_name[64]; /* name of the zone */ 19712 int zone_state; /* configured | incomplete | installed */ 19713 char zone_path[1024]; /* path to zone storage */ 19714 uuid_t zone_uuid; /* unique ID for zone */ 19715 char zone_newname[64]; /* for doing renames */ 19716 }; 19717 19718 typedef struct zone_dochandle *zone_dochandle_t; /* opaque handle */ 19719 19720 typedef uint_t zone_state_t; 19721 19722 typedef struct zone_fsopt { 19723 struct zone_fsopt *zone_fsopt_next; 19724 char zone_fsopt_opt[1024]; 19725 } zone_fsopt_t; 19726 19727 struct zone_fstab { 19728 char zone_fs_special[1024]; /* special file */ 19729 char zone_fs_dir[1024]; /* mount point */ 19730 char zone_fs_type[16]; /* e.g. ufs */ 19731 zone_fsopt_t *zone_fs_options; /* mount options */ 19732 char zone_fs_raw[1024]; /* device to fsck */ 19733 }; 19734 19735 struct zone_nwiftab { 19736 char zone_nwif_address[46]; /* shared-ip only */ 19737 char zone_nwif_allowed_address[46]; /* excl-ip only */ 19738 char zone_nwif_physical[32]; 19739 char zone_nwif_defrouter[46]; 19740 }; 19741 19742 struct zone_devtab { 19743 char zone_dev_match[1024]; 19744 }; 19745 19746 struct zone_rctlvaltab { 19747 char zone_rctlval_priv[256]; 19748 char zone_rctlval_limit[256]; 19749 char zone_rctlval_action[256]; 19750 struct zone_rctlvaltab *zone_rctlval_next; 19751 }; 19752 19753 struct zone_rctltab { 19754 char zone_rctl_name[256]; 19755 struct zone_rctlvaltab *zone_rctl_valptr; 19756 }; 19757 19758 struct zone_attrtab { 19759 char zone_attr_name[256]; 19760 char zone_attr_type[256]; 19761 char zone_attr_value[2 * 1024]; 19762 }; 19763 19764 struct zone_dstab { 19765 char zone_dataset_name[256]; 19766 }; 19767 19768 struct zone_psettab { 19769 char zone_ncpu_min[256]; 19770 char zone_ncpu_max[256]; 19771 char zone_importance[256]; 19772 }; 19773 19774 struct zone_mcaptab { 19775 char zone_physmem_cap[256]; 19776 }; 19777 19778 struct zone_pkgtab { 19779 char zone_pkg_name[256]; 19780 char zone_pkg_version[256]; 19781 }; 19782 19783 struct zone_devpermtab { 19784 char zone_devperm_name[1024]; 19785 uid_t zone_devperm_uid; 19786 gid_t zone_devperm_gid; 19787 mode_t zone_devperm_mode; 19788 char *zone_devperm_acl; 19789 }; 19790 19791 struct zone_admintab { 19792 char zone_admin_user[(sizeof (((struct utmpx *)0)->ut_user))]; 19793 char zone_admin_auths[4096]; 19794 }; 19795 19796 typedef struct zone_userauths { 19797 char user[(sizeof (((struct utmpx *)0)->ut_user))]; 19798 char zonename[64]; 19799 struct zone_userauths *next; 19800 } zone_userauths_t; 19801 19802 typedef struct { 19803 uu_avl_node_t zpe_entry; 19804 char *zpe_name; 19805 char *zpe_vers; 19806 } zone_pkg_entry_t; 19807 19808 typedef enum zone_iptype { 19809 ZS_SHARED, 19810 ZS_EXCLUSIVE 19811 } zone_iptype_t; 19812 19813 /* 19814 * Basic configuration management routines. 19815 */ 19816 extern zone_dochandle_t zonecfg_init_handle(void); 19817 extern int zonecfg_get_handle(const char *, zone_dochandle_t); 19818 extern int zonecfg_get_snapshot_handle(const char *, zone_dochandle_t); 19819 extern int zonecfg_get_template_handle(const char *, const char *, 19820 zone_dochandle_t); 19821 extern int zonecfg_get_xml_handle(const char *, zone_dochandle_t); 19822 extern int zonecfg_check_handle(zone_dochandle_t); 19823 extern void zonecfg_fini_handle(zone_dochandle_t); 19824 extern int zonecfg_destroy(const char *, boolean_t); 19825 extern int zonecfg_destroy_snapshot(const char *); 19826 extern int zonecfg_save(zone_dochandle_t); 19827 extern int zonecfg_create_snapshot(const char *); 19828 extern char *zonecfg_strerror(int); 19829 extern int zonecfg_access(const char *, int); 19830 extern void zonecfg_set_root(const char *); 19831 extern const char *zonecfg_get_root(void); 19832 extern boolean_t zonecfg_in_alt_root(void); 19833 extern int zonecfg_num_resources(zone_dochandle_t, char *); 19834 extern int zonecfg_del_all_resources(zone_dochandle_t, char *); 19835 extern boolean_t zonecfg_valid_ncpus(char *, char *); 19836 extern boolean_t zonecfg_valid_importance(char *); 19837 extern int zonecfg_str_to_bytes(char *, uint64_t *); 19838 extern boolean_t zonecfg_valid_memlimit(char *, uint64_t *); 19839 extern boolean_t zonecfg_valid_alias_limit(char *, char *, uint64_t *); 19840 19841 /* 19842 * Zone name, path to zone directory, autoboot setting, pool, boot 19843 * arguments, and scheduling-class. 19844 */ 19845 extern int zonecfg_validate_zonename(const char *); 19846 extern int zonecfg_get_name(zone_dochandle_t, char *, size_t); 19847 extern int zonecfg_set_name(zone_dochandle_t, char *); 19848 extern int zonecfg_get_zonepath(zone_dochandle_t, char *, size_t); 19849 extern int zonecfg_set_zonepath(zone_dochandle_t, char *); 19850 extern int zonecfg_get_autoboot(zone_dochandle_t, boolean_t *); 19851 extern int zonecfg_set_autoboot(zone_dochandle_t, boolean_t); 19852 extern int zonecfg_get_iptype(zone_dochandle_t, zone_iptype_t *); 19853 extern int zonecfg_set_iptype(zone_dochandle_t, zone_iptype_t); 19854 extern int zonecfg_get_pool(zone_dochandle_t, char *, size_t); 19855 extern int zonecfg_set_pool(zone_dochandle_t, char *); 19856 extern int zonecfg_get_bootargs(zone_dochandle_t, char *, size_t); 19857 extern int zonecfg_set_bootargs(zone_dochandle_t, char *); 19858 extern int zonecfg_get_sched_class(zone_dochandle_t, char *, size_t); 19859 extern int zonecfg_set_sched(zone_dochandle_t, char *); 19860 extern int zonecfg_get_dflt_sched_class(zone_dochandle_t, char *, int); 19861 19862 /* 19863 * Set/retrieve the brand for the zone 19864 */ 19865 extern int zonecfg_get_brand(zone_dochandle_t, char *, size_t); 19866 extern int zonecfg_set_brand(zone_dochandle_t, char *); 19867 19868 /* 19869 * Filesystem configuration. 19870 */ 19871 extern int zonecfg_add_filesystem(zone_dochandle_t, struct zone_fstab *); 19872 extern int zonecfg_delete_filesystem(zone_dochandle_t, 19873 struct zone_fstab *); 19874 extern int zonecfg_modify_filesystem(zone_dochandle_t, 19875 struct zone_fstab *, struct zone_fstab *); 19876 extern int zonecfg_lookup_filesystem(zone_dochandle_t, 19877 struct zone_fstab *); 19878 extern int zonecfg_add_fs_option(struct zone_fstab *, char *); 19879 extern int zonecfg_remove_fs_option(struct zone_fstab *, char *); 19880 extern void zonecfg_free_fs_option_list(zone_fsopt_t *); 19881 extern int zonecfg_find_mounts(char *, int(*)(const struct mnttab *, 19882 void *), void *); 19883 19884 /* 19885 * Network interface configuration. 19886 */ 19887 extern int zonecfg_add_nwif(zone_dochandle_t, struct zone_nwiftab *); 19888 extern int zonecfg_delete_nwif(zone_dochandle_t, struct zone_nwiftab *); 19889 extern int zonecfg_modify_nwif(zone_dochandle_t, struct zone_nwiftab *, 19890 struct zone_nwiftab *); 19891 extern int zonecfg_lookup_nwif(zone_dochandle_t, struct zone_nwiftab *); 19892 19893 /* 19894 * Hostid emulation configuration. 19895 */ 19896 extern int zonecfg_get_hostid(zone_dochandle_t, char *, size_t); 19897 extern int zonecfg_set_hostid(zone_dochandle_t, const char *); 19898 19899 /* 19900 * Allowed FS mounts configuration. 19901 */ 19902 extern int zonecfg_get_fs_allowed(zone_dochandle_t, char *, size_t); 19903 extern int zonecfg_set_fs_allowed(zone_dochandle_t, const char *); 19904 19905 /* 19906 * Device configuration and rule matching. 19907 */ 19908 extern int zonecfg_add_dev(zone_dochandle_t, struct zone_devtab *); 19909 extern int zonecfg_delete_dev(zone_dochandle_t, struct zone_devtab *); 19910 extern int zonecfg_modify_dev(zone_dochandle_t, struct zone_devtab *, 19911 struct zone_devtab *); 19912 extern int zonecfg_lookup_dev(zone_dochandle_t, struct zone_devtab *); 19913 19914 /* 19915 * Resource control configuration. 19916 */ 19917 extern int zonecfg_add_rctl(zone_dochandle_t, struct zone_rctltab *); 19918 extern int zonecfg_delete_rctl(zone_dochandle_t, struct zone_rctltab *); 19919 extern int zonecfg_modify_rctl(zone_dochandle_t, struct zone_rctltab *, 19920 struct zone_rctltab *); 19921 extern int zonecfg_lookup_rctl(zone_dochandle_t, struct zone_rctltab *); 19922 extern int zonecfg_add_rctl_value(struct zone_rctltab *, 19923 struct zone_rctlvaltab *); 19924 extern int zonecfg_remove_rctl_value(struct zone_rctltab *, 19925 struct zone_rctlvaltab *); 19926 extern void zonecfg_free_rctl_value_list(struct zone_rctlvaltab *); 19927 extern boolean_t zonecfg_aliased_rctl_ok(zone_dochandle_t, char *); 19928 extern int zonecfg_set_aliased_rctl(zone_dochandle_t, char *, uint64_t); 19929 extern int zonecfg_get_aliased_rctl(zone_dochandle_t, char *, uint64_t *); 19930 extern int zonecfg_rm_aliased_rctl(zone_dochandle_t, char *); 19931 extern int zonecfg_apply_rctls(char *, zone_dochandle_t); 19932 19933 /* 19934 * Generic attribute configuration and type/value extraction. 19935 */ 19936 extern int zonecfg_add_attr(zone_dochandle_t, struct zone_attrtab *); 19937 extern int zonecfg_delete_attr(zone_dochandle_t, struct zone_attrtab *); 19938 extern int zonecfg_modify_attr(zone_dochandle_t, struct zone_attrtab *, 19939 struct zone_attrtab *); 19940 extern int zonecfg_lookup_attr(zone_dochandle_t, struct zone_attrtab *); 19941 extern int zonecfg_get_attr_boolean(const struct zone_attrtab *, 19942 boolean_t *); 19943 extern int zonecfg_get_attr_int(const struct zone_attrtab *, int64_t *); 19944 extern int zonecfg_get_attr_string(const struct zone_attrtab *, char *, 19945 size_t); 19946 extern int zonecfg_get_attr_uint(const struct zone_attrtab *, uint64_t *); 19947 19948 /* 19949 * ZFS configuration. 19950 */ 19951 extern int zonecfg_add_ds(zone_dochandle_t, struct zone_dstab *); 19952 extern int zonecfg_delete_ds(zone_dochandle_t, struct zone_dstab *); 19953 extern int zonecfg_modify_ds(zone_dochandle_t, struct zone_dstab *, 19954 struct zone_dstab *); 19955 extern int zonecfg_lookup_ds(zone_dochandle_t, struct zone_dstab *); 19956 19957 /* 19958 * cpu-set configuration. 19959 */ 19960 extern int zonecfg_add_pset(zone_dochandle_t, struct zone_psettab *); 19961 extern int zonecfg_delete_pset(zone_dochandle_t); 19962 extern int zonecfg_modify_pset(zone_dochandle_t, struct zone_psettab *); 19963 extern int zonecfg_lookup_pset(zone_dochandle_t, struct zone_psettab *); 19964 19965 /* 19966 * mem-cap configuration. 19967 */ 19968 extern int zonecfg_delete_mcap(zone_dochandle_t); 19969 extern int zonecfg_modify_mcap(zone_dochandle_t, struct zone_mcaptab *); 19970 extern int zonecfg_lookup_mcap(zone_dochandle_t, struct zone_mcaptab *); 19971 19972 /* 19973 * Temporary pool support functions. 19974 */ 19975 extern int zonecfg_destroy_tmp_pool(char *, char *, int); 19976 extern int zonecfg_bind_tmp_pool(zone_dochandle_t, zoneid_t, char *, int); 19977 extern int zonecfg_bind_pool(zone_dochandle_t, zoneid_t, char *, int); 19978 extern boolean_t zonecfg_warn_poold(zone_dochandle_t); 19979 extern int zonecfg_get_poolname(zone_dochandle_t, char *, char *, size_t); 19980 19981 /* 19982 * Miscellaneous utility functions. 19983 */ 19984 extern int zonecfg_enable_rcapd(char *, int); 19985 19986 /* 19987 * attach/detach support. 19988 */ 19989 extern int zonecfg_get_attach_handle(const char *, const char *, 19990 const char *, boolean_t, zone_dochandle_t); 19991 extern int zonecfg_attach_manifest(int, zone_dochandle_t, 19992 zone_dochandle_t); 19993 extern int zonecfg_detach_save(zone_dochandle_t, uint_t); 19994 extern boolean_t zonecfg_detached(const char *); 19995 extern void zonecfg_rm_detached(zone_dochandle_t, boolean_t forced); 19996 extern int zonecfg_dev_manifest(zone_dochandle_t); 19997 extern int zonecfg_devperms_apply(zone_dochandle_t, const char *, 19998 uid_t, gid_t, mode_t, const char *); 19999 extern void zonecfg_set_swinv(zone_dochandle_t); 20000 extern int zonecfg_add_pkg(zone_dochandle_t, char *, char *); 20001 20002 /* 20003 * External zone verification support. 20004 */ 20005 extern int zonecfg_verify_save(zone_dochandle_t, char *); 20006 20007 /* 20008 * '*ent' iterator routines. 20009 */ 20010 extern int zonecfg_setfsent(zone_dochandle_t); 20011 extern int zonecfg_getfsent(zone_dochandle_t, struct zone_fstab *); 20012 extern int zonecfg_endfsent(zone_dochandle_t); 20013 extern int zonecfg_setnwifent(zone_dochandle_t); 20014 extern int zonecfg_getnwifent(zone_dochandle_t, struct zone_nwiftab *); 20015 extern int zonecfg_endnwifent(zone_dochandle_t); 20016 extern int zonecfg_setdevent(zone_dochandle_t); 20017 extern int zonecfg_getdevent(zone_dochandle_t, struct zone_devtab *); 20018 extern int zonecfg_enddevent(zone_dochandle_t); 20019 extern int zonecfg_setattrent(zone_dochandle_t); 20020 extern int zonecfg_getattrent(zone_dochandle_t, struct zone_attrtab *); 20021 extern int zonecfg_endattrent(zone_dochandle_t); 20022 extern int zonecfg_setrctlent(zone_dochandle_t); 20023 extern int zonecfg_getrctlent(zone_dochandle_t, struct zone_rctltab *); 20024 extern int zonecfg_endrctlent(zone_dochandle_t); 20025 extern int zonecfg_setdsent(zone_dochandle_t); 20026 extern int zonecfg_getdsent(zone_dochandle_t, struct zone_dstab *); 20027 extern int zonecfg_enddsent(zone_dochandle_t); 20028 extern int zonecfg_getpsetent(zone_dochandle_t, struct zone_psettab *); 20029 extern int zonecfg_getmcapent(zone_dochandle_t, struct zone_mcaptab *); 20030 extern int zonecfg_getpkgdata(zone_dochandle_t, uu_avl_pool_t *, 20031 uu_avl_t *); 20032 extern int zonecfg_setdevperment(zone_dochandle_t); 20033 extern int zonecfg_getdevperment(zone_dochandle_t, 20034 struct zone_devpermtab *); 20035 extern int zonecfg_enddevperment(zone_dochandle_t); 20036 extern int zonecfg_setadminent(zone_dochandle_t); 20037 extern int zonecfg_getadminent(zone_dochandle_t, struct zone_admintab *); 20038 extern int zonecfg_endadminent(zone_dochandle_t); 20039 20040 /* 20041 * Privilege-related functions. 20042 */ 20043 extern int zonecfg_default_privset(priv_set_t *, const char *); 20044 extern int zonecfg_get_privset(zone_dochandle_t, priv_set_t *, 20045 char **); 20046 extern int zonecfg_get_limitpriv(zone_dochandle_t, char **); 20047 extern int zonecfg_set_limitpriv(zone_dochandle_t, char *); 20048 20049 /* 20050 * Higher-level routines. 20051 */ 20052 extern int zone_get_brand(char *, char *, size_t); 20053 extern int zone_get_rootpath(char *, char *, size_t); 20054 extern int zone_get_devroot(char *, char *, size_t); 20055 extern int zone_get_zonepath(char *, char *, size_t); 20056 extern int zone_get_state(char *, zone_state_t *); 20057 extern int zone_set_state(char *, zone_state_t); 20058 extern char *zone_state_str(zone_state_t); 20059 extern int zonecfg_get_name_by_uuid(const uuid_t, char *, size_t); 20060 extern int zonecfg_get_uuid(const char *, uuid_t); 20061 extern int zonecfg_default_brand(char *, size_t); 20062 20063 /* 20064 * Iterator for configured zones. 20065 */ 20066 extern FILE *setzoneent(void); 20067 extern char *getzoneent(FILE *); 20068 extern struct zoneent *getzoneent_private(FILE *); 20069 extern void endzoneent(FILE *); 20070 20071 /* 20072 * File-system-related convenience functions. 20073 */ 20074 extern boolean_t zonecfg_valid_fs_type(const char *); 20075 20076 /* 20077 * Network-related convenience functions. 20078 */ 20079 extern boolean_t zonecfg_same_net_address(char *, char *); 20080 extern int zonecfg_valid_net_address(char *, struct lifreq *); 20081 extern boolean_t zonecfg_ifname_exists(sa_family_t, char *); 20082 20083 /* 20084 * Rctl-related common functions. 20085 */ 20086 extern boolean_t zonecfg_is_rctl(const char *); 20087 extern boolean_t zonecfg_valid_rctlname(const char *); 20088 extern boolean_t zonecfg_valid_rctlblk(const rctlblk_t *); 20089 extern boolean_t zonecfg_valid_rctl(const char *, const rctlblk_t *); 20090 extern int zonecfg_construct_rctlblk(const struct zone_rctlvaltab *, 20091 rctlblk_t *); 20092 20093 /* 20094 * Live Upgrade support functions. Shared between ON and install gate. 20095 */ 20096 extern FILE *zonecfg_open_scratch(const char *, boolean_t); 20097 extern int zonecfg_lock_scratch(FILE *); 20098 extern void zonecfg_close_scratch(FILE *); 20099 extern int zonecfg_get_scratch(FILE *, char *, size_t, char *, size_t, char *, 20100 size_t); 20101 extern int zonecfg_find_scratch(FILE *, const char *, const char *, char *, 20102 size_t); 20103 extern int zonecfg_reverse_scratch(FILE *, const char *, char *, size_t, 20104 char *, size_t); 20105 extern int zonecfg_add_scratch(FILE *, const char *, const char *, 20106 const char *); 20107 extern int zonecfg_delete_scratch(FILE *, const char *); 20108 extern boolean_t zonecfg_is_scratch(const char *); 20109 20110 /* 20111 * zoneadmd support functions. Shared between zoneadm and brand hook code. 20112 */ 20113 extern void zonecfg_init_lock_file(const char *, char **); 20114 extern void zonecfg_release_lock_file(const char *, int); 20115 extern int zonecfg_grab_lock_file(const char *, int *); 20116 extern boolean_t zonecfg_lock_file_held(int *); 20117 extern int zonecfg_ping_zoneadmd(const char *); 20118 extern int zonecfg_call_zoneadmd(const char *, zone_cmd_arg_t *, char *, 20119 boolean_t); 20120 extern int zonecfg_insert_userauths(zone_dochandle_t, char *, char *); 20121 extern int zonecfg_remove_userauths(zone_dochandle_t, char *, char *, 20122 boolean_t); 20123 extern int zonecfg_add_admin(zone_dochandle_t, struct zone_admintab *, 20124 char *); 20125 extern int zonecfg_delete_admin(zone_dochandle_t, 20126 struct zone_admintab *, char *); 20127 extern int zonecfg_modify_admin(zone_dochandle_t, struct zone_admintab *, 20128 struct zone_admintab *, char *); 20129 extern int zonecfg_delete_admins(zone_dochandle_t, char *); 20130 extern int zonecfg_lookup_admin(zone_dochandle_t, struct zone_admintab *); 20131 extern int zonecfg_authorize_users(zone_dochandle_t, char *); 20132 extern int zonecfg_update_userauths(zone_dochandle_t, char *); 20133 extern int zonecfg_deauthorize_user(zone_dochandle_t, char *, char *); 20134 extern int zonecfg_deauthorize_users(zone_dochandle_t, char *); 20135 extern boolean_t zonecfg_valid_auths(const char *, const char *); 20136 # 47 "../common/instzones_lib.h" 2 20137 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libcontract.h" 1 20138 /* 20139 * CDDL HEADER START 20140 * 20141 * The contents of this file are subject to the terms of the 20142 * Common Development and Distribution License (the "License"). 20143 * You may not use this file except in compliance with the License. 20144 * 20145 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20146 * or http://www.opensolaris.org/os/licensing. 20147 * See the License for the specific language governing permissions 20148 * and limitations under the License. 20149 * 20150 * When distributing Covered Code, include this CDDL HEADER in each 20151 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20152 * If applicable, add the following below this CDDL HEADER, with the 20153 * fields enclosed by brackets "[]" replaced with your own identifying 20154 * information: Portions Copyright [yyyy] [name of copyright owner] 20155 * 20156 * CDDL HEADER END 20157 */ 20158 /* 20159 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 20160 * Use is subject to license terms. 20161 */ 20162 20163 20164 20165 20166 #pragma ident "%Z%%M% %I% %E% SMI" 20167 20168 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 20169 /* 20170 * CDDL HEADER START 20171 * 20172 * The contents of this file are subject to the terms of the 20173 * Common Development and Distribution License (the "License"). 20174 * You may not use this file except in compliance with the License. 20175 * 20176 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20177 * or http://www.opensolaris.org/os/licensing. 20178 * See the License for the specific language governing permissions 20179 * and limitations under the License. 20180 * 20181 * When distributing Covered Code, include this CDDL HEADER in each 20182 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20183 * If applicable, add the following below this CDDL HEADER, with the 20184 * fields enclosed by brackets "[]" replaced with your own identifying 20185 * information: Portions Copyright [yyyy] [name of copyright owner] 20186 * 20187 * CDDL HEADER END 20188 */ 20189 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 20190 /* All Rights Reserved */ 20191 20192 20193 /* 20194 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 20195 * Use is subject to license terms. 20196 * 20197 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 20198 * Copyright 2016 Joyent, Inc. 20199 */ 20200 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libcontract.h" 2 20201 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/contract.h" 1 20202 /* 20203 * CDDL HEADER START 20204 * 20205 * The contents of this file are subject to the terms of the 20206 * Common Development and Distribution License (the "License"). 20207 * You may not use this file except in compliance with the License. 20208 * 20209 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20210 * or http://www.opensolaris.org/os/licensing. 20211 * See the License for the specific language governing permissions 20212 * and limitations under the License. 20213 * 20214 * When distributing Covered Code, include this CDDL HEADER in each 20215 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20216 * If applicable, add the following below this CDDL HEADER, with the 20217 * fields enclosed by brackets "[]" replaced with your own identifying 20218 * information: Portions Copyright [yyyy] [name of copyright owner] 20219 * 20220 * CDDL HEADER END 20221 */ 20222 /* 20223 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 20224 * Use is subject to license terms. 20225 */ 20226 20227 20228 20229 20230 #pragma ident "%Z%%M% %I% %E% SMI" 20231 20232 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 20233 /* 20234 * CDDL HEADER START 20235 * 20236 * The contents of this file are subject to the terms of the 20237 * Common Development and Distribution License (the "License"). 20238 * You may not use this file except in compliance with the License. 20239 * 20240 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20241 * or http://www.opensolaris.org/os/licensing. 20242 * See the License for the specific language governing permissions 20243 * and limitations under the License. 20244 * 20245 * When distributing Covered Code, include this CDDL HEADER in each 20246 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20247 * If applicable, add the following below this CDDL HEADER, with the 20248 * fields enclosed by brackets "[]" replaced with your own identifying 20249 * information: Portions Copyright [yyyy] [name of copyright owner] 20250 * 20251 * CDDL HEADER END 20252 */ 20253 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 20254 /* All Rights Reserved */ 20255 20256 20257 /* 20258 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 20259 * Use is subject to license terms. 20260 * 20261 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 20262 * Copyright 2016 Joyent, Inc. 20263 */ 20264 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/contract.h" 2 20265 20266 20267 20268 20269 20270 typedef uint64_t ctevid_t; 20271 20272 /* 20273 * Contract parameter maximum size, in bytes 20274 */ 20275 20276 20277 /* 20278 * Common event types 20279 */ 20280 20281 20282 /* 20283 * Level of status detail requested 20284 */ 20285 20286 20287 20288 20289 /* 20290 * Values for ctev_flags. 20291 */ 20292 # 70 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/contract.h" 20293 typedef enum ctstate { 20294 CTS_OWNED, /* contract is owned by a process */ 20295 CTS_INHERITED, /* contract has been inherited by its parent */ 20296 CTS_ORPHAN, /* contract has no parent */ 20297 CTS_DEAD /* contract has been destroyed */ 20298 } ctstate_t; 20299 20300 typedef enum ct_typeid { 20301 CTT_PROCESS, /* process contract */ 20302 CTT_DEVICE, /* device contract */ 20303 CTT_MAXTYPE 20304 } ct_typeid_t; 20305 20306 typedef struct ct_event { 20307 ctid_t ctev_id; 20308 uint32_t ctev_pad1; 20309 ctevid_t ctev_evid; 20310 ct_typeid_t ctev_cttype; 20311 uint32_t ctev_flags; 20312 uint32_t ctev_type; 20313 uint32_t ctev_nbytes; 20314 uint32_t ctev_goffset; 20315 uint32_t ctev_pad2; 20316 char *ctev_buffer; 20317 } ct_event_t; 20318 20319 typedef struct ct_status { 20320 ctid_t ctst_id; 20321 zoneid_t ctst_zoneid; 20322 ct_typeid_t ctst_type; 20323 pid_t ctst_holder; 20324 ctstate_t ctst_state; 20325 int ctst_nevents; 20326 int ctst_ntime; 20327 int ctst_qtime; 20328 uint64_t ctst_nevid; 20329 uint_t ctst_detail; 20330 size_t ctst_nbytes; 20331 uint_t ctst_critical; 20332 uint_t ctst_informative; 20333 uint64_t ctst_cookie; 20334 char *ctst_buffer; 20335 } ct_status_t; 20336 20337 typedef struct ct_param { 20338 uint32_t ctpm_id; 20339 uint32_t ctpm_size; 20340 void *ctpm_value; 20341 } ct_param_t; 20342 # 33 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libcontract.h" 2 20343 20344 20345 20346 20347 20348 typedef void *ct_stathdl_t; 20349 typedef void *ct_evthdl_t; 20350 20351 /* 20352 * Common routines 20353 */ 20354 extern int ct_tmpl_activate(int); 20355 extern int ct_tmpl_clear(int); 20356 extern int ct_tmpl_create(int, ctid_t *); 20357 extern int ct_tmpl_set_cookie(int, uint64_t); 20358 extern int ct_tmpl_get_cookie(int, uint64_t *); 20359 extern int ct_tmpl_set_critical(int, uint_t); 20360 extern int ct_tmpl_get_critical(int, uint_t *); 20361 extern int ct_tmpl_set_informative(int, uint_t); 20362 extern int ct_tmpl_get_informative(int, uint_t *); 20363 20364 extern int ct_ctl_adopt(int); 20365 extern int ct_ctl_abandon(int); 20366 extern int ct_ctl_ack(int, ctevid_t); 20367 extern int ct_ctl_nack(int, ctevid_t); 20368 extern int ct_ctl_qack(int, ctevid_t); 20369 extern int ct_ctl_newct(int, ctevid_t, int); 20370 20371 extern int ct_status_read(int, int, ct_stathdl_t *); 20372 extern void ct_status_free(ct_stathdl_t); 20373 20374 extern ctid_t ct_status_get_id(ct_stathdl_t); 20375 extern zoneid_t ct_status_get_zoneid(ct_stathdl_t); 20376 extern const char *ct_status_get_type(ct_stathdl_t); 20377 extern id_t ct_status_get_holder(ct_stathdl_t); 20378 extern ctstate_t ct_status_get_state(ct_stathdl_t); 20379 extern int ct_status_get_nevents(ct_stathdl_t); 20380 extern int ct_status_get_ntime(ct_stathdl_t); 20381 extern int ct_status_get_qtime(ct_stathdl_t); 20382 extern ctevid_t ct_status_get_nevid(ct_stathdl_t); 20383 extern uint_t ct_status_get_informative(ct_stathdl_t); 20384 extern uint_t ct_status_get_critical(ct_stathdl_t); 20385 extern uint64_t ct_status_get_cookie(ct_stathdl_t); 20386 20387 extern int ct_event_read(int, ct_evthdl_t *); 20388 extern int ct_event_read_critical(int, ct_evthdl_t *); 20389 extern int ct_event_reset(int); 20390 extern int ct_event_reliable(int); 20391 extern void ct_event_free(ct_evthdl_t); 20392 20393 extern uint_t ct_event_get_flags(ct_evthdl_t); 20394 extern ctid_t ct_event_get_ctid(ct_evthdl_t); 20395 extern ctevid_t ct_event_get_evid(ct_evthdl_t); 20396 extern uint_t ct_event_get_type(ct_evthdl_t); 20397 extern int ct_event_get_nevid(ct_evthdl_t, ctevid_t *); 20398 extern int ct_event_get_newct(ct_evthdl_t, ctid_t *); 20399 20400 /* 20401 * Process contract routines 20402 */ 20403 extern int ct_pr_tmpl_set_transfer(int, ctid_t); 20404 extern int ct_pr_tmpl_set_fatal(int, uint_t); 20405 extern int ct_pr_tmpl_set_param(int, uint_t); 20406 extern int ct_pr_tmpl_set_svc_fmri(int, const char *); 20407 extern int ct_pr_tmpl_set_svc_aux(int, const char *); 20408 20409 extern int ct_pr_tmpl_get_transfer(int, ctid_t *); 20410 extern int ct_pr_tmpl_get_fatal(int, uint_t *); 20411 extern int ct_pr_tmpl_get_param(int, uint_t *); 20412 extern int ct_pr_tmpl_get_svc_fmri(int, char *, size_t); 20413 extern int ct_pr_tmpl_get_svc_aux(int, char *, size_t); 20414 20415 extern int ct_pr_event_get_pid(ct_evthdl_t, pid_t *); 20416 extern int ct_pr_event_get_ppid(ct_evthdl_t, pid_t *); 20417 extern int ct_pr_event_get_signal(ct_evthdl_t, int *); 20418 extern int ct_pr_event_get_sender(ct_evthdl_t, pid_t *); 20419 extern int ct_pr_event_get_senderct(ct_evthdl_t, ctid_t *); 20420 extern int ct_pr_event_get_exitstatus(ct_evthdl_t, int *); 20421 extern int ct_pr_event_get_pcorefile(ct_evthdl_t, const char **); 20422 extern int ct_pr_event_get_gcorefile(ct_evthdl_t, const char **); 20423 extern int ct_pr_event_get_zcorefile(ct_evthdl_t, const char **); 20424 20425 extern int ct_pr_status_get_param(ct_stathdl_t, uint_t *); 20426 extern int ct_pr_status_get_fatal(ct_stathdl_t, uint_t *); 20427 extern int ct_pr_status_get_members(ct_stathdl_t, pid_t **, uint_t *); 20428 extern int ct_pr_status_get_contracts(ct_stathdl_t, ctid_t **, uint_t *); 20429 extern int ct_pr_status_get_svc_fmri(ct_stathdl_t, char **); 20430 extern int ct_pr_status_get_svc_aux(ct_stathdl_t, char **); 20431 extern int ct_pr_status_get_svc_ctid(ct_stathdl_t, ctid_t *); 20432 extern int ct_pr_status_get_svc_creator(ct_stathdl_t, char **); 20433 20434 /* 20435 * Device contract routines 20436 */ 20437 int ct_dev_tmpl_set_minor(int, char *); 20438 int ct_dev_tmpl_set_aset(int, uint_t); 20439 int ct_dev_tmpl_set_noneg(int); 20440 int ct_dev_tmpl_clear_noneg(int); 20441 int ct_dev_tmpl_get_minor(int, char *, size_t *); 20442 int ct_dev_tmpl_get_aset(int, uint_t *); 20443 int ct_dev_tmpl_get_noneg(int, uint_t *); 20444 int ct_dev_status_get_aset(ct_stathdl_t, uint_t *); 20445 int ct_dev_status_get_noneg(ct_stathdl_t, uint_t *); 20446 int ct_dev_status_get_dev_state(ct_stathdl_t, uint_t *); 20447 int ct_dev_status_get_minor(ct_stathdl_t, char **); 20448 # 48 "../common/instzones_lib.h" 2 20449 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 1 20450 /* 20451 * CDDL HEADER START 20452 * 20453 * The contents of this file are subject to the terms of the 20454 * Common Development and Distribution License (the "License"). 20455 * You may not use this file except in compliance with the License. 20456 * 20457 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20458 * or http://www.opensolaris.org/os/licensing. 20459 * See the License for the specific language governing permissions 20460 * and limitations under the License. 20461 * 20462 * When distributing Covered Code, include this CDDL HEADER in each 20463 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20464 * If applicable, add the following below this CDDL HEADER, with the 20465 * fields enclosed by brackets "[]" replaced with your own identifying 20466 * information: Portions Copyright [yyyy] [name of copyright owner] 20467 * 20468 * CDDL HEADER END 20469 */ 20470 20471 /* 20472 * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. 20473 */ 20474 20475 20476 20477 20478 20479 /* 20480 * Module: instzones_api.h 20481 * Group: libinstzones 20482 * Description: This module contains the libinstzones API data structures, 20483 * constants, and function prototypes. 20484 */ 20485 20486 /* 20487 * required includes 20488 */ 20489 20490 /* System includes */ 20491 20492 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdarg.h" 1 20493 /* 20494 * CDDL HEADER START 20495 * 20496 * The contents of this file are subject to the terms of the 20497 * Common Development and Distribution License, Version 1.0 only 20498 * (the "License"). You may not use this file except in compliance 20499 * with the License. 20500 * 20501 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20502 * or http://www.opensolaris.org/os/licensing. 20503 * See the License for the specific language governing permissions 20504 * and limitations under the License. 20505 * 20506 * When distributing Covered Code, include this CDDL HEADER in each 20507 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20508 * If applicable, add the following below this CDDL HEADER, with the 20509 * fields enclosed by brackets "[]" replaced with your own identifying 20510 * information: Portions Copyright [yyyy] [name of copyright owner] 20511 * 20512 * CDDL HEADER END 20513 */ 20514 /* Copyright (c) 1988 AT&T */ 20515 /* All Rights Reserved */ 20516 20517 /* 20518 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 20519 * 20520 * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 20521 * Use is subject to license terms. 20522 */ 20523 # 44 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 20524 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/stdio.h" 1 20525 /* 20526 * CDDL HEADER START 20527 * 20528 * The contents of this file are subject to the terms of the 20529 * Common Development and Distribution License (the "License"). 20530 * You may not use this file except in compliance with the License. 20531 * 20532 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20533 * or http://www.opensolaris.org/os/licensing. 20534 * See the License for the specific language governing permissions 20535 * and limitations under the License. 20536 * 20537 * When distributing Covered Code, include this CDDL HEADER in each 20538 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20539 * If applicable, add the following below this CDDL HEADER, with the 20540 * fields enclosed by brackets "[]" replaced with your own identifying 20541 * information: Portions Copyright [yyyy] [name of copyright owner] 20542 * 20543 * CDDL HEADER END 20544 */ 20545 20546 /* 20547 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 20548 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 20549 */ 20550 20551 /* Copyright (c) 1988 AT&T */ 20552 /* All Rights Reserved */ 20553 20554 /* 20555 * User-visible pieces of the ANSI C standard I/O package. 20556 */ 20557 # 45 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 20558 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/string.h" 1 20559 /* 20560 * CDDL HEADER START 20561 * 20562 * The contents of this file are subject to the terms of the 20563 * Common Development and Distribution License (the "License"). 20564 * You may not use this file except in compliance with the License. 20565 * 20566 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20567 * or http://www.opensolaris.org/os/licensing. 20568 * See the License for the specific language governing permissions 20569 * and limitations under the License. 20570 * 20571 * When distributing Covered Code, include this CDDL HEADER in each 20572 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20573 * If applicable, add the following below this CDDL HEADER, with the 20574 * fields enclosed by brackets "[]" replaced with your own identifying 20575 * information: Portions Copyright [yyyy] [name of copyright owner] 20576 * 20577 * CDDL HEADER END 20578 */ 20579 20580 /* 20581 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 20582 * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 20583 */ 20584 20585 /* Copyright (c) 1988 AT&T */ 20586 /* All Rights Reserved */ 20587 # 46 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 20588 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/termios.h" 1 20589 /* 20590 * CDDL HEADER START 20591 * 20592 * The contents of this file are subject to the terms of the 20593 * Common Development and Distribution License, Version 1.0 only 20594 * (the "License"). You may not use this file except in compliance 20595 * with the License. 20596 * 20597 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20598 * or http://www.opensolaris.org/os/licensing. 20599 * See the License for the specific language governing permissions 20600 * and limitations under the License. 20601 * 20602 * When distributing Covered Code, include this CDDL HEADER in each 20603 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20604 * If applicable, add the following below this CDDL HEADER, with the 20605 * fields enclosed by brackets "[]" replaced with your own identifying 20606 * information: Portions Copyright [yyyy] [name of copyright owner] 20607 * 20608 * CDDL HEADER END 20609 */ 20610 /* Copyright (c) 1988 AT&T */ 20611 /* All Rights Reserved */ 20612 20613 20614 20615 20616 20617 #pragma ident "%Z%%M% %I% %E% SMI" 20618 20619 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 1 20620 /* 20621 * CDDL HEADER START 20622 * 20623 * The contents of this file are subject to the terms of the 20624 * Common Development and Distribution License (the "License"). 20625 * You may not use this file except in compliance with the License. 20626 * 20627 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20628 * or http://www.opensolaris.org/os/licensing. 20629 * See the License for the specific language governing permissions 20630 * and limitations under the License. 20631 * 20632 * When distributing Covered Code, include this CDDL HEADER in each 20633 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20634 * If applicable, add the following below this CDDL HEADER, with the 20635 * fields enclosed by brackets "[]" replaced with your own identifying 20636 * information: Portions Copyright [yyyy] [name of copyright owner] 20637 * 20638 * CDDL HEADER END 20639 */ 20640 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 20641 /* All Rights Reserved */ 20642 20643 20644 /* 20645 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 20646 * 20647 * Copyright (c) 1988, 2010, Oracle and/or its affiliates. All rights reserved. 20648 */ 20649 20650 20651 20652 20653 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 20654 /* 20655 * CDDL HEADER START 20656 * 20657 * The contents of this file are subject to the terms of the 20658 * Common Development and Distribution License (the "License"). 20659 * You may not use this file except in compliance with the License. 20660 * 20661 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20662 * or http://www.opensolaris.org/os/licensing. 20663 * See the License for the specific language governing permissions 20664 * and limitations under the License. 20665 * 20666 * When distributing Covered Code, include this CDDL HEADER in each 20667 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20668 * If applicable, add the following below this CDDL HEADER, with the 20669 * fields enclosed by brackets "[]" replaced with your own identifying 20670 * information: Portions Copyright [yyyy] [name of copyright owner] 20671 * 20672 * CDDL HEADER END 20673 */ 20674 20675 /* 20676 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 20677 * Copyright 2016 Joyent, Inc. 20678 * 20679 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 20680 * Use is subject to license terms. 20681 */ 20682 # 35 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 2 20683 20684 20685 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ttydev.h" 1 20686 /* 20687 * CDDL HEADER START 20688 * 20689 * The contents of this file are subject to the terms of the 20690 * Common Development and Distribution License, Version 1.0 only 20691 * (the "License"). You may not use this file except in compliance 20692 * with the License. 20693 * 20694 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20695 * or http://www.opensolaris.org/os/licensing. 20696 * See the License for the specific language governing permissions 20697 * and limitations under the License. 20698 * 20699 * When distributing Covered Code, include this CDDL HEADER in each 20700 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20701 * If applicable, add the following below this CDDL HEADER, with the 20702 * fields enclosed by brackets "[]" replaced with your own identifying 20703 * information: Portions Copyright [yyyy] [name of copyright owner] 20704 * 20705 * CDDL HEADER END 20706 */ 20707 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 20708 /* All Rights Reserved */ 20709 20710 20711 20712 20713 20714 #pragma ident "%Z%%M% %I% %E% SMI" 20715 20716 20717 20718 20719 20720 /* 20721 * Terminal definitions related to underlying hardware. 20722 */ 20723 20724 /* 20725 * Speeds 20726 */ 20727 # 38 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 2 20728 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/time.h" 1 20729 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 20730 /* All Rights Reserved */ 20731 20732 20733 /* 20734 * Copyright (c) 1982, 1986, 1993 Regents of the University of California. 20735 * All rights reserved. The Berkeley software License Agreement 20736 * specifies the terms and conditions for redistribution. 20737 */ 20738 20739 /* 20740 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 20741 * 20742 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 20743 * Use is subject to license terms. 20744 * 20745 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 20746 */ 20747 20748 /* 20749 * Copyright (c) 2013, 2015 by Delphix. All rights reserved. 20750 */ 20751 # 39 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 2 20752 20753 20754 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 20755 /* 20756 * CDDL HEADER START 20757 * 20758 * The contents of this file are subject to the terms of the 20759 * Common Development and Distribution License (the "License"). 20760 * You may not use this file except in compliance with the License. 20761 * 20762 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 20763 * or http://www.opensolaris.org/os/licensing. 20764 * See the License for the specific language governing permissions 20765 * and limitations under the License. 20766 * 20767 * When distributing Covered Code, include this CDDL HEADER in each 20768 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 20769 * If applicable, add the following below this CDDL HEADER, with the 20770 * fields enclosed by brackets "[]" replaced with your own identifying 20771 * information: Portions Copyright [yyyy] [name of copyright owner] 20772 * 20773 * CDDL HEADER END 20774 */ 20775 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 20776 /* All Rights Reserved */ 20777 20778 20779 /* 20780 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 20781 * Use is subject to license terms. 20782 * 20783 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 20784 * Copyright 2016 Joyent, Inc. 20785 */ 20786 # 42 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 2 20787 20788 20789 20790 20791 20792 /* 20793 * _POSIX_VDISABLE has been defined in <sys/termios.h> since the 20794 * introduction of the header. The POSIX standard, IEEE Std. 20795 * 1003.1-1988 also required the existence of _POSIX_VDISABLE in 20796 * this header. Subsequent versions of the IEEE Standard as well 20797 * as the X/Open specifications required that _POSIX_VDISABLE be 20798 * defined in <unistd.h> while still allowing for it's existence 20799 * here. With the introduction of XPG6, _POSIX_VDISABLE can only 20800 * be defined in <unistd.h>. 20801 */ 20802 # 68 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20803 /* required by termio.h and VCEOF/VCEOL */ 20804 20805 20806 20807 20808 20809 /* some defines required by POSIX */ 20810 20811 20812 /* 20813 * types defined by POSIX. These are better off in types.h, but 20814 * the standard says that they have to be in termios.h. 20815 */ 20816 typedef unsigned int tcflag_t; 20817 typedef unsigned char cc_t; 20818 typedef unsigned int speed_t; 20819 20820 /* 20821 * Ioctl control packet 20822 */ 20823 struct termios { 20824 tcflag_t c_iflag; /* input modes */ 20825 tcflag_t c_oflag; /* output modes */ 20826 tcflag_t c_cflag; /* control modes */ 20827 tcflag_t c_lflag; /* line discipline modes */ 20828 cc_t c_cc[19]; /* control chars */ 20829 }; 20830 20831 /* 20832 * POSIX termios functions 20833 * These functions get mapped into ioctls. 20834 */ 20835 20836 20837 20838 extern speed_t cfgetospeed(const struct termios *); 20839 extern int cfsetospeed(struct termios *, speed_t); 20840 extern speed_t cfgetispeed(const struct termios *); 20841 extern int cfsetispeed(struct termios *, speed_t); 20842 extern int tcgetattr(int, struct termios *); 20843 extern int tcsetattr(int, int, const struct termios *); 20844 extern int tcsendbreak(int, int); 20845 extern int tcdrain(int); 20846 extern int tcflush(int, int); 20847 extern int tcflow(int, int); 20848 20849 20850 20851 extern pid_t tcgetsid(int); 20852 20853 20854 20855 20856 20857 /* control characters */ 20858 # 147 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20859 /* 17 through 19 reserved for future use */ 20860 20861 /* 20862 * control characters form Xenix termio.h 20863 */ 20864 20865 20866 20867 20868 20869 20870 /* S5 default control chars */ 20871 /* CINTR, CERASE and CKILL modified to SunOS traditional values */ 20872 # 183 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20873 /* input modes */ 20874 # 209 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20875 /* output modes */ 20876 # 255 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20877 /* control modes */ 20878 # 281 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20879 /* 20880 * 4.4BSD hardware flow control flags 20881 */ 20882 20883 20884 20885 20886 20887 /* line discipline 0 modes */ 20888 # 327 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20889 /* Slots reserved for 386/XENIX compatibility - keyboard control */ 20890 # 343 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20891 /* 20892 * Softcarrier ioctls 20893 */ 20894 20895 20896 20897 20898 /* termios ioctls */ 20899 # 363 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20900 /* 20901 * NTP PPS ioctls 20902 */ 20903 20904 20905 20906 20907 /* Argument filled in by TIOCGPPSEV */ 20908 struct ppsclockev { 20909 struct timeval tv; 20910 uint_t serial; 20911 }; 20912 # 387 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20913 /* termios option flags */ 20914 # 398 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20915 /* TIOC ioctls for BSD, ptys, job control and modem control */ 20916 20917 20918 20919 20920 20921 /* Slots for 386/XENIX compatibility */ 20922 /* BSD includes these ioctls in ttold.h */ 20923 # 421 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20924 /* 20925 * BSD ioctls that are not the same as XENIX are included here. 20926 * There are also some relevant ioctls from SUN/BSD sys/ttycom.h 20927 * BSD pty ioctls like TIOCPKT are not supported in SVR4. 20928 */ 20929 # 449 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20930 /* POSIX job control ioctls */ 20931 20932 20933 20934 20935 20936 20937 /* Miscellaneous */ 20938 20939 20940 /* Modem control */ 20941 # 476 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20942 /* pseudo-tty */ 20943 20944 20945 20946 20947 20948 /* Some more 386 xenix stuff */ 20949 # 492 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20950 /* Slots for 386 compatibility */ 20951 20952 20953 20954 20955 20956 20957 20958 /* 20959 * These are retained for 386/XENIX compatibility. 20960 */ 20961 20962 20963 20964 20965 20966 /* 20967 * Returns a non-zero value if there 20968 * are characters in the input queue. 20969 * 20970 * XXX - somebody is confused here. V7 had no such "ioctl", although XENIX may 20971 * have added it; 4BSD had FIONREAD, which returned the number of characters 20972 * waiting, and was supposed to work on all descriptors (i.e., every driver 20973 * should make a stab at implementing it). 20974 */ 20975 20976 20977 20978 /* 20979 * Speeds 20980 */ 20981 # 551 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/termios.h" 20982 /* Windowing structure to support JWINSIZE/TIOCSWINSZ/TIOCGWINSZ */ 20983 struct winsize { 20984 unsigned short ws_row; /* rows, in characters */ 20985 unsigned short ws_col; /* columns, in character */ 20986 unsigned short ws_xpixel; /* horizontal size, pixels */ 20987 unsigned short ws_ypixel; /* vertical size, pixels */ 20988 }; 20989 # 32 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/termios.h" 2 20990 # 47 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 20991 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 1 20992 /* 20993 * CDDL HEADER START 20994 * 20995 * The contents of this file are subject to the terms of the 20996 * Common Development and Distribution License (the "License"). 20997 * You may not use this file except in compliance with the License. 20998 * 20999 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21000 * or http://www.opensolaris.org/os/licensing. 21001 * See the License for the specific language governing permissions 21002 * and limitations under the License. 21003 * 21004 * When distributing Covered Code, include this CDDL HEADER in each 21005 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21006 * If applicable, add the following below this CDDL HEADER, with the 21007 * fields enclosed by brackets "[]" replaced with your own identifying 21008 * information: Portions Copyright [yyyy] [name of copyright owner] 21009 * 21010 * CDDL HEADER END 21011 */ 21012 21013 /* Copyright 2013 OmniTI Computer Consulting, Inc. All rights reserved. */ 21014 /* 21015 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 21016 * 21017 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 21018 * Use is subject to license terms. 21019 * Copyright 2015 Joyent, Inc. All rights reserved. 21020 */ 21021 21022 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 21023 /* All Rights Reserved */ 21024 21025 /* 21026 * University Copyright- Copyright (c) 1982, 1986, 1988 21027 * The Regents of the University of California 21028 * All Rights Reserved 21029 * 21030 * University Acknowledgment- Portions of this document are derived from 21031 * software developed by the University of California, Berkeley, and its 21032 * contributors. 21033 */ 21034 21035 21036 21037 21038 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/feature_tests.h" 1 21039 /* 21040 * CDDL HEADER START 21041 * 21042 * The contents of this file are subject to the terms of the 21043 * Common Development and Distribution License (the "License"). 21044 * You may not use this file except in compliance with the License. 21045 * 21046 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21047 * or http://www.opensolaris.org/os/licensing. 21048 * See the License for the specific language governing permissions 21049 * and limitations under the License. 21050 * 21051 * When distributing Covered Code, include this CDDL HEADER in each 21052 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21053 * If applicable, add the following below this CDDL HEADER, with the 21054 * fields enclosed by brackets "[]" replaced with your own identifying 21055 * information: Portions Copyright [yyyy] [name of copyright owner] 21056 * 21057 * CDDL HEADER END 21058 */ 21059 21060 /* 21061 * Copyright 2013 Garrett D'Amore <garrett@damore.org> 21062 * Copyright 2016 Joyent, Inc. 21063 * 21064 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 21065 * Use is subject to license terms. 21066 */ 21067 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 2 21068 21069 21070 21071 21072 21073 21074 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 21075 /* 21076 * CDDL HEADER START 21077 * 21078 * The contents of this file are subject to the terms of the 21079 * Common Development and Distribution License (the "License"). 21080 * You may not use this file except in compliance with the License. 21081 * 21082 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21083 * or http://www.opensolaris.org/os/licensing. 21084 * See the License for the specific language governing permissions 21085 * and limitations under the License. 21086 * 21087 * When distributing Covered Code, include this CDDL HEADER in each 21088 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21089 * If applicable, add the following below this CDDL HEADER, with the 21090 * fields enclosed by brackets "[]" replaced with your own identifying 21091 * information: Portions Copyright [yyyy] [name of copyright owner] 21092 * 21093 * CDDL HEADER END 21094 */ 21095 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 21096 /* All Rights Reserved */ 21097 21098 21099 /* 21100 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 21101 * Use is subject to license terms. 21102 * 21103 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 21104 * Copyright 2016 Joyent, Inc. 21105 */ 21106 # 55 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 2 21107 21108 21109 /* 21110 * Protections are chosen from these bits, or-ed together. 21111 * Note - not all implementations literally provide all possible 21112 * combinations. PROT_WRITE is often implemented as (PROT_READ | 21113 * PROT_WRITE) and (PROT_EXECUTE as PROT_READ | PROT_EXECUTE). 21114 * However, no implementation will permit a write to succeed 21115 * where PROT_WRITE has not been set. Also, no implementation will 21116 * allow any access to succeed where prot is specified as PROT_NONE. 21117 */ 21118 # 78 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21119 /* sharing types: must choose either SHARED or PRIVATE */ 21120 21121 21122 21123 21124 /* other flags to mmap (or-ed in to MAP_SHARED or MAP_PRIVATE) */ 21125 # 96 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21126 /* these flags not yet implemented */ 21127 21128 21129 21130 /* these flags are used by memcntl */ 21131 # 116 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21132 /* 21133 * For the sake of backward object compatibility, we use the _MAP_NEW flag. 21134 * This flag will be automatically or'ed in by the C library for all 21135 * new mmap calls. Previous binaries with old mmap calls will continue 21136 * to get 0 or -1 for return values. New mmap calls will get the mapped 21137 * address as the return value if successful and -1 on errors. By default, 21138 * new mmap calls automatically have the kernel assign the map address 21139 * unless the MAP_FIXED flag is given. 21140 */ 21141 21142 21143 21144 21145 21146 /* External flags for mmapobj syscall (Exclusive of MAP_* flags above) */ 21147 21148 21149 21150 21151 21152 /* 21153 * Values for mr_flags field of mmapobj_result_t below. 21154 * The bottom 16 bits are mutually exclusive and thus only one 21155 * of them can be set at a time. Use MR_GET_TYPE below to check this value. 21156 * The top 16 bits are used for flags which are not mutually exclusive and 21157 * thus more than one of these flags can be set for a given mmapobj_result_t. 21158 * 21159 * MR_PADDING being set indicates that this memory range represents the user 21160 * requested padding. 21161 * 21162 * MR_HDR_ELF being set indicates that the ELF header of the mapped object 21163 * is mapped at mr_addr + mr_offset. 21164 * 21165 * MR_HDR_AOUT being set indicates that the AOUT (4.x) header of the mapped 21166 * object is mapped at mr_addr + mr_offset. 21167 */ 21168 21169 /* 21170 * External flags for mr_flags field below. 21171 */ 21172 21173 21174 21175 21176 /* 21177 * Internal flags for mr_flags field below. 21178 */ 21179 # 171 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21180 typedef struct mmapobj_result { 21181 caddr_t mr_addr; /* mapping address */ 21182 size_t mr_msize; /* mapping size */ 21183 size_t mr_fsize; /* file size */ 21184 size_t mr_offset; /* offset into file */ 21185 uint_t mr_prot; /* the protections provided */ 21186 uint_t mr_flags; /* info on the mapping */ 21187 } mmapobj_result_t; 21188 # 194 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21189 /* 21190 * large file compilation environment setup 21191 * 21192 * In the LP64 compilation environment, map large file interfaces 21193 * back to native versions where possible. 21194 */ 21195 # 211 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21196 21197 # 211 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21198 #pragma redefine_extname mmap64 mmap 21199 # 211 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21200 21201 21202 21203 21204 21205 21206 21207 21208 # 218 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21209 #pragma redefine_extname getpagesizes getpagesizes2 21210 # 218 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21211 21212 21213 21214 21215 21216 /* 21217 * Except for old binaries mmap() will return the resultant 21218 * address of mapping on success and (caddr_t)-1 on error. 21219 */ 21220 # 242 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21221 extern caddr_t mmap(caddr_t, size_t, int, int, int, off_t); 21222 extern int munmap(caddr_t, size_t); 21223 extern int mprotect(caddr_t, size_t, int); 21224 extern int msync(caddr_t, size_t, int); 21225 extern int mlock(caddr_t, size_t); 21226 extern int munlock(caddr_t, size_t); 21227 extern int mincore(caddr_t, size_t, char *); 21228 extern int memcntl(caddr_t, size_t, int, caddr_t, int, int); 21229 extern int madvise(caddr_t, size_t, int); 21230 21231 extern int getpagesizes(size_t *, int); 21232 extern int getpagesizes2(size_t *, int); 21233 extern int mmapobj(int, uint_t, mmapobj_result_t *, uint_t *, void *); 21234 /* guard visibility of uint64_t */ 21235 21236 extern int meminfo(const uint64_t *, int, const uint_t *, int, uint64_t *, 21237 uint_t *); 21238 21239 21240 /* transitional large file interface version */ 21241 21242 extern caddr_t mmap64(caddr_t, size_t, int, int, int, off64_t); 21243 21244 21245 21246 21247 extern int mlockall(int); 21248 extern int munlockall(void); 21249 extern int shm_open(const char *, int, mode_t); 21250 extern int shm_unlink(const char *); 21251 21252 21253 21254 extern int posix_madvise(void *, size_t, int); 21255 21256 21257 /* mmap failure value */ 21258 21259 21260 21261 21262 21263 21264 21265 /* 21266 * structure for memcntl hat advise operations. 21267 */ 21268 struct memcntl_mha { 21269 uint_t mha_cmd; /* command(s) */ 21270 uint_t mha_flags; 21271 size_t mha_pagesize; 21272 }; 21273 # 306 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21274 /* 21275 * advice to madvise 21276 * 21277 * Note, if more than 4 bits worth of advice (eg. 16) are specified then 21278 * changes will be necessary to the struct vpage. 21279 */ 21280 # 326 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21281 /* advice to posix_madvise */ 21282 /* these values must be kept in sync with the MADV_* values, above */ 21283 21284 21285 21286 21287 21288 21289 21290 /* flags to msync */ 21291 21292 /* modified for UNIX98 compliance */ 21293 21294 21295 21296 21297 21298 /* functions to mctl */ 21299 # 353 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21300 /* sub-commands for MC_HAT_ADVISE */ 21301 21302 21303 /* for last bss adjacent to */ 21304 /* brk area and brk area itself */ 21305 21306 /* processes main stack */ 21307 21308 21309 21310 21311 /* flags to mlockall */ 21312 21313 21314 21315 21316 21317 21318 /* definitions for meminfosys syscall */ 21319 21320 21321 21322 21323 21324 /* private structure for meminfo */ 21325 typedef struct meminfo { 21326 const uint64_t *mi_inaddr; /* array of input addresses */ 21327 const uint_t *mi_info_req; /* array of types of info requested */ 21328 uint64_t *mi_outdata; /* array of results are placed */ 21329 uint_t *mi_validity; /* array of bitwise result codes */ 21330 int mi_info_count; /* number of pieces of info requested */ 21331 } meminfo_t; 21332 # 399 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21333 /* 21334 * info_req request type definitions for meminfo 21335 * request types starting with MEMINFO_V are used for Virtual addresses 21336 * and should not be mixed with MEMINFO_PLGRP which is targeted for Physical 21337 * addresses 21338 */ 21339 # 415 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/mman.h" 21340 /* maximum number of addresses meminfo() can process at a time */ 21341 21342 21343 /* maximum number of request types */ 21344 # 48 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 21345 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/param.h" 1 21346 /* 21347 * CDDL HEADER START 21348 * 21349 * The contents of this file are subject to the terms of the 21350 * Common Development and Distribution License (the "License"). 21351 * You may not use this file except in compliance with the License. 21352 * 21353 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21354 * or http://www.opensolaris.org/os/licensing. 21355 * See the License for the specific language governing permissions 21356 * and limitations under the License. 21357 * 21358 * When distributing Covered Code, include this CDDL HEADER in each 21359 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21360 * If applicable, add the following below this CDDL HEADER, with the 21361 * fields enclosed by brackets "[]" replaced with your own identifying 21362 * information: Portions Copyright [yyyy] [name of copyright owner] 21363 * 21364 * CDDL HEADER END 21365 */ 21366 21367 /* 21368 * Copyright 2014 Nexenta Systems, Inc. All rights reserved. 21369 * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. 21370 */ 21371 21372 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ 21373 /* All Rights Reserved */ 21374 21375 /* 21376 * University Copyright- Copyright (c) 1982, 1986, 1988 21377 * The Regents of the University of California 21378 * All Rights Reserved 21379 * 21380 * University Acknowledgment- Portions of this document are derived from 21381 * software developed by the University of California, Berkeley, and its 21382 * contributors. 21383 */ 21384 # 49 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 21385 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/types.h" 1 21386 /* 21387 * CDDL HEADER START 21388 * 21389 * The contents of this file are subject to the terms of the 21390 * Common Development and Distribution License (the "License"). 21391 * You may not use this file except in compliance with the License. 21392 * 21393 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21394 * or http://www.opensolaris.org/os/licensing. 21395 * See the License for the specific language governing permissions 21396 * and limitations under the License. 21397 * 21398 * When distributing Covered Code, include this CDDL HEADER in each 21399 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21400 * If applicable, add the following below this CDDL HEADER, with the 21401 * fields enclosed by brackets "[]" replaced with your own identifying 21402 * information: Portions Copyright [yyyy] [name of copyright owner] 21403 * 21404 * CDDL HEADER END 21405 */ 21406 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 21407 /* All Rights Reserved */ 21408 21409 21410 /* 21411 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 21412 * Use is subject to license terms. 21413 * 21414 * Copyright 2013 Nexenta Systems, Inc. All rights reserved. 21415 * Copyright 2016 Joyent, Inc. 21416 */ 21417 # 50 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 21418 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ioctl.h" 1 21419 /* 21420 * CDDL HEADER START 21421 * 21422 * The contents of this file are subject to the terms of the 21423 * Common Development and Distribution License, Version 1.0 only 21424 * (the "License"). You may not use this file except in compliance 21425 * with the License. 21426 * 21427 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21428 * or http://www.opensolaris.org/os/licensing. 21429 * See the License for the specific language governing permissions 21430 * and limitations under the License. 21431 * 21432 * When distributing Covered Code, include this CDDL HEADER in each 21433 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21434 * If applicable, add the following below this CDDL HEADER, with the 21435 * fields enclosed by brackets "[]" replaced with your own identifying 21436 * information: Portions Copyright [yyyy] [name of copyright owner] 21437 * 21438 * CDDL HEADER END 21439 */ 21440 /* 21441 * Copyright 1991 Sun Microsystems, Inc. All rights reserved. 21442 * Use is subject to license terms. 21443 */ 21444 21445 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 21446 /* All Rights Reserved */ 21447 21448 21449 21450 21451 #pragma ident "%Z%%M% %I% %E% SMI" 21452 21453 21454 21455 21456 21457 /* 21458 * There are some inherent problems in having a single file 21459 * ioctl.h, with both System V and BSD flags. Introducing 21460 * BSD flags into this file creates compilation problems 21461 * with flags such as ECHO, NL1 etc., if termio.h and ioctl.h 21462 * are included by the same file. Since these two files can 21463 * be only included by System V applications, /usr/inclule/sys/ioctl.h 21464 * will be System V mode and all the BSD flags will be turned off 21465 * using #ifdef BSD_COMP. This file will also exist in 21466 * /usr/ucbinclude/sys/ioctl.h for BSD applications but without the 21467 * BSD flags turned off. System V appliactions can use ioctl.h without 21468 * any changes, System V applications requiring BSD flags should 21469 * -D BSD_COMP when compiling (and be warned about the common 21470 * flags between System V and BSD) and BSD applications should 21471 * use /usr/ucbinclude/sys/ioctl.h. 21472 * 21473 */ 21474 # 74 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/sys/ioctl.h" 21475 /* BSD related defines */ 21476 # 51 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 21477 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libzonecfg.h" 1 21478 /* 21479 * CDDL HEADER START 21480 * 21481 * The contents of this file are subject to the terms of the 21482 * Common Development and Distribution License (the "License"). 21483 * You may not use this file except in compliance with the License. 21484 * 21485 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21486 * or http://www.opensolaris.org/os/licensing. 21487 * See the License for the specific language governing permissions 21488 * and limitations under the License. 21489 * 21490 * When distributing Covered Code, include this CDDL HEADER in each 21491 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21492 * If applicable, add the following below this CDDL HEADER, with the 21493 * fields enclosed by brackets "[]" replaced with your own identifying 21494 * information: Portions Copyright [yyyy] [name of copyright owner] 21495 * 21496 * CDDL HEADER END 21497 */ 21498 21499 /* 21500 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. 21501 */ 21502 # 52 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/instzones_api.h" 2 21503 21504 /* 21505 * C++ prefix 21506 */ 21507 21508 21509 21510 21511 21512 21513 /* function prototypes */ 21514 21515 /* PRINTFLIKE1 */ 21516 typedef void (*_z_printf_fcn_t)(char *a_format, ...); 21517 21518 /* zone list structure */ 21519 21520 typedef struct _zoneListElement_t *zoneList_t; 21521 21522 /* zone brand list structure */ 21523 21524 typedef struct _zoneBrandList zoneBrandList_t; 21525 21526 /* flag for zone locking functions */ 21527 21528 typedef unsigned long ZLOCKS_T; 21529 21530 /* flags for zone locking */ 21531 21532 21533 21534 21535 21536 21537 /* 21538 * external function definitions 21539 */ 21540 21541 /* zones.c */ 21542 21543 extern boolean_t z_zones_are_implemented(void); 21544 extern void z_set_zone_root(const char *zroot); 21545 extern boolean_t z_zlist_is_zone_runnable(zoneList_t a_zoneList, 21546 int a_zoneIndex); 21547 extern boolean_t z_zlist_restore_zone_state(zoneList_t a_zoneList, 21548 int a_zoneIndex); 21549 extern boolean_t z_zlist_change_zone_state(zoneList_t a_zoneList, 21550 int a_zoneIndex, zone_state_t a_newState); 21551 extern char *z_get_zonename(void); 21552 extern zone_state_t z_zlist_get_current_state(zoneList_t a_zoneList, 21553 int a_zoneIndex); 21554 extern zone_state_t z_zlist_get_original_state(zoneList_t a_zoneList, 21555 int a_zoneIndex); 21556 extern int z_zoneExecCmdArray(int *r_status, char **r_results, 21557 char *a_inputFile, char *a_path, char *a_argv[], 21558 const char *a_zoneName, int *a_fds); 21559 extern int z_zone_exec(const char *zonename, const char *path, 21560 char *argv[], char *a_stdoutPath, 21561 char *a_stderrPath, int *a_fds); 21562 extern boolean_t z_create_zone_admin_file(char *a_zoneAdminFilename, 21563 char *a_userAdminFilename); 21564 extern void z_free_zone_list(zoneList_t a_zoneList); 21565 extern zoneList_t z_get_nonglobal_zone_list(void); 21566 extern zoneList_t z_get_nonglobal_zone_list_by_brand(zoneBrandList_t *); 21567 extern void z_free_brand_list(zoneBrandList_t *a_brandList); 21568 extern zoneBrandList_t *z_make_brand_list(const char *brandList, 21569 const char *delim); 21570 extern boolean_t z_lock_zones(zoneList_t a_zlst, ZLOCKS_T a_lflags); 21571 extern boolean_t z_non_global_zones_exist(void); 21572 extern boolean_t z_running_in_global_zone(void); 21573 extern void z_set_output_functions(_z_printf_fcn_t a_echo_fcn, 21574 _z_printf_fcn_t a_echo_debug_fcn, 21575 _z_printf_fcn_t a_progerr_fcn); 21576 extern int z_set_zone_spec(const char *zlist); 21577 extern int z_verify_zone_spec(void); 21578 extern boolean_t z_on_zone_spec(const char *zonename); 21579 extern boolean_t z_global_only(void); 21580 extern boolean_t z_unlock_zones(zoneList_t a_zlst, ZLOCKS_T a_lflags); 21581 extern boolean_t z_lock_this_zone(ZLOCKS_T a_lflags); 21582 extern boolean_t z_unlock_this_zone(ZLOCKS_T a_lflags); 21583 extern char *z_zlist_get_zonename(zoneList_t a_zoneList, 21584 int a_zoneId); 21585 extern char *z_zlist_get_zonepath(zoneList_t a_zoneList, 21586 int a_zoneId); 21587 extern char *z_zlist_get_scratch(zoneList_t a_zoneList, 21588 int a_zoneId); 21589 extern boolean_t z_umount_lz_mount(char *a_lzMountPoint); 21590 extern boolean_t z_mount_in_lz(char **r_lzMountPoint, 21591 char **r_lzRootPath, 21592 char *a_zoneName, char *a_gzPath, 21593 char *a_mountPointPrefix); 21594 extern boolean_t z_is_zone_branded(char *zoneName); 21595 extern boolean_t z_is_zone_brand_in_list(char *zoneName, 21596 zoneBrandList_t *brands); 21597 extern boolean_t z_zones_are_implemented(void); 21598 21599 /* zones_exec.c */ 21600 extern int z_ExecCmdArray(int *r_status, char **r_results, 21601 char *a_inputFile, char *a_cmd, char **a_args); 21602 /*VARARGS*/ 21603 extern int z_ExecCmdList(int *r_status, char **r_results, 21604 char *a_inputFile, char *a_cmd, ...); 21605 21606 /* zones_paths.c */ 21607 extern char *z_make_zone_root(char *); 21608 extern void z_path_canonize(char *file); 21609 extern void z_canoninplace(char *file); 21610 21611 /* zones_lofs.c */ 21612 extern void z_destroyMountTable(void); 21613 extern int z_createMountTable(void); 21614 extern int z_isPathWritable(const char *); 21615 extern void z_resolve_lofs(char *path, size_t); 21616 21617 /* zones_states.c */ 21618 extern int UmountAllZones(char *mntpnt); 21619 21620 /* 21621 * C++ postfix 21622 */ 21623 # 49 "../common/instzones_lib.h" 2 21624 21625 21626 21627 /* 21628 * C++ prefix 21629 */ 21630 21631 21632 21633 21634 21635 /* constants */ 21636 21637 21638 /* macros */ 21639 21640 /* 21641 * argument array processing type 21642 */ 21643 21644 /* 21645 * This is the "argument array" definition that is returned by _z_new_args 21646 * and is used by _z_add_args, _z_free_args, etc. 21647 */ 21648 21649 struct _argArray_t { 21650 long _aaNumArgs; /* number of arguments set */ 21651 long _aaMaxArgs; /* number of arguments allocated */ 21652 char **_aaArgs; /* actual arguments */ 21653 }; 21654 21655 typedef struct _argArray_t argArray_t; 21656 21657 /* 21658 * lock objects 21659 */ 21660 21661 /* 21662 * this allows a root path to be prepended to a lock object; e.g. 21663 * rootpath.%s/zone.%s/... 21664 */ 21665 21666 21667 /* this locks a single zone (zone.name) */ 21668 21669 21670 /* this locks all zones */ 21671 21672 21673 /* this locks all packages, in all zones */ 21674 21675 21676 21677 21678 21679 /* paths to commands executed by this module */ 21680 21681 21682 21683 21684 /* max message size for program output functions (echo, echo debug, progerr) */ 21685 21686 21687 21688 /* maximum number of retries when waiting for lock */ 21689 21690 21691 21692 /* delay (in seconds) between retries when waiting for lock */ 21693 21694 21695 21696 /* Size of buffer increments when reading from pipe */ 21697 21698 21699 21700 /* Maximum number of arguments to pkg_ExecCmdList */ 21701 21702 21703 21704 /* 21705 * These dynamic libraries are required in order to use the zones 21706 * functionality - if these libraries are not available at runtime, 21707 * then zones are assumed to NOT be available, and it is assumed that 21708 * the program is running in the global zone with no non-global zones. 21709 */ 21710 # 147 "../common/instzones_lib.h" 21711 /* 21712 * Environment values used when running commands within a non-global zone 21713 */ 21714 21715 /* SHELL= */ 21716 21717 21718 21719 /* PATH= */ 21720 21721 21722 21723 /* error codes */ 21724 21725 21726 /* 21727 * zone brand list structure 21728 */ 21729 21730 struct _zoneBrandList { 21731 char *string_ptr; 21732 struct _zoneBrandList *next; 21733 }; 21734 21735 /* 21736 * zone status structure - used to retrieve and hold status of zones 21737 */ 21738 21739 typedef unsigned long _zone_status_t; 21740 21741 struct _zoneListElement_t { 21742 char *_zlName; 21743 char *_zlPath; 21744 char *_zlScratchName; 21745 char *_zlLockObjects; 21746 /* 21747 * the install "state" refers to the zone states listed in 21748 * /usr/include/libzonecfg.h that is stored in the zone_state_t 21749 * structure and returned from getzoneent_private() - such as: 21750 * ZONE_STATE_CONFIGURED, ZONE_STATE_INCOMPLETE, 21751 * ZONE_STATE_INSTALLED, ZONE_STATE_READY, ZONE_STATE_MOUNTED, 21752 * ZONE_STATE_SHUTTING_DOWN, ZONE_STATE_DOWN. 21753 */ 21754 zone_state_t _zlOrigInstallState; 21755 zone_state_t _zlCurrInstallState; 21756 /* 21757 * the kernel "status" refers to the zone status listed in 21758 * /usr/include/sys/zone.h, returned by zone_get_state(), 21759 * and defined in the zone_status_t enum - such as: 21760 * ZONE_IS_UNINITIALIZED, ZONE_IS_READY, ZONE_IS_BOOTING, 21761 * ZONE_IS_RUNNING, ZONE_IS_SHUTTING_DOWN, ZONE_IS_EMPTY, 21762 * ZONE_IS_DOWN, ZONE_IS_DYING, ZONE_IS_DEAD. 21763 */ 21764 zone_status_t _zlOrigKernelStatus; 21765 zone_status_t _zlCurrKernelStatus; 21766 /* 21767 * this is an internal state recorded about the zone (ZSF_xxx). 21768 */ 21769 _zone_status_t _zlStatus; 21770 }; 21771 21772 typedef struct _zoneListElement_t zoneListElement_t; 21773 21774 /* bits used in the _zoneListElement _zlStatus variable */ 21775 21776 21777 21778 21779 /* 21780 * User-specified list of zones. 21781 */ 21782 21783 typedef struct zone_spec_s { 21784 struct zone_spec_s *zl_next; 21785 boolean_t zl_used; 21786 char zl_name[64]; 21787 } zone_spec_t; 21788 21789 /* 21790 * The global data structure used to hold all of the global (extern) data 21791 * used by this library. 21792 * 21793 * --> THESE DEFINITIONS ARE ORDER DEPENDENT BASED <-- 21794 * --> ON THE ORDER OF THE STRUCTURE INITIALIZERS! <-- 21795 */ 21796 21797 struct _z_global_data_t { 21798 char *_z_ObjectLocks; /* object locks held */ 21799 char *_z_root_dir; /* root for zone lib fctns */ 21800 int _z_SigReceived; /* received signal count */ 21801 pid_t _z_ChildProcessId; /* child to propagate sigs to */ 21802 zone_spec_t *_zone_spec; /* zones to operate on */ 21803 _z_printf_fcn_t _z_echo; /* operational message fcn */ 21804 _z_printf_fcn_t _z_echo_debug; /* debug message fcn */ 21805 _z_printf_fcn_t _z_progerr; /* program error fcn */ 21806 }; 21807 21808 typedef struct _z_global_data_t z_global_data_t; 21809 21810 /* 21811 * When _INSTZONES_LIB_Z_DEFINE_GLOBAL_DATA is defined, 21812 * instzones_lib.h will define the z_global_data structure. 21813 * Otherwise an extern to the structure is inserted. 21814 * 21815 * --> THESE DEFINITIONS ARE ORDER DEPENDENT BASED ON <-- 21816 * --> THE ORDER OF THE _z_global_data_t STRUCTURE!!! <-- 21817 */ 21818 # 272 "../common/instzones_lib.h" 21819 /* define structure extern */ 21820 21821 extern z_global_data_t _z_global_data; 21822 21823 21824 21825 /* function prototypes */ 21826 21827 /* 21828 * The following functions can be used by other libs, but not 21829 * by applications. 21830 */ 21831 21832 /* ---> zones_states.c */ 21833 21834 boolean_t _z_make_zone_ready(zoneListElement_t *a_zlem); 21835 boolean_t _z_make_zone_down(zoneListElement_t *a_zlem); 21836 boolean_t _z_make_zone_running(zoneListElement_t *a_zlem); 21837 int UmountAllZones(char *mntpnt); 21838 void *_z_calloc(size_t size); 21839 void *_z_malloc(size_t size); 21840 void *_z_realloc(void *ptr, size_t size); 21841 void *_z_strdup(char *str); 21842 21843 /* ---> zones_utils.c */ 21844 21845 /*PRINTFLIKE1*/ 21846 void _z_program_error(char *fmt, ...); 21847 /*PRINTFLIKE1*/ 21848 void _z_echo(char *fmt, ...); 21849 /*PRINTFLIKE1*/ 21850 void _z_echoDebug(char *a_fmt, ...); 21851 int _z_is_directory(char *path); 21852 boolean_t _z_running_in_global_zone(void); 21853 boolean_t _z_zones_are_implemented(void); 21854 void _z_sig_trap(int a_signo); 21855 int _z_close_file_descriptors(void *a_fds, int a_fd); 21856 boolean_t _z_brands_are_implemented(void); 21857 21858 21859 /* ---> zones_locks.c */ 21860 21861 boolean_t _z_adjust_lock_object_for_rootpath(char **r_result, 21862 char *a_lockObject); 21863 boolean_t _z_acquire_lock(char **r_lockKey, char *a_zoneName, 21864 char *a_lock, pid_t a_pid, boolean_t a_wait); 21865 boolean_t _z_lock_zone(zoneListElement_t *a_zlst, 21866 ZLOCKS_T a_lflags); 21867 boolean_t _z_lock_zone_object(char **r_objectLocks, 21868 char *a_zoneName, char *a_lockObject, 21869 pid_t a_pid, char *a_waitingMsg, 21870 char *a_busyMsg); 21871 boolean_t _z_release_lock(char *a_zoneName, char *a_lock, 21872 char *a_key, boolean_t a_wait); 21873 boolean_t _z_unlock_zone(zoneListElement_t *a_zlst, 21874 ZLOCKS_T a_lflags); 21875 boolean_t _z_unlock_zone_object(char **r_objectLocks, 21876 char *a_zoneName, char *a_lockObject, 21877 char *a_errMsg); 21878 21879 /* ---> zones_args.c */ 21880 21881 void _z_free_args(argArray_t *a_args); 21882 argArray_t *_z_new_args(int initialCount); 21883 /*PRINTFLIKE2*/ 21884 boolean_t _z_add_arg(argArray_t *a_args, char *a_format, ...); 21885 int _z_get_argc(argArray_t *a_args); 21886 char **_z_get_argv(argArray_t *a_args); 21887 21888 /* ---> zones_str.c */ 21889 21890 boolean_t _z_strContainsToken(char *a_string, char *a_token, 21891 char *a_separators); 21892 char *_z_strGetToken(char *r_sep, char *a_string, 21893 int a_index, char *a_separators); 21894 void _z_strRemoveLeadingWhitespace(char **a_str); 21895 void _z_strGetToken_r(char *r_sep, char *a_string, 21896 int a_index, char *a_separators, char *a_buf, 21897 int a_bufLen); 21898 void _z_strAddToken(char **a_old, char *a_new, 21899 char a_separator); 21900 void _z_strRemoveToken(char **r_string, char *a_token, 21901 char *a_separators, int a_index); 21902 /*PRINTFLIKE3*/ 21903 void _z_strPrintf_r(char *a_buf, int a_bufLen, 21904 char *a_format, ...); 21905 /*PRINTFLIKE1*/ 21906 char *_z_strPrintf(char *a_format, ...); 21907 21908 /* ---> zones_exec.c */ 21909 21910 int _z_zone_exec(int *r_status, char **r_results, char *a_inputFile, 21911 char *a_path, char *a_argv[], const char *a_zoneName, 21912 int *a_fds); 21913 int _zexec(const char *a_zoneName, 21914 const char *path, char *argv[]); 21915 char *_zexec_add_env(char *name, char *value); 21916 int _zexec_init_template(void); 21917 char **_zexec_prep_env(); 21918 21919 /* 21920 * C++ postfix 21921 */ 21922 # 52 "../common/zones_paths.c" 2 21923 # 1 "../common/zones_strings.h" 1 21924 /* 21925 * CDDL HEADER START 21926 * 21927 * The contents of this file are subject to the terms of the 21928 * Common Development and Distribution License (the "License"). 21929 * You may not use this file except in compliance with the License. 21930 * 21931 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21932 * or http://www.opensolaris.org/os/licensing. 21933 * See the License for the specific language governing permissions 21934 * and limitations under the License. 21935 * 21936 * When distributing Covered Code, include this CDDL HEADER in each 21937 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21938 * If applicable, add the following below this CDDL HEADER, with the 21939 * fields enclosed by brackets "[]" replaced with your own identifying 21940 * information: Portions Copyright [yyyy] [name of copyright owner] 21941 * 21942 * CDDL HEADER END 21943 */ 21944 /* 21945 * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. 21946 */ 21947 21948 21949 21950 21951 21952 21953 21954 /* 21955 * Module: zones_strings.h 21956 * Group: libinstzones 21957 * Description: This header contains strings used in libinstzones 21958 * library modules. 21959 */ 21960 21961 # 1 "/home/git3/dehawe/titanic_53/proto/root_i386/usr/include/libintl.h" 1 21962 /* 21963 * CDDL HEADER START 21964 * 21965 * The contents of this file are subject to the terms of the 21966 * Common Development and Distribution License (the "License"). 21967 * You may not use this file except in compliance with the License. 21968 * 21969 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 21970 * or http://www.opensolaris.org/os/licensing. 21971 * See the License for the specific language governing permissions 21972 * and limitations under the License. 21973 * 21974 * When distributing Covered Code, include this CDDL HEADER in each 21975 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 21976 * If applicable, add the following below this CDDL HEADER, with the 21977 * fields enclosed by brackets "[]" replaced with your own identifying 21978 * information: Portions Copyright [yyyy] [name of copyright owner] 21979 * 21980 * CDDL HEADER END 21981 */ 21982 /* 21983 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 21984 * 21985 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 21986 * Use is subject to license terms. 21987 */ 21988 # 39 "../common/zones_strings.h" 2 21989 21990 /* 21991 * C++ prefix 21992 */ 21993 21994 21995 21996 21997 21998 /* constants */ 21999 # 58 "../common/zones_strings.h" 22000 /* 22001 * message strings 22002 */ 22003 22004 /* BEGIN CSTYLED */ 22005 22006 /* 22007 * I18N: these messages are debugging message and are only displayed 22008 * when special debugging output has been enabled - these messages 22009 * will never be displayed during normal product usage 22010 */ 22011 # 121 "../common/zones_strings.h" 22012 /* 22013 * I18N: these messages are error messages that can be displayed 22014 * during the normal usage of the products 22015 */ 22016 # 189 "../common/zones_strings.h" 22017 /* 22018 * I18N: these are messages that can be displayed during the normal 22019 * usage of the products 22020 */ 22021 22022 22023 22024 22025 22026 22027 22028 /* 22029 * I18N: these messages are warning messages that can be displayed 22030 * during the normal usage of the products 22031 */ 22032 22033 22034 22035 22036 /* END CSTYLED */ 22037 22038 /* 22039 * C++ postfix 22040 */ 22041 # 53 "../common/zones_paths.c" 2 22042 22043 22044 22045 22046 22047 /* 22048 * ***************************************************************************** 22049 * global external (public) functions 22050 * ***************************************************************************** 22051 */ 22052 22053 /* 22054 * Name: z_make_zone_root 22055 * Description: Given its zonepath, generate a string representing the 22056 * mountpoint of where the root path for a nonglobal zone is 22057 * mounted. The zone is mounted using 'zoneadm', which mounts 22058 * the zone's filesystems wrt <zonepath>/lu/a 22059 * Arguments: zone_path - non-NULL pointer to string representing zonepath 22060 * Returns: char * - pointer to string representing zonepath of zone 22061 * NULL - if zone_path is NULL. 22062 * Notes: The string returned is in static storage and should not be 22063 * free()ed by the caller. 22064 */ 22065 char * 22066 z_make_zone_root(char *zone_path) 22067 { 22068 static char zone_root_buf[1024]; 22069 22070 if (zone_path == 0L) 22071 return (0L); 22072 22073 (void) snprintf(zone_root_buf, 1024, "%s%slu/a", zone_path, 22074 (zone_path[0] != '\0' && 22075 zone_path[strlen(zone_path) - 1] == '/') ? "" : "/"); 22076 22077 return (zone_root_buf); 22078 } 22079 22080 void 22081 z_path_canonize(char *a_file) 22082 { 22083 char *pt; 22084 char *last; 22085 int level; 22086 22087 /* remove references such as "./" and "../" and "//" */ 22088 for (pt = a_file; *pt; /* void */) { 22089 if (((pt[0] == '.') && (!pt[1] || (pt[1] == '/')))) { 22090 (void) strcpy(pt, pt[1] ? pt+2 : pt+1); 22091 } else if (((pt[0] == '.') && (pt[1] == '.') && (!pt[2] || (pt[2] == '/')))) { 22092 level = 0; 22093 last = pt; 22094 do { 22095 level++; 22096 last += 2; 22097 if (*last) { 22098 last++; 22099 } 22100 } while (((last[0] == '.') && (last[1] == '.') && (!last[2] || (last[2] == '/')))); 22101 --pt; /* point to previous '/' */ 22102 while (level--) { 22103 if (pt <= a_file) { 22104 return; 22105 } 22106 while ((*--pt != '/') && (pt > a_file)) 22107 ; 22108 } 22109 if (*pt == '/') { 22110 pt++; 22111 } 22112 (void) strcpy(pt, last); 22113 } else { 22114 while (*pt && (*pt != '/')) { 22115 pt++; 22116 } 22117 if (*pt == '/') { 22118 while (pt[1] == '/') { 22119 (void) strcpy(pt, pt+1); 22120 } 22121 pt++; 22122 } 22123 } 22124 } 22125 22126 if ((--pt > a_file) && (*pt == '/')) { 22127 *pt = '\0'; 22128 } 22129 } 22130 22131 void 22132 z_canoninplace(char *src) 22133 { 22134 char *dst; 22135 char *src_start; 22136 22137 /* keep a ptr to the beginning of the src string */ 22138 src_start = src; 22139 22140 dst = src; 22141 while (*src) { 22142 if (*src == '/') { 22143 *dst++ = '/'; 22144 while (*src == '/') 22145 src++; 22146 } else 22147 *dst++ = *src++; 22148 } 22149 22150 /* 22151 * remove any trailing slashes, unless the whole string is just "/". 22152 * If the whole string is "/" (i.e. if the last '/' cahr in dst 22153 * in the beginning of the original string), just terminate it 22154 * and return "/". 22155 */ 22156 if ((*(dst - 1) == '/') && ((dst - 1) != src_start)) 22157 dst--; 22158 *dst = '\0'; 22159 } 22160