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