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