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