1 Linux Standard Base Specification for the IA32 Architecture 2.0 2 3 Copyright ? 2000, 2001, 2002, 2003 Free Standards Group 4 5 Permission is granted to copy, distribute and/or modify this document under the 6 terms of the GNU Free Documentation License, Version 1.1; with no Invariant 7 Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of 8 the license is included in the section entitled "GNU Free Documentation 9 License". 10 11 Portions of the text are copyrighted by the following parties: 12 13 * The Regents of the University of California 14 15 * Free Software Foundation 16 17 * Ian F. Darwin 18 19 * Paul Vixie 20 21 * BSDI (now Wind River) 22 23 * Andrew G Morgan 24 25 * Jean-loup Gailly and Mark Adler 26 27 * Massachusetts Institute of Technology 28 29 These excerpts are being used in accordance with their respective licenses. 30 31 Linux is a trademark of Linus Torvalds. 32 33 UNIX a registered trademark of the Open Group in the United States and other 34 countries. 35 36 LSB is a trademark of the Free Standards Group in the USA and other countries. 37 38 AMD is a trademark of Advanced Micro Devices, Inc. 39 40 Intel and Itanium are registered trademarks and Intel386 is a trademarks of 41 Intel Corporation. 42 43 OpenGL is a registered trademark of Silicon Graphics, Inc. 44 45 ------------------------------------------------------------------------------- 46 47 Table of Contents 48 Foreword 49 Introduction 50 I. Introductory Elements 51 52 1. Scope 53 54 General 55 Module Specific Scope 56 57 2. Normative References 58 3. Requirements 59 60 Relevant Libraries 61 LSB Implementation Conformance 62 LSB Application Conformance 63 64 4. Definitions 65 5. Terminology 66 67 II. Base Libraries 68 69 6. Libraries 70 71 Program Interpreter/Dynamic Linker 72 Interfaces for libc 73 Data Definitions for libc 74 Interfaces for libm 75 Interfaces for libpthread 76 Interfaces for libgcc_s 77 Interface Definitions for libgcc_s 78 Interfaces for libdl 79 Interfaces for libcrypt 80 81 III. Utility Libraries 82 83 7. Libraries 84 85 Interfaces for libz 86 Interfaces for libncurses 87 Interfaces for libutil 88 89 A. GNU Free Documentation License 90 91 PREAMBLE 92 APPLICABILITY AND DEFINITIONS 93 VERBATIM COPYING 94 COPYING IN QUANTITY 95 MODIFICATIONS 96 COMBINING DOCUMENTS 97 COLLECTIONS OF DOCUMENTS 98 AGGREGATION WITH INDEPENDENT WORKS 99 TRANSLATION 100 TERMINATION 101 FUTURE REVISIONS OF THIS LICENSE 102 How to use this License for your documents 103 104 List of Tables 105 2-1. Normative References 106 3-1. Standard Library Names 107 6-1. libc Definition 108 6-2. libc - RPC Function Interfaces 109 6-3. libc - System Calls Function Interfaces 110 6-4. libc - Standard I/O Function Interfaces 111 6-5. libc - Standard I/O Data Interfaces 112 6-6. libc - Signal Handling Function Interfaces 113 6-7. libc - Signal Handling Data Interfaces 114 6-8. libc - Localization Functions Function Interfaces 115 6-9. libc - Localization Functions Data Interfaces 116 6-10. libc - Socket Interface Function Interfaces 117 6-11. libc - Socket Interface Deprecated Function Interfaces 118 6-12. libc - Wide Characters Function Interfaces 119 6-13. libc - String Functions Function Interfaces 120 6-14. libc - IPC Functions Function Interfaces 121 6-15. libc - Regular Expressions Function Interfaces 122 6-16. libc - Regular Expressions Deprecated Function Interfaces 123 6-17. libc - Regular Expressions Deprecated Data Interfaces 124 6-18. libc - Character Type Functions Function Interfaces 125 6-19. libc - Time Manipulation Function Interfaces 126 6-20. libc - Time Manipulation Deprecated Function Interfaces 127 6-21. libc - Time Manipulation Data Interfaces 128 6-22. libc - Terminal Interface Functions Function Interfaces 129 6-23. libc - System Database Interface Function Interfaces 130 6-24. libc - Language Support Function Interfaces 131 6-25. libc - Large File Support Function Interfaces 132 6-26. libc - Standard Library Function Interfaces 133 6-27. libc - Standard Library Data Interfaces 134 6-28. libm Definition 135 6-29. libm - Math Function Interfaces 136 6-30. libm - Math Data Interfaces 137 6-31. libpthread Definition 138 6-32. libpthread - Posix Threads Function Interfaces 139 6-33. libgcc_s Definition 140 6-34. libgcc_s - Unwind Library Function Interfaces 141 6-35. libdl Definition 142 6-36. libdl - Dynamic Loader Function Interfaces 143 6-37. libcrypt Definition 144 6-38. libcrypt - Encryption Function Interfaces 145 7-1. libz Definition 146 7-2. libncurses Definition 147 7-3. libutil Definition 148 7-4. libutil - Utility Functions Function Interfaces 149 150 ------------------------------------------------------------------------------- 151 152 Foreword 153 154 This is version 2.0 of the Linux Standard Base Specification for the IA32 155 Architecture. An implementation of this version of the specification may not 156 claim to be an implementation of the Linux Standard Base unless it has 157 successfully completed the compliance process as defined by the Free Standards 158 Group. 159 160 ------------------------------------------------------------------------------- 161 162 Introduction 163 164 The LSB defines a binary interface for application programs that are compiled 165 and packaged for LSB-conforming implementations on many different hardware 166 architectures. Since a binary specification shall include information specific 167 to the computer processor architecture for which it is intended, it is not 168 possible for a single document to specify the interface for all possible 169 LSB-conforming implementations. Therefore, the LSB is a family of 170 specifications, rather than a single one. 171 172 This document should be used in conjunction with the documents it references. 173 This document enumerates the system components it includes, but descriptions of 174 those components may be included entirely or partly in this document, partly in 175 other documents, or entirely in other reference documents. For example, the 176 section that describes system service routines includes a list of the system 177 routines supported in this interface, formal declarations of the data 178 structures they use that are visible to applications, and a pointer to the 179 underlying referenced specification for information about the syntax and 180 semantics of each call. Only those routines not described in standards 181 referenced by this document, or extensions to those standards, are described in 182 the detail. Information referenced in this way is as much a part of this 183 document as is the information explicitly included here. 184 185 I. Introductory Elements 186 187 Table of Contents 188 1. Scope 189 2. Normative References 190 3. Requirements 191 4. Definitions 192 5. Terminology 193 194 ------------------------------------------------------------------------------- 195 196 Chapter 1. Scope 197 198 General 199 200 The Linux Standard Base (LSB) defines a system interface for compiled 201 applications and a minimal environment for support of installation scripts. Its 202 purpose is to enable a uniform industry standard environment for high-volume 203 applications conforming to the LSB. 204 205 These specifications are composed of two basic parts: A common specification 206 ("LSB-generic") describing those parts of the interface that remain constant 207 across all implementations of the LSB, and an architecture-specific 208 specification ("LSB-arch") describing the parts of the interface that vary by 209 processor architecture. Together, the LSB-generic and the architecture-specific 210 supplement for a single hardware architecture provide a complete interface 211 specification for compiled application programs on systems that share a common 212 hardware architecture. 213 214 The LSB-generic document shall be used in conjunction with an 215 architecture-specific supplement. Whenever a section of the LSB-generic 216 specification shall be supplemented by architecture-specific information, the 217 LSB-generic document includes a reference to the architecture supplement. 218 Architecture supplements may also contain additional information that is not 219 referenced in the LSB-generic document. 220 221 The LSB contains both a set of Application Program Interfaces (APIs) and 222 Application Binary Interfaces (ABIs). APIs may appear in the source code of 223 portable applications, while the compiled binary of that application may use 224 the larger set of ABIs. A conforming implementation shall provide all of the 225 ABIs listed here. The compilation system may replace (e.g. by macro definition) 226 certain APIs with calls to one or more of the underlying binary interfaces, and 227 may insert calls to binary interfaces as needed. 228 229 The LSB is primarily a binary interface definition. Not all of the source level 230 APIs available to applications may be contained in this specification. 231 232 ------------------------------------------------------------------------------- 233 234 Module Specific Scope 235 236 This is the IA32 architecture specific Core module of the Linux Standards Base 237 (LSB). This module supplements the generic LSB Core module with those 238 interfaces that differ between architectures. 239 240 Interfaces described in this module are mandatory except where explicitly 241 listed otherwise. Core interfaces may be supplemented by other modules; all 242 modules are built upon the core. 243 244 ------------------------------------------------------------------------------- 245 246 Chapter 2. Normative References 247 248 The specifications listed below are referenced in whole or in part by the Linux 249 Standard Base. In this specification, where only a particular section of one of 250 these references is identified, then the normative reference is to that section 251 alone, and the rest of the referenced document is informative. 252 253 Table 2-1. Normative References 254 255 +-----------------------------------------------------------------------------+ 256 |System V Application Binary Interface - DRAFT - |http://www.caldera.com/ | 257 |17 December 2003 |developers/gabi/2003-12-17/ | 258 | |contents.html | 259 |------------------------------------------------+----------------------------| 260 |DWARF Debugging Information Format, Revision |http://www.eagercon.com/ | 261 |2.0.0 (July 27, 1993) |dwarf/dwarf-2.0.0.pdf | 262 |------------------------------------------------+----------------------------| 263 |Filesystem Hierarchy Standard (FHS) 2.3 |http://www.pathname.com/fhs/| 264 |------------------------------------------------+----------------------------| 265 |IEEE Standard 754 for Binary Floating-Point |http://www.ieee.org/ | 266 |Arithmetic | | 267 |------------------------------------------------+----------------------------| 268 |System V Application Binary Interface, Edition |http://www.caldera.com/ | 269 |4.1 |developers/devspecs/ | 270 | |gabi41.pdf | 271 |------------------------------------------------+----------------------------| 272 |The IA-32 Intel Architecture Software |http://developer.intel.com/ | 273 |Developer's Manual Volume 1: Basic Architecture |design/pentium4/manuals/ | 274 | |245470.htm | 275 |------------------------------------------------+----------------------------| 276 |The IA-32 Intel Architecture Software |http://developer.intel.com/ | 277 |Developer's Manual Volume 2: Instruction Set |design/pentium4/manuals/ | 278 |Reference |245471.htm | 279 |------------------------------------------------+----------------------------| 280 |The IA-32 Intel Architecture Software |http://developer.intel.com/ | 281 |Developer's Manual Volume 3: System Programming |design/pentium4/manuals/ | 282 |Guide |245472.htm | 283 |------------------------------------------------+----------------------------| 284 |System V Application Binary Interface - |http://www.caldera.com/ | 285 |Intel386? Architecture Processor Supplement, |developers/devspecs/ | 286 |Fourth Edition |abi386-4.pdf | 287 |------------------------------------------------+----------------------------| 288 |ISO/IEC 9899: 1999, Programming Languages --C | | 289 |------------------------------------------------+----------------------------| 290 |Linux Assigned Names And Numbers Authority |http://www.lanana.org/ | 291 |------------------------------------------------+----------------------------| 292 | |http://www.UNIX-systems.org/| 293 |Large File Support |version2/whatsnew/ | 294 | |lfs20mar.html | 295 |------------------------------------------------+----------------------------| 296 |LI18NUX 2000 Globalization Specification, |http://www.li18nux.org/docs/| 297 |Version 1.0 with Amendment 4 |html/LI18NUX-2000-amd4.htm | 298 |------------------------------------------------+----------------------------| 299 |Linux Standard Base |http://www.linuxbase.org/ | 300 | |spec/ | 301 |------------------------------------------------+----------------------------| 302 | |http://www.opengroup.org/ | 303 |OSF-RFC 86.0 |tech/rfc/mirror-rfc/ | 304 | |rfc86.0.txt | 305 |------------------------------------------------+----------------------------| 306 |RFC 1833: Binding Protocols for ONC RPC Version |http://www.ietf.org/rfc/ | 307 |2 |rfc1833.txt | 308 |------------------------------------------------+----------------------------| 309 |RFC 1952: GZIP file format specification version|http://www.ietf.org/rfc/ | 310 |4.3 |rfc1952.txt | 311 |------------------------------------------------+----------------------------| 312 |RFC 2440: OpenPGP Message Format |http://www.ietf.org/rfc/ | 313 | |rfc2440.txt | 314 |------------------------------------------------+----------------------------| 315 |CAE Specification, May 1996, X/Open Curses, |http://www.opengroup.org/ | 316 |Issue 4, Version 2 (ISBN: 1-85912-171-3, C610), |publications/catalog/un.htm | 317 |plus Corrigendum U018 | | 318 |------------------------------------------------+----------------------------| 319 |The Single UNIX Specification(SUS) Version 2, |http://www.opengroup.org/ | 320 |Commands and Utilities (XCU), Issue 5 (ISBN: |publications/catalog/un.htm | 321 |1-85912-191-8, C604) | | 322 |------------------------------------------------+----------------------------| 323 |CAE Specification, January 1997, System |http://www.opengroup.org/ | 324 |Interfaces and Headers (XSH),Issue 5 (ISBN: |publications/catalog/un.htm | 325 |1-85912-181-0, C606) | | 326 |------------------------------------------------+----------------------------| 327 |ISO/IEC 9945:2003 Portable Operating System |http://www.unix.org/version3| 328 |(POSIX)and The Single UNIX Specification(SUS) |/ | 329 |V3 | | 330 |------------------------------------------------+----------------------------| 331 |System V Interface Definition, Issue 3 (ISBN | | 332 |0201566524) | | 333 |------------------------------------------------+----------------------------| 334 |System V Interface Definition,Fourth Edition | | 335 |------------------------------------------------+----------------------------| 336 |zlib 1.2 Manual |http://www.gzip.org/zlib/ | 337 +-----------------------------------------------------------------------------+ 338 ------------------------------------------------------------------------------- 339 340 Chapter 3. Requirements 341 342 Relevant Libraries 343 344 The libraries listed in Table 3-1 shall be available on IA32 Linux Standard 345 Base systems, with the specified runtime names. These names override or 346 supplement the names specified in the generic LSB specification. The specified 347 program interpreter, referred to as proginterp in this table, shall be used to 348 load the shared libraries specified by DT_NEEDED entries at run time. 349 350 Table 3-1. Standard Library Names 351 352 +----------------------------+ 353 | Library | Runtime Name | 354 |----------+-----------------| 355 |libm |libm.so.6 | 356 |----------+-----------------| 357 |libdl |libdl.so.2 | 358 |----------+-----------------| 359 |libcrypt |libcrypt.so.1 | 360 |----------+-----------------| 361 |libz |libz.so.1 | 362 |----------+-----------------| 363 |libncurses|libncurses.so.5 | 364 |----------+-----------------| 365 |libutil |libutil.so.1 | 366 |----------+-----------------| 367 |libc |libc.so.6 | 368 |----------+-----------------| 369 |libpthread|libpthread.so.0 | 370 |----------+-----------------| 371 |proginterp|/lib/ld-lsb.so.2 | 372 |----------+-----------------| 373 |libgcc_s |libgcc_s.so.1 | 374 +----------------------------+ 375 376 These libraries will be in an implementation-defined directory which the 377 dynamic linker shall search by default. 378 379 ------------------------------------------------------------------------------- 380 381 LSB Implementation Conformance 382 383 An implementation shall satisfy the following requirements: 384 385 * The implementation shall implement fully the architecture described in the 386 hardware manual for the target processor architecture. 387 388 * The implementation shall be capable of executing compiled applications 389 having the format and using the system interfaces described in this 390 document. 391 392 * The implementation shall provide libraries containing the interfaces 393 specified by this document, and shall provide a dynamic linking mechanism 394 that allows these interfaces to be attached to applications at runtime. All 395 the interfaces shall behave as specified in this document. 396 397 * The map of virtual memory provided by the implementation shall conform to 398 the requirements of this document. 399 400 * The implementation's low-level behavior with respect to function call 401 linkage, system traps, signals, and other such activities shall conform to 402 the formats described in this document. 403 404 * The implementation shall provide all of the mandatory interfaces in their 405 entirety. 406 407 * The implementation may provide one or more of the optional interfaces. Each 408 optional interface that is provided shall be provided in its entirety. The 409 product documentation shall state which optional interfaces are provided. 410 411 * The implementation shall provide all files and utilities specified as part 412 of this document in the format defined here and in other referenced 413 documents. All commands and utilities shall behave as required by this 414 document. The implementation shall also provide all mandatory components of 415 an application's runtime environment that are included or referenced in 416 this document. 417 418 * The implementation, when provided with standard data formats and values at 419 a named interface, shall provide the behavior defined for those values and 420 data formats at that interface. However, a conforming implementation may 421 consist of components which are separately packaged and/or sold. For 422 example, a vendor of a conforming implementation might sell the hardware, 423 operating system, and windowing system as separately packaged items. 424 425 * The implementation may provide additional interfaces with different names. 426 It may also provide additional behavior corresponding to data values 427 outside the standard ranges, for standard named interfaces. 428 429 430 431 ------------------------------------------------------------------------------- 432 433 LSB Application Conformance 434 435 An application shall satisfy the following requirements: 436 437 438 439 * Its executable files are either shell scripts or object files in the format 440 defined for the Object File Format system interface. 441 442 * Its object files participate in dynamic linking as defined in the Program 443 Loading and Linking System interface. 444 445 * It employs only the instructions, traps, and other low-level facilities 446 defined in the Low-Level System interface as being for use by applications. 447 448 * If it requires any optional interface defined in this document in order to 449 be installed or to execute successfully, the requirement for that optional 450 interface is stated in the application's documentation. 451 452 * It does not use any interface or data format that is not required to be 453 provided by a conforming implementation, unless: 454 455 + If such an interface or data format is supplied by another application 456 through direct invocation of that application during execution, that 457 application is in turn an LSB conforming application. 458 459 + The use of that interface or data format, as well as its source, is 460 identified in the documentation of the application. 461 462 * It shall not use any values for a named interface that are reserved for 463 vendor extensions. 464 465 A strictly conforming application does not require or use any interface, 466 facility, or implementation-defined extension that is not defined in this 467 document in order to be installed or to execute successfully. 468 469 ------------------------------------------------------------------------------- 470 471 Chapter 4. Definitions 472 473 For the purposes of this document, the following definitions, as specified in 474 the ISO/IEC Directives, Part 2, 2001, 4th Edition, apply: 475 476 can 477 478 be able to; there is a possibility of; it is possible to 479 480 cannot 481 482 be unable to; there is no possibilty of; it is not possible to 483 484 may 485 486 is permitted; is allowed; is permissible 487 488 need not 489 490 it is not required that; no...is required 491 492 shall 493 494 is to; is required to; it is required that; has to; only...is permitted; it 495 is necessary 496 497 shall not 498 499 is not allowed [permitted] [acceptable] [permissible]; is required to be 500 not; is required that...be not; is not to be 501 502 should 503 504 it is recommended that; ought to 505 506 should not 507 508 it is not recommended that; ought not to 509 510 ------------------------------------------------------------------------------- 511 512 Chapter 5. Terminology 513 514 For the purposes of this document, the following terms apply: 515 516 archLSB 517 518 The architectural part of the LSB Specification which describes the 519 specific parts of the interface that are platform specific. The archLSB is 520 complementary to the gLSB. 521 522 Binary Standard 523 524 The total set of interfaces that are available to be used in the compiled 525 binary code of a conforming application. 526 527 gLSB 528 529 The common part of the LSB Specification that describes those parts of the 530 interface that remain constant across all hardware implementations of the 531 LSB. 532 533 implementation-defined 534 535 Describes a value or behavior that is not defined by this document but is 536 selected by an implementor. The value or behavior may vary among 537 implementations that conform to this document. An application should not 538 rely on the existence of the value or behavior. An application that relies 539 on such a value or behavior cannot be assured to be portable across 540 conforming implementations. The implementor shall document such a value or 541 behavior so that it can be used correctly by an application. 542 543 Shell Script 544 545 A file that is read by an interpreter (e.g., awk). The first line of the 546 shell script includes a reference to its interpreter binary. 547 548 Source Standard 549 550 The set of interfaces that are available to be used in the source code of a 551 conforming application. 552 553 undefined 554 555 Describes the nature of a value or behavior not defined by this document 556 which results from use of an invalid program construct or invalid data 557 input. The value or behavior may vary among implementations that conform to 558 this document. An application should not rely on the existence or validity 559 of the value or behavior. An application that relies on any particular 560 value or behavior cannot be assured to be portable across conforming 561 implementations. 562 563 unspecified 564 565 Describes the nature of a value or behavior not specified by this document 566 which results from use of a valid program construct or valid data input. 567 The value or behavior may vary among implementations that conform to this 568 document. An application should not rely on the existence or validity of 569 the value or behavior. An application that relies on any particular value 570 or behavior cannot be assured to be portable across conforming 571 implementations. 572 573 II. Base Libraries 574 575 Table of Contents 576 6. Libraries 577 578 ------------------------------------------------------------------------------- 579 580 Chapter 6. Libraries 581 582 An LSB-conforming implementation shall support some base libraries which 583 provide interfaces for accessing the operating system, processor and other 584 hardware in the system. 585 586 Interfaces that are unique to the IA32 platform are defined here. This section 587 should be used in conjunction with the corresponding section in the Linux 588 Standard Base Specification. 589 590 ------------------------------------------------------------------------------- 591 592 Program Interpreter/Dynamic Linker 593 594 The LSB specifies the Program Interpreter to be /lib/ld-lsb.so.2. 595 596 ------------------------------------------------------------------------------- 597 598 Interfaces for libc 599 600 Table 6-1 defines the library name and shared object name for the libc library 601 602 Table 6-1. libc Definition 603 604 +-------------------+ 605 |Library:|libc | 606 |--------+----------| 607 |SONAME: |libc.so.6 | 608 +-------------------+ 609 610 The behavior of the interfaces in this library is specified by the following 611 specifications: 612 613 Large File Support 614 Linux Standard Base 615 CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 5 616 (ISBN: 1-85912-181-0, C606) 617 ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 618 Specification(SUS) V3 619 System V Interface Definition, Issue 3 (ISBN 0201566524) 620 System V Interface Definition,Fourth Edition 621 622 ------------------------------------------------------------------------------- 623 624 RPC 625 626 ------------------------------------------------------------------------------- 627 628 Interfaces for RPC 629 630 An LSB conforming implementation shall provide the architecture specific 631 functions for RPC specified in Table 6-2, with the full functionality as 632 described in the referenced underlying specification. 633 634 Table 6-2. libc - RPC Function Interfaces 635 636 +----------------------------------------------------------------------------------------+ 637 |authnone_create |pmap_unset |svcerr_weakauth |xdr_float |xdr_u_char | 638 |(GLIBC_2.0) [1] |(GLIBC_2.0) [2] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 639 | | | | |[3] | 640 |------------------+----------------+------------------+------------------+--------------| 641 |clnt_create |setdomainname |svctcp_create |xdr_free |xdr_u_int | 642 |(GLIBC_2.0) [1] |(GLIBC_2.0) [2] |(GLIBC_2.0) [2] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 643 | | | | |[2] | 644 |------------------+----------------+------------------+------------------+--------------| 645 |clnt_pcreateerror |svc_getreqset |svcudp_create |xdr_int(GLIBC_2.0)|xdr_u_long | 646 |(GLIBC_2.0) [1] |(GLIBC_2.0) [3] |(GLIBC_2.0) [2] |[3] |(GLIBC_2.0) | 647 | | | | |[3] | 648 |------------------+----------------+------------------+------------------+--------------| 649 |clnt_perrno |svc_register |xdr_accepted_reply|xdr_long |xdr_u_short | 650 |(GLIBC_2.0) [1] |(GLIBC_2.0) [2] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 651 | | | | |[3] | 652 |------------------+----------------+------------------+------------------+--------------| 653 |clnt_perror |svc_run |xdr_array |xdr_opaque |xdr_union | 654 |(GLIBC_2.0) [1] |(GLIBC_2.0) [2] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 655 | | | | |[3] | 656 |------------------+----------------+------------------+------------------+--------------| 657 |clnt_spcreateerror|svc_sendreply |xdr_bool |xdr_opaque_auth |xdr_vector | 658 |(GLIBC_2.0) [1] |(GLIBC_2.0) [2] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 659 | | | | |[3] | 660 |------------------+----------------+------------------+------------------+--------------| 661 |clnt_sperrno |svcerr_auth |xdr_bytes |xdr_pointer |xdr_void | 662 |(GLIBC_2.0) [1] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 663 | | | | |[3] | 664 |------------------+----------------+------------------+------------------+--------------| 665 |clnt_sperror |svcerr_decode |xdr_callhdr |xdr_reference |xdr_wrapstring| 666 |(GLIBC_2.0) [1] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 667 | | | | |[3] | 668 |------------------+----------------+------------------+------------------+--------------| 669 |getdomainname |svcerr_noproc |xdr_callmsg |xdr_rejected_reply|xdrmem_create | 670 |(GLIBC_2.0) [2] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 671 | | | | |[3] | 672 |------------------+----------------+------------------+------------------+--------------| 673 |key_decryptsession|svcerr_noprog |xdr_char |xdr_replymsg |xdrrec_create | 674 |(GLIBC_2.1) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 675 | | | | |[3] | 676 |------------------+----------------+------------------+------------------+--------------| 677 |pmap_getport |svcerr_progvers |xdr_double |xdr_short |xdrrec_eof | 678 |(GLIBC_2.0) [2] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) | 679 | | | | |[3] | 680 |------------------+----------------+------------------+------------------+--------------| 681 |pmap_set |svcerr_systemerr|xdr_enum |xdr_string | | 682 |(GLIBC_2.0) [2] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] |(GLIBC_2.0) [3] | | 683 +----------------------------------------------------------------------------------------+ 684 685 Referenced Specification(s) 686 687 [1]. System V Interface Definition,Fourth Edition 688 689 [2]. Linux Standard Base 690 691 [3]. System V Interface Definition, Issue 3 (ISBN 0201566524) 692 693 ------------------------------------------------------------------------------- 694 695 System Calls 696 697 ------------------------------------------------------------------------------- 698 699 Interfaces for System Calls 700 701 An LSB conforming implementation shall provide the architecture specific 702 functions for System Calls specified in Table 6-3, with the full functionality 703 as described in the referenced underlying specification. 704 705 Table 6-3. libc - System Calls Function Interfaces 706 707 +-----------------------------------------------------------------------------+ 708 |__fxstat |fchmod |getwd | |setrlimit | 709 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |read(GLIBC_2.0) [2] |(GLIBC_2.2) | 710 |[1] |[2] |[2] | |[2] | 711 |------------+-------------+-------------+----------------------+-------------| 712 |__getpgid |fchown |initgroups | |setrlimit64 | 713 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |readdir(GLIBC_2.0) [2]|(GLIBC_2.1) | 714 |[1] |[2] |[1] | |[3] | 715 |------------+-------------+-------------+----------------------+-------------| 716 |__lxstat |fcntl |ioctl |readdir_r(GLIBC_2.0) |setsid | 717 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) | 718 |[1] |[1] |[1] | |[2] | 719 |------------+-------------+-------------+----------------------+-------------| 720 |__xmknod |fdatasync |kill |readlink(GLIBC_2.0) |setuid | 721 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) | 722 |[1] |[2] |[1] | |[2] | 723 |------------+-------------+-------------+----------------------+-------------| 724 |__xstat |flock |killpg | |sleep | 725 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |readv(GLIBC_2.0) [2] |(GLIBC_2.0) | 726 |[1] |[1] |[2] | |[2] | 727 |------------+-------------+-------------+----------------------+-------------| 728 |access |fork |lchown | |statvfs | 729 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |rename(GLIBC_2.0) [2] |(GLIBC_2.1) | 730 |[2] |[2] |[2] | |[2] | 731 |------------+-------------+-------------+----------------------+-------------| 732 |acct |fstatvfs |link | |stime | 733 |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) |rmdir(GLIBC_2.0) [2] |(GLIBC_2.0) | 734 |[1] |[2] |[2] | |[1] | 735 |------------+-------------+-------------+----------------------+-------------| 736 |alarm |fsync |lockf | |symlink | 737 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |sbrk(GLIBC_2.0) [4] |(GLIBC_2.0) | 738 |[2] |[2] |[2] | |[2] | 739 |------------+-------------+-------------+----------------------+-------------| 740 |brk |ftime |lseek |sched_get_priority_max|sync | 741 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) [2] |(GLIBC_2.0) | 742 |[4] |[2] |[2] | |[2] | 743 |------------+-------------+-------------+----------------------+-------------| 744 |chdir |ftruncate |mkdir |sched_get_priority_min|sysconf | 745 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) [2] |(GLIBC_2.0) | 746 |[2] |[2] |[2] | |[2] | 747 |------------+-------------+-------------+----------------------+-------------| 748 |chmod |getcontext |mkfifo |sched_getparam |time | 749 |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.0) [2] |(GLIBC_2.0) | 750 |[2] |[2] |[2] | |[2] | 751 |------------+-------------+-------------+----------------------+-------------| 752 |chown |getegid |mlock |sched_getscheduler |times | 753 |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) [2] |(GLIBC_2.0) | 754 |[2] |[2] |[2] | |[2] | 755 |------------+-------------+-------------+----------------------+-------------| 756 |chroot |geteuid |mlockall |sched_rr_get_interval |truncate | 757 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) [2] |(GLIBC_2.0) | 758 |[4] |[2] |[2] | |[2] | 759 |------------+-------------+-------------+----------------------+-------------| 760 |clock |getgid |mmap |sched_setparam |ulimit | 761 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) [2] |(GLIBC_2.0) | 762 |[2] |[2] |[2] | |[2] | 763 |------------+-------------+-------------+----------------------+-------------| 764 |close |getgroups |mprotect |sched_setscheduler |umask | 765 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) [2] |(GLIBC_2.0) | 766 |[2] |[2] |[2] | |[2] | 767 |------------+-------------+-------------+----------------------+-------------| 768 |closedir |getitimer |msync |sched_yield(GLIBC_2.0)|uname | 769 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) | 770 |[2] |[2] |[2] | |[2] | 771 |------------+-------------+-------------+----------------------+-------------| 772 |creat |getloadavg |munlock | |unlink | 773 |(GLIBC_2.0) |(GLIBC_2.2) |(GLIBC_2.0) |select(GLIBC_2.0) [2] |(GLIBC_2.0) | 774 |[1] |[1] |[2] | |[1] | 775 |------------+-------------+-------------+----------------------+-------------| 776 |dup |getpagesize |munlockall |setcontext(GLIBC_2.0) |utime | 777 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) | 778 |[2] |[4] |[2] | |[2] | 779 |------------+-------------+-------------+----------------------+-------------| 780 |dup2 |getpgid |munmap | |utimes | 781 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |setegid(GLIBC_2.0) [2]|(GLIBC_2.0) | 782 |[2] |[2] |[2] | |[2] | 783 |------------+-------------+-------------+----------------------+-------------| 784 |execl |getpgrp |nanosleep | |vfork | 785 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |seteuid(GLIBC_2.0) [2]|(GLIBC_2.0) | 786 |[2] |[2] |[2] | |[2] | 787 |------------+-------------+-------------+----------------------+-------------| 788 |execle |getpid |nice | |wait | 789 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |setgid(GLIBC_2.0) [2] |(GLIBC_2.0) | 790 |[2] |[2] |[2] | |[2] | 791 |------------+-------------+-------------+----------------------+-------------| 792 |execlp |getppid |open |setitimer(GLIBC_2.0) |wait3 | 793 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) | 794 |[2] |[2] |[1] | |[1] | 795 |------------+-------------+-------------+----------------------+-------------| 796 |execv |getpriority |opendir | |wait4 | 797 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |setpgid(GLIBC_2.0) [2]|(GLIBC_2.0) | 798 |[2] |[2] |[2] | |[1] | 799 |------------+-------------+-------------+----------------------+-------------| 800 |execve |getrlimit |pathconf | |waitpid | 801 |(GLIBC_2.0) |(GLIBC_2.2) |(GLIBC_2.0) |setpgrp(GLIBC_2.0) [2]|(GLIBC_2.0) | 802 |[2] |[2] |[2] | |[1] | 803 |------------+-------------+-------------+----------------------+-------------| 804 |execvp |getrusage |pause |setpriority(GLIBC_2.0)|write | 805 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) | 806 |[2] |[2] |[2] | |[2] | 807 |------------+-------------+-------------+----------------------+-------------| 808 |exit |getsid |pipe |setregid(GLIBC_2.0) |writev | 809 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) | 810 |[2] |[2] |[2] | |[2] | 811 |------------+-------------+-------------+----------------------+-------------| 812 |fchdir |getuid |poll |setreuid(GLIBC_2.0) | | 813 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |[2] | | 814 |[2] |[2] |[2] | | | 815 +-----------------------------------------------------------------------------+ 816 817 Referenced Specification(s) 818 819 [1]. Linux Standard Base 820 821 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 822 Specification(SUS) V3 823 824 [3]. Large File Support 825 826 [4]. CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 827 5 (ISBN: 1-85912-181-0, C606) 828 829 ------------------------------------------------------------------------------- 830 831 Standard I/O 832 833 ------------------------------------------------------------------------------- 834 835 Interfaces for Standard I/O 836 837 An LSB conforming implementation shall provide the architecture specific 838 functions for Standard I/O specified in Table 6-4, with the full functionality 839 as described in the referenced underlying specification. 840 841 Table 6-4. libc - Standard I/O Function Interfaces 842 843 +-----------------------------------------------------------------------------+ 844 |_IO_feof |fgetpos |fsetpos |putchar |sscanf | 845 |(GLIBC_2.0) [1]|(GLIBC_2.2) [2]|(GLIBC_2.2) [2] |(GLIBC_2.0) [2] |(GLIBC_2.0)| 846 | | | | |[2] | 847 |---------------+---------------+----------------+----------------+-----------| 848 |_IO_getc |fgets |ftell(GLIBC_2.0)|putchar_unlocked|telldir | 849 |(GLIBC_2.0) [1]|(GLIBC_2.0) [2]|[2] |(GLIBC_2.0) [2] |(GLIBC_2.0)| 850 | | | | |[2] | 851 |---------------+---------------+----------------+----------------+-----------| 852 |_IO_putc |fgetwc_unlocked|ftello |puts(GLIBC_2.0) |tempnam | 853 |(GLIBC_2.0) [1]|(GLIBC_2.2) [1]|(GLIBC_2.1) [2] |[2] |(GLIBC_2.0)| 854 | | | | |[2] | 855 |---------------+---------------+----------------+----------------+-----------| 856 |_IO_puts |fileno |fwrite |putw(GLIBC_2.0) |ungetc | 857 |(GLIBC_2.0) [1]|(GLIBC_2.0) [2]|(GLIBC_2.0) [2] |[3] |(GLIBC_2.0)| 858 | | | | |[2] | 859 |---------------+---------------+----------------+----------------+-----------| 860 |asprintf |flockfile |getc(GLIBC_2.0) |remove |vasprintf | 861 |(GLIBC_2.0) [1]|(GLIBC_2.0) [2]|[2] |(GLIBC_2.0) [2] |(GLIBC_2.0)| 862 | | | | |[1] | 863 |---------------+---------------+----------------+----------------+-----------| 864 |clearerr |fopen |getc_unlocked |rewind |vdprintf | 865 |(GLIBC_2.0) [2]|(GLIBC_2.1) [1]|(GLIBC_2.0) [2] |(GLIBC_2.0) [2] |(GLIBC_2.0)| 866 | | | | |[1] | 867 |---------------+---------------+----------------+----------------+-----------| 868 |ctermid |fprintf |getchar |rewinddir |vfprintf | 869 |(GLIBC_2.0) [2]|(GLIBC_2.0) [2]|(GLIBC_2.0) [2] |(GLIBC_2.0) [2] |(GLIBC_2.0)| 870 | | | | |[2] | 871 |---------------+---------------+----------------+----------------+-----------| 872 |fclose |fputc |getchar_unlocked|scanf(GLIBC_2.0)|vprintf | 873 |(GLIBC_2.1) [2]|(GLIBC_2.0) [2]|(GLIBC_2.0) [2] |[2] |(GLIBC_2.0)| 874 | | | | |[2] | 875 |---------------+---------------+----------------+----------------+-----------| 876 |fdopen |fputs |getw(GLIBC_2.0) |seekdir |vsnprintf | 877 |(GLIBC_2.1) [2]|(GLIBC_2.0) [2]|[3] |(GLIBC_2.0) [2] |(GLIBC_2.0)| 878 | | | | |[2] | 879 |---------------+---------------+----------------+----------------+-----------| 880 |feof(GLIBC_2.0)|fread |pclose |setbuf |vsprintf | 881 |[2] |(GLIBC_2.0) [2]|(GLIBC_2.1) [2] |(GLIBC_2.0) [2] |(GLIBC_2.0)| 882 | | | | |[2] | 883 |---------------+---------------+----------------+----------------+-----------| 884 |ferror |freopen |popen(GLIBC_2.1)|setbuffer | | 885 |(GLIBC_2.0) [2]|(GLIBC_2.0) [1]|[2] |(GLIBC_2.0) [1] | | 886 |---------------+---------------+----------------+----------------+-----------| 887 |fflush |fscanf |printf |setvbuf | | 888 |(GLIBC_2.0) [2]|(GLIBC_2.0) [2]|(GLIBC_2.0) [2] |(GLIBC_2.0) [2] | | 889 |---------------+---------------+----------------+----------------+-----------| 890 |fflush_unlocked|fseek |putc(GLIBC_2.0) |snprintf | | 891 |(GLIBC_2.0) [1]|(GLIBC_2.0) [2]|[2] |(GLIBC_2.0) [2] | | 892 |---------------+---------------+----------------+----------------+-----------| 893 |fgetc |fseeko |putc_unlocked |sprintf | | 894 |(GLIBC_2.0) [2]|(GLIBC_2.1) [2]|(GLIBC_2.0) [2] |(GLIBC_2.0) [2] | | 895 +-----------------------------------------------------------------------------+ 896 897 Referenced Specification(s) 898 899 [1]. Linux Standard Base 900 901 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 902 Specification(SUS) V3 903 904 [3]. CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 905 5 (ISBN: 1-85912-181-0, C606) 906 907 An LSB conforming implementation shall provide the architecture specific data 908 interfaces for Standard I/O specified in Table 6-5, with the full functionality 909 as described in the referenced underlying specification. 910 911 Table 6-5. libc - Standard I/O Data Interfaces 912 913 +--------------------------------------------------------------------+ 914 |stderr(GLIBC_2.0) [1]|stdin(GLIBC_2.0) [1]|stdout(GLIBC_2.0) [1]| | | 915 +--------------------------------------------------------------------+ 916 917 Referenced Specification(s) 918 919 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 920 Specification(SUS) V3 921 922 ------------------------------------------------------------------------------- 923 924 Signal Handling 925 926 ------------------------------------------------------------------------------- 927 928 Interfaces for Signal Handling 929 930 An LSB conforming implementation shall provide the architecture specific 931 functions for Signal Handling specified in Table 6-6, with the full 932 functionality as described in the referenced underlying specification. 933 934 Table 6-6. libc - Signal Handling Function Interfaces 935 936 +-----------------------------------------------------------------------------+ 937 |__libc_current_sigrtmax|sigaddset |sighold |sigpause |sigsuspend | 938 |(GLIBC_2.1) [1] |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.0) | 939 | |[2] |[2] |[2] |[2] | 940 |-----------------------+------------+-------------+------------+-------------| 941 |__libc_current_sigrtmin|sigaltstack |sigignore |sigpending |sigtimedwait | 942 |(GLIBC_2.1) [1] |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.1) | 943 | |[2] |[2] |[2] |[2] | 944 |-----------------------+------------+-------------+------------+-------------| 945 |__sigsetjmp(GLIBC_2.0) |sigandset |siginterrupt |sigprocmask |sigwait | 946 |[1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 947 | |[1] |[2] |[2] |[2] | 948 |-----------------------+------------+-------------+------------+-------------| 949 |__sysv_signal |sigblock |sigisemptyset|sigqueue |sigwaitinfo | 950 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.1) | 951 | |[1] |[1] |[2] |[2] | 952 |-----------------------+------------+-------------+------------+-------------| 953 |bsd_signal(GLIBC_2.0) |sigdelset |sigismember |sigrelse | | 954 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.1) | | 955 | |[2] |[2] |[2] | | 956 |-----------------------+------------+-------------+------------+-------------| 957 | |sigemptyset |siglongjmp |sigreturn | | 958 |psignal(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 959 | |[2] |[2] |[1] | | 960 |-----------------------+------------+-------------+------------+-------------| 961 | |sigfillset |signal |sigset | | 962 |raise(GLIBC_2.0) [2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.1) | | 963 | |[2] |[2] |[2] | | 964 |-----------------------+------------+-------------+------------+-------------| 965 |sigaction(GLIBC_2.0) |siggetmask |sigorset |sigstack | | 966 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 967 | |[1] |[1] |[3] | | 968 +-----------------------------------------------------------------------------+ 969 970 Referenced Specification(s) 971 972 [1]. Linux Standard Base 973 974 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 975 Specification(SUS) V3 976 977 [3]. CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 978 5 (ISBN: 1-85912-181-0, C606) 979 980 An LSB conforming implementation shall provide the architecture specific data 981 interfaces for Signal Handling specified in Table 6-7, with the full 982 functionality as described in the referenced underlying specification. 983 984 Table 6-7. libc - Signal Handling Data Interfaces 985 986 +-------------------------------------+ 987 |_sys_siglist(GLIBC_2.3.3) [1]| | | | | 988 +-------------------------------------+ 989 990 Referenced Specification(s) 991 992 [1]. Linux Standard Base 993 994 ------------------------------------------------------------------------------- 995 996 Localization Functions 997 998 ------------------------------------------------------------------------------- 999 1000 Interfaces for Localization Functions 1001 1002 An LSB conforming implementation shall provide the architecture specific 1003 functions for Localization Functions specified in Table 6-8, with the full 1004 functionality as described in the referenced underlying specification. 1005 1006 Table 6-8. libc - Localization Functions Function Interfaces 1007 1008 +-----------------------------------------------------------------------------+ 1009 |bind_textdomain_codeset|catopen |dngettext |iconv_open |setlocale | 1010 |(GLIBC_2.2) [1] |(GLIBC_2.0) |(GLIBC_2.2) |(GLIBC_2.1) |(GLIBC_2.0) | 1011 | |[2] |[1] |[2] |[2] | 1012 |-----------------------+------------+-------------+-------------+------------| 1013 |bindtextdomain |dcgettext |gettext |localeconv |textdomain | 1014 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.2) |(GLIBC_2.0) | 1015 | |[1] |[1] |[2] |[1] | 1016 |-----------------------+------------+-------------+-------------+------------| 1017 | |dcngettext |iconv |ngettext | | 1018 |catclose(GLIBC_2.0) [2]|(GLIBC_2.2) |(GLIBC_2.1) |(GLIBC_2.2) | | 1019 | |[1] |[2] |[1] | | 1020 |-----------------------+------------+-------------+-------------+------------| 1021 | |dgettext |iconv_close |nl_langinfo | | 1022 |catgets(GLIBC_2.0) [2] |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) | | 1023 | |[1] |[2] |[2] | | 1024 +-----------------------------------------------------------------------------+ 1025 1026 Referenced Specification(s) 1027 1028 [1]. Linux Standard Base 1029 1030 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1031 Specification(SUS) V3 1032 1033 An LSB conforming implementation shall provide the architecture specific data 1034 interfaces for Localization Functions specified in Table 6-9, with the full 1035 functionality as described in the referenced underlying specification. 1036 1037 Table 6-9. libc - Localization Functions Data Interfaces 1038 1039 +---------------------------------------+ 1040 |_nl_msg_cat_cntr(GLIBC_2.0) [1]| | | | | 1041 +---------------------------------------+ 1042 1043 Referenced Specification(s) 1044 1045 [1]. Linux Standard Base 1046 1047 ------------------------------------------------------------------------------- 1048 1049 Socket Interface 1050 1051 ------------------------------------------------------------------------------- 1052 1053 Interfaces for Socket Interface 1054 1055 An LSB conforming implementation shall provide the architecture specific 1056 functions for Socket Interface specified in Table 6-10, with the full 1057 functionality as described in the referenced underlying specification. 1058 1059 Table 6-10. libc - Socket Interface Function Interfaces 1060 1061 +-----------------------------------------------------------------------------+ 1062 |__h_errno_location|gethostid |listen |sendmsg |socketpair | 1063 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1064 | |[2] |[2] |[2] |[2] | 1065 |------------------+--------------+-------------+--------------+--------------| 1066 |accept(GLIBC_2.0) |gethostname |recv |sendto | | 1067 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1068 | |[2] |[2] |[2] | | 1069 |------------------+--------------+-------------+--------------+--------------| 1070 |bind(GLIBC_2.0) |getpeername |recvfrom |setsockopt | | 1071 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1072 | |[2] |[2] |[1] | | 1073 |------------------+--------------+-------------+--------------+--------------| 1074 |bindresvport |getsockname |recvmsg |shutdown | | 1075 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1076 | |[2] |[2] |[2] | | 1077 |------------------+--------------+-------------+--------------+--------------| 1078 |connect(GLIBC_2.0)|getsockopt |send |socket | | 1079 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1080 | |[2] |[2] |[2] | | 1081 +-----------------------------------------------------------------------------+ 1082 1083 Referenced Specification(s) 1084 1085 [1]. Linux Standard Base 1086 1087 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1088 Specification(SUS) V3 1089 1090 An LSB conforming implementation shall provide the architecture specific 1091 deprecated functions for Socket Interface specified in Table 6-11, with the 1092 full functionality as described in the referenced underlying specification. 1093 1094 Note: These interfaces are deprecated, and applications should avoid using 1095 them. These interfaces may be withdrawn in future releases of this 1096 specification. 1097 1098 Table 6-11. libc - Socket Interface Deprecated Function Interfaces 1099 1100 +----------------------------------------+ 1101 |gethostbyname_r(GLIBC_2.1.2) [1]| | | | | 1102 +----------------------------------------+ 1103 1104 Referenced Specification(s) 1105 1106 [1]. Linux Standard Base 1107 1108 ------------------------------------------------------------------------------- 1109 1110 Wide Characters 1111 1112 ------------------------------------------------------------------------------- 1113 1114 Interfaces for Wide Characters 1115 1116 An LSB conforming implementation shall provide the architecture specific 1117 functions for Wide Characters specified in Table 6-12, with the full 1118 functionality as described in the referenced underlying specification. 1119 1120 Table 6-12. libc - Wide Characters Function Interfaces 1121 1122 +-----------------------------------------------------------------------------+ 1123 |__wcstod_internal |mbsinit |vwscanf |wcsnlen |wcstoumax | 1124 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.2) |(GLIBC_2.1) |(GLIBC_2.1) | 1125 | |[2] |[2] |[1] |[2] | 1126 |------------------+--------------+--------------+--------------+-------------| 1127 |__wcstof_internal |mbsnrtowcs |wcpcpy |wcsnrtombs |wcstouq | 1128 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1129 | |[1] |[1] |[1] |[1] | 1130 |------------------+--------------+--------------+--------------+-------------| 1131 |__wcstol_internal |mbsrtowcs |wcpncpy |wcspbrk |wcswcs | 1132 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.1) | 1133 | |[2] |[1] |[2] |[2] | 1134 |------------------+--------------+--------------+--------------+-------------| 1135 |__wcstold_internal|mbstowcs |wcrtomb |wcsrchr |wcswidth | 1136 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1137 | |[2] |[2] |[2] |[2] | 1138 |------------------+--------------+--------------+--------------+-------------| 1139 |__wcstoul_internal|mbtowc |wcscasecmp |wcsrtombs |wcsxfrm | 1140 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.0) | 1141 | |[2] |[1] |[2] |[2] | 1142 |------------------+--------------+--------------+--------------+-------------| 1143 |btowc(GLIBC_2.0) |putwc |wcscat |wcsspn |wctob | 1144 |[2] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1145 | |[2] |[2] |[2] |[2] | 1146 |------------------+--------------+--------------+--------------+-------------| 1147 |fgetwc(GLIBC_2.2) |putwchar |wcschr |wcsstr |wctomb | 1148 |[2] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1149 | |[2] |[2] |[2] |[2] | 1150 |------------------+--------------+--------------+--------------+-------------| 1151 |fgetws(GLIBC_2.2) |swprintf |wcscmp |wcstod |wctrans | 1152 |[2] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1153 | |[2] |[2] |[2] |[2] | 1154 |------------------+--------------+--------------+--------------+-------------| 1155 |fputwc(GLIBC_2.2) |swscanf |wcscoll |wcstof |wctype | 1156 |[2] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1157 | |[2] |[2] |[2] |[2] | 1158 |------------------+--------------+--------------+--------------+-------------| 1159 |fputws(GLIBC_2.2) |towctrans |wcscpy |wcstoimax |wcwidth | 1160 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) | 1161 | |[2] |[2] |[2] |[2] | 1162 |------------------+--------------+--------------+--------------+-------------| 1163 |fwide(GLIBC_2.2) |towlower |wcscspn |wcstok |wmemchr | 1164 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1165 | |[2] |[2] |[2] |[2] | 1166 |------------------+--------------+--------------+--------------+-------------| 1167 |fwprintf |towupper |wcsdup |wcstol |wmemcmp | 1168 |(GLIBC_2.2) [2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1169 | |[2] |[1] |[2] |[2] | 1170 |------------------+--------------+--------------+--------------+-------------| 1171 |fwscanf(GLIBC_2.2)|ungetwc |wcsftime |wcstold |wmemcpy | 1172 |[2] |(GLIBC_2.2) |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.0) | 1173 | |[2] |[2] |[2] |[2] | 1174 |------------------+--------------+--------------+--------------+-------------| 1175 |getwc(GLIBC_2.2) |vfwprintf |wcslen |wcstoll |wmemmove | 1176 |[2] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) | 1177 | |[2] |[2] |[2] |[2] | 1178 |------------------+--------------+--------------+--------------+-------------| 1179 |getwchar |vfwscanf |wcsncasecmp |wcstombs |wmemset | 1180 |(GLIBC_2.2) [2] |(GLIBC_2.2) |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.0) | 1181 | |[2] |[1] |[2] |[2] | 1182 |------------------+--------------+--------------+--------------+-------------| 1183 |mblen(GLIBC_2.0) |vswprintf |wcsncat |wcstoq |wprintf | 1184 |[2] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.2) | 1185 | |[2] |[2] |[1] |[2] | 1186 |------------------+--------------+--------------+--------------+-------------| 1187 |mbrlen(GLIBC_2.0) |vswscanf |wcsncmp |wcstoul |wscanf | 1188 |[2] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.2) | 1189 | |[2] |[2] |[2] |[2] | 1190 |------------------+--------------+--------------+--------------+-------------| 1191 |mbrtowc(GLIBC_2.0)|vwprintf |wcsncpy |wcstoull | | 1192 |[2] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.1) | | 1193 | |[2] |[2] |[2] | | 1194 +-----------------------------------------------------------------------------+ 1195 1196 Referenced Specification(s) 1197 1198 [1]. Linux Standard Base 1199 1200 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1201 Specification(SUS) V3 1202 1203 ------------------------------------------------------------------------------- 1204 1205 String Functions 1206 1207 ------------------------------------------------------------------------------- 1208 1209 Interfaces for String Functions 1210 1211 An LSB conforming implementation shall provide the architecture specific 1212 functions for String Functions specified in Table 6-13, with the full 1213 functionality as described in the referenced underlying specification. 1214 1215 Table 6-13. libc - String Functions Function Interfaces 1216 1217 +----------------------------------------------------------------------------+ 1218 |__mempcpy |bzero |strcasestr |strncasecmp |strtoimax | 1219 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.1) | 1220 | |[2] |[1] |[2] |[2] | 1221 |-------------------+-------------+-------------+--------------+-------------| 1222 |__rawmemchr |ffs |strcat |strncat |strtok | 1223 |(GLIBC_2.1) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1224 | |[2] |[2] |[2] |[2] | 1225 |-------------------+-------------+-------------+--------------+-------------| 1226 |__stpcpy(GLIBC_2.0)|index |strchr |strncmp |strtok_r | 1227 |[1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1228 | |[2] |[2] |[2] |[1] | 1229 |-------------------+-------------+-------------+--------------+-------------| 1230 |__strdup(GLIBC_2.0)|memccpy |strcmp |strncpy |strtold | 1231 |[1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1232 | |[2] |[2] |[2] |[2] | 1233 |-------------------+-------------+-------------+--------------+-------------| 1234 |__strtod_internal |memchr |strcoll |strndup |strtoll | 1235 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1236 | |[2] |[2] |[1] |[2] | 1237 |-------------------+-------------+-------------+--------------+-------------| 1238 |__strtof_internal |memcmp |strcpy |strnlen |strtoq | 1239 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1240 | |[2] |[2] |[1] |[1] | 1241 |-------------------+-------------+-------------+--------------+-------------| 1242 |__strtok_r |memcpy |strcspn |strpbrk |strtoull | 1243 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1244 | |[2] |[2] |[2] |[2] | 1245 |-------------------+-------------+-------------+--------------+-------------| 1246 |__strtol_internal |memmove |strdup |strptime |strtoumax | 1247 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.1) | 1248 | |[2] |[2] |[1] |[2] | 1249 |-------------------+-------------+-------------+--------------+-------------| 1250 |__strtold_internal |memrchr |strerror |strrchr |strtouq | 1251 |(GLIBC_2.0) [1] |(GLIBC_2.2) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1252 | |[1] |[2] |[2] |[1] | 1253 |-------------------+-------------+-------------+--------------+-------------| 1254 |__strtoll_internal |memset |strerror_r |strsep |strverscmp | 1255 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.1) | 1256 | |[2] |[1] |[1] |[1] | 1257 |-------------------+-------------+-------------+--------------+-------------| 1258 |__strtoul_internal |rindex |strfmon |strsignal |strxfrm | 1259 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1260 | |[2] |[2] |[1] |[2] | 1261 |-------------------+-------------+-------------+--------------+-------------| 1262 |__strtoull_internal|stpcpy |strfry |strspn |swab | 1263 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1264 | |[1] |[1] |[2] |[2] | 1265 |-------------------+-------------+-------------+--------------+-------------| 1266 | |stpncpy |strftime |strstr | | 1267 |bcmp(GLIBC_2.0) [2]|(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1268 | |[1] |[2] |[2] | | 1269 |-------------------+-------------+-------------+--------------+-------------| 1270 |bcopy(GLIBC_2.0) |strcasecmp |strlen |strtof | | 1271 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1272 | |[2] |[2] |[2] | | 1273 +----------------------------------------------------------------------------+ 1274 1275 Referenced Specification(s) 1276 1277 [1]. Linux Standard Base 1278 1279 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1280 Specification(SUS) V3 1281 1282 ------------------------------------------------------------------------------- 1283 1284 IPC Functions 1285 1286 ------------------------------------------------------------------------------- 1287 1288 Interfaces for IPC Functions 1289 1290 An LSB conforming implementation shall provide the architecture specific 1291 functions for IPC Functions specified in Table 6-14, with the full 1292 functionality as described in the referenced underlying specification. 1293 1294 Table 6-14. libc - IPC Functions Function Interfaces 1295 1296 +-----------------------------------------------------------------------------+ 1297 |ftok(GLIBC_2.0) |msgrcv(GLIBC_2.0) |semget(GLIBC_2.0) |shmctl(GLIBC_2.2) | | 1298 |[1] |[1] |[1] |[1] | | 1299 |------------------+------------------+------------------+------------------+-| 1300 |msgctl(GLIBC_2.2) |msgsnd(GLIBC_2.0) |semop(GLIBC_2.0) |shmdt(GLIBC_2.0) | | 1301 |[1] |[1] |[1] |[1] | | 1302 |------------------+------------------+------------------+------------------+-| 1303 |msgget(GLIBC_2.0) |semctl(GLIBC_2.2) |shmat(GLIBC_2.0) |shmget(GLIBC_2.0) | | 1304 |[1] |[1] |[1] |[1] | | 1305 +-----------------------------------------------------------------------------+ 1306 1307 Referenced Specification(s) 1308 1309 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1310 Specification(SUS) V3 1311 1312 ------------------------------------------------------------------------------- 1313 1314 Regular Expressions 1315 1316 ------------------------------------------------------------------------------- 1317 1318 Interfaces for Regular Expressions 1319 1320 An LSB conforming implementation shall provide the architecture specific 1321 functions for Regular Expressions specified in Table 6-15, with the full 1322 functionality as described in the referenced underlying specification. 1323 1324 Table 6-15. libc - Regular Expressions Function Interfaces 1325 1326 +-----------------------------------------------------------------------------+ 1327 |regcomp(GLIBC_2.0)|regerror |regexec(GLIBC_2.0)|regfree(GLIBC_2.0)| | 1328 |[1] |(GLIBC_2.0) [1] |[1] |[1] | | 1329 +-----------------------------------------------------------------------------+ 1330 1331 Referenced Specification(s) 1332 1333 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1334 Specification(SUS) V3 1335 1336 An LSB conforming implementation shall provide the architecture specific 1337 deprecated functions for Regular Expressions specified in Table 6-16, with the 1338 full functionality as described in the referenced underlying specification. 1339 1340 Note: These interfaces are deprecated, and applications should avoid using 1341 them. These interfaces may be withdrawn in future releases of this 1342 specification. 1343 1344 Table 6-16. libc - Regular Expressions Deprecated Function Interfaces 1345 1346 +------------------------------------------------------------------------------+ 1347 |advance(GLIBC_2.0) |re_comp(GLIBC_2.0) |re_exec(GLIBC_2.0) |step(GLIBC_2.0) | | 1348 |[1] |[1] |[1] |[1] | | 1349 +------------------------------------------------------------------------------+ 1350 1351 Referenced Specification(s) 1352 1353 [1]. CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 1354 5 (ISBN: 1-85912-181-0, C606) 1355 1356 An LSB conforming implementation shall provide the architecture specific 1357 deprecated data interfaces for Regular Expressions specified in Table 6-17, 1358 with the full functionality as described in the referenced underlying 1359 specification. 1360 1361 Note: These interfaces are deprecated, and applications should avoid using 1362 them. These interfaces may be withdrawn in future releases of this 1363 specification. 1364 1365 Table 6-17. libc - Regular Expressions Deprecated Data Interfaces 1366 1367 +---------------------------------------------------------------+ 1368 |loc1(GLIBC_2.0) [1]|loc2(GLIBC_2.0) [1]|locs(GLIBC_2.0) [1]| | | 1369 +---------------------------------------------------------------+ 1370 1371 Referenced Specification(s) 1372 1373 [1]. CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 1374 5 (ISBN: 1-85912-181-0, C606) 1375 1376 ------------------------------------------------------------------------------- 1377 1378 Character Type Functions 1379 1380 ------------------------------------------------------------------------------- 1381 1382 Interfaces for Character Type Functions 1383 1384 An LSB conforming implementation shall provide the architecture specific 1385 functions for Character Type Functions specified in Table 6-18, with the full 1386 functionality as described in the referenced underlying specification. 1387 1388 Table 6-18. libc - Character Type Functions Function Interfaces 1389 1390 +-----------------------------------------------------------------------------+ 1391 |__ctype_get_mb_cur_max|isdigit |iswalnum |iswlower |toascii | 1392 |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1393 | |[2] |[2] |[2] |[2] | 1394 |----------------------+------------+-------------+--------------+------------| 1395 |_tolower(GLIBC_2.0) |isgraph |iswalpha |iswprint |tolower | 1396 |[2] |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | 1397 | |[2] |[2] |[2] |[2] | 1398 |----------------------+------------+-------------+--------------+------------| 1399 |_toupper(GLIBC_2.0) |islower |iswblank |iswpunct |toupper | 1400 |[2] |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.0) | 1401 | |[2] |[2] |[2] |[2] | 1402 |----------------------+------------+-------------+--------------+------------| 1403 | |isprint |iswcntrl |iswspace | | 1404 |isalnum(GLIBC_2.0) [2]|(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1405 | |[2] |[2] |[2] | | 1406 |----------------------+------------+-------------+--------------+------------| 1407 | |ispunct |iswctype |iswupper | | 1408 |isalpha(GLIBC_2.0) [2]|(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1409 | |[2] |[1] |[2] | | 1410 |----------------------+------------+-------------+--------------+------------| 1411 | |isspace |iswdigit |iswxdigit | | 1412 |isascii(GLIBC_2.0) [2]|(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1413 | |[2] |[2] |[2] | | 1414 |----------------------+------------+-------------+--------------+------------| 1415 | |isupper |iswgraph |isxdigit | | 1416 |iscntrl(GLIBC_2.0) [2]|(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) | | 1417 | |[2] |[2] |[2] | | 1418 +-----------------------------------------------------------------------------+ 1419 1420 Referenced Specification(s) 1421 1422 [1]. Linux Standard Base 1423 1424 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1425 Specification(SUS) V3 1426 1427 ------------------------------------------------------------------------------- 1428 1429 Time Manipulation 1430 1431 ------------------------------------------------------------------------------- 1432 1433 Interfaces for Time Manipulation 1434 1435 An LSB conforming implementation shall provide the architecture specific 1436 functions for Time Manipulation specified in Table 6-19, with the full 1437 functionality as described in the referenced underlying specification. 1438 1439 Table 6-19. libc - Time Manipulation Function Interfaces 1440 1441 +-----------------------------------------------------------------------------+ 1442 |adjtime |ctime |gmtime |localtime_r |ualarm | 1443 |(GLIBC_2.0) [1]|(GLIBC_2.0) |(GLIBC_2.0) [2]|(GLIBC_2.0) [2] |(GLIBC_2.0) | 1444 | |[2] | | |[2] | 1445 |---------------+--------------+---------------+----------------+-------------| 1446 |asctime |ctime_r |gmtime_r |mktime | | 1447 |(GLIBC_2.0) [2]|(GLIBC_2.0) |(GLIBC_2.0) [2]|(GLIBC_2.0) [2] | | 1448 | |[2] | | | | 1449 |---------------+--------------+---------------+----------------+-------------| 1450 |asctime_r |difftime |localtime |tzset(GLIBC_2.0)| | 1451 |(GLIBC_2.0) [2]|(GLIBC_2.0) |(GLIBC_2.0) [2]|[2] | | 1452 | |[2] | | | | 1453 +-----------------------------------------------------------------------------+ 1454 1455 Referenced Specification(s) 1456 1457 [1]. Linux Standard Base 1458 1459 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1460 Specification(SUS) V3 1461 1462 An LSB conforming implementation shall provide the architecture specific 1463 deprecated functions for Time Manipulation specified in Table 6-20, with the 1464 full functionality as described in the referenced underlying specification. 1465 1466 Note: These interfaces are deprecated, and applications should avoid using 1467 them. These interfaces may be withdrawn in future releases of this 1468 specification. 1469 1470 Table 6-20. libc - Time Manipulation Deprecated Function Interfaces 1471 1472 +--------------------------------+ 1473 |adjtimex(GLIBC_2.0) [1] | | | | | 1474 +--------------------------------+ 1475 1476 Referenced Specification(s) 1477 1478 [1]. Linux Standard Base 1479 1480 An LSB conforming implementation shall provide the architecture specific data 1481 interfaces for Time Manipulation specified in Table 6-21, with the full 1482 functionality as described in the referenced underlying specification. 1483 1484 Table 6-21. libc - Time Manipulation Data Interfaces 1485 1486 +-----------------------------------------------------------------------------+ 1487 |__daylight(GLIBC_2.0) [1]|__tzname(GLIBC_2.0) [1]|timezone(GLIBC_2.0) [2]| | | 1488 |-------------------------+-----------------------+-----------------------+-+-| 1489 |__timezone(GLIBC_2.0) [1]|daylight(GLIBC_2.0) [2]|tzname(GLIBC_2.0) [2] | | | 1490 +-----------------------------------------------------------------------------+ 1491 1492 Referenced Specification(s) 1493 1494 [1]. Linux Standard Base 1495 1496 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1497 Specification(SUS) V3 1498 1499 ------------------------------------------------------------------------------- 1500 1501 Terminal Interface Functions 1502 1503 ------------------------------------------------------------------------------- 1504 1505 Interfaces for Terminal Interface Functions 1506 1507 An LSB conforming implementation shall provide the architecture specific 1508 functions for Terminal Interface Functions specified in Table 6-22, with the 1509 full functionality as described in the referenced underlying specification. 1510 1511 Table 6-22. libc - Terminal Interface Functions Function Interfaces 1512 1513 +----------------------------------------------------------------------------+ 1514 |cfgetispeed |cfsetispeed |tcdrain |tcgetattr |tcsendbreak | 1515 |(GLIBC_2.0) [1]|(GLIBC_2.0) [1]|(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) [1]| 1516 | | |[1] |[1] | | 1517 |---------------+---------------+-------------+--------------+---------------| 1518 |cfgetospeed |cfsetospeed |tcflow |tcgetpgrp |tcsetattr | 1519 |(GLIBC_2.0) [1]|(GLIBC_2.0) [1]|(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.0) [1]| 1520 | | |[1] |[1] | | 1521 |---------------+---------------+-------------+--------------+---------------| 1522 |cfmakeraw |cfsetspeed |tcflush |tcgetsid |tcsetpgrp | 1523 |(GLIBC_2.0) [2]|(GLIBC_2.0) [2]|(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.0) [1]| 1524 | | |[1] |[1] | | 1525 +----------------------------------------------------------------------------+ 1526 1527 Referenced Specification(s) 1528 1529 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1530 Specification(SUS) V3 1531 1532 [2]. Linux Standard Base 1533 1534 ------------------------------------------------------------------------------- 1535 1536 System Database Interface 1537 1538 ------------------------------------------------------------------------------- 1539 1540 Interfaces for System Database Interface 1541 1542 An LSB conforming implementation shall provide the architecture specific 1543 functions for System Database Interface specified in Table 6-23, with the full 1544 functionality as described in the referenced underlying specification. 1545 1546 Table 6-23. libc - System Database Interface Function Interfaces 1547 1548 +------------------------------------------------------------------------------+ 1549 |endgrent |getgrgid |getprotobynumber|getservbyport |setgrent | 1550 |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) [1] |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1551 |[1] | | | |[1] | 1552 |--------------+---------------+----------------+---------------+--------------| 1553 |endnetent |getgrgid_r |getprotoent |getservent |setgroups | 1554 |(GLIBC_2.0) |(GLIBC_2.1.2) |(GLIBC_2.0) [1] |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1555 |[1] |[1] | | |[2] | 1556 |--------------+---------------+----------------+---------------+--------------| 1557 |endprotoent |getgrnam |getpwent |getutent |setnetent | 1558 |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) [1] |(GLIBC_2.0) [2]|(GLIBC_2.0) | 1559 |[1] | | | |[1] | 1560 |--------------+---------------+----------------+---------------+--------------| 1561 |endpwent |getgrnam_r |getpwnam |getutent_r |setprotoent | 1562 |(GLIBC_2.0) |(GLIBC_2.1.2) |(GLIBC_2.0) [1] |(GLIBC_2.0) [2]|(GLIBC_2.0) | 1563 |[1] |[1] | | |[1] | 1564 |--------------+---------------+----------------+---------------+--------------| 1565 |endservent |gethostbyaddr |getpwnam_r |getutxent |setpwent | 1566 |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.1.2) |(GLIBC_2.1) [1]|(GLIBC_2.0) | 1567 |[1] | |[1] | |[1] | 1568 |--------------+---------------+----------------+---------------+--------------| 1569 |endutent |gethostbyname |getpwuid |getutxid |setservent | 1570 |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) [1] |(GLIBC_2.1) [1]|(GLIBC_2.0) | 1571 |[3] | | | |[1] | 1572 |--------------+---------------+----------------+---------------+--------------| 1573 |endutxent |getnetbyaddr |getpwuid_r |getutxline |setutent | 1574 |(GLIBC_2.1) |(GLIBC_2.0) [1]|(GLIBC_2.1.2) |(GLIBC_2.1) [1]|(GLIBC_2.0) | 1575 |[1] | |[1] | |[2] | 1576 |--------------+---------------+----------------+---------------+--------------| 1577 |getgrent |getprotobyname |getservbyname |pututxline |setutxent | 1578 |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) [1] |(GLIBC_2.1) [1]|(GLIBC_2.1) | 1579 |[1] | | | |[1] | 1580 +------------------------------------------------------------------------------+ 1581 1582 Referenced Specification(s) 1583 1584 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1585 Specification(SUS) V3 1586 1587 [2]. Linux Standard Base 1588 1589 [3]. CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 1590 5 (ISBN: 1-85912-181-0, C606) 1591 1592 ------------------------------------------------------------------------------- 1593 1594 Language Support 1595 1596 ------------------------------------------------------------------------------- 1597 1598 Interfaces for Language Support 1599 1600 An LSB conforming implementation shall provide the architecture specific 1601 functions for Language Support specified in Table 6-24, with the full 1602 functionality as described in the referenced underlying specification. 1603 1604 Table 6-24. libc - Language Support Function Interfaces 1605 1606 +-----------------------------------------------------------------------------+ 1607 |__libc_start_main |_obstack_begin |_obstack_newchunk |obstack_free | | 1608 |(GLIBC_2.0) [1] |(GLIBC_2.0) [1] |(GLIBC_2.0) [1] |(GLIBC_2.0) [1] | | 1609 +-----------------------------------------------------------------------------+ 1610 1611 Referenced Specification(s) 1612 1613 [1]. Linux Standard Base 1614 1615 ------------------------------------------------------------------------------- 1616 1617 Large File Support 1618 1619 ------------------------------------------------------------------------------- 1620 1621 Interfaces for Large File Support 1622 1623 An LSB conforming implementation shall provide the architecture specific 1624 functions for Large File Support specified in Table 6-25, with the full 1625 functionality as described in the referenced underlying specification. 1626 1627 Table 6-25. libc - Large File Support Function Interfaces 1628 1629 +------------------------------------------------------------------------------+ 1630 |__fxstat64 |fopen64 |ftello64 |lseek64 |readdir64 | 1631 |(GLIBC_2.2) [1]|(GLIBC_2.1) [2]|(GLIBC_2.1) [2]|(GLIBC_2.1) |(GLIBC_2.2) [2]| 1632 | | | |[2] | | 1633 |---------------+---------------+---------------+--------------+---------------| 1634 |__lxstat64 |freopen64 |ftruncate64 |mkstemp64 |statvfs64 | 1635 |(GLIBC_2.2) [1]|(GLIBC_2.1) [2]|(GLIBC_2.1) [2]|(GLIBC_2.2) |(GLIBC_2.1) [2]| 1636 | | | |[2] | | 1637 |---------------+---------------+---------------+--------------+---------------| 1638 |__xstat64 |fseeko64 |ftw64 |mmap64 |tmpfile64 | 1639 |(GLIBC_2.2) [1]|(GLIBC_2.1) [2]|(GLIBC_2.1) [2]|(GLIBC_2.1) |(GLIBC_2.1) [2]| 1640 | | | |[2] | | 1641 |---------------+---------------+---------------+--------------+---------------| 1642 |creat64 |fsetpos64 |getrlimit64 |nftw64 |truncate64 | 1643 |(GLIBC_2.1) [2]|(GLIBC_2.2) [2]|(GLIBC_2.2) [2]|(GLIBC_2.1) |(GLIBC_2.1) [2]| 1644 | | | |[2] | | 1645 |---------------+---------------+---------------+--------------+---------------| 1646 |fgetpos64 |fstatvfs64 |lockf64 |open64 | | 1647 |(GLIBC_2.2) [2]|(GLIBC_2.1) [2]|(GLIBC_2.1) [2]|(GLIBC_2.1) | | 1648 | | | |[2] | | 1649 +------------------------------------------------------------------------------+ 1650 1651 Referenced Specification(s) 1652 1653 [1]. Linux Standard Base 1654 1655 [2]. Large File Support 1656 1657 ------------------------------------------------------------------------------- 1658 1659 Standard Library 1660 1661 ------------------------------------------------------------------------------- 1662 1663 Interfaces for Standard Library 1664 1665 An LSB conforming implementation shall provide the architecture specific 1666 functions for Standard Library specified in Table 6-26, with the full 1667 functionality as described in the referenced underlying specification. 1668 1669 Table 6-26. libc - Standard Library Function Interfaces 1670 1671 +-----------------------------------------------------------------------------+ 1672 |_Exit |dirname |glob |lsearch |srand | 1673 |(GLIBC_2.1.1) |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1674 |[1] | |[1] | |[1] | 1675 |----------------+----------------+-------------+---------------+-------------| 1676 |__assert_fail |div(GLIBC_2.0) |glob64 |makecontext |srand48 | 1677 |(GLIBC_2.0) [2] |[1] |(GLIBC_2.2) |(GLIBC_2.1) [1]|(GLIBC_2.0) | 1678 | | |[2] | |[1] | 1679 |----------------+----------------+-------------+---------------+-------------| 1680 |__cxa_atexit |drand48 |globfree |malloc |srandom | 1681 |(GLIBC_2.1.3) |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1682 |[2] | |[1] | |[1] | 1683 |----------------+----------------+-------------+---------------+-------------| 1684 |__errno_location|ecvt(GLIBC_2.0) |globfree64 |memmem |strtod | 1685 |(GLIBC_2.0) [2] |[1] |(GLIBC_2.1) |(GLIBC_2.0) [2]|(GLIBC_2.0) | 1686 | | |[2] | |[1] | 1687 |----------------+----------------+-------------+---------------+-------------| 1688 |__fpending |erand48 |grantpt |mkstemp |strtol | 1689 |(GLIBC_2.2) [2] |(GLIBC_2.0) [1] |(GLIBC_2.1) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1690 | | |[1] | |[1] | 1691 |----------------+----------------+-------------+---------------+-------------| 1692 |__getpagesize |err(GLIBC_2.0) |hcreate |mktemp |strtoul | 1693 |(GLIBC_2.0) [2] |[2] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1694 | | |[1] | |[1] | 1695 |----------------+----------------+-------------+---------------+-------------| 1696 |__isinf |error(GLIBC_2.0)|hdestroy |mrand48 |swapcontext | 1697 |(GLIBC_2.0) [2] |[2] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.1) | 1698 | | |[1] | |[1] | 1699 |----------------+----------------+-------------+---------------+-------------| 1700 |__isinff |errx(GLIBC_2.0) |hsearch |nftw(GLIBC_2.1)|syslog | 1701 |(GLIBC_2.0) [2] |[2] |(GLIBC_2.0) |[1] |(GLIBC_2.0) | 1702 | | |[1] | |[1] | 1703 |----------------+----------------+-------------+---------------+-------------| 1704 |__isinfl |fcvt(GLIBC_2.0) |htonl |nrand48 |system | 1705 |(GLIBC_2.0) [2] |[1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1706 | | |[1] | |[2] | 1707 |----------------+----------------+-------------+---------------+-------------| 1708 |__isnan |fmtmsg |htons |ntohl |tdelete | 1709 |(GLIBC_2.0) [2] |(GLIBC_2.1) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1710 | | |[1] | |[1] | 1711 |----------------+----------------+-------------+---------------+-------------| 1712 |__isnanf |fnmatch |imaxabs |ntohs |tfind | 1713 |(GLIBC_2.0) [2] |(GLIBC_2.2.3) |(GLIBC_2.1.1)|(GLIBC_2.0) [1]|(GLIBC_2.0) | 1714 | |[1] |[1] | |[1] | 1715 |----------------+----------------+-------------+---------------+-------------| 1716 |__isnanl |fpathconf |imaxdiv |openlog |tmpfile | 1717 |(GLIBC_2.0) [2] |(GLIBC_2.0) [1] |(GLIBC_2.1.1)|(GLIBC_2.0) [1]|(GLIBC_2.1) | 1718 | | |[1] | |[1] | 1719 |----------------+----------------+-------------+---------------+-------------| 1720 |__sysconf |free(GLIBC_2.0) |inet_addr |perror |tmpnam | 1721 |(GLIBC_2.2) [2] |[1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1722 | | |[1] | |[1] | 1723 |----------------+----------------+-------------+---------------+-------------| 1724 |_exit(GLIBC_2.0)|freeaddrinfo |inet_ntoa |posix_memalign |tsearch | 1725 |[1] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.2) [1]|(GLIBC_2.0) | 1726 | | |[1] | |[1] | 1727 |----------------+----------------+-------------+---------------+-------------| 1728 |_longjmp |ftrylockfile |inet_ntop |ptsname |ttyname | 1729 |(GLIBC_2.0) [1] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.1) [1]|(GLIBC_2.0) | 1730 | | |[1] | |[1] | 1731 |----------------+----------------+-------------+---------------+-------------| 1732 |_setjmp |ftw(GLIBC_2.0) |inet_pton |putenv |ttyname_r | 1733 |(GLIBC_2.0) [1] |[1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1734 | | |[1] | |[1] | 1735 |----------------+----------------+-------------+---------------+-------------| 1736 |a64l(GLIBC_2.0) |funlockfile |initstate |qsort |twalk | 1737 |[1] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1738 | | |[1] | |[1] | 1739 |----------------+----------------+-------------+---------------+-------------| 1740 |abort(GLIBC_2.0)|gai_strerror |insque |rand(GLIBC_2.0)|unlockpt | 1741 |[1] |(GLIBC_2.1) [1] |(GLIBC_2.0) |[1] |(GLIBC_2.1) | 1742 | | |[1] | |[1] | 1743 |----------------+----------------+-------------+---------------+-------------| 1744 |abs(GLIBC_2.0) |gcvt(GLIBC_2.0) |isatty |rand_r |unsetenv | 1745 |[1] |[1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1746 | | |[1] | |[1] | 1747 |----------------+----------------+-------------+---------------+-------------| 1748 |atof(GLIBC_2.0) |getaddrinfo |isblank |random |usleep | 1749 |[1] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1750 | | |[1] | |[1] | 1751 |----------------+----------------+-------------+---------------+-------------| 1752 |atoi(GLIBC_2.0) |getcwd |jrand48 |random_r |verrx | 1753 |[1] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) [2]|(GLIBC_2.0) | 1754 | | |[1] | |[2] | 1755 |----------------+----------------+-------------+---------------+-------------| 1756 |atol(GLIBC_2.0) |getdate |l64a |realloc |vfscanf | 1757 |[1] |(GLIBC_2.1) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1758 | | |[1] | |[1] | 1759 |----------------+----------------+-------------+---------------+-------------| 1760 |atoll(GLIBC_2.0)|getenv |labs |realpath |vscanf | 1761 |[1] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.3) [1]|(GLIBC_2.0) | 1762 | | |[1] | |[1] | 1763 |----------------+----------------+-------------+---------------+-------------| 1764 |basename |getlogin |lcong48 |remque |vsscanf | 1765 |(GLIBC_2.0) [1] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1766 | | |[1] | |[1] | 1767 |----------------+----------------+-------------+---------------+-------------| 1768 |bsearch |getnameinfo |ldiv |seed48 |vsyslog | 1769 |(GLIBC_2.0) [1] |(GLIBC_2.1) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1770 | | |[1] | |[2] | 1771 |----------------+----------------+-------------+---------------+-------------| 1772 |calloc |getopt |lfind |setenv |warn | 1773 |(GLIBC_2.0) [1] |(GLIBC_2.0) [2] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.0) | 1774 | | |[1] | |[2] | 1775 |----------------+----------------+-------------+---------------+-------------| 1776 |closelog |getopt_long |llabs |sethostid |warnx | 1777 |(GLIBC_2.0) [1] |(GLIBC_2.0) [2] |(GLIBC_2.0) |(GLIBC_2.0) [2]|(GLIBC_2.0) | 1778 | | |[1] | |[2] | 1779 |----------------+----------------+-------------+---------------+-------------| 1780 |confstr |getopt_long_only|lldiv |sethostname |wordexp | 1781 |(GLIBC_2.0) [1] |(GLIBC_2.0) [2] |(GLIBC_2.0) |(GLIBC_2.0) [2]|(GLIBC_2.1) | 1782 | | |[1] | |[1] | 1783 |----------------+----------------+-------------+---------------+-------------| 1784 |cuserid |getsubopt |longjmp |setlogmask |wordfree | 1785 |(GLIBC_2.0) [3] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]|(GLIBC_2.1) | 1786 | | |[1] | |[1] | 1787 |----------------+----------------+-------------+---------------+-------------| 1788 |daemon |gettimeofday |lrand48 |setstate | | 1789 |(GLIBC_2.0) [2] |(GLIBC_2.0) [1] |(GLIBC_2.0) |(GLIBC_2.0) [1]| | 1790 | | |[1] | | | 1791 +-----------------------------------------------------------------------------+ 1792 1793 Referenced Specification(s) 1794 1795 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1796 Specification(SUS) V3 1797 1798 [2]. Linux Standard Base 1799 1800 [3]. CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 1801 5 (ISBN: 1-85912-181-0, C606) 1802 1803 An LSB conforming implementation shall provide the architecture specific data 1804 interfaces for Standard Library specified in Table 6-27, with the full 1805 functionality as described in the referenced underlying specification. 1806 1807 Table 6-27. libc - Standard Library Data Interfaces 1808 1809 +-----------------------------------------------------------------------------+ 1810 |__environ |_sys_errlist |getdate_err |opterr |optopt | 1811 |(GLIBC_2.0) [1]|(GLIBC_2.3) [1] |(GLIBC_2.1) [2] |(GLIBC_2.0) |(GLIBC_2.0) | 1812 | | | |[1] |[1] | 1813 |---------------+----------------+----------------+-------------+-------------| 1814 |_environ |environ |optarg |optind | | 1815 |(GLIBC_2.0) [1]|(GLIBC_2.0) [2] |(GLIBC_2.0) [2] |(GLIBC_2.0) | | 1816 | | | |[1] | | 1817 +-----------------------------------------------------------------------------+ 1818 1819 Referenced Specification(s) 1820 1821 [1]. Linux Standard Base 1822 1823 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 1824 Specification(SUS) V3 1825 1826 ------------------------------------------------------------------------------- 1827 1828 Data Definitions for libc 1829 1830 This section defines global identifiers and their values that are associated 1831 with interfaces contained in libc. These definitions are organized into groups 1832 that correspond to system headers. This convention is used as a convenience for 1833 the reader, and does not imply the existence of these headers, or their 1834 content. 1835 1836 These definitions are intended to supplement those provided in the referenced 1837 underlying specifications. 1838 1839 This specification uses ISO/IEC 9899 C Language as the reference programming 1840 language, and data definitions are specified in ISO C format. The C language is 1841 used here as a convenient notation. Using a C language description of these 1842 data objects does not preclude their use by other programming languages. 1843 1844 ------------------------------------------------------------------------------- 1845 1846 errno.h 1847 1848 #define EDEADLOCK EDEADLK 1849 1850 ------------------------------------------------------------------------------- 1851 1852 inttypes.h 1853 1854 typedef long long intmax_t; 1855 typedef unsigned int uintptr_t; 1856 typedef unsigned long long uintmax_t; 1857 typedef unsigned long long uint64_t; 1858 1859 ------------------------------------------------------------------------------- 1860 1861 limits.h 1862 1863 #define LONG_MAX 0x7FFFFFFFL 1864 #define ULONG_MAX 0xFFFFFFFFUL 1865 1866 #define CHAR_MAX SCHAR_MAX 1867 #define CHAR_MIN SCHAR_MIN 1868 1869 ------------------------------------------------------------------------------- 1870 1871 setjmp.h 1872 1873 typedef int __jmp_buf[6]; 1874 1875 ------------------------------------------------------------------------------- 1876 1877 signal.h 1878 1879 struct sigaction 1880 { 1881 union 1882 { 1883 sighandler_t _sa_handler; 1884 void (*_sa_sigaction) (int, siginfo_t *, void *); 1885 } 1886 __sigaction_handler; 1887 sigset_t sa_mask; 1888 unsigned long sa_flags; 1889 void (*sa_restorer) (void); 1890 } 1891 ; 1892 #define MINSIGSTKSZ 2048 1893 #define SIGSTKSZ 8192 1894 1895 struct _fpreg 1896 { 1897 unsigned short significand[4]; 1898 unsigned short exponent; 1899 } 1900 ; 1901 struct _fpxreg 1902 { 1903 unsigned short significand[4]; 1904 unsigned short exponent; 1905 unsigned short padding[3]; 1906 } 1907 ; 1908 struct _xmmreg 1909 { 1910 unsigned long element[4]; 1911 } 1912 ; 1913 1914 struct _fpstate 1915 { 1916 unsigned long cw; 1917 unsigned long sw; 1918 unsigned long tag; 1919 unsigned long ipoff; 1920 unsigned long cssel; 1921 unsigned long dataoff; 1922 unsigned long datasel; 1923 struct _fpreg _st[8]; 1924 unsigned short status; 1925 unsigned short magic; 1926 unsigned long _fxsr_env[6]; 1927 unsigned long mxcsr; 1928 unsigned long reserved; 1929 struct _fpxreg _fxsr_st[8]; 1930 struct _xmmreg _xmm[8]; 1931 unsigned long padding[56]; 1932 } 1933 ; 1934 1935 struct sigcontext 1936 { 1937 unsigned short gs; 1938 unsigned short __gsh; 1939 unsigned short fs; 1940 unsigned short __fsh; 1941 unsigned short es; 1942 unsigned short __esh; 1943 unsigned short ds; 1944 unsigned short __dsh; 1945 unsigned long edi; 1946 unsigned long esi; 1947 unsigned long ebp; 1948 unsigned long esp; 1949 unsigned long ebx; 1950 unsigned long edx; 1951 unsigned long ecx; 1952 unsigned long eax; 1953 unsigned long trapno; 1954 unsigned long err; 1955 unsigned long eip; 1956 unsigned short cs; 1957 unsigned short __csh; 1958 unsigned long eflags; 1959 unsigned long esp_at_signal; 1960 unsigned short ss; 1961 unsigned short __ssh; 1962 struct _fpstate *fpstate; 1963 unsigned long oldmask; 1964 unsigned long cr2; 1965 } 1966 ; 1967 1968 ------------------------------------------------------------------------------- 1969 1970 stddef.h 1971 1972 typedef unsigned int size_t; 1973 typedef int ptrdiff_t; 1974 1975 ------------------------------------------------------------------------------- 1976 1977 sys/ioctl.h 1978 1979 #define FIONREAD 0x541B 1980 #define TIOCNOTTY 0x5422 1981 1982 ------------------------------------------------------------------------------- 1983 1984 sys/ipc.h 1985 1986 struct ipc_perm 1987 { 1988 key_t __key; 1989 uid_t uid; 1990 gid_t gid; 1991 uid_t cuid; 1992 gid_t cgid; 1993 unsigned short mode; 1994 unsigned short __pad1; 1995 unsigned short __seq; 1996 unsigned short __pad2; 1997 unsigned long __unused1; 1998 unsigned long __unused2; 1999 } 2000 ; 2001 2002 ------------------------------------------------------------------------------- 2003 2004 sys/mman.h 2005 2006 #define MCL_CURRENT 1 2007 #define MCL_FUTURE 2 2008 2009 ------------------------------------------------------------------------------- 2010 2011 sys/msg.h 2012 2013 typedef unsigned long msgqnum_t; 2014 typedef unsigned long msglen_t; 2015 2016 struct msqid_ds 2017 { 2018 struct ipc_perm msg_perm; 2019 time_t msg_stime; 2020 unsigned long __unused1; 2021 time_t msg_rtime; 2022 unsigned long __unused2; 2023 time_t msg_ctime; 2024 unsigned long __unused3; 2025 unsigned long __msg_cbytes; 2026 msgqnum_t msg_qnum; 2027 msglen_t msg_qbytes; 2028 pid_t msg_lspid; 2029 pid_t msg_lrpid; 2030 unsigned long __unused4; 2031 unsigned long __unused5; 2032 } 2033 ; 2034 2035 ------------------------------------------------------------------------------- 2036 2037 sys/sem.h 2038 2039 struct semid_ds 2040 { 2041 struct ipc_perm sem_perm; 2042 time_t sem_otime; 2043 unsigned long __unused1; 2044 time_t sem_ctime; 2045 unsigned long __unused2; 2046 unsigned long sem_nsems; 2047 unsigned long __unused3; 2048 unsigned long __unused4; 2049 } 2050 ; 2051 2052 ------------------------------------------------------------------------------- 2053 2054 sys/shm.h 2055 2056 #define SHMLBA (__getpagesize()) 2057 2058 typedef unsigned long shmatt_t; 2059 2060 struct shmid_ds 2061 { 2062 struct ipc_perm shm_perm; 2063 int shm_segsz; 2064 time_t shm_atime; 2065 unsigned long __unused1; 2066 time_t shm_dtime; 2067 unsigned long __unused2; 2068 time_t shm_ctime; 2069 unsigned long __unused3; 2070 pid_t shm_cpid; 2071 pid_t shm_lpid; 2072 shmatt_t shm_nattch; 2073 unsigned long __unused4; 2074 unsigned long __unused5; 2075 } 2076 ; 2077 2078 ------------------------------------------------------------------------------- 2079 2080 sys/socket.h 2081 2082 typedef uint32_t __ss_aligntype; 2083 2084 ------------------------------------------------------------------------------- 2085 2086 sys/stat.h 2087 2088 #define _STAT_VER 3 2089 2090 struct stat 2091 { 2092 dev_t st_dev; 2093 unsigned short __pad1; 2094 unsigned long st_ino; 2095 mode_t st_mode; 2096 nlink_t st_nlink; 2097 pid_t st_uid; 2098 gid_t st_gid; 2099 dev_t st_rdev; 2100 unsigned short __pad2; 2101 off_t st_size; 2102 blksize_t st_blksize; 2103 blkcnt_t st_blocks; 2104 struct timespec st_atim; 2105 struct timespec st_mtim; 2106 struct timespec st_ctim; 2107 unsigned long __unused4; 2108 unsigned long __unused5; 2109 } 2110 ; 2111 struct stat64 2112 { 2113 dev_t st_dev; 2114 unsigned int __pad1; 2115 ino_t __st_ino; 2116 mode_t st_mode; 2117 nlink_t st_nlink; 2118 uid_t st_uid; 2119 gid_t st_gid; 2120 dev_t st_rdev; 2121 unsigned int __pad2; 2122 off64_t st_size; 2123 blksize_t st_blksize; 2124 blkcnt64_t st_blocks; 2125 struct timespec st_atim; 2126 struct timespec st_mtim; 2127 struct timespec st_ctim; 2128 ino64_t st_ino; 2129 } 2130 ; 2131 2132 ------------------------------------------------------------------------------- 2133 2134 sys/statvfs.h 2135 2136 struct statvfs 2137 { 2138 unsigned long f_bsize; 2139 unsigned long f_frsize; 2140 fsblkcnt_t f_blocks; 2141 fsblkcnt_t f_bfree; 2142 fsblkcnt_t f_bavail; 2143 fsfilcnt_t f_files; 2144 fsfilcnt_t f_ffree; 2145 fsfilcnt_t f_favail; 2146 unsigned long f_fsid; 2147 int __f_unused; 2148 unsigned long f_flag; 2149 unsigned long f_namemax; 2150 int __f_spare[6]; 2151 } 2152 ; 2153 struct statvfs64 2154 { 2155 unsigned long f_bsize; 2156 unsigned long f_frsize; 2157 fsblkcnt64_t f_blocks; 2158 fsblkcnt64_t f_bfree; 2159 fsblkcnt64_t f_bavail; 2160 fsfilcnt64_t f_files; 2161 fsfilcnt64_t f_ffree; 2162 fsfilcnt64_t f_favail; 2163 unsigned long f_fsid; 2164 int __f_unused; 2165 unsigned long f_flag; 2166 unsigned long f_namemax; 2167 int __f_spare[6]; 2168 } 2169 ; 2170 2171 ------------------------------------------------------------------------------- 2172 2173 sys/types.h 2174 2175 typedef long long int64_t; 2176 2177 typedef int32_t ssize_t; 2178 2179 ------------------------------------------------------------------------------- 2180 2181 termios.h 2182 2183 #define OLCUC 0000002 2184 #define ONLCR 0000004 2185 #define XCASE 0000004 2186 #define NLDLY 0000400 2187 #define CR1 0001000 2188 #define IUCLC 0001000 2189 #define CR2 0002000 2190 #define CR3 0003000 2191 #define CRDLY 0003000 2192 #define TAB1 0004000 2193 #define TAB2 0010000 2194 #define TAB3 0014000 2195 #define TABDLY 0014000 2196 #define BS1 0020000 2197 #define BSDLY 0020000 2198 #define VT1 0040000 2199 #define VTDLY 0040000 2200 #define FF1 0100000 2201 #define FFDLY 0100000 2202 2203 #define VSUSP 10 2204 #define VEOL 11 2205 #define VREPRINT 12 2206 #define VDISCARD 13 2207 #define VWERASE 14 2208 #define VEOL2 16 2209 #define VMIN 6 2210 #define VSWTC 7 2211 #define VSTART 8 2212 #define VSTOP 9 2213 2214 #define IXON 0002000 2215 #define IXOFF 0010000 2216 2217 #define CS6 0000020 2218 #define CS7 0000040 2219 #define CS8 0000060 2220 #define CSIZE 0000060 2221 #define CSTOPB 0000100 2222 #define CREAD 0000200 2223 #define PARENB 0000400 2224 #define PARODD 0001000 2225 #define HUPCL 0002000 2226 #define CLOCAL 0004000 2227 #define VTIME 5 2228 2229 #define ISIG 0000001 2230 #define ICANON 0000002 2231 #define ECHOE 0000020 2232 #define ECHOK 0000040 2233 #define ECHONL 0000100 2234 #define NOFLSH 0000200 2235 #define TOSTOP 0000400 2236 #define ECHOCTL 0001000 2237 #define ECHOPRT 0002000 2238 #define ECHOKE 0004000 2239 #define FLUSHO 0010000 2240 #define PENDIN 0040000 2241 #define IEXTEN 0100000 2242 2243 ------------------------------------------------------------------------------- 2244 2245 ucontext.h 2246 2247 typedef int greg_t; 2248 #define NGREG 19 2249 2250 typedef greg_t gregset_t[19]; 2251 2252 struct _libc_fpreg 2253 { 2254 unsigned short significand[4]; 2255 unsigned short exponent; 2256 } 2257 ; 2258 2259 struct _libc_fpstate 2260 { 2261 unsigned long cw; 2262 unsigned long sw; 2263 unsigned long tag; 2264 unsigned long ipoff; 2265 unsigned long cssel; 2266 unsigned long dataoff; 2267 unsigned long datasel; 2268 struct _libc_fpreg _st[8]; 2269 unsigned long status; 2270 } 2271 ; 2272 typedef struct _libc_fpstate *fpregset_t; 2273 2274 typedef struct 2275 { 2276 gregset_t gregs; 2277 fpregset_t fpregs; 2278 unsigned long oldmask; 2279 unsigned long cr2; 2280 } 2281 mcontext_t; 2282 2283 typedef struct ucontext 2284 { 2285 unsigned long uc_flags; 2286 struct ucontext *uc_link; 2287 stack_t uc_stack; 2288 mcontext_t uc_mcontext; 2289 sigset_t uc_sigmask; 2290 struct _libc_fpstate __fpregs_mem; 2291 } 2292 ucontext_t; 2293 2294 ------------------------------------------------------------------------------- 2295 2296 unistd.h 2297 2298 typedef int intptr_t; 2299 2300 ------------------------------------------------------------------------------- 2301 2302 utmp.h 2303 2304 struct lastlog 2305 { 2306 time_t ll_time; 2307 char ll_line[UT_LINESIZE]; 2308 char ll_host[UT_HOSTSIZE]; 2309 } 2310 ; 2311 2312 struct utmp 2313 { 2314 short ut_type; 2315 pid_t ut_pid; 2316 char ut_line[UT_LINESIZE]; 2317 char ut_id[4]; 2318 char ut_user[UT_NAMESIZE]; 2319 char ut_host[UT_HOSTSIZE]; 2320 struct exit_status ut_exit; 2321 long ut_session; 2322 struct timeval ut_tv; 2323 int32_t ut_addr_v6[4]; 2324 char __unused[20]; 2325 } 2326 ; 2327 2328 ------------------------------------------------------------------------------- 2329 2330 utmpx.h 2331 2332 struct utmpx 2333 { 2334 short ut_type; 2335 pid_t ut_pid; 2336 char ut_line[UT_LINESIZE]; 2337 char ut_id[4]; 2338 char ut_user[UT_NAMESIZE]; 2339 char ut_host[UT_HOSTSIZE]; 2340 struct exit_status ut_exit; 2341 long ut_session; 2342 struct timeval ut_tv; 2343 int32_t ut_addr_v6[4]; 2344 char __unused[20]; 2345 } 2346 ; 2347 2348 ------------------------------------------------------------------------------- 2349 2350 Interfaces for libm 2351 2352 Table 6-28 defines the library name and shared object name for the libm library 2353 2354 Table 6-28. libm Definition 2355 2356 +-------------------+ 2357 |Library:|libm | 2358 |--------+----------| 2359 |SONAME: |libm.so.6 | 2360 +-------------------+ 2361 2362 The behavior of the interfaces in this library is specified by the following 2363 specifications: 2364 2365 ISO/IEC 9899: 1999, Programming Languages --C 2366 CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 5 2367 (ISBN: 1-85912-181-0, C606) 2368 ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 2369 Specification(SUS) V3 2370 2371 ------------------------------------------------------------------------------- 2372 2373 Math 2374 2375 ------------------------------------------------------------------------------- 2376 2377 Interfaces for Math 2378 2379 An LSB conforming implementation shall provide the architecture specific 2380 functions for Math specified in Table 6-29, with the full functionality as 2381 described in the referenced underlying specification. 2382 2383 Table 6-29. libm - Math Function Interfaces 2384 2385 +-----------------------------------------------------------------------------+ 2386 |acos |cexp |expf(GLIBC_2.0) |jnf(GLIBC_2.0) |remquof | 2387 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |[2] |(GLIBC_2.1) [1]| 2388 |[1] |[1] | | | | 2389 |------------+--------------+-----------------+---------------+---------------| 2390 |acosf |cexpf |expl(GLIBC_2.0) |jnl(GLIBC_2.0) |remquol | 2391 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |[2] |(GLIBC_2.1) [1]| 2392 |[1] |[1] | | | | 2393 |------------+--------------+-----------------+---------------+---------------| 2394 |acosh |cexpl |expm1(GLIBC_2.0) |ldexp |rint(GLIBC_2.0)| 2395 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [1]|[1] | 2396 |[1] |[1] | | | | 2397 |------------+--------------+-----------------+---------------+---------------| 2398 |acoshf |cimag |fabs(GLIBC_2.0) |ldexpf |rintf | 2399 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [1]|(GLIBC_2.0) [1]| 2400 |[1] |[1] | | | | 2401 |------------+--------------+-----------------+---------------+---------------| 2402 |acoshl |cimagf |fabsf(GLIBC_2.0) |ldexpl |rintl | 2403 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [1]|(GLIBC_2.0) [1]| 2404 |[1] |[1] | | | | 2405 |------------+--------------+-----------------+---------------+---------------| 2406 |acosl |cimagl |fabsl(GLIBC_2.0) |lgamma |round | 2407 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [1]|(GLIBC_2.1) [1]| 2408 |[1] |[1] | | | | 2409 |------------+--------------+-----------------+---------------+---------------| 2410 |asin |clog |fdim(GLIBC_2.1) |lgamma_r |roundf | 2411 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [2]|(GLIBC_2.1) [1]| 2412 |[1] |[1] | | | | 2413 |------------+--------------+-----------------+---------------+---------------| 2414 |asinf |clog10 |fdimf(GLIBC_2.1) |lgammaf |roundl | 2415 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [1]|(GLIBC_2.1) [1]| 2416 |[1] |[2] | | | | 2417 |------------+--------------+-----------------+---------------+---------------| 2418 |asinh |clog10f |fdiml(GLIBC_2.1) |lgammaf_r |scalb | 2419 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [2]|(GLIBC_2.0) [1]| 2420 |[1] |[2] | | | | 2421 |------------+--------------+-----------------+---------------+---------------| 2422 |asinhf |clog10l |feclearexcept |lgammal |scalbf | 2423 |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.2) [1] |(GLIBC_2.0) [1]|(GLIBC_2.0) [2]| 2424 |[1] |[2] | | | | 2425 |------------+--------------+-----------------+---------------+---------------| 2426 |asinhl |clogf |fegetenv |lgammal_r |scalbl | 2427 |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.2) [1] |(GLIBC_2.0) [2]|(GLIBC_2.0) [2]| 2428 |[1] |[1] | | | | 2429 |------------+--------------+-----------------+---------------+---------------| 2430 |asinl |clogl |fegetexceptflag |llrint |scalbln | 2431 |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.2) [1] |(GLIBC_2.1) [1]|(GLIBC_2.1) [1]| 2432 |[1] |[1] | | | | 2433 |------------+--------------+-----------------+---------------+---------------| 2434 |atan |conj |fegetround |llrintf |scalblnf | 2435 |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.1) [1] |(GLIBC_2.1) [1]|(GLIBC_2.1) [1]| 2436 |[1] |[1] | | | | 2437 |------------+--------------+-----------------+---------------+---------------| 2438 |atan2 |conjf |feholdexcept |llrintl |scalblnl | 2439 |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.1) [1] |(GLIBC_2.1) [1]|(GLIBC_2.1) [1]| 2440 |[1] |[1] | | | | 2441 |------------+--------------+-----------------+---------------+---------------| 2442 |atan2f |conjl |feraiseexcept |llround |scalbn | 2443 |(GLIBC_2.0) |(GLIBC_2.1) |(GLIBC_2.2) [1] |(GLIBC_2.1) [1]|(GLIBC_2.0) [1]| 2444 |[1] |[1] | | | | 2445 |------------+--------------+-----------------+---------------+---------------| 2446 |atan2l |copysign |fesetenv |llroundf |scalbnf | 2447 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.2) [1] |(GLIBC_2.1) [1]|(GLIBC_2.0) [1]| 2448 |[1] |[1] | | | | 2449 |------------+--------------+-----------------+---------------+---------------| 2450 |atanf |copysignf |fesetexceptflag |llroundl |scalbnl | 2451 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.2) [1] |(GLIBC_2.1) [1]|(GLIBC_2.0) [1]| 2452 |[1] |[1] | | | | 2453 |------------+--------------+-----------------+---------------+---------------| 2454 |atanh |copysignl |fesetround |log(GLIBC_2.0) |significand | 2455 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.1) [1] |[1] |(GLIBC_2.0) [2]| 2456 |[1] |[1] | | | | 2457 |------------+--------------+-----------------+---------------+---------------| 2458 |atanhf |cos(GLIBC_2.0)|fetestexcept |log10 |significandf | 2459 |(GLIBC_2.0) |[1] |(GLIBC_2.1) [1] |(GLIBC_2.0) [1]|(GLIBC_2.0) [2]| 2460 |[1] | | | | | 2461 |------------+--------------+-----------------+---------------+---------------| 2462 |atanhl |cosf |feupdateenv |log10f |significandl | 2463 |(GLIBC_2.0) |(GLIBC_2.0) |(GLIBC_2.2) [1] |(GLIBC_2.0) [1]|(GLIBC_2.0) [2]| 2464 |[1] |[1] | | | | 2465 |------------+--------------+-----------------+---------------+---------------| 2466 |atanl |cosh |finite(GLIBC_2.0)|log10l |sin(GLIBC_2.0) | 2467 |(GLIBC_2.0) |(GLIBC_2.0) |[3] |(GLIBC_2.0) [1]|[1] | 2468 |[1] |[1] | | | | 2469 |------------+--------------+-----------------+---------------+---------------| 2470 |cabs |coshf |finitef |log1p |sincos | 2471 |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.0) [2] |(GLIBC_2.0) [1]|(GLIBC_2.1) [2]| 2472 |[1] |[1] | | | | 2473 |------------+--------------+-----------------+---------------+---------------| 2474 |cabsf |coshl |finitel |logb(GLIBC_2.0)|sincosf | 2475 |(GLIBC_2.1) |(GLIBC_2.0) |(GLIBC_2.0) [2] |[1] |(GLIBC_2.1) [2]| 2476 |[1] |[1] | | | | 2477 |------------+--------------+-----------------+---------------+---------------| 2478 |cabsl |cosl |floor(GLIBC_2.0) |logf(GLIBC_2.0)|sincosl | 2479 |(GLIBC_2.1) |(GLIBC_2.0) |[1] |[1] |(GLIBC_2.1) [2]| 2480 |[1] |[1] | | | | 2481 |------------+--------------+-----------------+---------------+---------------| 2482 |cacos |cpow |floorf(GLIBC_2.0)|logl(GLIBC_2.0)|sinf(GLIBC_2.0)| 2483 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |[1] |[1] | 2484 |[1] |[1] | | | | 2485 |------------+--------------+-----------------+---------------+---------------| 2486 |cacosf |cpowf |floorl(GLIBC_2.0)|lrint |sinh(GLIBC_2.0)| 2487 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|[1] | 2488 |[1] |[1] | | | | 2489 |------------+--------------+-----------------+---------------+---------------| 2490 |cacosh |cpowl |fma(GLIBC_2.1) |lrintf |sinhf | 2491 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|(GLIBC_2.0) [1]| 2492 |[1] |[1] | | | | 2493 |------------+--------------+-----------------+---------------+---------------| 2494 |cacoshf |cproj |fmaf(GLIBC_2.1) |lrintl |sinhl | 2495 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|(GLIBC_2.0) [1]| 2496 |[1] |[1] | | | | 2497 |------------+--------------+-----------------+---------------+---------------| 2498 |cacoshl |cprojf |fmal(GLIBC_2.1) |lround |sinl(GLIBC_2.0)| 2499 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|[1] | 2500 |[1] |[1] | | | | 2501 |------------+--------------+-----------------+---------------+---------------| 2502 |cacosl |cprojl |fmax(GLIBC_2.1) |lroundf |sqrt(GLIBC_2.0)| 2503 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|[1] | 2504 |[1] |[1] | | | | 2505 |------------+--------------+-----------------+---------------+---------------| 2506 |carg |creal |fmaxf(GLIBC_2.1) |lroundl |sqrtf | 2507 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|(GLIBC_2.0) [1]| 2508 |[1] |[1] | | | | 2509 |------------+--------------+-----------------+---------------+---------------| 2510 |cargf |crealf |fmaxl(GLIBC_2.1) |matherr |sqrtl | 2511 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [2]|(GLIBC_2.0) [1]| 2512 |[1] |[1] | | | | 2513 |------------+--------------+-----------------+---------------+---------------| 2514 |cargl |creall |fmin(GLIBC_2.1) |modf(GLIBC_2.0)|tan(GLIBC_2.0) | 2515 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |[1] |[1] | 2516 |[1] |[1] | | | | 2517 |------------+--------------+-----------------+---------------+---------------| 2518 |casin |csin |fminf(GLIBC_2.1) |modff |tanf(GLIBC_2.0)| 2519 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [1]|[1] | 2520 |[1] |[1] | | | | 2521 |------------+--------------+-----------------+---------------+---------------| 2522 |casinf |csinf |fminl(GLIBC_2.1) |modfl |tanh(GLIBC_2.0)| 2523 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.0) [1]|[1] | 2524 |[1] |[1] | | | | 2525 |------------+--------------+-----------------+---------------+---------------| 2526 |casinh |csinh |fmod(GLIBC_2.0) |nan(GLIBC_2.1) |tanhf | 2527 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |[1] |(GLIBC_2.0) [1]| 2528 |[1] |[1] | | | | 2529 |------------+--------------+-----------------+---------------+---------------| 2530 |casinhf |csinhf |fmodf(GLIBC_2.0) |nanf(GLIBC_2.1)|tanhl | 2531 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |[1] |(GLIBC_2.0) [1]| 2532 |[1] |[1] | | | | 2533 |------------+--------------+-----------------+---------------+---------------| 2534 |casinhl |csinhl |fmodl(GLIBC_2.0) |nanl(GLIBC_2.1)|tanl(GLIBC_2.0)| 2535 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |[1] |[1] | 2536 |[1] |[1] | | | | 2537 |------------+--------------+-----------------+---------------+---------------| 2538 |casinl |csinl |frexp(GLIBC_2.0) |nearbyint |tgamma | 2539 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|(GLIBC_2.1) [1]| 2540 |[1] |[1] | | | | 2541 |------------+--------------+-----------------+---------------+---------------| 2542 |catan |csqrt |frexpf(GLIBC_2.0)|nearbyintf |tgammaf | 2543 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|(GLIBC_2.1) [1]| 2544 |[1] |[1] | | | | 2545 |------------+--------------+-----------------+---------------+---------------| 2546 |catanf |csqrtf |frexpl(GLIBC_2.0)|nearbyintl |tgammal | 2547 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|(GLIBC_2.1) [1]| 2548 |[1] |[1] | | | | 2549 |------------+--------------+-----------------+---------------+---------------| 2550 |catanh |csqrtl |gamma(GLIBC_2.0) |nextafter |trunc | 2551 |(GLIBC_2.1) |(GLIBC_2.1) |[3] |(GLIBC_2.0) [1]|(GLIBC_2.1) [1]| 2552 |[1] |[1] | | | | 2553 |------------+--------------+-----------------+---------------+---------------| 2554 |catanhf |ctan |gammaf(GLIBC_2.0)|nextafterf |truncf | 2555 |(GLIBC_2.1) |(GLIBC_2.1) |[2] |(GLIBC_2.0) [1]|(GLIBC_2.1) [1]| 2556 |[1] |[1] | | | | 2557 |------------+--------------+-----------------+---------------+---------------| 2558 |catanhl |ctanf |gammal(GLIBC_2.0)|nextafterl |truncl | 2559 |(GLIBC_2.1) |(GLIBC_2.1) |[2] |(GLIBC_2.0) [1]|(GLIBC_2.1) [1]| 2560 |[1] |[1] | | | | 2561 |------------+--------------+-----------------+---------------+---------------| 2562 |catanl |ctanh |hypot(GLIBC_2.0) |nexttoward |y0(GLIBC_2.0) | 2563 |(GLIBC_2.1) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|[1] | 2564 |[1] |[1] | | | | 2565 |------------+--------------+-----------------+---------------+---------------| 2566 |cbrt |ctanhf |hypotf(GLIBC_2.0)|nexttowardf |y0f(GLIBC_2.0) | 2567 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|[2] | 2568 |[1] |[1] | | | | 2569 |------------+--------------+-----------------+---------------+---------------| 2570 |cbrtf |ctanhl |hypotl(GLIBC_2.0)|nexttowardl |y0l(GLIBC_2.0) | 2571 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |(GLIBC_2.1) [1]|[2] | 2572 |[1] |[1] | | | | 2573 |------------+--------------+-----------------+---------------+---------------| 2574 |cbrtl |ctanl |ilogb(GLIBC_2.0) |pow(GLIBC_2.0) |y1(GLIBC_2.0) | 2575 |(GLIBC_2.0) |(GLIBC_2.1) |[1] |[1] |[1] | 2576 |[1] |[1] | | | | 2577 |------------+--------------+-----------------+---------------+---------------| 2578 |ccos |dremf |ilogbf(GLIBC_2.0)|pow10 |y1f(GLIBC_2.0) | 2579 |(GLIBC_2.1) |(GLIBC_2.0) |[1] |(GLIBC_2.1) [2]|[2] | 2580 |[1] |[2] | | | | 2581 |------------+--------------+-----------------+---------------+---------------| 2582 |ccosf |dreml |ilogbl(GLIBC_2.0)|pow10f |y1l(GLIBC_2.0) | 2583 |(GLIBC_2.1) |(GLIBC_2.0) |[1] |(GLIBC_2.1) [2]|[2] | 2584 |[1] |[2] | | | | 2585 |------------+--------------+-----------------+---------------+---------------| 2586 |ccosh |erf(GLIBC_2.0)| |pow10l |yn(GLIBC_2.0) | 2587 |(GLIBC_2.1) |[1] |j0(GLIBC_2.0) [1]|(GLIBC_2.1) [2]|[1] | 2588 |[1] | | | | | 2589 |------------+--------------+-----------------+---------------+---------------| 2590 |ccoshf |erfc |j0f(GLIBC_2.0) |powf(GLIBC_2.0)|ynf(GLIBC_2.0) | 2591 |(GLIBC_2.1) |(GLIBC_2.0) |[2] |[1] |[2] | 2592 |[1] |[1] | | | | 2593 |------------+--------------+-----------------+---------------+---------------| 2594 |ccoshl |erfcf |j0l(GLIBC_2.0) |powl(GLIBC_2.0)|ynl(GLIBC_2.0) | 2595 |(GLIBC_2.1) |(GLIBC_2.0) |[2] |[1] |[2] | 2596 |[1] |[1] | | | | 2597 |------------+--------------+-----------------+---------------+---------------| 2598 |ccosl |erfcl | |remainder | | 2599 |(GLIBC_2.1) |(GLIBC_2.0) |j1(GLIBC_2.0) [1]|(GLIBC_2.0) [1]| | 2600 |[1] |[1] | | | | 2601 |------------+--------------+-----------------+---------------+---------------| 2602 |ceil |erff |j1f(GLIBC_2.0) |remainderf | | 2603 |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) [1]| | 2604 |[1] |[1] | | | | 2605 |------------+--------------+-----------------+---------------+---------------| 2606 |ceilf |erfl |j1l(GLIBC_2.0) |remainderl | | 2607 |(GLIBC_2.0) |(GLIBC_2.0) |[2] |(GLIBC_2.0) [1]| | 2608 |[1] |[1] | | | | 2609 |------------+--------------+-----------------+---------------+---------------| 2610 |ceill |exp(GLIBC_2.0)| |remquo | | 2611 |(GLIBC_2.0) |[1] |jn(GLIBC_2.0) [1]|(GLIBC_2.1) [1]| | 2612 |[1] | | | | | 2613 +-----------------------------------------------------------------------------+ 2614 2615 Referenced Specification(s) 2616 2617 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 2618 Specification(SUS) V3 2619 2620 [2]. ISO/IEC 9899: 1999, Programming Languages --C 2621 2622 [3]. CAE Specification, January 1997, System Interfaces and Headers (XSH),Issue 2623 5 (ISBN: 1-85912-181-0, C606) 2624 2625 An LSB conforming implementation shall provide the architecture specific data 2626 interfaces for Math specified in Table 6-30, with the full functionality as 2627 described in the referenced underlying specification. 2628 2629 Table 6-30. libm - Math Data Interfaces 2630 2631 +-------------------------------+ 2632 |signgam(GLIBC_2.0) [1] | | | | | 2633 +-------------------------------+ 2634 2635 Referenced Specification(s) 2636 2637 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 2638 Specification(SUS) V3 2639 2640 ------------------------------------------------------------------------------- 2641 2642 Interfaces for libpthread 2643 2644 Table 6-31 defines the library name and shared object name for the libpthread 2645 library 2646 2647 Table 6-31. libpthread Definition 2648 2649 +-------------------------+ 2650 |Library:|libpthread | 2651 |--------+----------------| 2652 |SONAME: |libpthread.so.0 | 2653 +-------------------------+ 2654 2655 The behavior of the interfaces in this library is specified by the following 2656 specifications: 2657 2658 Large File Support 2659 Linux Standard Base 2660 ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 2661 Specification(SUS) V3 2662 2663 ------------------------------------------------------------------------------- 2664 2665 Realtime Threads 2666 2667 ------------------------------------------------------------------------------- 2668 2669 Interfaces for Realtime Threads 2670 2671 No external functions are defined for libpthread - Realtime Threads 2672 2673 ------------------------------------------------------------------------------- 2674 2675 Advanced Realtime Threads 2676 2677 ------------------------------------------------------------------------------- 2678 2679 Interfaces for Advanced Realtime Threads 2680 2681 No external functions are defined for libpthread - Advanced Realtime Threads 2682 2683 ------------------------------------------------------------------------------- 2684 2685 Posix Threads 2686 2687 ------------------------------------------------------------------------------- 2688 2689 Interfaces for Posix Threads 2690 2691 An LSB conforming implementation shall provide the architecture specific 2692 functions for Posix Threads specified in Table 6-32, with the full 2693 functionality as described in the referenced underlying specification. 2694 2695 Table 6-32. libpthread - Posix Threads Function Interfaces 2696 2697 +-----------------------------------------------------------------------------------------------------------------------------------------+ 2698 |_pthread_cleanup_pop |pthread_cancel(GLIBC_2.0) |pthread_join(GLIBC_2.0) [2] |pthread_rwlock_destroy |pthread_setconcurrency| 2699 |(GLIBC_2.0) [1] |[2] | |(GLIBC_2.1) [2] |(GLIBC_2.1) [2] | 2700 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2701 |_pthread_cleanup_push |pthread_cond_broadcast |pthread_key_create |pthread_rwlock_init |pthread_setspecific | 2702 |(GLIBC_2.0) [1] |(GLIBC_2.3.2) [2] |(GLIBC_2.0) [2] |(GLIBC_2.1) [2] |(GLIBC_2.0) [2] | 2703 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2704 |pread(GLIBC_2.2) [2] |pthread_cond_destroy |pthread_key_delete |pthread_rwlock_rdlock |pthread_sigmask | 2705 | |(GLIBC_2.3.2) [2] |(GLIBC_2.0) [2] |(GLIBC_2.1) [2] |(GLIBC_2.0) [2] | 2706 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2707 |pread64(GLIBC_2.2) [3] |pthread_cond_init |pthread_kill(GLIBC_2.0) [2] |pthread_rwlock_timedrdlock |pthread_testcancel | 2708 | |(GLIBC_2.3.2) [2] | |(GLIBC_2.2) [2] |(GLIBC_2.0) [2] | 2709 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2710 |pthread_attr_destroy |pthread_cond_signal |pthread_mutex_destroy |pthread_rwlock_timedwrlock |pwrite(GLIBC_2.2) [2] | 2711 |(GLIBC_2.0) [2] |(GLIBC_2.3.2) [2] |(GLIBC_2.0) [2] |(GLIBC_2.2) [2] | | 2712 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2713 |pthread_attr_getdetachstate|pthread_cond_timedwait |pthread_mutex_init |pthread_rwlock_tryrdlock |pwrite64(GLIBC_2.2) | 2714 |(GLIBC_2.0) [2] |(GLIBC_2.3.2) [2] |(GLIBC_2.0) [2] |(GLIBC_2.1) [2] |[3] | 2715 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2716 |pthread_attr_getguardsize |pthread_cond_wait |pthread_mutex_lock |pthread_rwlock_trywrlock |sem_close(GLIBC_2.1.1)| 2717 |(GLIBC_2.1) [2] |(GLIBC_2.3.2) [2] |(GLIBC_2.0) [2] |(GLIBC_2.1) [2] |[2] | 2718 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2719 |pthread_attr_getschedparam |pthread_condattr_destroy |pthread_mutex_trylock |pthread_rwlock_unlock |sem_destroy(GLIBC_2.1)| 2720 |(GLIBC_2.0) [2] |(GLIBC_2.0) [2] |(GLIBC_2.0) [2] |(GLIBC_2.1) [2] |[2] | 2721 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2722 |pthread_attr_getstackaddr |pthread_condattr_getpshared|pthread_mutex_unlock |pthread_rwlock_wrlock |sem_getvalue | 2723 |(GLIBC_2.1) [2] |(GLIBC_2.2) [2] |(GLIBC_2.0) [2] |(GLIBC_2.1) [2] |(GLIBC_2.1) [2] | 2724 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2725 |pthread_attr_getstacksize |pthread_condattr_init |pthread_mutexattr_destroy |pthread_rwlockattr_destroy |sem_init(GLIBC_2.1) | 2726 |(GLIBC_2.1) [2] |(GLIBC_2.0) [2] |(GLIBC_2.0) [2] |(GLIBC_2.1) [2] |[2] | 2727 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2728 |pthread_attr_init |pthread_condattr_setpshared|pthread_mutexattr_getpshared|pthread_rwlockattr_getpshared|sem_open(GLIBC_2.1.1) | 2729 |(GLIBC_2.1) [2] |(GLIBC_2.2) [2] |(GLIBC_2.2) [2] |(GLIBC_2.1) [2] |[2] | 2730 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2731 |pthread_attr_setdetachstate|pthread_create(GLIBC_2.1) |pthread_mutexattr_gettype |pthread_rwlockattr_init |sem_post(GLIBC_2.1) | 2732 |(GLIBC_2.0) [2] |[2] |(GLIBC_2.1) [2] |(GLIBC_2.1) [2] |[2] | 2733 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2734 |pthread_attr_setguardsize |pthread_detach(GLIBC_2.0) |pthread_mutexattr_init |pthread_rwlockattr_setpshared|sem_timedwait | 2735 |(GLIBC_2.1) [2] |[2] |(GLIBC_2.0) [2] |(GLIBC_2.1) [2] |(GLIBC_2.2) [2] | 2736 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2737 |pthread_attr_setschedparam |pthread_equal(GLIBC_2.0) |pthread_mutexattr_setpshared|pthread_self(GLIBC_2.0) [2] |sem_trywait(GLIBC_2.1)| 2738 |(GLIBC_2.0) [2] |[2] |(GLIBC_2.2) [2] | |[2] | 2739 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2740 |pthread_attr_setstackaddr |pthread_exit(GLIBC_2.0) [2]|pthread_mutexattr_settype |pthread_setcancelstate |sem_unlink | 2741 |(GLIBC_2.1) [2] | |(GLIBC_2.1) [2] |(GLIBC_2.0) [2] |(GLIBC_2.1.1) [2] | 2742 |---------------------------+---------------------------+----------------------------+-----------------------------+----------------------| 2743 |pthread_attr_setstacksize |pthread_getspecific |pthread_once(GLIBC_2.0) [2] |pthread_setcanceltype |sem_wait(GLIBC_2.1) | 2744 |(GLIBC_2.1) [2] |(GLIBC_2.0) [2] | |(GLIBC_2.0) [2] |[2] | 2745 +-----------------------------------------------------------------------------------------------------------------------------------------+ 2746 2747 Referenced Specification(s) 2748 2749 [1]. Linux Standard Base 2750 2751 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 2752 Specification(SUS) V3 2753 2754 [3]. Large File Support 2755 2756 ------------------------------------------------------------------------------- 2757 2758 Interfaces for libgcc_s 2759 2760 Table 6-33 defines the library name and shared object name for the libgcc_s 2761 library 2762 2763 Table 6-33. libgcc_s Definition 2764 2765 +-----------------------+ 2766 |Library:|libgcc_s | 2767 |--------+--------------| 2768 |SONAME: |libgcc_s.so.1 | 2769 +-----------------------+ 2770 2771 The behavior of the interfaces in this library is specified by the following 2772 specifications: 2773 2774 Linux Standard Base 2775 2776 ------------------------------------------------------------------------------- 2777 2778 Unwind Library 2779 2780 ------------------------------------------------------------------------------- 2781 2782 Interfaces for Unwind Library 2783 2784 An LSB conforming implementation shall provide the architecture specific 2785 functions for Unwind Library specified in Table 6-34, with the full 2786 functionality as described in the referenced underlying specification. 2787 2788 Table 6-34. libgcc_s - Unwind Library Function Interfaces 2789 2790 +-------------------------------------------------------------------------------------------------------------------+ 2791 |_Unwind_DeleteException|_Unwind_GetDataRelBase|_Unwind_GetLanguageSpecificData|_Unwind_RaiseException|_Unwind_SetIP| 2792 |(GCC_3.0) [1] |(GCC_3.0) [1] |(GCC_3.0) [1] |(GCC_3.0) [1] |(GCC_3.0) [1]| 2793 |-----------------------+----------------------+-------------------------------+----------------------+-------------| 2794 |_Unwind_Find_FDE |_Unwind_GetGR(GCC_3.0)|_Unwind_GetRegionStart(GCC_3.0)|_Unwind_Resume | | 2795 |(GCC_3.0) [1] |[1] |[1] |(GCC_3.0) [1] | | 2796 |-----------------------+----------------------+-------------------------------+----------------------+-------------| 2797 |_Unwind_ForcedUnwind |_Unwind_GetIP(GCC_3.0)|_Unwind_GetTextRelBase(GCC_3.0)|_Unwind_SetGR(GCC_3.0)| | 2798 |(GCC_3.0) [1] |[1] |[1] |[1] | | 2799 +-------------------------------------------------------------------------------------------------------------------+ 2800 2801 Referenced Specification(s) 2802 2803 [1]. Linux Standard Base 2804 2805 ------------------------------------------------------------------------------- 2806 2807 Interface Definitions for libgcc_s 2808 2809 Table of Contents 2810 _Unwind_DeleteException -- private C++ error handling method 2811 _Unwind_Find_FDE -- private C++ error handling method 2812 _Unwind_ForcedUnwind -- private C++ error handling method 2813 _Unwind_GetDataRelBase -- private IA64 C++ error handling method 2814 _Unwind_GetGR -- private C++ error handling method 2815 _Unwind_GetIP -- private C++ error handling method 2816 _Unwind_GetLanguageSpecificData -- private C++ error handling method 2817 _Unwind_GetRegionStart -- private C++ error handling method 2818 _Unwind_GetTextRelBase -- private IA64 C++ error handling method 2819 _Unwind_RaiseException -- private C++ error handling method 2820 _Unwind_Resume -- private C++ error handling method 2821 _Unwind_SetGR -- private C++ error handling method 2822 _Unwind_SetIP -- private C++ error handling method 2823 2824 The following interfaces are included in libgcc_s and are defined by this 2825 specification. Unless otherwise noted, these interfaces shall be included in 2826 the source standard. 2827 2828 Other interfaces listed above for libgcc_s shall behave as described in the 2829 referenced base document. 2830 2831 _Unwind_DeleteException 2832 2833 Name 2834 2835 _Unwind_DeleteException -- private C++ error handling method 2836 2837 Synopsis 2838 2839 void _Unwind_DeleteException((struct _Unwind_Exception *object)); 2840 2841 Description 2842 2843 _Unwind_DeleteException deletes the given exception object. If a given runtime 2844 resumes normal execution after catching a foreign exception, it will not know 2845 how to delete that exception. Such an exception shall be deleted by calling 2846 _Unwind_DeleteException. This is a convenience function that calls the function 2847 pointed to by the exception_cleanup field of the exception header. 2848 2849 _Unwind_Find_FDE 2850 2851 Name 2852 2853 _Unwind_Find_FDE -- private C++ error handling method 2854 2855 Synopsis 2856 2857 fde * _Unwind_Find_FDE(void *pc, (struct dwarf_eh_bases *bases)); 2858 2859 Description 2860 2861 _Unwind_Find_FDE looks for the object containing pc, then inserts into bases. 2862 2863 _Unwind_ForcedUnwind 2864 2865 Name 2866 2867 _Unwind_ForcedUnwind -- private C++ error handling method 2868 2869 Synopsis 2870 2871 _Unwind_Reason_Code _Unwind_ForcedUnwind((struct _Unwind_Exception *object), 2872 _Unwind_Stop_Fn stop, void *stop_parameter); 2873 2874 Description 2875 2876 _Unwind_ForcedUnwind raises an exception for forced unwinding, passing along 2877 the given exception object, which should have its exception_class and 2878 exception_cleanup fields set. The exception object has been allocated by the 2879 language-specific runtime, and has a language-specific format, except that it 2880 shall contain an _Unwind_Exception struct. 2881 2882 Forced unwinding is a single-phase process. stop and stop_parameter control the 2883 termination of the unwind process instead of the usual personality routine 2884 query. stop is called for each unwind frame, with the parameteres described for 2885 the usual personality routine below, plus an additional stop_parameter. 2886 2887 Return Value 2888 2889 When stop identifies the destination frame, it transfers control to the user 2890 code as appropriate without returning, normally after calling 2891 _Unwind_DeleteException. If not, then it should return an _Unwind_Reason_Code 2892 value. 2893 2894 If stop returns any reason code other than _URC_NO_REASON, then the stack state 2895 is indeterminate from the point of view of the caller of _Unwind_ForcedUnwind. 2896 Rather than attempt to return, therefore, the unwind library should use the 2897 exception_cleanup entry in the exception, and then call abort. 2898 2899 _URC_NO_REASON 2900 2901 This is not the destination from. The unwind runtime will call frame's 2902 personality routine with the _UA_FORCE_UNWIND and _UA_CLEANUP_PHASE flag 2903 set in actions, and then unwind to the next frame and call the stop 2904 function again. 2905 2906 _URC_END_OF_STACK 2907 2908 In order to allow _Unwind_ForcedUnwind to perform special processing when 2909 it reaches the end of the stack, the unwind runtime will call it after the 2910 last frame is rejected, with a NULL stack pointer in the context, and the 2911 stop function shall catch this condition. It may return this code if it 2912 cannot handle end-of-stack. 2913 2914 _URC_FATAL_PHASE2_ERROR 2915 2916 The stop function may return this code for other fatal conditions like 2917 stack corruption. 2918 2919 _Unwind_GetDataRelBase 2920 2921 Name 2922 2923 _Unwind_GetDataRelBase -- private IA64 C++ error handling method 2924 2925 Synopsis 2926 2927 _Unwind_Ptr _Unwind_GetDataRelBase((struct _Unwind_Context *context)); 2928 2929 Description 2930 2931 _Unwind_GetDataRelBase returns the global pointer in register one for context. 2932 2933 _Unwind_GetGR 2934 2935 Name 2936 2937 _Unwind_GetGR -- private C++ error handling method 2938 2939 Synopsis 2940 2941 _Unwind_Word _Unwind_GetGR((struct _Unwind_Context *context), int index); 2942 2943 Description 2944 2945 _Unwind_GetGR returns data at index found in context. The register is 2946 identified by its index: 0 to 31 are for the fixed registers, and 32 to 127 are 2947 for the stacked registers. 2948 2949 During the two phases of unwinding, only GR1 has a guaranteed value, which is 2950 the global pointer of the frame referenced by the unwind context. If the 2951 register has its NAT bit set, the behavior is unspecified. 2952 2953 _Unwind_GetIP 2954 2955 Name 2956 2957 _Unwind_GetIP -- private C++ error handling method 2958 2959 Synopsis 2960 2961 _Unwind_Ptr _Unwind_GetIP((struct _Unwind_Context *context)); 2962 2963 Description 2964 2965 _Unwind_GetIP returns the instruction pointer value for the routine identified 2966 by the unwind context. 2967 2968 _Unwind_GetLanguageSpecificData 2969 2970 Name 2971 2972 _Unwind_GetLanguageSpecificData -- private C++ error handling method 2973 2974 Synopsis 2975 2976 _Unwind_Ptr _Unwind_GetLanguageSpecificData((struct _Unwind_Context *context), 2977 uint value); 2978 2979 Description 2980 2981 _Unwind_GetLanguageSpecificData returns the address of the language specific 2982 data area for the current stack frame. 2983 2984 _Unwind_GetRegionStart 2985 2986 Name 2987 2988 _Unwind_GetRegionStart -- private C++ error handling method 2989 2990 Synopsis 2991 2992 _Unwind_Ptr _Unwind_GetRegionStart((struct _Unwind_Context *context)); 2993 2994 Description 2995 2996 _Unwind_GetRegionStart routine returns the address (i.e., 0) of the beginning 2997 of the procedure or code fragment described by the current unwind descriptor 2998 block. 2999 3000 _Unwind_GetTextRelBase 3001 3002 Name 3003 3004 _Unwind_GetTextRelBase -- private IA64 C++ error handling method 3005 3006 Synopsis 3007 3008 _Unwind_Ptr _Unwind_GetTextRelBase((struct _Unwind_Context *context)); 3009 3010 Description 3011 3012 _Unwind_GetTextRelBase calls the abort method, then returns. 3013 3014 _Unwind_RaiseException 3015 3016 Name 3017 3018 _Unwind_RaiseException -- private C++ error handling method 3019 3020 Synopsis 3021 3022 _Unwind_Reason_Code _Unwind_RaiseException((struct _Unwind_Exception *object)); 3023 3024 Description 3025 3026 _Unwind_RaiseException raises an exception, passing along the given exception 3027 object, which should have its exception_class and exception_cleanup fields set. 3028 The exception object has been allocated by the language-specific runtime, and 3029 has a language-specific format, exception that it shall contain an 3030 _Unwind_Exception. 3031 3032 Return Value 3033 3034 _Unwind_RaiseException does not return unless an error condition is found. If 3035 an error condition occurs, an _Unwind_Reason_Code is returnd: 3036 3037 _URC_END_OF_STACK 3038 3039 The unwinder encountered the end of the stack during phase one without 3040 finding a handler. The unwind runtime will not have modified the stack. The 3041 C++ runtime will normally call uncaught_exception in this case. 3042 3043 _URC_FATAL_PHASE1_ERROR 3044 3045 The unwinder encountered an unexpected error during phase one, because of 3046 something like stack corruption. The unwind runtime will not have modified 3047 the stack. The C++ runtime will normally call terminate in this case. 3048 3049 _URC_FATAL_PHASE2_ERROR 3050 3051 The unwinder encountered an unexpected error during phase two. This is 3052 usually a throw, which will call terminate. 3053 3054 _Unwind_Resume 3055 3056 Name 3057 3058 _Unwind_Resume -- private C++ error handling method 3059 3060 Synopsis 3061 3062 void _Unwind_Resume((struct _Unwind_Exception *object)); 3063 3064 Description 3065 3066 _Unwind_Resume resumes propagation of an existing exception object. A call to 3067 this routine is inserted as the end of a landing pad that performs cleanup, but 3068 does not resume normal execution. It causes unwinding to proceed further. 3069 3070 _Unwind_SetGR 3071 3072 Name 3073 3074 _Unwind_SetGR -- private C++ error handling method 3075 3076 Synopsis 3077 3078 void _Unwind_SetGR((struct _Unwind_Context *context), int index, uint value); 3079 3080 Description 3081 3082 _Unwind_SetGR sets the value of the register indexed for the routine identified 3083 by the unwind context. 3084 3085 _Unwind_SetIP 3086 3087 Name 3088 3089 _Unwind_SetIP -- private C++ error handling method 3090 3091 Synopsis 3092 3093 void _Unwind_SetIP((struct _Unwind_Context *context), uint value); 3094 3095 Description 3096 3097 _Unwind_SetIP sets the value of the instruction pointer for the routine 3098 identified by the unwind context 3099 3100 ------------------------------------------------------------------------------- 3101 3102 Interfaces for libdl 3103 3104 Table 6-35 defines the library name and shared object name for the libdl 3105 library 3106 3107 Table 6-35. libdl Definition 3108 3109 +--------------------+ 3110 |Library:|libdl | 3111 |--------+-----------| 3112 |SONAME: |libdl.so.2 | 3113 +--------------------+ 3114 3115 The behavior of the interfaces in this library is specified by the following 3116 specifications: 3117 3118 Linux Standard Base 3119 ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 3120 Specification(SUS) V3 3121 3122 ------------------------------------------------------------------------------- 3123 3124 Dynamic Loader 3125 3126 ------------------------------------------------------------------------------- 3127 3128 Interfaces for Dynamic Loader 3129 3130 An LSB conforming implementation shall provide the architecture specific 3131 functions for Dynamic Loader specified in Table 6-36, with the full 3132 functionality as described in the referenced underlying specification. 3133 3134 Table 6-36. libdl - Dynamic Loader Function Interfaces 3135 3136 +------------------------------------------------------------------------------+ 3137 |dladdr |dlclose |dlerror |dlopen |dlsym | 3138 |(GLIBC_2.0) [1]|(GLIBC_2.0) [2]|(GLIBC_2.0) [2]|(GLIBC_2.1) [1]|(GLIBC_2.0) | 3139 | | | | |[1] | 3140 +------------------------------------------------------------------------------+ 3141 3142 Referenced Specification(s) 3143 3144 [1]. Linux Standard Base 3145 3146 [2]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 3147 Specification(SUS) V3 3148 3149 ------------------------------------------------------------------------------- 3150 3151 Interfaces for libcrypt 3152 3153 Table 6-37 defines the library name and shared object name for the libcrypt 3154 library 3155 3156 Table 6-37. libcrypt Definition 3157 3158 +-----------------------+ 3159 |Library:|libcrypt | 3160 |--------+--------------| 3161 |SONAME: |libcrypt.so.1 | 3162 +-----------------------+ 3163 3164 The behavior of the interfaces in this library is specified by the following 3165 specifications: 3166 3167 ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 3168 Specification(SUS) V3 3169 3170 ------------------------------------------------------------------------------- 3171 3172 Encryption 3173 3174 ------------------------------------------------------------------------------- 3175 3176 Interfaces for Encryption 3177 3178 An LSB conforming implementation shall provide the architecture specific 3179 functions for Encryption specified in Table 6-38, with the full functionality 3180 as described in the referenced underlying specification. 3181 3182 Table 6-38. libcrypt - Encryption Function Interfaces 3183 3184 +---------------------------------------------------------------------+ 3185 |crypt(GLIBC_2.0) [1]|encrypt(GLIBC_2.0) [1]|setkey(GLIBC_2.0) [1]| | | 3186 +---------------------------------------------------------------------+ 3187 3188 Referenced Specification(s) 3189 3190 [1]. ISO/IEC 9945:2003 Portable Operating System(POSIX)and The Single UNIX 3191 Specification(SUS) V3 3192 3193 III. Utility Libraries 3194 3195 Table of Contents 3196 7. Libraries 3197 3198 ------------------------------------------------------------------------------- 3199 3200 Chapter 7. Libraries 3201 3202 The Utility libraries are those that are commonly used, but not part of the 3203 Single Unix Specification. 3204 3205 ------------------------------------------------------------------------------- 3206 3207 Interfaces for libz 3208 3209 Table 7-1 defines the library name and shared object name for the libz library 3210 3211 Table 7-1. libz Definition 3212 3213 +-------------------+ 3214 |Library:|libz | 3215 |--------+----------| 3216 |SONAME: |libz.so.1 | 3217 +-------------------+ 3218 3219 ------------------------------------------------------------------------------- 3220 3221 Compression Library 3222 3223 ------------------------------------------------------------------------------- 3224 3225 Interfaces for Compression Library 3226 3227 No external functions are defined for libz - Compression Library 3228 3229 ------------------------------------------------------------------------------- 3230 3231 Interfaces for libncurses 3232 3233 Table 7-2 defines the library name and shared object name for the libncurses 3234 library 3235 3236 Table 7-2. libncurses Definition 3237 3238 +-------------------------+ 3239 |Library:|libncurses | 3240 |--------+----------------| 3241 |SONAME: |libncurses.so.5 | 3242 +-------------------------+ 3243 3244 ------------------------------------------------------------------------------- 3245 3246 Curses 3247 3248 ------------------------------------------------------------------------------- 3249 3250 Interfaces for Curses 3251 3252 No external functions are defined for libncurses - Curses 3253 3254 ------------------------------------------------------------------------------- 3255 3256 Interfaces for libutil 3257 3258 Table 7-3 defines the library name and shared object name for the libutil 3259 library 3260 3261 Table 7-3. libutil Definition 3262 3263 +----------------------+ 3264 |Library:|libutil | 3265 |--------+-------------| 3266 |SONAME: |libutil.so.1 | 3267 +----------------------+ 3268 3269 The behavior of the interfaces in this library is specified by the following 3270 specifications: 3271 3272 Linux Standard Base 3273 3274 ------------------------------------------------------------------------------- 3275 3276 Utility Functions 3277 3278 ------------------------------------------------------------------------------- 3279 3280 Interfaces for Utility Functions 3281 3282 An LSB conforming implementation shall provide the architecture specific 3283 functions for Utility Functions specified in Table 7-4, with the full 3284 functionality as described in the referenced underlying specification. 3285 3286 Table 7-4. libutil - Utility Functions Function Interfaces 3287 3288 +--------------------------------------------------------------------------+ 3289 |forkpty(GLIBC_2.0) [1]|login_tty(GLIBC_2.0) [1]|logwtmp(GLIBC_2.0) [1]| | | 3290 |----------------------+------------------------+----------------------+-+-| 3291 |login(GLIBC_2.0) [1] |logout(GLIBC_2.0) [1] |openpty(GLIBC_2.0) [1]| | | 3292 +--------------------------------------------------------------------------+ 3293 3294 Referenced Specification(s) 3295 3296 [1]. Linux Standard Base 3297 3298 ------------------------------------------------------------------------------- 3299 3300 Appendix A. GNU Free Documentation License 3301 3302 Version 1.1, March 2000 3303 3304 Copyright (C) 2000 Free Software Foundation, Inc. 59 Temple Place, Suite 3305 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute 3306 verbatim copies of this license document, but changing it is not allowed. 3307 3308 ------------------------------------------------------------------------------- 3309 3310 PREAMBLE 3311 3312 The purpose of this License is to make a manual, textbook, or other written 3313 document "free" in the sense of freedom: to assure everyone the effective 3314 freedom to copy and redistribute it, with or without modifying it, either 3315 commercially or noncommercially. Secondarily, this License preserves for the 3316 author and publisher a way to get credit for their work, while not being 3317 considered responsible for modifications made by others. 3318 3319 This License is a kind of "copyleft", which means that derivative works of the 3320 document must themselves be free in the same sense. It complements the GNU 3321 General Public License, which is a copyleft license designed for free software. 3322 3323 We have designed this License in order to use it for manuals for free software, 3324 because free software needs free documentation: a free program should come with 3325 manuals providing the same freedoms that the software does. But this License is 3326 not limited to software manuals; it can be used for any textual work, 3327 regardless of subject matter or whether it is published as a printed book. We 3328 recommend this License principally for works whose purpose is instruction or 3329 reference. 3330 3331 ------------------------------------------------------------------------------- 3332 3333 APPLICABILITY AND DEFINITIONS 3334 3335 This License applies to any manual or other work that contains a notice placed 3336 by the copyright holder saying it can be distributed under the terms of this 3337 License. The "Document", below, refers to any such manual or work. Any member 3338 of the public is a licensee, and is addressed as "you". 3339 3340 A "Modified Version" of the Document means any work containing the Document or 3341 a portion of it, either copied verbatim, or with modifications and/or 3342 translated into another language. 3343 3344 A "Secondary Section" is a named appendix or a front-matter section of the 3345 Document that deals exclusively with the relationship of the publishers or 3346 authors of the Document to the Document's overall subject (or to related 3347 matters) and contains nothing that could fall directly within that overall 3348 subject. (For example, if the Document is in part a textbook of mathematics, a 3349 Secondary Section may not explain any mathematics.) The relationship could be a 3350 matter of historical connection with the subject or with related matters, or of 3351 legal, commercial, philosophical, ethical or political position regarding them. 3352 3353 The "Invariant Sections" are certain Secondary Sections whose titles are 3354 designated, as being those of Invariant Sections, in the notice that says that 3355 the Document is released under this License. 3356 3357 The "Cover Texts" are certain short passages of text that are listed, as 3358 Front-Cover Texts or Back-Cover Texts, in the notice that says that the 3359 Document is released under this License. 3360 3361 A "Transparent" copy of the Document means a machine-readable copy, represented 3362 in a format whose specification is available to the general public, whose 3363 contents can be viewed and edited directly and straightforwardly with generic 3364 text editors or (for images composed of pixels) generic paint programs or (for 3365 drawings) some widely available drawing editor, and that is suitable for input 3366 to text formatters or for automatic translation to a variety of formats 3367 suitable for input to text formatters. A copy made in an otherwise Transparent 3368 file format whose markup has been designed to thwart or discourage subsequent 3369 modification by readers is not Transparent. A copy that is not "Transparent" is 3370 called "Opaque". 3371 3372 Examples of suitable formats for Transparent copies include plain ASCII without 3373 markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly 3374 available DTD, and standard-conforming simple HTML designed for human 3375 modification. Opaque formats include PostScript, PDF, proprietary formats that 3376 can be read and edited only by proprietary word processors, SGML or XML for 3377 which the DTD and/or processing tools are not generally available, and the 3378 machine-generated HTML produced by some word processors for output purposes 3379 only. 3380 3381 The "Title Page" means, for a printed book, the title page itself, plus such 3382 following pages as are needed to hold, legibly, the material this License 3383 requires to appear in the title page. For works in formats which do not have 3384 any title page as such, "Title Page" means the text near the most prominent 3385 appearance of the work's title, preceding the beginning of the body of the 3386 text. 3387 3388 ------------------------------------------------------------------------------- 3389 3390 VERBATIM COPYING 3391 3392 You may copy and distribute the Document in any medium, either commercially or 3393 noncommercially, provided that this License, the copyright notices, and the 3394 license notice saying this License applies to the Document are reproduced in 3395 all copies, and that you add no other conditions whatsoever to those of this 3396 License. You may not use technical measures to obstruct or control the reading 3397 or further copying of the copies you make or distribute. However, you may 3398 accept compensation in exchange for copies. If you distribute a large enough 3399 number of copies you must also follow the conditions in section 3. 3400 3401 You may also lend copies, under the same conditions stated above, and you may 3402 publicly display copies. 3403 3404 ------------------------------------------------------------------------------- 3405 3406 COPYING IN QUANTITY 3407 3408 If you publish printed copies of the Document numbering more than 100, and the 3409 Document's license notice requires Cover Texts, you must enclose the copies in 3410 covers that carry, clearly and legibly, all these Cover Texts: Front-Cover 3411 Texts on the front cover, and Back-Cover Texts on the back cover. Both covers 3412 must also clearly and legibly identify you as the publisher of these copies. 3413 The front cover must present the full title with all words of the title equally 3414 prominent and visible. You may add other material on the covers in addition. 3415 Copying with changes limited to the covers, as long as they preserve the title 3416 of the Document and satisfy these conditions, can be treated as verbatim 3417 copying in other respects. 3418 3419 If the required texts for either cover are too voluminous to fit legibly, you 3420 should put the first ones listed (as many as fit reasonably) on the actual 3421 cover, and continue the rest onto adjacent pages. 3422 3423 If you publish or distribute Opaque copies of the Document numbering more than 3424 100, you must either include a machine-readable Transparent copy along with 3425 each Opaque copy, or state in or with each Opaque copy a publicly-accessible 3426 computer-network location containing a complete Transparent copy of the 3427 Document, free of added material, which the general network-using public has 3428 access to download anonymously at no charge using public-standard network 3429 protocols. If you use the latter option, you must take reasonably prudent 3430 steps, when you begin distribution of Opaque copies in quantity, to ensure that 3431 this Transparent copy will remain thus accessible at the stated location until 3432 at least one year after the last time you distribute an Opaque copy (directly 3433 or through your agents or retailers) of that edition to the public. 3434 3435 It is requested, but not required, that you contact the authors of the Document 3436 well before redistributing any large number of copies, to give them a chance to 3437 provide you with an updated version of the Document. 3438 3439 ------------------------------------------------------------------------------- 3440 3441 MODIFICATIONS 3442 3443 You may copy and distribute a Modified Version of the Document under the 3444 conditions of sections 2 and 3 above, provided that you release the Modified 3445 Version under precisely this License, with the Modified Version filling the 3446 role of the Document, thus licensing distribution and modification of the 3447 Modified Version to whoever possesses a copy of it. In addition, you must do 3448 these things in the Modified Version: 3449 3450 A. Use in the Title Page (and on the covers, if any) a title distinct from 3451 that of the Document, and from those of previous versions (which should, if 3452 there were any, be listed in the History section of the Document). You may 3453 use the same title as a previous version if the original publisher of that 3454 version gives permission. 3455 3456 B. List on the Title Page, as authors, one or more persons or entities 3457 responsible for authorship of the modifications in the Modified Version, 3458 together with at least five of the principal authors of the Document (all 3459 of its principal authors, if it has less than five). 3460 3461 C. State on the Title page the name of the publisher of the Modified Version, 3462 as the publisher. 3463 3464 D. Preserve all the copyright notices of the Document. 3465 3466 E. Add an appropriate copyright notice for your modifications adjacent to the 3467 other copyright notices. 3468 3469 F. Include, immediately after the copyright notices, a license notice giving 3470 the public permission to use the Modified Version under the terms of this 3471 License, in the form shown in the Addendum below. 3472 3473 G. Preserve in that license notice the full lists of Invariant Sections and 3474 required Cover Texts given in the Document's license notice. 3475 3476 H. Include an unaltered copy of this License. 3477 3478 I. Preserve the section entitled "History", and its title, and add to it an 3479 item stating at least the title, year, new authors, and publisher of the 3480 Modified Version as given on the Title Page. If there is no section 3481 entitled "History" in the Document, create one stating the title, year, 3482 authors, and publisher of the Document as given on its Title Page, then add 3483 an item describing the Modified Version as stated in the previous sentence. 3484 3485 J. Preserve the network location, if any, given in the Document for public 3486 access to a Transparent copy of the Document, and likewise the network 3487 locations given in the Document for previous versions it was based on. 3488 These may be placed in the "History" section. You may omit a network 3489 location for a work that was published at least four years before the 3490 Document itself, or if the original publisher of the version it refers to 3491 gives permission. 3492 3493 K. In any section entitled "Acknowledgements" or "Dedications", preserve the 3494 section's title, and preserve in the section all the substance and tone of 3495 each of the contributor acknowledgements and/or dedications given therein. 3496 3497 L. Preserve all the Invariant Sections of the Document, unaltered in their 3498 text and in their titles. Section numbers or the equivalent are not 3499 considered part of the section titles. 3500 3501 M. Delete any section entitled "Endorsements". Such a section may not be 3502 included in the Modified Version. 3503 3504 N. Do not retitle any existing section as "Endorsements" or to conflict in 3505 title with any Invariant Section. 3506 3507 If the Modified Version includes new front-matter sections or appendices that 3508 qualify as Secondary Sections and contain no material copied from the Document, 3509 you may at your option designate some or all of these sections as invariant. To 3510 do this, add their titles to the list of Invariant Sections in the Modified 3511 Version's license notice. These titles must be distinct from any other section 3512 titles. 3513 3514 You may add a section entitled "Endorsements", provided it contains nothing but 3515 endorsements of your Modified Version by various parties--for example, 3516 statements of peer review or that the text has been approved by an organization 3517 as the authoritative definition of a standard. 3518 3519 You may add a passage of up to five words as a Front-Cover Text, and a passage 3520 of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts 3521 in the Modified Version. Only one passage of Front-Cover Text and one of 3522 Back-Cover Text may be added by (or through arrangements made by) any one 3523 entity. If the Document already includes a cover text for the same cover, 3524 previously added by you or by arrangement made by the same entity you are 3525 acting on behalf of, you may not add another; but you may replace the old one, 3526 on explicit permission from the previous publisher that added the old one. 3527 3528 The author(s) and publisher(s) of the Document do not by this License give 3529 permission to use their names for publicity for or to assert or imply 3530 endorsement of any Modified Version. 3531 3532 ------------------------------------------------------------------------------- 3533 3534 COMBINING DOCUMENTS 3535 3536 You may combine the Document with other documents released under this License, 3537 under the terms defined in section 4 above for modified versions, provided that 3538 you include in the combination all of the Invariant Sections of all of the 3539 original documents, unmodified, and list them all as Invariant Sections of your 3540 combined work in its license notice. 3541 3542 The combined work need only contain one copy of this License, and multiple 3543 identical Invariant Sections may be replaced with a single copy. If there are 3544 multiple Invariant Sections with the same name but different contents, make the 3545 title of each such section unique by adding at the end of it, in parentheses, 3546 the name of the original author or publisher of that section if known, or else 3547 a unique number. Make the same adjustment to the section titles in the list of 3548 Invariant Sections in the license notice of the combined work. 3549 3550 In the combination, you must combine any sections entitled "History" in the 3551 various original documents, forming one section entitled "History"; likewise 3552 combine any sections entitled "Acknowledgements", and any sections entitled 3553 "Dedications". You must delete all sections entitled "Endorsements." 3554 3555 ------------------------------------------------------------------------------- 3556 3557 COLLECTIONS OF DOCUMENTS 3558 3559 You may make a collection consisting of the Document and other documents 3560 released under this License, and replace the individual copies of this License 3561 in the various documents with a single copy that is included in the collection, 3562 provided that you follow the rules of this License for verbatim copying of each 3563 of the documents in all other respects. 3564 3565 You may extract a single document from such a collection, and distribute it 3566 individually under this License, provided you insert a copy of this License 3567 into the extracted document, and follow this License in all other respects 3568 regarding verbatim copying of that document. 3569 3570 ------------------------------------------------------------------------------- 3571 3572 AGGREGATION WITH INDEPENDENT WORKS 3573 3574 A compilation of the Document or its derivatives with other separate and 3575 independent documents or works, in or on a volume of a storage or distribution 3576 medium, does not as a whole count as a Modified Version of the Document, 3577 provided no compilation copyright is claimed for the compilation. Such a 3578 compilation is called an "aggregate", and this License does not apply to the 3579 other self-contained works thus compiled with the Document, on account of their 3580 being thus compiled, if they are not themselves derivative works of the 3581 Document. 3582 3583 If the Cover Text requirement of section 3 is applicable to these copies of the 3584 Document, then if the Document is less than one quarter of the entire 3585 aggregate, the Document's Cover Texts may be placed on covers that surround 3586 only the Document within the aggregate. Otherwise they must appear on covers 3587 around the whole aggregate. 3588 3589 ------------------------------------------------------------------------------- 3590 3591 TRANSLATION 3592 3593 Translation is considered a kind of modification, so you may distribute 3594 translations of the Document under the terms of section 4. Replacing Invariant 3595 Sections with translations requires special permission from their copyright 3596 holders, but you may include translations of some or all Invariant Sections in 3597 addition to the original versions of these Invariant Sections. You may include 3598 a translation of this License provided that you also include the original 3599 English version of this License. In case of a disagreement between the 3600 translation and the original English version of this License, the original 3601 English version will prevail. 3602 3603 ------------------------------------------------------------------------------- 3604 3605 TERMINATION 3606 3607 You may not copy, modify, sublicense, or distribute the Document except as 3608 expressly provided for under this License. Any other attempt to copy, modify, 3609 sublicense or distribute the Document is void, and will automatically terminate 3610 your rights under this License. However, parties who have received copies, or 3611 rights, from you under this License will not have their licenses terminated so 3612 long as such parties remain in full compliance. 3613 3614 ------------------------------------------------------------------------------- 3615 3616 FUTURE REVISIONS OF THIS LICENSE 3617 3618 The Free Software Foundation may publish new, revised versions of the GNU Free 3619 Documentation License from time to time. Such new versions will be similar in 3620 spirit to the present version, but may differ in detail to address new problems 3621 or concerns. See http://www.gnu.org/copyleft/. 3622 3623 Each version of the License is given a distinguishing version number. If the 3624 Document specifies that a particular numbered version of this License "or any 3625 later version" applies to it, you have the option of following the terms and 3626 conditions either of that specified version or of any later version that has 3627 been published (not as a draft) by the Free Software Foundation. If the 3628 Document does not specify a version number of this License, you may choose any 3629 version ever published (not as a draft) by the Free Software Foundation. 3630 3631 ------------------------------------------------------------------------------- 3632 3633 How to use this License for your documents 3634 3635 To use this License in a document you have written, include a copy of the 3636 License in the document and put the following copyright and license notices 3637 just after the title page: 3638 3639 Copyright (c) YEAR YOUR NAME. Permission is granted to copy, distribute and 3640 /or modify this document under the terms of the GNU Free Documentation 3641 License, Version 1.1 or any later version published by the Free Software 3642 Foundation; with the Invariant Sections being LIST THEIR TITLES, with the 3643 Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. A 3644 copy of the license is included in the section entitled "GNU Free 3645 Documentation License". 3646 3647 If you have no Invariant Sections, write "with no Invariant Sections" instead 3648 of saying which ones are invariant. If you have no Front-Cover Texts, write "no 3649 Front-Cover Texts" instead of "Front-Cover Texts being LIST"; likewise for 3650 Back-Cover Texts. 3651 3652 If your document contains nontrivial examples of program code, we recommend 3653 releasing these examples in parallel under your choice of free software 3654 license, such as the GNU General Public License, to permit their use in free 3655 software. 3656