1 Linux Standard Base Core Specification for PPC32 3.2 2 3 Copyright © 2007 Linux Foundation 4 5 Permission is granted to copy, distribute and/or modify this 6 document under the terms of the GNU Free Documentation License, 7 Version 1.1; with no Invariant Sections, with no Front-Cover 8 Texts, and with no Back-Cover Texts. A copy of the license is 9 included in the section entitled "GNU Free Documentation 10 License". 11 12 Portions of the text may be copyrighted by the following 13 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 * Apple Inc. 24 * Easy Software Products 25 * artofcode LLC 26 * Till Kamppeter 27 * Manfred Wassman 28 * Python Software Foundation 29 30 These excerpts are being used in accordance with their 31 respective licenses. 32 33 Linux is the registered trademark of Linus Torvalds in the U.S. 34 and other countries. 35 36 UNIX is a registered trademark of The Open Group. 37 38 LSB is a trademark of the Linux Foundation in the United States 39 and other countries. 40 41 AMD is a trademark of Advanced Micro Devices, Inc. 42 43 Intel and Itanium are registered trademarks and Intel386 is a 44 trademark of Intel Corporation. 45 46 PowerPC is a registered trademark and PowerPC Architecture is a 47 trademark of the IBM Corporation. 48 49 S/390 is a registered trademark of the IBM Corporation. 50 51 OpenGL is a registered trademark of Silicon Graphics, Inc. 52 __________________________________________________________ 53 54 Table of Contents 55 Foreword 56 Introduction 57 I. Introductory Elements 58 59 1. Scope 60 61 1.1. General 62 1.2. Module Specific Scope 63 64 2. References 65 66 2.1. Normative References 67 2.2. Informative References/Bibliography 68 69 3. Requirements 70 71 3.1. Relevant Libraries 72 3.2. LSB Implementation Conformance 73 3.3. LSB Application Conformance 74 75 4. Definitions 76 5. Terminology 77 6. Documentation Conventions 78 79 II. Executable And Linking Format (ELF) 80 81 7. Introduction 82 8. Low Level System Information 83 84 8.1. Machine Interface 85 8.2. Function Calling Sequence 86 8.3. Operating System Interface 87 8.4. Process Initialization 88 8.5. Coding Examples 89 8.6. C Stack Frame 90 8.7. Debug Information 91 92 9. Object Format 93 94 9.1. Introduction 95 9.2. ELF Header 96 9.3. Sections 97 9.4. Symbol Table 98 9.5. Relocation 99 100 10. Program Loading and Dynamic Linking 101 102 10.1. Introduction 103 10.2. Program Header 104 10.3. Program Loading 105 10.4. Dynamic Linking 106 107 III. Base Libraries 108 109 11. Libraries 110 111 11.1. Program Interpreter/Dynamic Linker 112 11.2. Interfaces for libc 113 11.3. Data Definitions for libc 114 11.4. Interfaces for libm 115 11.5. Data Definitions for libm 116 11.6. Interfaces for libpthread 117 11.7. Data Definitions for libpthread 118 11.8. Interfaces for libgcc_s 119 11.9. Data Definitions for libgcc_s 120 11.10. Interface Definitions for libgcc_s 121 11.11. Interfaces for libdl 122 11.12. Data Definitions for libdl 123 11.13. Interfaces for libcrypt 124 125 IV. Utility Libraries 126 127 12. Libraries 128 129 12.1. Interfaces for libz 130 12.2. Data Definitions for libz 131 12.3. Interfaces for libncurses 132 12.4. Data Definitions for libncurses 133 12.5. Interfaces for libutil 134 135 V. Package Format and Installation 136 137 13. Software Installation 138 139 13.1. Package Dependencies 140 13.2. Package Architecture Considerations 141 142 A. Alphabetical Listing of Interfaces 143 144 A.1. libc 145 A.2. libcrypt 146 A.3. libdl 147 A.4. libgcc_s 148 A.5. libm 149 A.6. libpthread 150 A.7. librt 151 A.8. libutil 152 153 B. GNU Free Documentation License (Informative) 154 155 B.1. PREAMBLE 156 B.2. APPLICABILITY AND DEFINITIONS 157 B.3. VERBATIM COPYING 158 B.4. COPYING IN QUANTITY 159 B.5. MODIFICATIONS 160 B.6. COMBINING DOCUMENTS 161 B.7. COLLECTIONS OF DOCUMENTS 162 B.8. AGGREGATION WITH INDEPENDENT WORKS 163 B.9. TRANSLATION 164 B.10. TERMINATION 165 B.11. FUTURE REVISIONS OF THIS LICENSE 166 B.12. How to use this License for your documents 167 168 List of Figures 169 8-1. Initial Process Stack 170 171 List of Tables 172 2-1. Normative References 173 2-2. Other References 174 3-1. Standard Library Names 175 8-1. Scalar Types 176 8-2. Extra Auxiliary Types 177 9-1. ELF Special Sections 178 9-2. Additional Special Sections 179 11-1. libc Definition 180 11-2. libc - RPC Function Interfaces 181 11-3. libc - System Calls Function Interfaces 182 11-4. libc - System Calls Deprecated Function Interfaces 183 11-5. libc - Standard I/O Function Interfaces 184 11-6. libc - Standard I/O Data Interfaces 185 11-7. libc - Signal Handling Function Interfaces 186 11-8. libc - Signal Handling Deprecated Function Interfaces 187 11-9. libc - Signal Handling Data Interfaces 188 11-10. libc - Localization Functions Function Interfaces 189 11-11. libc - Localization Functions Data Interfaces 190 11-12. libc - Posix Spawn Option Function Interfaces 191 11-13. libc - Posix Advisory Option Function Interfaces 192 11-14. libc - Socket Interface Function Interfaces 193 11-15. libc - Socket Interface Data Interfaces 194 11-16. libc - Wide Characters Function Interfaces 195 11-17. libc - String Functions Function Interfaces 196 11-18. libc - String Functions Deprecated Function Interfaces 197 11-19. libc - IPC Functions Function Interfaces 198 11-20. libc - Regular Expressions Function Interfaces 199 11-21. libc - Character Type Functions Function Interfaces 200 11-22. libc - Time Manipulation Function Interfaces 201 11-23. libc - Time Manipulation Data Interfaces 202 11-24. libc - Terminal Interface Functions Function Interfaces 203 11-25. libc - System Database Interface Function Interfaces 204 11-26. libc - System Database Interface Deprecated Function 205 Interfaces 206 207 11-27. libc - Language Support Function Interfaces 208 11-28. libc - Large File Support Function Interfaces 209 11-29. libc - Large File Support Deprecated Function Interfaces 210 11-30. libc - Standard Library Function Interfaces 211 11-31. libc - Standard Library Deprecated Function Interfaces 212 11-32. libc - Standard Library Data Interfaces 213 11-33. libm Definition 214 11-34. libm - Math Function Interfaces 215 11-35. libm - Math Deprecated Function Interfaces 216 11-36. libm - Math Data Interfaces 217 11-37. libpthread Definition 218 11-38. libpthread - Realtime Threads Function Interfaces 219 11-39. libpthread - Advanced Realtime Threads Function 220 Interfaces 221 222 11-40. libpthread - Posix Threads Function Interfaces 223 11-41. libpthread - Posix Threads Deprecated Function 224 Interfaces 225 226 11-42. libpthread - Thread aware versions of libc interfaces 227 Function Interfaces 228 229 11-43. libgcc_s Definition 230 11-44. libgcc_s - Unwind Library Function Interfaces 231 11-45. libdl Definition 232 11-46. libdl - Dynamic Loader Function Interfaces 233 11-47. libcrypt Definition 234 11-48. libcrypt - Encryption Function Interfaces 235 12-1. libz Definition 236 12-2. libncurses Definition 237 12-3. libutil Definition 238 12-4. libutil - Utility Functions Function Interfaces 239 A-1. libc Function Interfaces 240 A-2. libc Data Interfaces 241 A-3. libcrypt Function Interfaces 242 A-4. libdl Function Interfaces 243 A-5. libgcc_s Function Interfaces 244 A-6. libm Function Interfaces 245 A-7. libm Data Interfaces 246 A-8. libpthread Function Interfaces 247 A-9. librt Function Interfaces 248 A-10. libutil Function Interfaces 249 __________________________________________________________ 250 251 Foreword 252 253 This is version 3.2 of the Linux Standard Base Core 254 Specification for PPC32. This specification is part of a family 255 of specifications under the general title "Linux Standard 256 Base". Developers of applications or implementations interested 257 in using the LSB trademark should see the Linux Foundation 258 Certification Policy for details. 259 __________________________________________________________ 260 261 Introduction 262 263 The LSB defines a binary interface for application programs 264 that are compiled and packaged for LSB-conforming 265 implementations on many different hardware architectures. Since 266 a binary specification shall include information specific to 267 the computer processor architecture for which it is intended, 268 it is not possible for a single document to specify the 269 interface for all possible LSB-conforming implementations. 270 Therefore, the LSB is a family of specifications, rather than a 271 single one. 272 273 This document should be used in conjunction with the documents 274 it references. This document enumerates the system components 275 it includes, but descriptions of those components may be 276 included entirely or partly in this document, partly in other 277 documents, or entirely in other reference documents. For 278 example, the section that describes system service routines 279 includes a list of the system routines supported in this 280 interface, formal declarations of the data structures they use 281 that are visible to applications, and a pointer to the 282 underlying referenced specification for information about the 283 syntax and semantics of each call. Only those routines not 284 described in standards referenced by this document, or 285 extensions to those standards, are described in the detail. 286 Information referenced in this way is as much a part of this 287 document as is the information explicitly included here. 288 289 The specification carries a version number of either the form 290 x.y or x.y.z. This version number carries the following 291 meaning: 292 293 * The first number (x) is the major version number. All 294 versions with the same major version number should share 295 binary compatibility. Any addition or deletion of a new 296 library results in a new version number. Interfaces marked 297 as deprecated may be removed from the specification at a 298 major version change. 299 * The second number (y) is the minor version number. 300 Individual interfaces may be added if all certified 301 implementations already had that (previously undocumented) 302 interface. Interfaces may be marked as deprecated at a 303 minor version change. Other minor changes may be permitted 304 at the discretion of the LSB workgroup. 305 * The third number (z), if present, is the editorial level. 306 Only editorial changes should be included in such versions. 307 308 Since this specification is a descriptive Application Binary 309 Interface, and not a source level API specification, it is not 310 possible to make a guarantee of 100% backward compatibility 311 between major releases. However, it is the intent that those 312 parts of the binary interface that are visible in the source 313 level API will remain backward compatible from version to 314 version, except where a feature marked as "Deprecated" in one 315 release may be removed from a future release. 316 317 Implementors are strongly encouraged to make use of symbol 318 versioning to permit simultaneous support of applications 319 conforming to different releases of this specification. 320 321 I. Introductory Elements 322 323 Table of Contents 324 1. Scope 325 326 1.1. General 327 1.2. Module Specific Scope 328 329 2. References 330 331 2.1. Normative References 332 2.2. Informative References/Bibliography 333 334 3. Requirements 335 336 3.1. Relevant Libraries 337 3.2. LSB Implementation Conformance 338 3.3. LSB Application Conformance 339 340 4. Definitions 341 5. Terminology 342 6. Documentation Conventions 343 __________________________________________________________ 344 345 Chapter 1. Scope 346 347 1.1. General 348 349 The Linux Standard Base (LSB) defines a system interface for 350 compiled applications and a minimal environment for support of 351 installation scripts. Its purpose is to enable a uniform 352 industry standard environment for high-volume applications 353 conforming to the LSB. 354 355 These specifications are composed of two basic parts: A common 356 specification ("LSB-generic" or "generic LSB"), ISO/IEC 23360 357 Part 1, describing those parts of the interface that remain 358 constant across all implementations of the LSB, and an 359 architecture-specific part ("LSB-arch" or "archLSB") describing 360 the parts of the interface that vary by processor architecture. 361 Together, the LSB-generic and the relevant 362 architecture-specific part of ISO/IEC 23360 for a single 363 hardware architecture provide a complete interface 364 specification for compiled application programs on systems that 365 share a common hardware architecture. 366 367 ISO/IEC 23360 Part 1, the LSB-generic document, should be used 368 in conjunction with an architecture-specific part. Whenever a 369 section of the LSB-generic specification is supplemented by 370 architecture-specific information, the LSB-generic document 371 includes a reference to the architecture part. 372 Architecture-specific parts of ISO/IEC 23360 may also contain 373 additional information that is not referenced in the 374 LSB-generic document. 375 376 The LSB contains both a set of Application Program Interfaces 377 (APIs) and Application Binary Interfaces (ABIs). APIs may 378 appear in the source code of portable applications, while the 379 compiled binary of that application may use the larger set of 380 ABIs. A conforming implementation provides all of the ABIs 381 listed here. The compilation system may replace (e.g. by macro 382 definition) certain APIs with calls to one or more of the 383 underlying binary interfaces, and may insert calls to binary 384 interfaces as needed. 385 386 The LSB is primarily a binary interface definition. Not all of 387 the source level APIs available to applications may be 388 contained in this specification. 389 __________________________________________________________ 390 391 1.2. Module Specific Scope 392 393 This is the PPC32 architecture specific Core part of the Linux 394 Standard Base (LSB). This part supplements the generic LSB Core 395 module with those interfaces that differ between architectures. 396 397 Interfaces described in this part of ISO/IEC 23360 are 398 mandatory except where explicitly listed otherwise. Core 399 interfaces may be supplemented by other modules; all modules 400 are built upon the core. 401 __________________________________________________________ 402 403 Chapter 2. References 404 405 2.1. Normative References 406 407 The following referenced documents are indispensable for the 408 application of this document. For dated references, only the 409 edition cited applies. For undated references, the latest 410 edition of the referenced document (including any amendments) 411 applies. 412 413 Note: Where copies of a document are available on the World 414 Wide Web, a Uniform Resource Locator (URL) is given for 415 informative purposes only. This may point to a more recent 416 copy of the referenced specification, or may be out of date. 417 Reference copies of specifications at the revision level 418 indicated may be found at the Linux Foundation's Reference 419 Specifications site. 420 421 Table 2-1. Normative References 422 Name Title URL 423 ISO/IEC 23360 Part 1 ISO/IEC 23360:2005 Linux Standard Base - 424 Part 1 Generic Specification http://www.linuxbase.org/spec/ 425 Filesystem Hierarchy Standard Filesystem Hierarchy Standard 426 (FHS) 2.3 http://www.pathname.com/fhs/ 427 ISO C (1999) ISO/IEC 9899: 1999, Programming Languages --C 428 ISO POSIX (2003) 429 430 ISO/IEC 9945-1:2003 Information technology -- Portable 431 Operating System Interface (POSIX) -- Part 1: Base Definitions 432 433 ISO/IEC 9945-2:2003 Information technology -- Portable 434 Operating System Interface (POSIX) -- Part 2: System Interfaces 435 436 ISO/IEC 9945-3:2003 Information technology -- Portable 437 Operating System Interface (POSIX) -- Part 3: Shell and 438 Utilities 439 440 ISO/IEC 9945-4:2003 Information technology -- Portable 441 Operating System Interface (POSIX) -- Part 4: Rationale 442 443 Including Technical Cor. 1: 2004 444 http://www.unix.org/version3/ 445 Large File Support Large File Support 446 http://www.UNIX-systems.org/version2/whatsnew/lfs20mar.html 447 SUSv2 CAE Specification, January 1997, System Interfaces and 448 Headers (XSH),Issue 5 (ISBN: 1-85912-181-0, C606) 449 http://www.opengroup.org/publications/catalog/un.htm 450 SVID Issue 3 American Telephone and Telegraph Company, System V 451 Interface Definition, Issue 3; Morristown, NJ, UNIX Press, 452 1989. (ISBN 0201566524) 453 SVID Issue 4 System V Interface Definition, Fourth Edition 454 System V ABI System V Application Binary Interface, Edition 4.1 455 http://www.caldera.com/developers/devspecs/gabi41.pdf 456 System V ABI Update System V Application Binary Interface - 457 DRAFT - 17 December 2003 458 http://www.caldera.com/developers/gabi/2003-12-17/contents.html 459 System V Application Binary Interface PowerPC(TM) Processor 460 Supplement System V Application Binary Interface PowerPC(TM) 461 Processor Supplement 462 http://refspecs.linux-foundation.org/elf/elfspec_ppc.pdf 463 The PowerPC(TM) Microprocessor Family The PowerPC(TM) 464 Microprocessor Family: The Programming Environment Manual for 465 32 and 64-bit Microprocessors 466 http://refspecs.linux-foundation.org/PPC_hrm.2005mar31.pdf 467 X/Open Curses CAE Specification, May 1996, X/Open Curses, Issue 468 4, Version 2 (ISBN: 1-85912-171-3, C610), plus Corrigendum U018 469 http://www.opengroup.org/publications/catalog/un.htm 470 __________________________________________________________ 471 472 2.2. Informative References/Bibliography 473 474 In addition, the specifications listed below provide essential 475 background information to implementors of this specification. 476 These references are included for information only. 477 478 Table 2-2. Other References 479 Name Title URL 480 DWARF Debugging Information Format, Revision 2.0.0 DWARF 481 Debugging Information Format, Revision 2.0.0 (July 27, 1993) 482 http://refspecs.linux-foundation.org/dwarf/dwarf-2.0.0.pdf 483 DWARF Debugging Information Format, Revision 3.0.0 (Draft) 484 DWARF Debugging Information Format, Revision 3.0.0 (Draft) 485 http://refspecs.linux-foundation.org/dwarf 486 IEC 60559/IEEE 754 Floating Point IEC 60559:1989 Binary 487 floating-point arithmetic for microprocessor systems 488 http://www.ieee.org/ 489 ISO/IEC TR14652 ISO/IEC Technical Report 14652:2002 490 Specification method for cultural conventions 491 ITU-T V.42 International Telecommunication Union Recommendation 492 V.42 (2002): Error-correcting procedures for DCEs using 493 asynchronous-to-synchronous conversionITUV 494 http://www.itu.int/rec/recommendation.asp?type=folders&lang=e&p 495 arent=T-REC-V.42 496 Li18nux Globalization Specification LI18NUX 2000 Globalization 497 Specification, Version 1.0 with Amendment 4 498 http://www.openi18n.org/docs/html/LI18NUX-2000-amd4.htm 499 Linux Allocated Device Registry LINUX ALLOCATED DEVICES 500 http://www.lanana.org/docs/device-list/devices.txt 501 PAM Open Software Foundation, Request For Comments: 86.0 , 502 October 1995, V. Samar & R.Schemers (SunSoft) 503 http://www.opengroup.org/tech/rfc/mirror-rfc/rfc86.0.txt 504 RFC 1321: The MD5 Message-Digest Algorithm IETF RFC 1321: The 505 MD5 Message-Digest Algorithm 506 http://www.ietf.org/rfc/rfc1321.txt 507 RFC 1831/1832 RPC & XDR IETF RFC 1831 & 1832 508 http://www.ietf.org/ 509 RFC 1833: Binding Protocols for ONC RPC Version 2 IETF RFC 510 1833: Binding Protocols for ONC RPC Version 2 511 http://www.ietf.org/rfc/rfc1833.txt 512 RFC 1950: ZLIB Compressed Data Format Specication IETF RFC 513 1950: ZLIB Compressed Data Format Specification 514 http://www.ietf.org/rfc/rfc1950.txt 515 RFC 1951: DEFLATE Compressed Data Format Specification IETF RFC 516 1951: DEFLATE Compressed Data Format Specification version 1.3 517 http://www.ietf.org/rfc/rfc1951.txt 518 RFC 1952: GZIP File Format Specification IETF RFC 1952: GZIP 519 file format specification version 4.3 520 http://www.ietf.org/rfc/rfc1952.txt 521 RFC 2440: OpenPGP Message Format IETF RFC 2440: OpenPGP Message 522 Format http://www.ietf.org/rfc/rfc2440.txt 523 RFC 2821:Simple Mail Transfer Protocol IETF RFC 2821: Simple 524 Mail Transfer Protocol http://www.ietf.org/rfc/rfc2821.txt 525 RFC 2822:Internet Message Format IETF RFC 2822: Internet 526 Message Format http://www.ietf.org/rfc/rfc2822.txt 527 RFC 791:Internet Protocol IETF RFC 791: Internet Protocol 528 Specification http://www.ietf.org/rfc/rfc791.txt 529 RPM Package Format RPM Package Format V3.0 530 http://www.rpm.org/max-rpm/s1-rpm-file-format-rpm-file-format.h 531 tml 532 SUSv2 Commands and Utilities The Single UNIX Specification(SUS) 533 Version 2, Commands and Utilities (XCU), Issue 5 (ISBN: 534 1-85912-191-8, C604) 535 http://www.opengroup.org/publications/catalog/un.htm 536 zlib Manual zlib 1.2 Manual http://www.gzip.org/zlib/ 537 __________________________________________________________ 538 539 Chapter 3. Requirements 540 541 3.1. Relevant Libraries 542 543 The libraries listed in Table 3-1 shall be available on PPC32 544 Linux Standard Base systems, with the specified runtime names. 545 These names override or supplement the names specified in the 546 generic LSB (ISO/IEC 23360 Part 1) specification. The specified 547 program interpreter, referred to as proginterp in this table, 548 shall be used to load the shared libraries specified by 549 DT_NEEDED entries at run time. 550 551 Table 3-1. Standard Library Names 552 Library Runtime Name 553 libm libm.so.6 554 libdl libdl.so.2 555 libcrypt libcrypt.so.1 556 libz libz.so.1 557 libncurses libncurses.so.5 558 libutil libutil.so.1 559 libc libc.so.6 560 libpthread libpthread.so.0 561 proginterp /lib/ld-lsb-ppc32.so.3 562 libgcc_s libgcc_s.so.1 563 564 These libraries will be in an implementation-defined directory 565 which the dynamic linker shall search by default. 566 __________________________________________________________ 567 568 3.2. LSB Implementation Conformance 569 570 A conforming implementation is necessarily architecture 571 specific, and must provide the interfaces specified by both the 572 generic LSB Core specification (ISO/IEC 23360 Part 1) and the 573 relevant architecture specific part of ISO/IEC 23360. 574 575 Rationale: An implementation must provide at least the 576 interfaces specified in these specifications. It may also 577 provide additional interfaces. 578 579 A conforming implementation shall satisfy the following 580 requirements: 581 582 * A processor architecture represents a family of related 583 processors which may not have identical feature sets. The 584 architecture specific parts of ISO/IEC 23360 that 585 supplement this specification for a given target processor 586 architecture describe a minimum acceptable processor. The 587 implementation shall provide all features of this 588 processor, whether in hardware or through emulation 589 transparent to the application. 590 * The implementation shall be capable of executing compiled 591 applications having the format and using the system 592 interfaces described in this document. 593 * The implementation shall provide libraries containing the 594 interfaces specified by this document, and shall provide a 595 dynamic linking mechanism that allows these interfaces to 596 be attached to applications at runtime. All the interfaces 597 shall behave as specified in this document. 598 * The map of virtual memory provided by the implementation 599 shall conform to the requirements of this document. 600 * The implementation's low-level behavior with respect to 601 function call linkage, system traps, signals, and other 602 such activities shall conform to the formats described in 603 this document. 604 * The implementation shall provide all of the mandatory 605 interfaces in their entirety. 606 * The implementation may provide one or more of the optional 607 interfaces. Each optional interface that is provided shall 608 be provided in its entirety. The product documentation 609 shall state which optional interfaces are provided. 610 * The implementation shall provide all files and utilities 611 specified as part of this document in the format defined 612 here and in other referenced documents. All commands and 613 utilities shall behave as required by this document. The 614 implementation shall also provide all mandatory components 615 of an application's runtime environment that are included 616 or referenced in this document. 617 * The implementation, when provided with standard data 618 formats and values at a named interface, shall provide the 619 behavior defined for those values and data formats at that 620 interface. However, a conforming implementation may consist 621 of components which are separately packaged and/or sold. 622 For example, a vendor of a conforming implementation might 623 sell the hardware, operating system, and windowing system 624 as separately packaged items. 625 * The implementation may provide additional interfaces with 626 different names. It may also provide additional behavior 627 corresponding to data values outside the standard ranges, 628 for standard named interfaces. 629 __________________________________________________________ 630 631 3.3. LSB Application Conformance 632 633 A conforming application is necessarily architecture specific, 634 and must conform to both the generic LSB Core specification 635 (ISO/IEC 23360 Part 1)and the relevant architecture specific 636 part of ISO/IEC 23360. 637 638 A conforming application shall satisfy the following 639 requirements: 640 641 * Its executable files shall be either shell scripts or 642 object files in the format defined for the Object File 643 Format system interface. 644 * Its object files shall participate in dynamic linking as 645 defined in the Program Loading and Linking System 646 interface. 647 * It shall employ only the instructions, traps, and other 648 low-level facilities defined in the Low-Level System 649 interface as being for use by applications. 650 * If it requires any optional interface defined in this 651 document in order to be installed or to execute 652 successfully, the requirement for that optional interface 653 shall be stated in the application's documentation. 654 * It shall not use any interface or data format that is not 655 required to be provided by a conforming implementation, 656 unless: 657 + If such an interface or data format is supplied by 658 another application through direct invocation of that 659 application during execution, that application shall 660 be in turn an LSB conforming application. 661 + The use of that interface or data format, as well as 662 its source, shall be identified in the documentation 663 of the application. 664 * It shall not use any values for a named interface that are 665 reserved for vendor extensions. 666 667 A strictly conforming application shall not require or use any 668 interface, facility, or implementation-defined extension that 669 is not defined in this document in order to be installed or to 670 execute successfully. 671 __________________________________________________________ 672 673 Chapter 4. Definitions 674 675 For the purposes of this document, the following definitions, 676 as specified in the ISO/IEC Directives, Part 2, 2001, 4th 677 Edition, apply: 678 679 can 680 681 be able to; there is a possibility of; it is possible to 682 cannot 683 684 be unable to; there is no possibilty of; it is not possible to 685 may 686 687 is permitted; is allowed; is permissible 688 need not 689 690 it is not required that; no...is required 691 shall 692 693 is to; is required to; it is required that; has to; only...is 694 permitted; it is necessary 695 shall not 696 697 is not allowed [permitted] [acceptable] [permissible]; is 698 required to be not; is required that...be not; is not to be 699 should 700 701 it is recommended that; ought to 702 should not 703 704 it is not recommended that; ought not to 705 __________________________________________________________ 706 707 Chapter 5. Terminology 708 709 For the purposes of this document, the following terms apply: 710 711 archLSB 712 The architectural part of the LSB Specification which 713 describes the specific parts of the interface that are 714 platform specific. The archLSB is complementary to the 715 gLSB. 716 717 Binary Standard 718 The total set of interfaces that are available to be 719 used in the compiled binary code of a conforming 720 application. 721 722 gLSB 723 The common part of the LSB Specification that describes 724 those parts of the interface that remain constant across 725 all hardware implementations of the LSB. 726 727 implementation-defined 728 Describes a value or behavior that is not defined by 729 this document but is selected by an implementor. The 730 value or behavior may vary among implementations that 731 conform to this document. An application should not rely 732 on the existence of the value or behavior. An 733 application that relies on such a value or behavior 734 cannot be assured to be portable across conforming 735 implementations. The implementor shall document such a 736 value or behavior so that it can be used correctly by an 737 application. 738 739 Shell Script 740 A file that is read by an interpreter (e.g., awk). The 741 first line of the shell script includes a reference to 742 its interpreter binary. 743 744 Source Standard 745 The set of interfaces that are available to be used in 746 the source code of a conforming application. 747 748 undefined 749 Describes the nature of a value or behavior not defined 750 by this document which results from use of an invalid 751 program construct or invalid data input. The value or 752 behavior may vary among implementations that conform to 753 this document. An application should not rely on the 754 existence or validity of the value or behavior. An 755 application that relies on any particular value or 756 behavior cannot be assured to be portable across 757 conforming implementations. 758 759 unspecified 760 Describes the nature of a value or behavior not 761 specified by this document which results from use of a 762 valid program construct or valid data input. The value 763 or behavior may vary among implementations that conform 764 to this document. An application should not rely on the 765 existence or validity of the value or behavior. An 766 application that relies on any particular value or 767 behavior cannot be assured to be portable across 768 conforming implementations. 769 770 Other terms and definitions used in this document shall have 771 the same meaning as defined in Chapter 3 of the Base 772 Definitions volume of ISO POSIX (2003). 773 __________________________________________________________ 774 775 Chapter 6. Documentation Conventions 776 777 Throughout this document, the following typographic conventions 778 are used: 779 780 function() 781 782 the name of a function 783 command 784 785 the name of a command or utility 786 CONSTANT 787 788 a constant value 789 parameter 790 791 a parameter 792 variable 793 794 a variable 795 796 Throughout this specification, several tables of interfaces are 797 presented. Each entry in these tables has the following format: 798 799 name 800 801 the name of the interface 802 (symver) 803 804 An optional symbol version identifier, if required. 805 [refno] 806 807 A reference number indexing the table of referenced 808 specifications that follows this table. 809 810 For example, 811 812 forkpty(GLIBC_2.0) [SUSv3] 813 814 refers to the interface named forkpty() with symbol version 815 GLIBC_2.0 that is defined in the SUSv3 reference. 816 817 Note: Symbol versions are defined in the architecture 818 specific parts of ISO/IEC 23360 only. 819 820 II. Executable And Linking Format (ELF) 821 822 Table of Contents 823 7. Introduction 824 8. Low Level System Information 825 826 8.1. Machine Interface 827 828 8.1.1. Processor Architecture 829 8.1.2. Data Representation 830 831 8.2. Function Calling Sequence 832 833 8.2.1. CPU Registers 834 8.2.2. Floating Point Registers 835 8.2.3. Stack Frame 836 8.2.4. Arguments 837 8.2.5. Return Values 838 839 8.3. Operating System Interface 840 841 8.3.1. Exception Interface 842 8.3.2. Signal Delivery 843 844 8.4. Process Initialization 845 846 8.4.1. Special Registers 847 8.4.2. Process Stack (on entry) 848 8.4.3. Auxiliary Vector 849 850 8.5. Coding Examples 851 852 8.5.1. Code Model Overview/Architecture Constraints 853 8.5.2. Position-Independent Function Prologue 854 8.5.3. Data Objects 855 8.5.4. Function Calls 856 8.5.5. Branching 857 858 8.6. C Stack Frame 859 860 8.6.1. Variable Argument List 861 8.6.2. Dynamic Allocation of Stack Space 862 863 8.7. Debug Information 864 865 9. Object Format 866 867 9.1. Introduction 868 9.2. ELF Header 869 870 9.2.1. Machine Information 871 872 9.3. Sections 873 874 9.3.1. Special Sections 875 9.3.2. Linux Special Sections 876 877 9.4. Symbol Table 878 9.5. Relocation 879 880 9.5.1. Relocation Types 881 882 10. Program Loading and Dynamic Linking 883 884 10.1. Introduction 885 10.2. Program Header 886 10.3. Program Loading 887 10.4. Dynamic Linking 888 889 10.4.1. Dynamic Section 890 10.4.2. Global Offset Table 891 10.4.3. Function Addresses 892 10.4.4. Procedure Linkage Table 893 __________________________________________________________ 894 895 Chapter 7. Introduction 896 897 Executable and Linking Format (ELF) defines the object format 898 for compiled applications. This specification supplements the 899 information found in System V ABI Update and System V 900 Application Binary Interface PowerPC(TM) Processor Supplement, 901 and is intended to document additions made since the 902 publication of that document. 903 __________________________________________________________ 904 905 Chapter 8. Low Level System Information 906 907 8.1. Machine Interface 908 909 8.1.1. Processor Architecture 910 911 The PowerPC Architecture is specified by the following 912 documents: 913 914 * System V Application Binary Interface PowerPC(TM) Processor 915 Supplement 916 * The PowerPC(TM) Microprocessor Family 917 918 Only the features of the PowerPC 603 processor instruction set 919 may be assumed to be present. An application should determine 920 if any additional instruction set features are available before 921 using those additional features. If a feature is not present, 922 then the application may not use it. 923 924 Note: The presence of a hardware floating point unit is 925 optional. However, applications requiring floating point 926 arithmetic may experience substantial performance penalties 927 on system without such a unit. 928 929 Conforming applications may use only instructions which do not 930 require elevated privileges. 931 932 Conforming applications shall not invoke the implementations 933 underlying system call interface directly. The interfaces in 934 the implementation base libraries shall be used instead. 935 936 Rationale: Implementation-supplied base libraries may use 937 the system call interface but applications must not assume 938 any particular operating system or kernel version is 939 present. 940 941 An implementation must support the 32-bit computation mode as 942 described in The PowerPC(TM) Microprocessor Family. Conforming 943 applications shall not use instructions provided only for the 944 64-bit mode. 945 946 Applications conforming to this specification must provide 947 feedback to the user if a feature that is required for correct 948 execution of the application is not present. Applications 949 conforming to this specification should attempt to execute in a 950 diminished capacity if a required feature is not present. 951 952 This specification does not provide any performance guarantees 953 of a conforming system. A system conforming to this 954 specification may be implemented in either hardware or 955 software. 956 __________________________________________________________ 957 958 8.1.2. Data Representation 959 960 LSB-conforming applications shall use the data representation 961 as defined in Chapter 3 "Data Representation" section of the 962 System V Application Binary Interface PowerPC(TM) Processor 963 Supplement. 964 __________________________________________________________ 965 966 8.1.2.1. Byte Ordering 967 968 LSB-conforming applications shall use big-endian byte ordering. 969 LSB-conforming implementations may support little-endian 970 applications. 971 __________________________________________________________ 972 973 8.1.2.2. Fundamental Types 974 975 In addition to the fundamental types specified in Chapter 3 976 "Fundamental Types" section of the System V Application Binary 977 Interface PowerPC(TM) Processor Supplement, a 64 bit data type 978 is defined here. 979 980 Table 8-1. Scalar Types 981 Type C sizeof Alignment (bytes) IntelI386 Architecture 982 Integral long long 8 8 signed double word 983 signed long long 984 unsigned long long 8 8 unsigned double word 985 986 LSB-conforming applications shall not use the long double 987 fundamental type. 988 __________________________________________________________ 989 990 8.2. Function Calling Sequence 991 992 LSB-conforming applications shall use the function calling 993 sequence as defined in Chapter 3, Section "Function Calling 994 Sequence" of the System V Application Binary Interface 995 PowerPC(TM) Processor Supplement. 996 __________________________________________________________ 997 998 8.2.1. CPU Registers 999 1000 LSB-conforming applications shall use only the registers 1001 described in Chapter 3, Section "Function Calling Sequence", 1002 Subsection "Registers" of the System V Application Binary 1003 Interface PowerPC(TM) Processor Supplement. 1004 __________________________________________________________ 1005 1006 8.2.2. Floating Point Registers 1007 1008 LSB-conforming applications shall use only the registers 1009 described in Chapter 3, Section "Function Calling Sequence", 1010 Subsection "Registers" of the System V Application Binary 1011 Interface PowerPC(TM) Processor Supplement. 1012 __________________________________________________________ 1013 1014 8.2.3. Stack Frame 1015 1016 LSB-conforming applications shall use stack frames as described 1017 in Chapter 3, Section "Function Calling Sequence", Subsection 1018 "The Stack Frame" of the System V Application Binary Interface 1019 PowerPC(TM) Processor Supplement. 1020 __________________________________________________________ 1021 1022 8.2.4. Arguments 1023 1024 LSB-conforming applications shall pass parameters to functions 1025 as described in Chapter 3, Section "Function Calling Sequence", 1026 Subsection "Parameter Passing" of the System V Application 1027 Binary Interface PowerPC(TM) Processor Supplement. 1028 __________________________________________________________ 1029 1030 8.2.5. Return Values 1031 1032 LSB-conforming applications shall not return structures or 1033 unions in registers as described in Chapter 3, Section 1034 "Function Calling Sequence", Subsection "Return Values" of 1035 System V Application Binary Interface PowerPC(TM) Processor 1036 Supplement. Instead they must use the alternative method of 1037 passing the address of a buffer in a register as shown in the 1038 same section. 1039 __________________________________________________________ 1040 1041 8.3. Operating System Interface 1042 1043 LSB-conforming applications shall use the Operating System 1044 Interfaces as defined in Chapter 3, Section "Operating System 1045 Interface" of the System V Application Binary Interface 1046 PowerPC(TM) Processor Supplement. 1047 __________________________________________________________ 1048 1049 8.3.1. Exception Interface 1050 1051 LSB-conforming applications shall use the Exception Interfaces 1052 as defined in Chapter 3, Section "Exception Interface" of the 1053 System V Application Binary Interface PowerPC(TM) Processor 1054 Supplement. 1055 __________________________________________________________ 1056 1057 8.3.1.1. Debugging Support 1058 1059 The LSB does not specify debugging information, however, if the 1060 DWARF specification is implemented, see Chapter 3, Section 1061 "DWARF Definition" of the System V Application Binary Interface 1062 PowerPC(TM) Processor Supplement. 1063 __________________________________________________________ 1064 1065 8.3.2. Signal Delivery 1066 1067 LSB-conforming applications shall follow the guidelines defined 1068 in Chapter 3, Section "Exception Interface" of the System V 1069 Application Binary Interface PowerPC(TM) Processor Supplement. 1070 __________________________________________________________ 1071 1072 8.4. Process Initialization 1073 1074 LSB-conforming applications shall use the Process 1075 initialization as defined in Chapter 3, Section "Process 1076 Initialization" of the System V Application Binary Interface 1077 PowerPC(TM) Processor Supplement. 1078 __________________________________________________________ 1079 1080 8.4.1. Special Registers 1081 1082 Contrary to what is stated in the Registers part of chapter 3 1083 of the System V Application Binary Interface PowerPC(TM) 1084 Processor Supplement there are no values set in registers r3, 1085 r4, r5, r6 and r7. Instead the values specified to appear in 1086 all of those registers except r7 are placed on the stack. The 1087 value to be placed into register r7, the termination function 1088 pointer is not passed to the process. 1089 __________________________________________________________ 1090 1091 8.4.2. Process Stack (on entry) 1092 1093 Figure 3-31 in System V Application Binary Interface 1094 PowerPC(TM) Processor Supplement is incorrect. The initial 1095 stack must look like the following. 1096 1097 [initial_process_stack.jpg] 1098 1099 Figure 8-1. Initial Process Stack 1100 __________________________________________________________ 1101 1102 8.4.3. Auxiliary Vector 1103 1104 In addition to the types defined in Chapter 3, Section "Process 1105 Initialization", Subsection "Process Stack" of the System V 1106 Application Binary Interface PowerPC(TM) Processor Supplement 1107 the following are also supported: 1108 1109 Table 8-2. Extra Auxiliary Types 1110 Name Value Comment 1111 AT_NOTELF 10 Program is not ELF 1112 AT_UID 11 Real uid 1113 AT_EUID 12 Effective uid 1114 AT_GID 13 Real gid 1115 AT_EGID 14 Effective gid 1116 AT_PLATFORM 15 String identifying CPU for optimizations 1117 AT_HWCAP 16 Arch dependent hints at CPU capabilities 1118 AT_CLKTCK 17 Frequency at which times() increments 1119 AT_DCACHEBSIZE 19 The a_val member of this entry gives the data 1120 cache block size for processors on the system on which this 1121 program is running. If the processors have unified caches, 1122 AT_DCACHEBSIZE is the same as AT_UCACHEBSIZE 1123 AT_ICACHEBSIZE 20 The a_val member of this entyr gives the 1124 instruction cache block size for processors on the system on 1125 which this program is running. If the processors have unified 1126 caches, AT_DCACHEBSIZE is the same as AT_UCACHEBSIZE. 1127 AT_UCACHEBSIZE 21 The a_val member of this entry is zero if the 1128 processors on the system on which this program is running do 1129 not have a unified instruction and data cache. Otherwise it 1130 gives the cache block size. 1131 AT_IGNOREPPC 22 All entries of this type should be ignored. 1132 1133 The last three entries in the table above override the values 1134 specified in System V Application Binary Interface PowerPC(TM) 1135 Processor Supplement. 1136 __________________________________________________________ 1137 1138 8.5. Coding Examples 1139 1140 LSB-conforming applications may use the coding examples given 1141 in Chapter 3, Section "Coding Examples" of the System V 1142 Application Binary Interface PowerPC(TM) Processor Supplement 1143 to guide implemention of fundamental operations in the 1144 following areas. 1145 __________________________________________________________ 1146 1147 8.5.1. Code Model Overview/Architecture Constraints 1148 1149 LSB-Conforming applications may use any of the code models 1150 described in Chapter 3, Section "Coding Examples", Subsection 1151 "Code Model Overview" of the System V Application Binary 1152 Interface PowerPC(TM) Processor Supplement. 1153 __________________________________________________________ 1154 1155 8.5.2. Position-Independent Function Prologue 1156 1157 LSB-Conforming applications may use examples described in 1158 Chapter 3, Section "Coding Examples", Subsection "Function 1159 Prologue and Epilogue" of the System V Application Binary 1160 Interface PowerPC(TM) Processor Supplement. 1161 __________________________________________________________ 1162 1163 8.5.3. Data Objects 1164 1165 LSB-Conforming applications may use examples described in 1166 Chapter 3, Section "Coding Examples", Subsection "Data Objects" 1167 of the System V Application Binary Interface PowerPC(TM) 1168 Processor Supplement. 1169 __________________________________________________________ 1170 1171 8.5.4. Function Calls 1172 1173 LSB-Conforming applications may use examples described in 1174 Chapter 3, Section "Coding Examples", Subsection "Function 1175 Calls" of the System V Application Binary Interface PowerPC(TM) 1176 Processor Supplement. 1177 __________________________________________________________ 1178 1179 8.5.5. Branching 1180 1181 LSB-Conforming applications may use examples described in 1182 Chapter 3, Section "Coding Examples", Subsection "Branching" of 1183 the System V Application Binary Interface PowerPC(TM) Processor 1184 Supplement. 1185 __________________________________________________________ 1186 1187 8.6. C Stack Frame 1188 1189 8.6.1. Variable Argument List 1190 1191 LSB-Conforming applications shall only use variable arguments 1192 to functions in the manner described in Chapter 3, Section 1193 "Function Calling Sequence", Subsection "Variable Argument 1194 Lists" of the System V Application Binary Interface PowerPC(TM) 1195 Processor Supplement. 1196 __________________________________________________________ 1197 1198 8.6.2. Dynamic Allocation of Stack Space 1199 1200 LSB-Conforming applications shall follow guidelines discussed 1201 in in Chapter 3, Section "Coding Examples", Subsection "Dynamic 1202 Stack Space Allocation" of the System V Application Binary 1203 Interface PowerPC(TM) Processor Supplement. 1204 __________________________________________________________ 1205 1206 8.7. Debug Information 1207 1208 The LSB does not currently specify the format of Debug 1209 information. 1210 __________________________________________________________ 1211 1212 Chapter 9. Object Format 1213 1214 9.1. Introduction 1215 1216 LSB-conforming implementations shall support an object file 1217 format, called Executable and Linking Format (ELF) as defined 1218 by the System V Application Binary Interface PowerPC(TM) 1219 Processor Supplement and as supplemented by the Linux Standard 1220 Base Specification and this document. LSB-conforming 1221 implementations need not support tags related functionality. 1222 LSB-conforming applications must not rely on tags related 1223 functionality. 1224 __________________________________________________________ 1225 1226 9.2. ELF Header 1227 1228 9.2.1. Machine Information 1229 1230 LSB-conforming applications shall use the Machine Information 1231 as defined in System V Application Binary Interface PowerPC(TM) 1232 Processor Supplement, Chapter 4, Section "ELF Header" 1233 Subsection "Machine Information". 1234 __________________________________________________________ 1235 1236 9.3. Sections 1237 __________________________________________________________ 1238 1239 9.3.1. Special Sections 1240 1241 The following sections are defined in the System V Application 1242 Binary Interface PowerPC(TM) Processor Supplement Chapter 4, 1243 Section "Section", Subsection "Special Sections". 1244 1245 Table 9-1. ELF Special Sections 1246 Name Type Attributes 1247 .got SHT_PROGBITS SHF_ALLOC+SHF_WRITE+SHF_EXECINSTR 1248 .plt SHT_NOBITS SHF_ALLOC+SHF_WRITE+SHF_EXECINSTR 1249 .sdata SHT_PROGBITS SHF_ALLOC+SHF_WRITE 1250 1251 .got 1252 1253 This section holds the global offset table. See `Coding 1254 Examples' in Chapter 3, `Special Sections' in Chapter 4, and 1255 `Global Offset Table' in Chapter 5 of the processor supplement 1256 for more information. 1257 .plt 1258 1259 This section holds the procedure linkage table. 1260 .sdata 1261 1262 This section holds initialized small data that contribute to 1263 the program memory image. 1264 Note that the .tags, .taglist and .tagsym sections described in 1265 Chapter 4, Section "Sections" System V Application Binary 1266 Interface PowerPC(TM) Processor Supplement are not supported. 1267 __________________________________________________________ 1268 1269 9.3.2. Linux Special Sections 1270 1271 The following Linux PPC32 specific sections are defined here. 1272 1273 Table 9-2. Additional Special Sections 1274 Name Type Attributes 1275 .got2 SHT_PROGBITS SHF_ALLOC+SHF_WRITE 1276 .rela.bss SHT_RELA SHF_ALLOC 1277 .rela.dyn SHT_RELA SHF_ALLOC 1278 .rela.got SHT_RELA SHF_ALLOC 1279 .rela.got2 SHT_RELA SHF_ALLOC 1280 .rela.plt SHT_RELA SHF_ALLOC 1281 .rela.sbss SHT_RELA SHF_ALLOC 1282 .sbss SHT_NOBITS SHF_ALLOC+SHF_WRITE 1283 .sdata2 SHT_PROGBITS SHF_ALLOC 1284 1285 .got2 1286 1287 This section holds the second level GOT. 1288 .rela.bss 1289 1290 This section holds RELA type relocation information for the BSS 1291 section of a shared library or dynamically linked application. 1292 .rela.dyn 1293 1294 This section holds RELA type relocation information for all 1295 sections of a shared library except the PLT. 1296 .rela.got 1297 1298 This section holds RELA type relocation information for the GOT 1299 section of a shared library or dynamically linked application. 1300 .rela.got2 1301 1302 This section holds RELA type relocation information for the 1303 second level GOT section of a shared library or dynamically 1304 linked application. 1305 .rela.plt 1306 1307 This section holds RELA type relocation information for the PLT 1308 section of a shared library or dynamically linked application. 1309 .rela.sbss 1310 1311 This section holds RELA type relocation information for the 1312 SBSS section of a shared library or dynamically linked 1313 application. 1314 .sbss 1315 1316 This section holds uninitialized data that contribute to the 1317 program's memory image. The system initializes the data with 1318 zeroes when the program begins to run. 1319 .sdata2 1320 1321 This section holds the second level of initialised small data. 1322 __________________________________________________________ 1323 1324 9.4. Symbol Table 1325 1326 LSB-conforming applications shall use the Symbol Table as 1327 defined in Chapter 4, Section "Symbol Table" of the System V 1328 Application Binary Interface PowerPC(TM) Processor Supplement. 1329 __________________________________________________________ 1330 1331 9.5. Relocation 1332 1333 LSB-conforming applications shall use Relocations as defined in 1334 Chapter 4, Section "Relocation" of the System V Application 1335 Binary Interface PowerPC(TM) Processor Supplement. 1336 __________________________________________________________ 1337 1338 9.5.1. Relocation Types 1339 1340 LSB-conforming applications shall support the relocation types 1341 as defined in the Chapter 4, Section "Relocation" Subsection 1342 "Relocation Typles" except for the relocation type R_PPC_ADDR30 1343 as specified in Table 4-8 of System V Application Binary 1344 Interface PowerPC(TM) Processor Supplement. 1345 __________________________________________________________ 1346 1347 Chapter 10. Program Loading and Dynamic Linking 1348 1349 10.1. Introduction 1350 1351 LSB-conforming implementations shall support the object file 1352 information and system actions that create running programs as 1353 specified in the System V ABI, System V Application Binary 1354 Interface PowerPC(TM) Processor Supplement Chapter 5 and as 1355 supplemented by the generic Linux Standard Base Specification 1356 and this document. 1357 __________________________________________________________ 1358 1359 10.2. Program Header 1360 1361 LSB-conforming applications shall support the program header as 1362 defined in the System V Application Binary Interface 1363 PowerPC(TM) Processor Supplement Chapter 5, Section "Program 1364 Loading". 1365 __________________________________________________________ 1366 1367 10.3. Program Loading 1368 1369 LSB-conforming implementations shall map file pages to virtual 1370 memory pages as described in Section "Program Loading" of the 1371 System V Application Binary Interface PowerPC(TM) Processor 1372 Supplement, Chapter 5. 1373 __________________________________________________________ 1374 1375 10.4. Dynamic Linking 1376 1377 LSB-conforming implementations shall provide dynamic linking as 1378 specified in Section "Dynamic Linking" of the System V 1379 Application Binary Interface PowerPC(TM) Processor Supplement, 1380 Chapter 5. 1381 __________________________________________________________ 1382 1383 10.4.1. Dynamic Section 1384 1385 The following dynamic entries are defined in the System V 1386 Application Binary Interface PowerPC(TM) Processor Supplement, 1387 Chapter 5, Section "Dynamic Linking". 1388 1389 DT_JMPREL 1390 1391 This entry is associated with a table of relocation entries for 1392 the procedure linkage table. This entry is mandatory both for 1393 executable and shared object files 1394 DT_PLTGOT 1395 1396 This entry's d_ptr member gives the address of the first byte 1397 in the procedure linkage table 1398 1399 In addtion the following dynamic entries are also supported: 1400 1401 DT_RELACOUNT 1402 1403 The number of relative relocations in .rela.dyn 1404 __________________________________________________________ 1405 1406 10.4.2. Global Offset Table 1407 1408 LSB-conforming implementations shall support a Global Offset 1409 Table as described in Chapter 5, Section "Dynamic Linking" of 1410 the System V Application Binary Interface PowerPC(TM) Processor 1411 Supplement. 1412 __________________________________________________________ 1413 1414 10.4.3. Function Addresses 1415 1416 Function addresses shall behave as described in Chapter 5, 1417 Section "Dynamic Linking", Subsection "Function Addresses" of 1418 the System V Application Binary Interface PowerPC(TM) Processor 1419 Supplement. 1420 __________________________________________________________ 1421 1422 10.4.4. Procedure Linkage Table 1423 1424 LSB-conforming implementations shall support a Procedure 1425 Linkage Table as described in Chapter 5, Section "Dynamic 1426 Linking", Subsection "Procedure Linkage Table" of the System V 1427 Application Binary Interface PowerPC(TM) Processor Supplement. 1428 1429 III. Base Libraries 1430 1431 Table of Contents 1432 11. Libraries 1433 1434 11.1. Program Interpreter/Dynamic Linker 1435 11.2. Interfaces for libc 1436 1437 11.2.1. RPC 1438 11.2.2. System Calls 1439 11.2.3. Standard I/O 1440 11.2.4. Signal Handling 1441 11.2.5. Localization Functions 1442 11.2.6. Posix Spawn Option 1443 11.2.7. Posix Advisory Option 1444 11.2.8. Socket Interface 1445 11.2.9. Wide Characters 1446 11.2.10. String Functions 1447 11.2.11. IPC Functions 1448 11.2.12. Regular Expressions 1449 11.2.13. Character Type Functions 1450 11.2.14. Time Manipulation 1451 11.2.15. Terminal Interface Functions 1452 11.2.16. System Database Interface 1453 11.2.17. Language Support 1454 11.2.18. Large File Support 1455 11.2.19. Standard Library 1456 1457 11.3. Data Definitions for libc 1458 1459 11.3.1. ctype.h 1460 11.3.2. dirent.h 1461 11.3.3. errno.h 1462 11.3.4. fcntl.h 1463 11.3.5. fnmatch.h 1464 11.3.6. ftw.h 1465 11.3.7. getopt.h 1466 11.3.8. glob.h 1467 11.3.9. iconv.h 1468 11.3.10. langinfo.h 1469 11.3.11. limits.h 1470 11.3.12. locale.h 1471 11.3.13. net/if.h 1472 11.3.14. netdb.h 1473 11.3.15. netinet/in.h 1474 11.3.16. netinet/ip.h 1475 11.3.17. netinet/tcp.h 1476 11.3.18. netinet/udp.h 1477 11.3.19. nl_types.h 1478 11.3.20. pwd.h 1479 11.3.21. regex.h 1480 11.3.22. rpc/auth.h 1481 11.3.23. rpc/clnt.h 1482 11.3.24. rpc/rpc_msg.h 1483 11.3.25. rpc/svc.h 1484 11.3.26. rpc/types.h 1485 11.3.27. rpc/xdr.h 1486 11.3.28. sched.h 1487 11.3.29. search.h 1488 11.3.30. setjmp.h 1489 11.3.31. signal.h 1490 11.3.32. spawn.h 1491 11.3.33. stddef.h 1492 11.3.34. stdint.h 1493 11.3.35. stdio.h 1494 11.3.36. stdlib.h 1495 11.3.37. sys/file.h 1496 11.3.38. sys/ioctl.h 1497 11.3.39. sys/ipc.h 1498 11.3.40. sys/mman.h 1499 11.3.41. sys/msg.h 1500 11.3.42. sys/param.h 1501 11.3.43. sys/poll.h 1502 11.3.44. sys/resource.h 1503 11.3.45. sys/sem.h 1504 11.3.46. sys/shm.h 1505 11.3.47. sys/socket.h 1506 11.3.48. sys/stat.h 1507 11.3.49. sys/statfs.h 1508 11.3.50. sys/statvfs.h 1509 11.3.51. sys/time.h 1510 11.3.52. sys/timeb.h 1511 11.3.53. sys/times.h 1512 11.3.54. sys/types.h 1513 11.3.55. sys/un.h 1514 11.3.56. sys/utsname.h 1515 11.3.57. sys/wait.h 1516 11.3.58. syslog.h 1517 11.3.59. termios.h 1518 11.3.60. ucontext.h 1519 11.3.61. ulimit.h 1520 11.3.62. unistd.h 1521 11.3.63. utime.h 1522 11.3.64. utmp.h 1523 11.3.65. utmpx.h 1524 11.3.66. wctype.h 1525 11.3.67. wordexp.h 1526 1527 11.4. Interfaces for libm 1528 1529 11.4.1. Math 1530 1531 11.5. Data Definitions for libm 1532 1533 11.5.1. complex.h 1534 11.5.2. fenv.h 1535 11.5.3. math.h 1536 1537 11.6. Interfaces for libpthread 1538 1539 11.6.1. Realtime Threads 1540 11.6.2. Advanced Realtime Threads 1541 11.6.3. Posix Threads 1542 11.6.4. Thread aware versions of libc interfaces 1543 1544 11.7. Data Definitions for libpthread 1545 1546 11.7.1. pthread.h 1547 11.7.2. semaphore.h 1548 1549 11.8. Interfaces for libgcc_s 1550 1551 11.8.1. Unwind Library 1552 1553 11.9. Data Definitions for libgcc_s 1554 1555 11.9.1. unwind.h 1556 1557 11.10. Interface Definitions for libgcc_s 1558 1559 _Unwind_DeleteException -- private C++ error 1560 handling method 1561 1562 _Unwind_Find_FDE -- private C++ error handling 1563 method 1564 1565 _Unwind_ForcedUnwind -- private C++ error handling 1566 method 1567 1568 _Unwind_GetDataRelBase -- private IA64 C++ error 1569 handling method 1570 1571 _Unwind_GetGR -- private C++ error handling method 1572 _Unwind_GetIP -- private C++ error handling method 1573 _Unwind_GetLanguageSpecificData -- private C++ error 1574 handling method 1575 1576 _Unwind_GetRegionStart -- private C++ error handling 1577 method 1578 1579 _Unwind_GetTextRelBase -- private IA64 C++ error 1580 handling method 1581 1582 _Unwind_RaiseException -- private C++ error handling 1583 method 1584 1585 _Unwind_Resume -- private C++ error handling method 1586 _Unwind_SetGR -- private C++ error handling method 1587 _Unwind_SetIP -- private C++ error handling method 1588 1589 11.11. Interfaces for libdl 1590 1591 11.11.1. Dynamic Loader 1592 1593 11.12. Data Definitions for libdl 1594 1595 11.12.1. dlfcn.h 1596 1597 11.13. Interfaces for libcrypt 1598 1599 11.13.1. Encryption 1600 __________________________________________________________ 1601 1602 Chapter 11. Libraries 1603 1604 An LSB-conforming implementation shall support base libraries 1605 which provide interfaces for accessing the operating system, 1606 processor and other hardware in the system. 1607 1608 Only those interfaces that are unique to the PowerPC 32 1609 platform are defined here. This section should be used in 1610 conjunction with the corresponding section in the generic Linux 1611 Standard Base Core Specification. 1612 __________________________________________________________ 1613 1614 11.1. Program Interpreter/Dynamic Linker 1615 1616 The Program Interpreter shall be /lib/ld-lsb-ppc32.so.3. 1617 __________________________________________________________ 1618 1619 11.2. Interfaces for libc 1620 1621 Table 11-1 defines the library name and shared object name for 1622 the libc library 1623 1624 Table 11-1. libc Definition 1625 Library: libc 1626 SONAME: libc.so.6 1627 1628 The behavior of the interfaces in this library is specified by 1629 the following specifications: 1630 1631 [LFS] Large File Support 1632 [LSB] ISO/IEC 23360 Part 1 1633 [SUSv2] SUSv2 1634 [SUSv3] ISO POSIX (2003) 1635 [SVID.3] SVID Issue 3 1636 [SVID.4] SVID Issue 4 1637 __________________________________________________________ 1638 1639 11.2.1. RPC 1640 __________________________________________________________ 1641 1642 11.2.1.1. Interfaces for RPC 1643 1644 An LSB conforming implementation shall provide the architecture 1645 specific functions for RPC specified in Table 11-2, with the 1646 full mandatory functionality as described in the referenced 1647 underlying specification. 1648 1649 Table 11-2. libc - RPC Function Interfaces 1650 authnone_create(GLIBC_2.0) [SVID.4] clnt_create(GLIBC_2.0) 1651 [SVID.4] clnt_pcreateerror(GLIBC_2.0) [SVID.4] 1652 clnt_perrno(GLIBC_2.0) [SVID.4] 1653 clnt_perror(GLIBC_2.0) [SVID.4] clnt_spcreateerror(GLIBC_2.0) 1654 [SVID.4] clnt_sperrno(GLIBC_2.0) [SVID.4] 1655 clnt_sperror(GLIBC_2.0) [SVID.4] 1656 key_decryptsession(GLIBC_2.1) [SVID.3] pmap_getport(GLIBC_2.0) 1657 [LSB] pmap_set(GLIBC_2.0) [LSB] pmap_unset(GLIBC_2.0) [LSB] 1658 svc_getreqset(GLIBC_2.0) [SVID.3] svc_register(GLIBC_2.0) [LSB] 1659 svc_run(GLIBC_2.0) [LSB] svc_sendreply(GLIBC_2.0) [LSB] 1660 svcerr_auth(GLIBC_2.0) [SVID.3] svcerr_decode(GLIBC_2.0) 1661 [SVID.3] svcerr_noproc(GLIBC_2.0) [SVID.3] 1662 svcerr_noprog(GLIBC_2.0) [SVID.3] 1663 svcerr_progvers(GLIBC_2.0) [SVID.3] svcerr_systemerr(GLIBC_2.0) 1664 [SVID.3] svcerr_weakauth(GLIBC_2.0) [SVID.3] 1665 svctcp_create(GLIBC_2.0) [LSB] 1666 svcudp_create(GLIBC_2.0) [LSB] xdr_accepted_reply(GLIBC_2.0) 1667 [SVID.3] xdr_array(GLIBC_2.0) [SVID.3] xdr_bool(GLIBC_2.0) 1668 [SVID.3] 1669 xdr_bytes(GLIBC_2.0) [SVID.3] xdr_callhdr(GLIBC_2.0) [SVID.3] 1670 xdr_callmsg(GLIBC_2.0) [SVID.3] xdr_char(GLIBC_2.0) [SVID.3] 1671 xdr_double(GLIBC_2.0) [SVID.3] xdr_enum(GLIBC_2.0) [SVID.3] 1672 xdr_float(GLIBC_2.0) [SVID.3] xdr_free(GLIBC_2.0) [SVID.3] 1673 xdr_int(GLIBC_2.0) [SVID.3] xdr_long(GLIBC_2.0) [SVID.3] 1674 xdr_opaque(GLIBC_2.0) [SVID.3] xdr_opaque_auth(GLIBC_2.0) 1675 [SVID.3] 1676 xdr_pointer(GLIBC_2.0) [SVID.3] xdr_reference(GLIBC_2.0) 1677 [SVID.3] xdr_rejected_reply(GLIBC_2.0) [SVID.3] 1678 xdr_replymsg(GLIBC_2.0) [SVID.3] 1679 xdr_short(GLIBC_2.0) [SVID.3] xdr_string(GLIBC_2.0) [SVID.3] 1680 xdr_u_char(GLIBC_2.0) [SVID.3] xdr_u_int(GLIBC_2.0) [LSB] 1681 xdr_u_long(GLIBC_2.0) [SVID.3] xdr_u_short(GLIBC_2.0) [SVID.3] 1682 xdr_union(GLIBC_2.0) [SVID.3] xdr_vector(GLIBC_2.0) [SVID.3] 1683 xdr_void(GLIBC_2.0) [SVID.3] xdr_wrapstring(GLIBC_2.0) [SVID.3] 1684 xdrmem_create(GLIBC_2.0) [SVID.3] xdrrec_create(GLIBC_2.0) 1685 [SVID.3] 1686 xdrrec_eof(GLIBC_2.0) [SVID.3] xdrstdio_create(GLIBC_2.0) [LSB] 1687 __________________________________________________________ 1688 1689 11.2.2. System Calls 1690 __________________________________________________________ 1691 1692 11.2.2.1. Interfaces for System Calls 1693 1694 An LSB conforming implementation shall provide the architecture 1695 specific functions for System Calls specified in Table 11-3, 1696 with the full mandatory functionality as described in the 1697 referenced underlying specification. 1698 1699 Table 11-3. libc - System Calls Function Interfaces 1700 __fxstat(GLIBC_2.0) [LSB] __getpgid(GLIBC_2.0) [LSB] 1701 __lxstat(GLIBC_2.0) [LSB] __xmknod(GLIBC_2.0) [LSB] 1702 __xstat(GLIBC_2.0) [LSB] access(GLIBC_2.0) [SUSv3] 1703 acct(GLIBC_2.0) [LSB] alarm(GLIBC_2.0) [SUSv3] 1704 brk(GLIBC_2.0) [SUSv2] chdir(GLIBC_2.0) [SUSv3] 1705 chmod(GLIBC_2.0) [SUSv3] chown(GLIBC_2.1) [SUSv3] 1706 chroot(GLIBC_2.0) [SUSv2] clock(GLIBC_2.0) [SUSv3] 1707 close(GLIBC_2.0) [SUSv3] closedir(GLIBC_2.0) [SUSv3] 1708 creat(GLIBC_2.0) [SUSv3] dup(GLIBC_2.0) [SUSv3] dup2(GLIBC_2.0) 1709 [SUSv3] execl(GLIBC_2.0) [SUSv3] 1710 execle(GLIBC_2.0) [SUSv3] execlp(GLIBC_2.0) [SUSv3] 1711 execv(GLIBC_2.0) [SUSv3] execve(GLIBC_2.0) [SUSv3] 1712 execvp(GLIBC_2.0) [SUSv3] exit(GLIBC_2.0) [SUSv3] 1713 fchdir(GLIBC_2.0) [SUSv3] fchmod(GLIBC_2.0) [SUSv3] 1714 fchown(GLIBC_2.0) [SUSv3] fcntl(GLIBC_2.0) [LSB] 1715 fdatasync(GLIBC_2.0) [SUSv3] flock(GLIBC_2.0) [LSB] 1716 fork(GLIBC_2.0) [SUSv3] fstatfs(GLIBC_2.0) [LSB] 1717 fstatvfs(GLIBC_2.1) [SUSv3] fsync(GLIBC_2.0) [SUSv3] 1718 ftime(GLIBC_2.0) [SUSv3] ftruncate(GLIBC_2.0) [SUSv3] 1719 getcontext(GLIBC_2.3.4) [SUSv3] getdtablesize(GLIBC_2.0) [LSB] 1720 getegid(GLIBC_2.0) [SUSv3] geteuid(GLIBC_2.0) [SUSv3] 1721 getgid(GLIBC_2.0) [SUSv3] getgroups(GLIBC_2.0) [SUSv3] 1722 getitimer(GLIBC_2.0) [SUSv3] getloadavg(GLIBC_2.2) [LSB] 1723 getpagesize(GLIBC_2.0) [LSB] getpgid(GLIBC_2.0) [SUSv3] 1724 getpgrp(GLIBC_2.0) [SUSv3] getpid(GLIBC_2.0) [SUSv3] 1725 getppid(GLIBC_2.0) [SUSv3] getpriority(GLIBC_2.0) [SUSv3] 1726 getrlimit(GLIBC_2.2) [SUSv3] getrusage(GLIBC_2.0) [SUSv3] 1727 getsid(GLIBC_2.0) [SUSv3] getuid(GLIBC_2.0) [SUSv3] 1728 getwd(GLIBC_2.0) [SUSv3] initgroups(GLIBC_2.0) [LSB] 1729 ioctl(GLIBC_2.0) [LSB] kill(GLIBC_2.0) [LSB] 1730 killpg(GLIBC_2.0) [SUSv3] lchown(GLIBC_2.0) [SUSv3] 1731 link(GLIBC_2.0) [LSB] lockf(GLIBC_2.0) [SUSv3] 1732 lseek(GLIBC_2.0) [SUSv3] mkdir(GLIBC_2.0) [SUSv3] 1733 mkfifo(GLIBC_2.0) [SUSv3] mlock(GLIBC_2.0) [SUSv3] 1734 mlockall(GLIBC_2.0) [SUSv3] mmap(GLIBC_2.0) [SUSv3] 1735 mprotect(GLIBC_2.0) [SUSv3] mremap(GLIBC_2.0) [LSB] 1736 msync(GLIBC_2.0) [SUSv3] munlock(GLIBC_2.0) [SUSv3] 1737 munlockall(GLIBC_2.0) [SUSv3] munmap(GLIBC_2.0) [SUSv3] 1738 nanosleep(GLIBC_2.0) [SUSv3] nice(GLIBC_2.0) [SUSv3] 1739 open(GLIBC_2.0) [SUSv3] opendir(GLIBC_2.0) [SUSv3] 1740 pathconf(GLIBC_2.0) [SUSv3] pause(GLIBC_2.0) [SUSv3] 1741 pipe(GLIBC_2.0) [SUSv3] poll(GLIBC_2.0) [SUSv3] 1742 pselect(GLIBC_2.0) [SUSv3] read(GLIBC_2.0) [SUSv3] 1743 readdir(GLIBC_2.0) [SUSv3] readdir_r(GLIBC_2.0) [SUSv3] 1744 readlink(GLIBC_2.0) [SUSv3] readv(GLIBC_2.0) [SUSv3] 1745 rename(GLIBC_2.0) [SUSv3] rmdir(GLIBC_2.0) [SUSv3] 1746 sbrk(GLIBC_2.0) [SUSv2] sched_get_priority_max(GLIBC_2.0) 1747 [SUSv3] sched_get_priority_min(GLIBC_2.0) [SUSv3] 1748 sched_getparam(GLIBC_2.0) [SUSv3] 1749 sched_getscheduler(GLIBC_2.0) [SUSv3] 1750 sched_rr_get_interval(GLIBC_2.0) [SUSv3] 1751 sched_setparam(GLIBC_2.0) [SUSv3] sched_setscheduler(GLIBC_2.0) 1752 [LSB] 1753 sched_yield(GLIBC_2.0) [SUSv3] select(GLIBC_2.0) [SUSv3] 1754 setcontext(GLIBC_2.3.4) [SUSv3] setegid(GLIBC_2.0) [SUSv3] 1755 seteuid(GLIBC_2.0) [SUSv3] setgid(GLIBC_2.0) [SUSv3] 1756 setitimer(GLIBC_2.0) [SUSv3] setpgid(GLIBC_2.0) [SUSv3] 1757 setpgrp(GLIBC_2.0) [SUSv3] setpriority(GLIBC_2.0) [SUSv3] 1758 setregid(GLIBC_2.0) [SUSv3] setreuid(GLIBC_2.0) [SUSv3] 1759 setrlimit(GLIBC_2.2) [SUSv3] setrlimit64(GLIBC_2.1) [LFS] 1760 setsid(GLIBC_2.0) [SUSv3] setuid(GLIBC_2.0) [SUSv3] 1761 sleep(GLIBC_2.0) [SUSv3] statfs(GLIBC_2.0) [LSB] 1762 statvfs(GLIBC_2.1) [SUSv3] stime(GLIBC_2.0) [LSB] 1763 symlink(GLIBC_2.0) [SUSv3] sync(GLIBC_2.0) [SUSv3] 1764 sysconf(GLIBC_2.0) [LSB] time(GLIBC_2.0) [SUSv3] 1765 times(GLIBC_2.0) [SUSv3] truncate(GLIBC_2.0) [SUSv3] 1766 ulimit(GLIBC_2.0) [SUSv3] umask(GLIBC_2.0) [SUSv3] 1767 uname(GLIBC_2.0) [SUSv3] unlink(GLIBC_2.0) [LSB] 1768 utime(GLIBC_2.0) [SUSv3] utimes(GLIBC_2.0) [SUSv3] 1769 vfork(GLIBC_2.0) [SUSv3] wait(GLIBC_2.0) [SUSv3] 1770 wait4(GLIBC_2.0) [LSB] waitid(GLIBC_2.1) [SUSv3] 1771 waitpid(GLIBC_2.0) [LSB] write(GLIBC_2.0) [SUSv3] 1772 writev(GLIBC_2.0) [SUSv3] 1773 1774 An LSB conforming implementation shall provide the architecture 1775 specific deprecated functions for System Calls specified in 1776 Table 11-4, with the full mandatory functionality as described 1777 in the referenced underlying specification. 1778 1779 Note: These interfaces are deprecated, and applications 1780 should avoid using them. These interfaces may be withdrawn 1781 in future releases of this specification. 1782 1783 Table 11-4. libc - System Calls Deprecated Function Interfaces 1784 fstatfs(GLIBC_2.0) [LSB] getdtablesize(GLIBC_2.0) [LSB] 1785 getpagesize(GLIBC_2.0) [LSB] getwd(GLIBC_2.0) [SUSv3] 1786 statfs(GLIBC_2.0) [LSB] 1787 __________________________________________________________ 1788 1789 11.2.3. Standard I/O 1790 __________________________________________________________ 1791 1792 11.2.3.1. Interfaces for Standard I/O 1793 1794 An LSB conforming implementation shall provide the architecture 1795 specific functions for Standard I/O specified in Table 11-5, 1796 with the full mandatory functionality as described in the 1797 referenced underlying specification. 1798 1799 Table 11-5. libc - Standard I/O Function Interfaces 1800 _IO_feof(GLIBC_2.0) [LSB] _IO_getc(GLIBC_2.0) [LSB] 1801 _IO_putc(GLIBC_2.0) [LSB] _IO_puts(GLIBC_2.0) [LSB] 1802 asprintf(GLIBC_2.0) [LSB] clearerr(GLIBC_2.0) [SUSv3] 1803 ctermid(GLIBC_2.0) [SUSv3] fclose(GLIBC_2.1) [SUSv3] 1804 fdopen(GLIBC_2.1) [SUSv3] feof(GLIBC_2.0) [SUSv3] 1805 ferror(GLIBC_2.0) [SUSv3] fflush(GLIBC_2.0) [SUSv3] 1806 fflush_unlocked(GLIBC_2.0) [LSB] fgetc(GLIBC_2.0) [SUSv3] 1807 fgetpos(GLIBC_2.2) [SUSv3] fgets(GLIBC_2.0) [SUSv3] 1808 fgetwc_unlocked(GLIBC_2.2) [LSB] fileno(GLIBC_2.0) [SUSv3] 1809 flockfile(GLIBC_2.0) [SUSv3] fopen(GLIBC_2.1) [SUSv3] 1810 fprintf(GLIBC_2.0) [SUSv3] fputc(GLIBC_2.0) [SUSv3] 1811 fputs(GLIBC_2.0) [SUSv3] fread(GLIBC_2.0) [SUSv3] 1812 freopen(GLIBC_2.0) [SUSv3] fscanf(GLIBC_2.0) [LSB] 1813 fseek(GLIBC_2.0) [SUSv3] fseeko(GLIBC_2.1) [SUSv3] 1814 fsetpos(GLIBC_2.2) [SUSv3] ftell(GLIBC_2.0) [SUSv3] 1815 ftello(GLIBC_2.1) [SUSv3] fwrite(GLIBC_2.0) [SUSv3] 1816 getc(GLIBC_2.0) [SUSv3] getc_unlocked(GLIBC_2.0) [SUSv3] 1817 getchar(GLIBC_2.0) [SUSv3] getchar_unlocked(GLIBC_2.0) [SUSv3] 1818 getw(GLIBC_2.0) [SUSv2] pclose(GLIBC_2.1) [SUSv3] 1819 popen(GLIBC_2.1) [SUSv3] printf(GLIBC_2.0) [SUSv3] 1820 putc(GLIBC_2.0) [SUSv3] putc_unlocked(GLIBC_2.0) [SUSv3] 1821 putchar(GLIBC_2.0) [SUSv3] putchar_unlocked(GLIBC_2.0) [SUSv3] 1822 puts(GLIBC_2.0) [SUSv3] putw(GLIBC_2.0) [SUSv2] 1823 remove(GLIBC_2.0) [SUSv3] rewind(GLIBC_2.0) [SUSv3] 1824 rewinddir(GLIBC_2.0) [SUSv3] scanf(GLIBC_2.0) [LSB] 1825 seekdir(GLIBC_2.0) [SUSv3] setbuf(GLIBC_2.0) [SUSv3] 1826 setbuffer(GLIBC_2.0) [LSB] setvbuf(GLIBC_2.0) [SUSv3] 1827 snprintf(GLIBC_2.0) [SUSv3] sprintf(GLIBC_2.0) [SUSv3] 1828 sscanf(GLIBC_2.0) [LSB] telldir(GLIBC_2.0) [SUSv3] 1829 tempnam(GLIBC_2.0) [SUSv3] ungetc(GLIBC_2.0) [SUSv3] 1830 vasprintf(GLIBC_2.0) [LSB] vdprintf(GLIBC_2.0) [LSB] 1831 vfprintf(GLIBC_2.0) [SUSv3] vprintf(GLIBC_2.0) [SUSv3] 1832 vsnprintf(GLIBC_2.0) [SUSv3] vsprintf(GLIBC_2.0) [SUSv3] 1833 1834 An LSB conforming implementation shall provide the architecture 1835 specific data interfaces for Standard I/O specified in Table 1836 11-6, with the full mandatory functionality as described in the 1837 referenced underlying specification. 1838 1839 Table 11-6. libc - Standard I/O Data Interfaces 1840 stderr(GLIBC_2.0) [SUSv3] stdin(GLIBC_2.0) [SUSv3] 1841 stdout(GLIBC_2.0) [SUSv3] 1842 __________________________________________________________ 1843 1844 11.2.4. Signal Handling 1845 __________________________________________________________ 1846 1847 11.2.4.1. Interfaces for Signal Handling 1848 1849 An LSB conforming implementation shall provide the architecture 1850 specific functions for Signal Handling specified in Table 11-7, 1851 with the full mandatory functionality as described in the 1852 referenced underlying specification. 1853 1854 Table 11-7. libc - Signal Handling Function Interfaces 1855 __libc_current_sigrtmax(GLIBC_2.1) [LSB] 1856 __libc_current_sigrtmin(GLIBC_2.1) [LSB] 1857 __sigsetjmp(GLIBC_2.3.4) [LSB] __sysv_signal(GLIBC_2.0) [LSB] 1858 __xpg_sigpause(GLIBC_2.2) [LSB] bsd_signal(GLIBC_2.0) [SUSv3] 1859 psignal(GLIBC_2.0) [LSB] raise(GLIBC_2.0) [SUSv3] 1860 sigaction(GLIBC_2.0) [SUSv3] sigaddset(GLIBC_2.0) [SUSv3] 1861 sigaltstack(GLIBC_2.0) [SUSv3] sigandset(GLIBC_2.0) [LSB] 1862 sigdelset(GLIBC_2.0) [SUSv3] sigemptyset(GLIBC_2.0) [SUSv3] 1863 sigfillset(GLIBC_2.0) [SUSv3] sighold(GLIBC_2.1) [SUSv3] 1864 sigignore(GLIBC_2.1) [SUSv3] siginterrupt(GLIBC_2.0) [SUSv3] 1865 sigisemptyset(GLIBC_2.0) [LSB] sigismember(GLIBC_2.0) [SUSv3] 1866 siglongjmp(GLIBC_2.3.4) [SUSv3] signal(GLIBC_2.0) [SUSv3] 1867 sigorset(GLIBC_2.0) [LSB] sigpause(GLIBC_2.0) [LSB] 1868 sigpending(GLIBC_2.0) [SUSv3] sigprocmask(GLIBC_2.0) [SUSv3] 1869 sigqueue(GLIBC_2.1) [SUSv3] sigrelse(GLIBC_2.1) [SUSv3] 1870 sigreturn(GLIBC_2.0) [LSB] sigset(GLIBC_2.1) [SUSv3] 1871 sigsuspend(GLIBC_2.0) [SUSv3] sigtimedwait(GLIBC_2.1) [SUSv3] 1872 sigwait(GLIBC_2.0) [SUSv3] sigwaitinfo(GLIBC_2.1) [SUSv3] 1873 1874 An LSB conforming implementation shall provide the architecture 1875 specific deprecated functions for Signal Handling specified in 1876 Table 11-8, with the full mandatory functionality as described 1877 in the referenced underlying specification. 1878 1879 Note: These interfaces are deprecated, and applications 1880 should avoid using them. These interfaces may be withdrawn 1881 in future releases of this specification. 1882 1883 Table 11-8. libc - Signal Handling Deprecated Function 1884 Interfaces 1885 sigpause(GLIBC_2.0) [LSB] 1886 1887 An LSB conforming implementation shall provide the architecture 1888 specific data interfaces for Signal Handling specified in Table 1889 11-9, with the full mandatory functionality as described in the 1890 referenced underlying specification. 1891 1892 Table 11-9. libc - Signal Handling Data Interfaces 1893 _sys_siglist(GLIBC_2.3.3) [LSB] 1894 __________________________________________________________ 1895 1896 11.2.5. Localization Functions 1897 __________________________________________________________ 1898 1899 11.2.5.1. Interfaces for Localization Functions 1900 1901 An LSB conforming implementation shall provide the architecture 1902 specific functions for Localization Functions specified in 1903 Table 11-10, with the full mandatory functionality as described 1904 in the referenced underlying specification. 1905 1906 Table 11-10. libc - Localization Functions Function Interfaces 1907 bind_textdomain_codeset(GLIBC_2.2) [LSB] 1908 bindtextdomain(GLIBC_2.0) [LSB] catclose(GLIBC_2.0) [SUSv3] 1909 catgets(GLIBC_2.0) [SUSv3] 1910 catopen(GLIBC_2.0) [SUSv3] dcgettext(GLIBC_2.0) [LSB] 1911 dcngettext(GLIBC_2.2) [LSB] dgettext(GLIBC_2.0) [LSB] 1912 dngettext(GLIBC_2.2) [LSB] gettext(GLIBC_2.0) [LSB] 1913 iconv(GLIBC_2.1) [SUSv3] iconv_close(GLIBC_2.1) [SUSv3] 1914 iconv_open(GLIBC_2.1) [SUSv3] localeconv(GLIBC_2.2) [SUSv3] 1915 ngettext(GLIBC_2.2) [LSB] nl_langinfo(GLIBC_2.0) [SUSv3] 1916 setlocale(GLIBC_2.0) [SUSv3] textdomain(GLIBC_2.0) [LSB] 1917 1918 An LSB conforming implementation shall provide the architecture 1919 specific data interfaces for Localization Functions specified 1920 in Table 11-11, with the full mandatory functionality as 1921 described in the referenced underlying specification. 1922 1923 Table 11-11. libc - Localization Functions Data Interfaces 1924 _nl_msg_cat_cntr(GLIBC_2.0) [LSB] 1925 __________________________________________________________ 1926 1927 11.2.6. Posix Spawn Option 1928 __________________________________________________________ 1929 1930 11.2.6.1. Interfaces for Posix Spawn Option 1931 1932 An LSB conforming implementation shall provide the architecture 1933 specific functions for Posix Spawn Option specified in Table 1934 11-12, with the full mandatory functionality as described in 1935 the referenced underlying specification. 1936 1937 Table 11-12. libc - Posix Spawn Option Function Interfaces 1938 posix_spawn(GLIBC_2.2) [SUSv3] 1939 posix_spawn_file_actions_addclose(GLIBC_2.2) [SUSv3] 1940 posix_spawn_file_actions_adddup2(GLIBC_2.2) [SUSv3] 1941 posix_spawn_file_actions_addopen(GLIBC_2.2) [SUSv3] 1942 posix_spawn_file_actions_destroy(GLIBC_2.2) [SUSv3] 1943 posix_spawn_file_actions_init(GLIBC_2.2) [SUSv3] 1944 posix_spawnattr_destroy(GLIBC_2.2) [SUSv3] 1945 posix_spawnattr_getflags(GLIBC_2.2) [SUSv3] 1946 posix_spawnattr_getpgroup(GLIBC_2.2) [SUSv3] 1947 posix_spawnattr_getschedparam(GLIBC_2.2) [SUSv3] 1948 posix_spawnattr_getschedpolicy(GLIBC_2.2) [SUSv3] 1949 posix_spawnattr_getsigdefault(GLIBC_2.2) [SUSv3] 1950 posix_spawnattr_getsigmask(GLIBC_2.2) [SUSv3] 1951 posix_spawnattr_init(GLIBC_2.2) [SUSv3] 1952 posix_spawnattr_setflags(GLIBC_2.2) [SUSv3] 1953 posix_spawnattr_setpgroup(GLIBC_2.2) [SUSv3] 1954 posix_spawnattr_setschedparam(GLIBC_2.2) [SUSv3] 1955 posix_spawnattr_setschedpolicy(GLIBC_2.2) [SUSv3] 1956 posix_spawnattr_setsigdefault(GLIBC_2.2) [SUSv3] 1957 posix_spawnattr_setsigmask(GLIBC_2.2) [SUSv3] 1958 posix_spawnp(GLIBC_2.2) [SUSv3] 1959 __________________________________________________________ 1960 1961 11.2.7. Posix Advisory Option 1962 __________________________________________________________ 1963 1964 11.2.7.1. Interfaces for Posix Advisory Option 1965 1966 An LSB conforming implementation shall provide the architecture 1967 specific functions for Posix Advisory Option specified in Table 1968 11-13, with the full mandatory functionality as described in 1969 the referenced underlying specification. 1970 1971 Table 11-13. libc - Posix Advisory Option Function Interfaces 1972 posix_fadvise(GLIBC_2.2) [SUSv3] posix_fallocate(GLIBC_2.2) 1973 [SUSv3] posix_madvise(GLIBC_2.2) [SUSv3] 1974 posix_memalign(GLIBC_2.2) [SUSv3] 1975 __________________________________________________________ 1976 1977 11.2.8. Socket Interface 1978 __________________________________________________________ 1979 1980 11.2.8.1. Interfaces for Socket Interface 1981 1982 An LSB conforming implementation shall provide the architecture 1983 specific functions for Socket Interface specified in Table 1984 11-14, with the full mandatory functionality as described in 1985 the referenced underlying specification. 1986 1987 Table 11-14. libc - Socket Interface Function Interfaces 1988 __h_errno_location(GLIBC_2.0) [LSB] accept(GLIBC_2.0) [SUSv3] 1989 bind(GLIBC_2.0) [SUSv3] bindresvport(GLIBC_2.0) [LSB] 1990 connect(GLIBC_2.0) [SUSv3] gethostid(GLIBC_2.0) [SUSv3] 1991 gethostname(GLIBC_2.0) [SUSv3] getpeername(GLIBC_2.0) [SUSv3] 1992 getsockname(GLIBC_2.0) [SUSv3] getsockopt(GLIBC_2.0) [LSB] 1993 if_freenameindex(GLIBC_2.1) [SUSv3] if_indextoname(GLIBC_2.1) 1994 [SUSv3] 1995 if_nameindex(GLIBC_2.1) [SUSv3] if_nametoindex(GLIBC_2.1) 1996 [SUSv3] listen(GLIBC_2.0) [SUSv3] recv(GLIBC_2.0) [SUSv3] 1997 recvfrom(GLIBC_2.0) [SUSv3] recvmsg(GLIBC_2.0) [SUSv3] 1998 send(GLIBC_2.0) [SUSv3] sendmsg(GLIBC_2.0) [SUSv3] 1999 sendto(GLIBC_2.0) [SUSv3] setsockopt(GLIBC_2.0) [LSB] 2000 shutdown(GLIBC_2.0) [SUSv3] sockatmark(GLIBC_2.2.4) [SUSv3] 2001 socket(GLIBC_2.0) [SUSv3] socketpair(GLIBC_2.0) [SUSv3] 2002 2003 An LSB conforming implementation shall provide the architecture 2004 specific data interfaces for Socket Interface specified in 2005 Table 11-15, with the full mandatory functionality as described 2006 in the referenced underlying specification. 2007 2008 Table 11-15. libc - Socket Interface Data Interfaces 2009 in6addr_any(GLIBC_2.1) [SUSv3] in6addr_loopback(GLIBC_2.1) 2010 [SUSv3] 2011 __________________________________________________________ 2012 2013 11.2.9. Wide Characters 2014 __________________________________________________________ 2015 2016 11.2.9.1. Interfaces for Wide Characters 2017 2018 An LSB conforming implementation shall provide the architecture 2019 specific functions for Wide Characters specified in Table 2020 11-16, with the full mandatory functionality as described in 2021 the referenced underlying specification. 2022 2023 Table 11-16. libc - Wide Characters Function Interfaces 2024 __wcstod_internal(GLIBC_2.0) [LSB] __wcstof_internal(GLIBC_2.0) 2025 [LSB] __wcstol_internal(GLIBC_2.0) [LSB] 2026 __wcstold_internal(GLIBC_2.0) [LSB] 2027 __wcstoul_internal(GLIBC_2.0) [LSB] btowc(GLIBC_2.0) [SUSv3] 2028 fgetwc(GLIBC_2.2) [SUSv3] fgetws(GLIBC_2.2) [SUSv3] 2029 fputwc(GLIBC_2.2) [SUSv3] fputws(GLIBC_2.2) [SUSv3] 2030 fwide(GLIBC_2.2) [SUSv3] fwprintf(GLIBC_2.2) [SUSv3] 2031 fwscanf(GLIBC_2.2) [LSB] getwc(GLIBC_2.2) [SUSv3] 2032 getwchar(GLIBC_2.2) [SUSv3] mblen(GLIBC_2.0) [SUSv3] 2033 mbrlen(GLIBC_2.0) [SUSv3] mbrtowc(GLIBC_2.0) [SUSv3] 2034 mbsinit(GLIBC_2.0) [SUSv3] mbsnrtowcs(GLIBC_2.0) [LSB] 2035 mbsrtowcs(GLIBC_2.0) [SUSv3] mbstowcs(GLIBC_2.0) [SUSv3] 2036 mbtowc(GLIBC_2.0) [SUSv3] putwc(GLIBC_2.2) [SUSv3] 2037 putwchar(GLIBC_2.2) [SUSv3] swprintf(GLIBC_2.2) [SUSv3] 2038 swscanf(GLIBC_2.2) [LSB] towctrans(GLIBC_2.0) [SUSv3] 2039 towlower(GLIBC_2.0) [SUSv3] towupper(GLIBC_2.0) [SUSv3] 2040 ungetwc(GLIBC_2.2) [SUSv3] vfwprintf(GLIBC_2.2) [SUSv3] 2041 vfwscanf(GLIBC_2.2) [LSB] vswprintf(GLIBC_2.2) [SUSv3] 2042 vswscanf(GLIBC_2.2) [LSB] vwprintf(GLIBC_2.2) [SUSv3] 2043 vwscanf(GLIBC_2.2) [LSB] wcpcpy(GLIBC_2.0) [LSB] 2044 wcpncpy(GLIBC_2.0) [LSB] wcrtomb(GLIBC_2.0) [SUSv3] 2045 wcscasecmp(GLIBC_2.1) [LSB] wcscat(GLIBC_2.0) [SUSv3] 2046 wcschr(GLIBC_2.0) [SUSv3] wcscmp(GLIBC_2.0) [SUSv3] 2047 wcscoll(GLIBC_2.0) [SUSv3] wcscpy(GLIBC_2.0) [SUSv3] 2048 wcscspn(GLIBC_2.0) [SUSv3] wcsdup(GLIBC_2.0) [LSB] 2049 wcsftime(GLIBC_2.2) [SUSv3] wcslen(GLIBC_2.0) [SUSv3] 2050 wcsncasecmp(GLIBC_2.1) [LSB] wcsncat(GLIBC_2.0) [SUSv3] 2051 wcsncmp(GLIBC_2.0) [SUSv3] wcsncpy(GLIBC_2.0) [SUSv3] 2052 wcsnlen(GLIBC_2.1) [LSB] wcsnrtombs(GLIBC_2.0) [LSB] 2053 wcspbrk(GLIBC_2.0) [SUSv3] wcsrchr(GLIBC_2.0) [SUSv3] 2054 wcsrtombs(GLIBC_2.0) [SUSv3] wcsspn(GLIBC_2.0) [SUSv3] 2055 wcsstr(GLIBC_2.0) [SUSv3] wcstod(GLIBC_2.0) [SUSv3] 2056 wcstof(GLIBC_2.0) [SUSv3] wcstoimax(GLIBC_2.1) [SUSv3] 2057 wcstok(GLIBC_2.0) [SUSv3] wcstol(GLIBC_2.0) [SUSv3] 2058 wcstold(GLIBC_2.0) [SUSv3] wcstoll(GLIBC_2.1) [SUSv3] 2059 wcstombs(GLIBC_2.0) [SUSv3] wcstoq(GLIBC_2.0) [LSB] 2060 wcstoul(GLIBC_2.0) [SUSv3] wcstoull(GLIBC_2.1) [SUSv3] 2061 wcstoumax(GLIBC_2.1) [SUSv3] wcstouq(GLIBC_2.0) [LSB] 2062 wcswcs(GLIBC_2.1) [SUSv3] wcswidth(GLIBC_2.0) [SUSv3] 2063 wcsxfrm(GLIBC_2.0) [SUSv3] wctob(GLIBC_2.0) [SUSv3] 2064 wctomb(GLIBC_2.0) [SUSv3] wctrans(GLIBC_2.0) [SUSv3] 2065 wctype(GLIBC_2.0) [SUSv3] wcwidth(GLIBC_2.0) [SUSv3] 2066 wmemchr(GLIBC_2.0) [SUSv3] wmemcmp(GLIBC_2.0) [SUSv3] 2067 wmemcpy(GLIBC_2.0) [SUSv3] wmemmove(GLIBC_2.0) [SUSv3] 2068 wmemset(GLIBC_2.0) [SUSv3] wprintf(GLIBC_2.2) [SUSv3] 2069 wscanf(GLIBC_2.2) [LSB] 2070 __________________________________________________________ 2071 2072 11.2.10. String Functions 2073 __________________________________________________________ 2074 2075 11.2.10.1. Interfaces for String Functions 2076 2077 An LSB conforming implementation shall provide the architecture 2078 specific functions for String Functions specified in Table 2079 11-17, with the full mandatory functionality as described in 2080 the referenced underlying specification. 2081 2082 Table 11-17. libc - String Functions Function Interfaces 2083 __mempcpy(GLIBC_2.0) [LSB] __rawmemchr(GLIBC_2.1) [LSB] 2084 __stpcpy(GLIBC_2.0) [LSB] __strdup(GLIBC_2.0) [LSB] 2085 __strtod_internal(GLIBC_2.0) [LSB] __strtof_internal(GLIBC_2.0) 2086 [LSB] __strtok_r(GLIBC_2.0) [LSB] __strtol_internal(GLIBC_2.0) 2087 [LSB] 2088 __strtold_internal(GLIBC_2.0) [LSB] 2089 __strtoll_internal(GLIBC_2.0) [LSB] 2090 __strtoul_internal(GLIBC_2.0) [LSB] 2091 __strtoull_internal(GLIBC_2.0) [LSB] 2092 __xpg_strerror_r(GLIBC_2.3.4) [LSB] bcmp(GLIBC_2.0) [SUSv3] 2093 bcopy(GLIBC_2.0) [SUSv3] bzero(GLIBC_2.0) [SUSv3] 2094 ffs(GLIBC_2.0) [SUSv3] index(GLIBC_2.0) [SUSv3] 2095 memccpy(GLIBC_2.0) [SUSv3] memchr(GLIBC_2.0) [SUSv3] 2096 memcmp(GLIBC_2.0) [SUSv3] memcpy(GLIBC_2.0) [SUSv3] 2097 memmove(GLIBC_2.0) [SUSv3] memrchr(GLIBC_2.2) [LSB] 2098 memset(GLIBC_2.0) [SUSv3] rindex(GLIBC_2.0) [SUSv3] 2099 stpcpy(GLIBC_2.0) [LSB] stpncpy(GLIBC_2.0) [LSB] 2100 strcasecmp(GLIBC_2.0) [SUSv3] strcasestr(GLIBC_2.1) [LSB] 2101 strcat(GLIBC_2.0) [SUSv3] strchr(GLIBC_2.0) [SUSv3] 2102 strcmp(GLIBC_2.0) [SUSv3] strcoll(GLIBC_2.0) [SUSv3] 2103 strcpy(GLIBC_2.0) [SUSv3] strcspn(GLIBC_2.0) [SUSv3] 2104 strdup(GLIBC_2.0) [SUSv3] strerror(GLIBC_2.0) [SUSv3] 2105 strerror_r(GLIBC_2.0) [LSB] strfmon(GLIBC_2.0) [SUSv3] 2106 strftime(GLIBC_2.0) [SUSv3] strlen(GLIBC_2.0) [SUSv3] 2107 strncasecmp(GLIBC_2.0) [SUSv3] strncat(GLIBC_2.0) [SUSv3] 2108 strncmp(GLIBC_2.0) [SUSv3] strncpy(GLIBC_2.0) [SUSv3] 2109 strndup(GLIBC_2.0) [LSB] strnlen(GLIBC_2.0) [LSB] 2110 strpbrk(GLIBC_2.0) [SUSv3] strptime(GLIBC_2.0) [LSB] 2111 strrchr(GLIBC_2.0) [SUSv3] strsep(GLIBC_2.0) [LSB] 2112 strsignal(GLIBC_2.0) [LSB] strspn(GLIBC_2.0) [SUSv3] 2113 strstr(GLIBC_2.0) [SUSv3] strtof(GLIBC_2.0) [SUSv3] 2114 strtoimax(GLIBC_2.1) [SUSv3] strtok(GLIBC_2.0) [SUSv3] 2115 strtok_r(GLIBC_2.0) [SUSv3] strtold(GLIBC_2.0) [SUSv3] 2116 strtoll(GLIBC_2.0) [SUSv3] strtoq(GLIBC_2.0) [LSB] 2117 strtoull(GLIBC_2.0) [SUSv3] strtoumax(GLIBC_2.1) [SUSv3] 2118 strtouq(GLIBC_2.0) [LSB] strxfrm(GLIBC_2.0) [SUSv3] 2119 swab(GLIBC_2.0) [SUSv3] 2120 2121 An LSB conforming implementation shall provide the architecture 2122 specific deprecated functions for String Functions specified in 2123 Table 11-18, with the full mandatory functionality as described 2124 in the referenced underlying specification. 2125 2126 Note: These interfaces are deprecated, and applications 2127 should avoid using them. These interfaces may be withdrawn 2128 in future releases of this specification. 2129 2130 Table 11-18. libc - String Functions Deprecated Function 2131 Interfaces 2132 strerror_r(GLIBC_2.0) [LSB] 2133 __________________________________________________________ 2134 2135 11.2.11. IPC Functions 2136 __________________________________________________________ 2137 2138 11.2.11.1. Interfaces for IPC Functions 2139 2140 An LSB conforming implementation shall provide the architecture 2141 specific functions for IPC Functions specified in Table 11-19, 2142 with the full mandatory functionality as described in the 2143 referenced underlying specification. 2144 2145 Table 11-19. libc - IPC Functions Function Interfaces 2146 ftok(GLIBC_2.0) [SUSv3] msgctl(GLIBC_2.2) [SUSv3] 2147 msgget(GLIBC_2.0) [SUSv3] msgrcv(GLIBC_2.0) [SUSv3] 2148 msgsnd(GLIBC_2.0) [SUSv3] semctl(GLIBC_2.2) [SUSv3] 2149 semget(GLIBC_2.0) [SUSv3] semop(GLIBC_2.0) [SUSv3] 2150 shmat(GLIBC_2.0) [SUSv3] shmctl(GLIBC_2.2) [SUSv3] 2151 shmdt(GLIBC_2.0) [SUSv3] shmget(GLIBC_2.0) [SUSv3] 2152 __________________________________________________________ 2153 2154 11.2.12. Regular Expressions 2155 __________________________________________________________ 2156 2157 11.2.12.1. Interfaces for Regular Expressions 2158 2159 An LSB conforming implementation shall provide the architecture 2160 specific functions for Regular Expressions specified in Table 2161 11-20, with the full mandatory functionality as described in 2162 the referenced underlying specification. 2163 2164 Table 11-20. libc - Regular Expressions Function Interfaces 2165 regcomp(GLIBC_2.0) [SUSv3] regerror(GLIBC_2.0) [SUSv3] 2166 regexec(GLIBC_2.3.4) [LSB] regfree(GLIBC_2.0) [SUSv3] 2167 __________________________________________________________ 2168 2169 11.2.13. Character Type Functions 2170 __________________________________________________________ 2171 2172 11.2.13.1. Interfaces for Character Type Functions 2173 2174 An LSB conforming implementation shall provide the architecture 2175 specific functions for Character Type Functions specified in 2176 Table 11-21, with the full mandatory functionality as described 2177 in the referenced underlying specification. 2178 2179 Table 11-21. libc - Character Type Functions Function 2180 Interfaces 2181 __ctype_get_mb_cur_max(GLIBC_2.0) [LSB] _tolower(GLIBC_2.0) 2182 [SUSv3] _toupper(GLIBC_2.0) [SUSv3] isalnum(GLIBC_2.0) [SUSv3] 2183 isalpha(GLIBC_2.0) [SUSv3] isascii(GLIBC_2.0) [SUSv3] 2184 iscntrl(GLIBC_2.0) [SUSv3] isdigit(GLIBC_2.0) [SUSv3] 2185 isgraph(GLIBC_2.0) [SUSv3] islower(GLIBC_2.0) [SUSv3] 2186 isprint(GLIBC_2.0) [SUSv3] ispunct(GLIBC_2.0) [SUSv3] 2187 isspace(GLIBC_2.0) [SUSv3] isupper(GLIBC_2.0) [SUSv3] 2188 iswalnum(GLIBC_2.0) [SUSv3] iswalpha(GLIBC_2.0) [SUSv3] 2189 iswblank(GLIBC_2.1) [SUSv3] iswcntrl(GLIBC_2.0) [SUSv3] 2190 iswctype(GLIBC_2.0) [SUSv3] iswdigit(GLIBC_2.0) [SUSv3] 2191 iswgraph(GLIBC_2.0) [SUSv3] iswlower(GLIBC_2.0) [SUSv3] 2192 iswprint(GLIBC_2.0) [SUSv3] iswpunct(GLIBC_2.0) [SUSv3] 2193 iswspace(GLIBC_2.0) [SUSv3] iswupper(GLIBC_2.0) [SUSv3] 2194 iswxdigit(GLIBC_2.0) [SUSv3] isxdigit(GLIBC_2.0) [SUSv3] 2195 toascii(GLIBC_2.0) [SUSv3] tolower(GLIBC_2.0) [SUSv3] 2196 toupper(GLIBC_2.0) [SUSv3] 2197 __________________________________________________________ 2198 2199 11.2.14. Time Manipulation 2200 __________________________________________________________ 2201 2202 11.2.14.1. Interfaces for Time Manipulation 2203 2204 An LSB conforming implementation shall provide the architecture 2205 specific functions for Time Manipulation specified in Table 2206 11-22, with the full mandatory functionality as described in 2207 the referenced underlying specification. 2208 2209 Table 11-22. libc - Time Manipulation Function Interfaces 2210 adjtime(GLIBC_2.0) [LSB] asctime(GLIBC_2.0) [SUSv3] 2211 asctime_r(GLIBC_2.0) [SUSv3] ctime(GLIBC_2.0) [SUSv3] 2212 ctime_r(GLIBC_2.0) [SUSv3] difftime(GLIBC_2.0) [SUSv3] 2213 gmtime(GLIBC_2.0) [SUSv3] gmtime_r(GLIBC_2.0) [SUSv3] 2214 localtime(GLIBC_2.0) [SUSv3] localtime_r(GLIBC_2.0) [SUSv3] 2215 mktime(GLIBC_2.0) [SUSv3] tzset(GLIBC_2.0) [SUSv3] 2216 ualarm(GLIBC_2.0) [SUSv3] 2217 2218 An LSB conforming implementation shall provide the architecture 2219 specific data interfaces for Time Manipulation specified in 2220 Table 11-23, with the full mandatory functionality as described 2221 in the referenced underlying specification. 2222 2223 Table 11-23. libc - Time Manipulation Data Interfaces 2224 __daylight(GLIBC_2.0) [LSB] __timezone(GLIBC_2.0) [LSB] 2225 __tzname(GLIBC_2.0) [LSB] daylight(GLIBC_2.0) [SUSv3] 2226 timezone(GLIBC_2.0) [SUSv3] tzname(GLIBC_2.0) [SUSv3] 2227 __________________________________________________________ 2228 2229 11.2.15. Terminal Interface Functions 2230 __________________________________________________________ 2231 2232 11.2.15.1. Interfaces for Terminal Interface Functions 2233 2234 An LSB conforming implementation shall provide the architecture 2235 specific functions for Terminal Interface Functions specified 2236 in Table 11-24, with the full mandatory functionality as 2237 described in the referenced underlying specification. 2238 2239 Table 11-24. libc - Terminal Interface Functions Function 2240 Interfaces 2241 cfgetispeed(GLIBC_2.0) [SUSv3] cfgetospeed(GLIBC_2.0) [SUSv3] 2242 cfmakeraw(GLIBC_2.0) [LSB] cfsetispeed(GLIBC_2.0) [SUSv3] 2243 cfsetospeed(GLIBC_2.0) [SUSv3] cfsetspeed(GLIBC_2.0) [LSB] 2244 tcdrain(GLIBC_2.0) [SUSv3] tcflow(GLIBC_2.0) [SUSv3] 2245 tcflush(GLIBC_2.0) [SUSv3] tcgetattr(GLIBC_2.0) [SUSv3] 2246 tcgetpgrp(GLIBC_2.0) [SUSv3] tcgetsid(GLIBC_2.1) [SUSv3] 2247 tcsendbreak(GLIBC_2.0) [SUSv3] tcsetattr(GLIBC_2.0) [SUSv3] 2248 tcsetpgrp(GLIBC_2.0) [SUSv3] 2249 __________________________________________________________ 2250 2251 11.2.16. System Database Interface 2252 __________________________________________________________ 2253 2254 11.2.16.1. Interfaces for System Database Interface 2255 2256 An LSB conforming implementation shall provide the architecture 2257 specific functions for System Database Interface specified in 2258 Table 11-25, with the full mandatory functionality as described 2259 in the referenced underlying specification. 2260 2261 Table 11-25. libc - System Database Interface Function 2262 Interfaces 2263 endgrent(GLIBC_2.0) [SUSv3] endprotoent(GLIBC_2.0) [SUSv3] 2264 endpwent(GLIBC_2.0) [SUSv3] endservent(GLIBC_2.0) [SUSv3] 2265 endutent(GLIBC_2.0) [LSB] endutxent(GLIBC_2.1) [SUSv3] 2266 getgrent(GLIBC_2.0) [SUSv3] getgrgid(GLIBC_2.0) [SUSv3] 2267 getgrgid_r(GLIBC_2.1.2) [SUSv3] getgrnam(GLIBC_2.0) [SUSv3] 2268 getgrnam_r(GLIBC_2.1.2) [SUSv3] getgrouplist(GLIBC_2.2.4) [LSB] 2269 gethostbyaddr(GLIBC_2.0) [SUSv3] gethostbyaddr_r(GLIBC_2.1.2) 2270 [LSB] gethostbyname(GLIBC_2.0) [SUSv3] 2271 gethostbyname2(GLIBC_2.0) [LSB] 2272 gethostbyname2_r(GLIBC_2.1.2) [LSB] 2273 gethostbyname_r(GLIBC_2.1.2) [LSB] getprotobyname(GLIBC_2.0) 2274 [SUSv3] getprotobynumber(GLIBC_2.0) [SUSv3] 2275 getprotoent(GLIBC_2.0) [SUSv3] getpwent(GLIBC_2.0) [SUSv3] 2276 getpwnam(GLIBC_2.0) [SUSv3] getpwnam_r(GLIBC_2.1.2) [SUSv3] 2277 getpwuid(GLIBC_2.0) [SUSv3] getpwuid_r(GLIBC_2.1.2) [SUSv3] 2278 getservbyname(GLIBC_2.0) [SUSv3] getservbyport(GLIBC_2.0) 2279 [SUSv3] 2280 getservent(GLIBC_2.0) [SUSv3] getutent(GLIBC_2.0) [LSB] 2281 getutent_r(GLIBC_2.0) [LSB] getutxent(GLIBC_2.1) [SUSv3] 2282 getutxid(GLIBC_2.1) [SUSv3] getutxline(GLIBC_2.1) [SUSv3] 2283 pututxline(GLIBC_2.1) [SUSv3] setgrent(GLIBC_2.0) [SUSv3] 2284 setgroups(GLIBC_2.0) [LSB] setprotoent(GLIBC_2.0) [SUSv3] 2285 setpwent(GLIBC_2.0) [SUSv3] setservent(GLIBC_2.0) [SUSv3] 2286 setutent(GLIBC_2.0) [LSB] setutxent(GLIBC_2.1) [SUSv3] 2287 utmpname(GLIBC_2.0) [LSB] 2288 2289 An LSB conforming implementation shall provide the architecture 2290 specific deprecated functions for System Database Interface 2291 specified in Table 11-26, with the full mandatory functionality 2292 as described in the referenced underlying specification. 2293 2294 Note: These interfaces are deprecated, and applications 2295 should avoid using them. These interfaces may be withdrawn 2296 in future releases of this specification. 2297 2298 Table 11-26. libc - System Database Interface Deprecated 2299 Function Interfaces 2300 gethostbyaddr(GLIBC_2.0) [SUSv3] gethostbyaddr_r(GLIBC_2.1.2) 2301 [LSB] gethostbyname(GLIBC_2.0) [SUSv3] 2302 gethostbyname2(GLIBC_2.0) [LSB] 2303 gethostbyname2_r(GLIBC_2.1.2) [LSB] 2304 gethostbyname_r(GLIBC_2.1.2) [LSB] 2305 __________________________________________________________ 2306 2307 11.2.17. Language Support 2308 __________________________________________________________ 2309 2310 11.2.17.1. Interfaces for Language Support 2311 2312 An LSB conforming implementation shall provide the architecture 2313 specific functions for Language Support specified in Table 2314 11-27, with the full mandatory functionality as described in 2315 the referenced underlying specification. 2316 2317 Table 11-27. libc - Language Support Function Interfaces 2318 __libc_start_main(GLIBC_2.0) [LSB] 2319 __________________________________________________________ 2320 2321 11.2.18. Large File Support 2322 __________________________________________________________ 2323 2324 11.2.18.1. Interfaces for Large File Support 2325 2326 An LSB conforming implementation shall provide the architecture 2327 specific functions for Large File Support specified in Table 2328 11-28, with the full mandatory functionality as described in 2329 the referenced underlying specification. 2330 2331 Table 11-28. libc - Large File Support Function Interfaces 2332 __fxstat64(GLIBC_2.2) [LSB] __lxstat64(GLIBC_2.2) [LSB] 2333 __xstat64(GLIBC_2.2) [LSB] creat64(GLIBC_2.1) [LFS] 2334 fgetpos64(GLIBC_2.2) [LFS] fopen64(GLIBC_2.1) [LFS] 2335 freopen64(GLIBC_2.1) [LFS] fseeko64(GLIBC_2.1) [LFS] 2336 fsetpos64(GLIBC_2.2) [LFS] fstatfs64(GLIBC_2.1) [LSB] 2337 fstatvfs64(GLIBC_2.1) [LFS] ftello64(GLIBC_2.1) [LFS] 2338 ftruncate64(GLIBC_2.1) [LFS] ftw64(GLIBC_2.1) [LFS] 2339 getrlimit64(GLIBC_2.2) [LFS] lockf64(GLIBC_2.1) [LFS] 2340 mkstemp64(GLIBC_2.2) [LFS] mmap64(GLIBC_2.1) [LFS] 2341 nftw64(GLIBC_2.3.3) [LFS] posix_fadvise64(GLIBC_2.3.3) [LSB] 2342 posix_fallocate64(GLIBC_2.3.3) [LSB] readdir64(GLIBC_2.2) [LFS] 2343 readdir64_r(GLIBC_2.2) [LSB] statfs64(GLIBC_2.1) [LSB] 2344 statvfs64(GLIBC_2.1) [LFS] tmpfile64(GLIBC_2.1) [LFS] 2345 truncate64(GLIBC_2.1) [LFS] 2346 2347 An LSB conforming implementation shall provide the architecture 2348 specific deprecated functions for Large File Support specified 2349 in Table 11-29, with the full mandatory functionality as 2350 described in the referenced underlying specification. 2351 2352 Note: These interfaces are deprecated, and applications 2353 should avoid using them. These interfaces may be withdrawn 2354 in future releases of this specification. 2355 2356 Table 11-29. libc - Large File Support Deprecated Function 2357 Interfaces 2358 fstatfs64(GLIBC_2.1) [LSB] statfs64(GLIBC_2.1) [LSB] 2359 __________________________________________________________ 2360 2361 11.2.19. Standard Library 2362 __________________________________________________________ 2363 2364 11.2.19.1. Interfaces for Standard Library 2365 2366 An LSB conforming implementation shall provide the architecture 2367 specific functions for Standard Library specified in Table 2368 11-30, with the full mandatory functionality as described in 2369 the referenced underlying specification. 2370 2371 Table 11-30. libc - Standard Library Function Interfaces 2372 _Exit(GLIBC_2.1.1) [SUSv3] __assert_fail(GLIBC_2.0) [LSB] 2373 __cxa_atexit(GLIBC_2.1.3) [LSB] __cxa_finalize(GLIBC_2.1.3) 2374 [LSB] 2375 __errno_location(GLIBC_2.0) [LSB] __fpending(GLIBC_2.2) [LSB] 2376 __getpagesize(GLIBC_2.0) [LSB] __isinf(GLIBC_2.0) [LSB] 2377 __isinff(GLIBC_2.0) [LSB] __isinfl(GLIBC_2.0) [LSB] 2378 __isnan(GLIBC_2.0) [LSB] __isnanf(GLIBC_2.0) [LSB] 2379 __isnanl(GLIBC_2.0) [LSB] __sysconf(GLIBC_2.2) [LSB] 2380 __xpg_basename(GLIBC_2.0) [LSB] _exit(GLIBC_2.0) [SUSv3] 2381 _longjmp(GLIBC_2.3.4) [SUSv3] _setjmp(GLIBC_2.3.4) [SUSv3] 2382 a64l(GLIBC_2.0) [SUSv3] abort(GLIBC_2.0) [SUSv3] 2383 abs(GLIBC_2.0) [SUSv3] atof(GLIBC_2.0) [SUSv3] atoi(GLIBC_2.0) 2384 [SUSv3] atol(GLIBC_2.0) [SUSv3] 2385 atoll(GLIBC_2.0) [SUSv3] basename(GLIBC_2.0) [LSB] 2386 bsearch(GLIBC_2.0) [SUSv3] calloc(GLIBC_2.0) [SUSv3] 2387 closelog(GLIBC_2.0) [SUSv3] confstr(GLIBC_2.0) [SUSv3] 2388 cuserid(GLIBC_2.0) [SUSv2] daemon(GLIBC_2.0) [LSB] 2389 dirname(GLIBC_2.0) [SUSv3] div(GLIBC_2.0) [SUSv3] 2390 drand48(GLIBC_2.0) [SUSv3] ecvt(GLIBC_2.0) [SUSv3] 2391 erand48(GLIBC_2.0) [SUSv3] err(GLIBC_2.0) [LSB] 2392 error(GLIBC_2.0) [LSB] errx(GLIBC_2.0) [LSB] 2393 fcvt(GLIBC_2.0) [SUSv3] fmtmsg(GLIBC_2.1) [SUSv3] 2394 fnmatch(GLIBC_2.2.3) [SUSv3] fpathconf(GLIBC_2.0) [SUSv3] 2395 free(GLIBC_2.0) [SUSv3] freeaddrinfo(GLIBC_2.0) [SUSv3] 2396 ftrylockfile(GLIBC_2.0) [SUSv3] ftw(GLIBC_2.0) [SUSv3] 2397 funlockfile(GLIBC_2.0) [SUSv3] gai_strerror(GLIBC_2.1) [SUSv3] 2398 gcvt(GLIBC_2.0) [SUSv3] getaddrinfo(GLIBC_2.0) [SUSv3] 2399 getcwd(GLIBC_2.0) [SUSv3] getdate(GLIBC_2.1) [SUSv3] 2400 getdomainname(GLIBC_2.0) [LSB] getenv(GLIBC_2.0) [SUSv3] 2401 getlogin(GLIBC_2.0) [SUSv3] getlogin_r(GLIBC_2.0) [SUSv3] 2402 getnameinfo(GLIBC_2.1) [SUSv3] getopt(GLIBC_2.0) [LSB] 2403 getopt_long(GLIBC_2.0) [LSB] getopt_long_only(GLIBC_2.0) [LSB] 2404 getsubopt(GLIBC_2.0) [SUSv3] gettimeofday(GLIBC_2.0) [SUSv3] 2405 glob(GLIBC_2.0) [SUSv3] glob64(GLIBC_2.2) [LSB] 2406 globfree(GLIBC_2.0) [SUSv3] globfree64(GLIBC_2.1) [LSB] 2407 grantpt(GLIBC_2.1) [SUSv3] hcreate(GLIBC_2.0) [SUSv3] 2408 hdestroy(GLIBC_2.0) [SUSv3] hsearch(GLIBC_2.0) [SUSv3] 2409 htonl(GLIBC_2.0) [SUSv3] htons(GLIBC_2.0) [SUSv3] 2410 imaxabs(GLIBC_2.1.1) [SUSv3] imaxdiv(GLIBC_2.1.1) [SUSv3] 2411 inet_addr(GLIBC_2.0) [SUSv3] inet_aton(GLIBC_2.0) [LSB] 2412 inet_ntoa(GLIBC_2.0) [SUSv3] inet_ntop(GLIBC_2.0) [SUSv3] 2413 inet_pton(GLIBC_2.0) [SUSv3] initstate(GLIBC_2.0) [SUSv3] 2414 insque(GLIBC_2.0) [SUSv3] isatty(GLIBC_2.0) [SUSv3] 2415 isblank(GLIBC_2.0) [SUSv3] jrand48(GLIBC_2.0) [SUSv3] 2416 l64a(GLIBC_2.0) [SUSv3] labs(GLIBC_2.0) [SUSv3] 2417 lcong48(GLIBC_2.0) [SUSv3] ldiv(GLIBC_2.0) [SUSv3] 2418 lfind(GLIBC_2.0) [SUSv3] llabs(GLIBC_2.0) [SUSv3] 2419 lldiv(GLIBC_2.0) [SUSv3] longjmp(GLIBC_2.3.4) [SUSv3] 2420 lrand48(GLIBC_2.0) [SUSv3] lsearch(GLIBC_2.0) [SUSv3] 2421 makecontext(GLIBC_2.3.4) [SUSv3] malloc(GLIBC_2.0) [SUSv3] 2422 memmem(GLIBC_2.0) [LSB] mkstemp(GLIBC_2.0) [SUSv3] 2423 mktemp(GLIBC_2.0) [SUSv3] mrand48(GLIBC_2.0) [SUSv3] 2424 nftw(GLIBC_2.3.3) [SUSv3] nrand48(GLIBC_2.0) [SUSv3] 2425 ntohl(GLIBC_2.0) [SUSv3] ntohs(GLIBC_2.0) [SUSv3] 2426 openlog(GLIBC_2.0) [SUSv3] perror(GLIBC_2.0) [SUSv3] 2427 posix_openpt(GLIBC_2.2.1) [SUSv3] ptsname(GLIBC_2.1) [SUSv3] 2428 putenv(GLIBC_2.0) [SUSv3] qsort(GLIBC_2.0) [SUSv3] 2429 rand(GLIBC_2.0) [SUSv3] rand_r(GLIBC_2.0) [SUSv3] 2430 random(GLIBC_2.0) [SUSv3] realloc(GLIBC_2.0) [SUSv3] 2431 realpath(GLIBC_2.3) [SUSv3] remque(GLIBC_2.0) [SUSv3] 2432 seed48(GLIBC_2.0) [SUSv3] setenv(GLIBC_2.0) [SUSv3] 2433 sethostname(GLIBC_2.0) [LSB] setlogmask(GLIBC_2.0) [SUSv3] 2434 setstate(GLIBC_2.0) [SUSv3] srand(GLIBC_2.0) [SUSv3] 2435 srand48(GLIBC_2.0) [SUSv3] srandom(GLIBC_2.0) [SUSv3] 2436 strtod(GLIBC_2.0) [SUSv3] strtol(GLIBC_2.0) [SUSv3] 2437 strtoul(GLIBC_2.0) [SUSv3] swapcontext(GLIBC_2.3.4) [SUSv3] 2438 syslog(GLIBC_2.0) [SUSv3] system(GLIBC_2.0) [LSB] 2439 tdelete(GLIBC_2.0) [SUSv3] tfind(GLIBC_2.0) [SUSv3] 2440 tmpfile(GLIBC_2.1) [SUSv3] tmpnam(GLIBC_2.0) [SUSv3] 2441 tsearch(GLIBC_2.0) [SUSv3] ttyname(GLIBC_2.0) [SUSv3] 2442 ttyname_r(GLIBC_2.0) [SUSv3] twalk(GLIBC_2.0) [SUSv3] 2443 unlockpt(GLIBC_2.1) [SUSv3] unsetenv(GLIBC_2.0) [SUSv3] 2444 usleep(GLIBC_2.0) [SUSv3] verrx(GLIBC_2.0) [LSB] 2445 vfscanf(GLIBC_2.0) [LSB] vscanf(GLIBC_2.0) [LSB] 2446 vsscanf(GLIBC_2.0) [LSB] vsyslog(GLIBC_2.0) [LSB] 2447 warn(GLIBC_2.0) [LSB] warnx(GLIBC_2.0) [LSB] wordexp(GLIBC_2.1) 2448 [SUSv3] wordfree(GLIBC_2.1) [SUSv3] 2449 2450 An LSB conforming implementation shall provide the architecture 2451 specific deprecated functions for Standard Library specified in 2452 Table 11-31, with the full mandatory functionality as described 2453 in the referenced underlying specification. 2454 2455 Note: These interfaces are deprecated, and applications 2456 should avoid using them. These interfaces may be withdrawn 2457 in future releases of this specification. 2458 2459 Table 11-31. libc - Standard Library Deprecated Function 2460 Interfaces 2461 basename(GLIBC_2.0) [LSB] getdomainname(GLIBC_2.0) [LSB] 2462 inet_aton(GLIBC_2.0) [LSB] 2463 2464 An LSB conforming implementation shall provide the architecture 2465 specific data interfaces for Standard Library specified in 2466 Table 11-32, with the full mandatory functionality as described 2467 in the referenced underlying specification. 2468 2469 Table 11-32. libc - Standard Library Data Interfaces 2470 __environ(GLIBC_2.0) [LSB] _environ(GLIBC_2.0) [LSB] 2471 _sys_errlist(GLIBC_2.3) [LSB] environ(GLIBC_2.0) [SUSv3] 2472 getdate_err(GLIBC_2.1) [SUSv3] optarg(GLIBC_2.0) [SUSv3] 2473 opterr(GLIBC_2.0) [SUSv3] optind(GLIBC_2.0) [SUSv3] 2474 optopt(GLIBC_2.0) [SUSv3] 2475 __________________________________________________________ 2476 2477 11.3. Data Definitions for libc 2478 2479 This section defines global identifiers and their values that 2480 are associated with interfaces contained in libc. These 2481 definitions are organized into groups that correspond to system 2482 headers. This convention is used as a convenience for the 2483 reader, and does not imply the existence of these headers, or 2484 their content. Where an interface is defined as requiring a 2485 particular system header file all of the data definitions for 2486 that system header file presented here shall be in effect. 2487 2488 This section gives data definitions to promote binary 2489 application portability, not to repeat source interface 2490 definitions available elsewhere. System providers and 2491 application developers should use this ABI to supplement - not 2492 to replace - source interface definition specifications. 2493 2494 This specification uses the ISO C (1999) C Language as the 2495 reference programming language, and data definitions are 2496 specified in ISO C format. The C language is used here as a 2497 convenient notation. Using a C language description of these 2498 data objects does not preclude their use by other programming 2499 languages. 2500 __________________________________________________________ 2501 2502 11.3.1. ctype.h 2503 2504 enum { 2505 _ISupper = 1, 2506 _ISlower = 2, 2507 _ISalpha = 4, 2508 _ISdigit = 8, 2509 _ISxdigit = 16, 2510 _ISspace = 32, 2511 _ISprint = 64, 2512 _ISgraph = 128, 2513 _ISblank = 256, 2514 _IScntrl = 512, 2515 _ISpunct = 1024, 2516 _ISalnum = 2048 2517 }; 2518 __________________________________________________________ 2519 2520 11.3.2. dirent.h 2521 2522 /* 2523 * This header is architecture neutral 2524 * Please refer to the generic specification for details 2525 */ 2526 __________________________________________________________ 2527 2528 11.3.3. errno.h 2529 2530 #define EDEADLOCK 58 2531 __________________________________________________________ 2532 2533 11.3.4. fcntl.h 2534 2535 #define O_LARGEFILE 0200000 2536 2537 #define F_GETLK64 12 2538 #define F_SETLK64 13 2539 #define F_SETLKW64 14 2540 __________________________________________________________ 2541 2542 11.3.5. fnmatch.h 2543 2544 /* 2545 * This header is architecture neutral 2546 * Please refer to the generic specification for details 2547 */ 2548 __________________________________________________________ 2549 2550 11.3.6. ftw.h 2551 2552 /* 2553 * This header is architecture neutral 2554 * Please refer to the generic specification for details 2555 */ 2556 __________________________________________________________ 2557 2558 11.3.7. getopt.h 2559 2560 /* 2561 * This header is architecture neutral 2562 * Please refer to the generic specification for details 2563 */ 2564 __________________________________________________________ 2565 2566 11.3.8. glob.h 2567 2568 /* 2569 * This header is architecture neutral 2570 * Please refer to the generic specification for details 2571 */ 2572 __________________________________________________________ 2573 2574 11.3.9. iconv.h 2575 2576 /* 2577 * This header is architecture neutral 2578 * Please refer to the generic specification for details 2579 */ 2580 __________________________________________________________ 2581 2582 11.3.10. langinfo.h 2583 2584 /* 2585 * This header is architecture neutral 2586 * Please refer to the generic specification for details 2587 */ 2588 __________________________________________________________ 2589 2590 11.3.11. limits.h 2591 2592 #define ULONG_MAX 0xFFFFFFFFUL 2593 #define LONG_MAX 2147483647L 2594 2595 #define CHAR_MIN 0 2596 #define CHAR_MAX 255 2597 2598 #define PTHREAD_STACK_MIN 16384 2599 __________________________________________________________ 2600 2601 11.3.12. locale.h 2602 2603 /* 2604 * This header is architecture neutral 2605 * Please refer to the generic specification for details 2606 */ 2607 __________________________________________________________ 2608 2609 11.3.13. net/if.h 2610 2611 /* 2612 * This header is architecture neutral 2613 * Please refer to the generic specification for details 2614 */ 2615 __________________________________________________________ 2616 2617 11.3.14. netdb.h 2618 2619 /* 2620 * This header is architecture neutral 2621 * Please refer to the generic specification for details 2622 */ 2623 __________________________________________________________ 2624 2625 11.3.15. netinet/in.h 2626 2627 /* 2628 * This header is architecture neutral 2629 * Please refer to the generic specification for details 2630 */ 2631 __________________________________________________________ 2632 2633 11.3.16. netinet/ip.h 2634 2635 /* 2636 * This header is architecture neutral 2637 * Please refer to the generic specification for details 2638 */ 2639 __________________________________________________________ 2640 2641 11.3.17. netinet/tcp.h 2642 2643 /* 2644 * This header is architecture neutral 2645 * Please refer to the generic specification for details 2646 */ 2647 __________________________________________________________ 2648 2649 11.3.18. netinet/udp.h 2650 2651 /* 2652 * This header is architecture neutral 2653 * Please refer to the generic specification for details 2654 */ 2655 __________________________________________________________ 2656 2657 11.3.19. nl_types.h 2658 2659 /* 2660 * This header is architecture neutral 2661 * Please refer to the generic specification for details 2662 */ 2663 __________________________________________________________ 2664 2665 11.3.20. pwd.h 2666 2667 /* 2668 * This header is architecture neutral 2669 * Please refer to the generic specification for details 2670 */ 2671 __________________________________________________________ 2672 2673 11.3.21. regex.h 2674 2675 /* 2676 * This header is architecture neutral 2677 * Please refer to the generic specification for details 2678 */ 2679 __________________________________________________________ 2680 2681 11.3.22. rpc/auth.h 2682 2683 /* 2684 * This header is architecture neutral 2685 * Please refer to the generic specification for details 2686 */ 2687 __________________________________________________________ 2688 2689 11.3.23. rpc/clnt.h 2690 2691 /* 2692 * This header is architecture neutral 2693 * Please refer to the generic specification for details 2694 */ 2695 __________________________________________________________ 2696 2697 11.3.24. rpc/rpc_msg.h 2698 2699 /* 2700 * This header is architecture neutral 2701 * Please refer to the generic specification for details 2702 */ 2703 __________________________________________________________ 2704 2705 11.3.25. rpc/svc.h 2706 2707 /* 2708 * This header is architecture neutral 2709 * Please refer to the generic specification for details 2710 */ 2711 __________________________________________________________ 2712 2713 11.3.26. rpc/types.h 2714 2715 /* 2716 * This header is architecture neutral 2717 * Please refer to the generic specification for details 2718 */ 2719 __________________________________________________________ 2720 2721 11.3.27. rpc/xdr.h 2722 2723 /* 2724 * This header is architecture neutral 2725 * Please refer to the generic specification for details 2726 */ 2727 __________________________________________________________ 2728 2729 11.3.28. sched.h 2730 2731 /* 2732 * This header is architecture neutral 2733 * Please refer to the generic specification for details 2734 */ 2735 __________________________________________________________ 2736 2737 11.3.29. search.h 2738 2739 /* 2740 * This header is architecture neutral 2741 * Please refer to the generic specification for details 2742 */ 2743 __________________________________________________________ 2744 2745 11.3.30. setjmp.h 2746 2747 typedef long int __jmp_buf[112] __attribute__ ((aligned(16))); 2748 __________________________________________________________ 2749 2750 11.3.31. signal.h 2751 2752 struct pt_regs { 2753 unsigned long int gpr[32]; 2754 unsigned long int nip; 2755 unsigned long int msr; 2756 unsigned long int orig_gpr3; 2757 unsigned long int ctr; 2758 unsigned long int link; 2759 unsigned long int xer; 2760 unsigned long int ccr; 2761 unsigned long int mq; 2762 unsigned long int trap; 2763 unsigned long int dar; 2764 unsigned long int dsisr; 2765 unsigned long int result; 2766 }; 2767 2768 #define SIGEV_PAD_SIZE ((SIGEV_MAX_SIZE/sizeof(int))-3) 2769 2770 #define SI_PAD_SIZE ((SI_MAX_SIZE/sizeof(int))-3) 2771 2772 struct sigaction { 2773 union { 2774 sighandler_t _sa_handler; 2775 void (*_sa_sigaction) (int, siginfo_t *, void *); 2776 } __sigaction_handler; 2777 sigset_t sa_mask; 2778 unsigned long int sa_flags; 2779 void (*sa_restorer) (void); 2780 }; 2781 2782 #define MINSIGSTKSZ 2048 2783 #define SIGSTKSZ 8192 2784 2785 struct sigcontext { 2786 long int _unused[4]; 2787 int signal; 2788 unsigned long int handler; 2789 unsigned long int oldmask; 2790 struct pt_regs *regs; 2791 }; 2792 __________________________________________________________ 2793 2794 11.3.32. spawn.h 2795 2796 /* 2797 * This header is architecture neutral 2798 * Please refer to the generic specification for details 2799 */ 2800 __________________________________________________________ 2801 2802 11.3.33. stddef.h 2803 2804 typedef long int wchar_t; 2805 typedef unsigned int size_t; 2806 typedef int ptrdiff_t; 2807 __________________________________________________________ 2808 2809 11.3.34. stdint.h 2810 2811 #define INT64_C(c) c ## LL 2812 #define INTMAX_C(c) c ## LL 2813 #define __INT64_C(c) c ## LL 2814 #define UINT64_C(c) c ## ULL 2815 #define UINTMAX_C(c) c ## ULL 2816 #define __UINT64_C(c) c ## ULL 2817 2818 #define INTPTR_MIN (-2147483647-1) 2819 #define INT_FAST16_MIN (-2147483647-1) 2820 #define INT_FAST32_MIN (-2147483647-1) 2821 #define PTRDIFF_MIN (-2147483647-1) 2822 #define INTPTR_MAX (2147483647) 2823 #define INT_FAST16_MAX (2147483647) 2824 #define INT_FAST32_MAX (2147483647) 2825 #define PTRDIFF_MAX (2147483647) 2826 #define SIZE_MAX (4294967295U) 2827 #define UINTPTR_MAX (4294967295U) 2828 #define UINT_FAST16_MAX (4294967295U) 2829 #define UINT_FAST32_MAX (4294967295U) 2830 2831 typedef long long int int64_t; 2832 typedef long long int intmax_t; 2833 typedef unsigned long long int uintmax_t; 2834 typedef int intptr_t; 2835 typedef unsigned int uintptr_t; 2836 typedef unsigned long long int uint64_t; 2837 typedef long long int int_least64_t; 2838 typedef unsigned long long int uint_least64_t; 2839 typedef int int_fast16_t; 2840 typedef int int_fast32_t; 2841 typedef long long int int_fast64_t; 2842 typedef unsigned int uint_fast16_t; 2843 typedef unsigned int uint_fast32_t; 2844 typedef unsigned long long int uint_fast64_t; 2845 __________________________________________________________ 2846 2847 11.3.35. stdio.h 2848 2849 #define __IO_FILE_SIZE 152 2850 __________________________________________________________ 2851 2852 11.3.36. stdlib.h 2853 2854 /* 2855 * This header is architecture neutral 2856 * Please refer to the generic specification for details 2857 */ 2858 __________________________________________________________ 2859 2860 11.3.37. sys/file.h 2861 2862 /* 2863 * This header is architecture neutral 2864 * Please refer to the generic specification for details 2865 */ 2866 __________________________________________________________ 2867 2868 11.3.38. sys/ioctl.h 2869 2870 #define TIOCGWINSZ 0x40087468 2871 #define TIOCNOTTY 0x5422 2872 #define FIONREAD 1074030207 2873 __________________________________________________________ 2874 2875 11.3.39. sys/ipc.h 2876 2877 struct ipc_perm { 2878 key_t __key; 2879 uid_t uid; 2880 gid_t gid; 2881 uid_t cuid; 2882 uid_t cgid; 2883 mode_t mode; 2884 long int __seq; 2885 int __pad1; 2886 unsigned long long int __unused1; 2887 unsigned long long int __unused2; 2888 }; 2889 __________________________________________________________ 2890 2891 11.3.40. sys/mman.h 2892 2893 #define MCL_FUTURE 16384 2894 #define MCL_CURRENT 8192 2895 __________________________________________________________ 2896 2897 11.3.41. sys/msg.h 2898 2899 typedef unsigned long int msgqnum_t; 2900 typedef unsigned long int msglen_t; 2901 2902 struct msqid_ds { 2903 struct ipc_perm msg_perm; 2904 unsigned int __unused1; 2905 time_t msg_stime; 2906 unsigned int __unused2; 2907 time_t msg_rtime; 2908 unsigned int __unused3; 2909 time_t msg_ctime; 2910 unsigned long int __msg_cbytes; 2911 msgqnum_t msg_qnum; 2912 msglen_t msg_qbytes; 2913 pid_t msg_lspid; 2914 pid_t msg_lrpid; 2915 unsigned long int __unused4; 2916 unsigned long int __unused5; 2917 }; 2918 __________________________________________________________ 2919 2920 11.3.42. sys/param.h 2921 2922 /* 2923 * This header is architecture neutral 2924 * Please refer to the generic specification for details 2925 */ 2926 __________________________________________________________ 2927 2928 11.3.43. sys/poll.h 2929 2930 /* 2931 * This header is architecture neutral 2932 * Please refer to the generic specification for details 2933 */ 2934 __________________________________________________________ 2935 2936 11.3.44. sys/resource.h 2937 2938 /* 2939 * This header is architecture neutral 2940 * Please refer to the generic specification for details 2941 */ 2942 __________________________________________________________ 2943 2944 11.3.45. sys/sem.h 2945 2946 struct semid_ds { 2947 struct ipc_perm sem_perm; 2948 unsigned int __unused1; 2949 time_t sem_otime; 2950 unsigned int __unused2; 2951 time_t sem_ctime; 2952 unsigned long int sem_nsems; 2953 unsigned long int __unused3; 2954 unsigned long int __unused4; 2955 }; 2956 __________________________________________________________ 2957 2958 11.3.46. sys/shm.h 2959 2960 #define SHMLBA (__getpagesize()) 2961 2962 typedef unsigned long int shmatt_t; 2963 2964 struct shmid_ds { 2965 struct ipc_perm shm_perm; 2966 unsigned int __unused1; 2967 time_t shm_atime; 2968 unsigned int __unused2; 2969 time_t shm_dtime; 2970 unsigned int __unused3; 2971 time_t shm_ctime; 2972 unsigned int __unused4; 2973 size_t shm_segsz; 2974 pid_t shm_cpid; 2975 pid_t shm_lpid; 2976 shmatt_t shm_nattch; 2977 unsigned long int __unused5; 2978 unsigned long int __unused6; 2979 }; 2980 __________________________________________________________ 2981 2982 11.3.47. sys/socket.h 2983 2984 typedef uint32_t __ss_aligntype; 2985 2986 #define SO_RCVLOWAT 16 2987 #define SO_SNDLOWAT 17 2988 #define SO_RCVTIMEO 18 2989 #define SO_SNDTIMEO 19 2990 __________________________________________________________ 2991 2992 11.3.48. sys/stat.h 2993 2994 #define _STAT_VER 3 2995 2996 struct stat { 2997 dev_t st_dev; 2998 unsigned short __pad1; 2999 ino_t st_ino; 3000 mode_t st_mode; 3001 nlink_t st_nlink; 3002 uid_t st_uid; 3003 gid_t st_gid; 3004 dev_t st_rdev; 3005 unsigned short __pad2; 3006 off_t st_size; 3007 blksize_t st_blksize; 3008 blkcnt_t st_blocks; 3009 struct timespec st_atim; 3010 struct timespec st_mtim; 3011 struct timespec st_ctim; 3012 unsigned long int __unused4; 3013 unsigned long int __unused5; 3014 }; 3015 struct stat64 { 3016 dev_t st_dev; 3017 ino64_t st_ino; 3018 mode_t st_mode; 3019 nlink_t st_nlink; 3020 uid_t st_uid; 3021 gid_t st_gid; 3022 dev_t st_rdev; 3023 unsigned short __pad2; 3024 off64_t st_size; 3025 blksize_t st_blksize; 3026 blkcnt64_t st_blocks; 3027 struct timespec st_atim; 3028 struct timespec st_mtim; 3029 struct timespec st_ctim; 3030 unsigned long int __unused4; 3031 unsigned long int __unused5; 3032 }; 3033 __________________________________________________________ 3034 3035 11.3.49. sys/statfs.h 3036 3037 struct statfs { 3038 int f_type; 3039 int f_bsize; 3040 fsblkcnt_t f_blocks; 3041 fsblkcnt_t f_bfree; 3042 fsblkcnt_t f_bavail; 3043 fsfilcnt_t f_files; 3044 fsfilcnt_t f_ffree; 3045 fsid_t f_fsid; 3046 int f_namelen; 3047 int f_frsize; 3048 int f_spare[5]; 3049 }; 3050 struct statfs64 { 3051 int f_type; 3052 int f_bsize; 3053 fsblkcnt64_t f_blocks; 3054 fsblkcnt64_t f_bfree; 3055 fsblkcnt64_t f_bavail; 3056 fsfilcnt64_t f_files; 3057 fsfilcnt64_t f_ffree; 3058 fsid_t f_fsid; 3059 int f_namelen; 3060 int f_frsize; 3061 int f_spare[5]; 3062 }; 3063 __________________________________________________________ 3064 3065 11.3.50. sys/statvfs.h 3066 3067 struct statvfs { 3068 unsigned long int f_bsize; 3069 unsigned long int f_frsize; 3070 fsblkcnt_t f_blocks; 3071 fsblkcnt_t f_bfree; 3072 fsblkcnt_t f_bavail; 3073 fsfilcnt_t f_files; 3074 fsfilcnt_t f_ffree; 3075 fsfilcnt_t f_favail; 3076 unsigned long int f_fsid; 3077 int __f_unused; 3078 unsigned long int f_flag; 3079 unsigned long int f_namemax; 3080 int __f_spare[6]; 3081 }; 3082 struct statvfs64 { 3083 unsigned long int f_bsize; 3084 unsigned long int f_frsize; 3085 fsblkcnt64_t f_blocks; 3086 fsblkcnt64_t f_bfree; 3087 fsblkcnt64_t f_bavail; 3088 fsfilcnt64_t f_files; 3089 fsfilcnt64_t f_ffree; 3090 fsfilcnt64_t f_favail; 3091 unsigned long int f_fsid; 3092 int __f_unused; 3093 unsigned long int f_flag; 3094 unsigned long int f_namemax; 3095 int __f_spare[6]; 3096 }; 3097 __________________________________________________________ 3098 3099 11.3.51. sys/time.h 3100 3101 /* 3102 * This header is architecture neutral 3103 * Please refer to the generic specification for details 3104 */ 3105 __________________________________________________________ 3106 3107 11.3.52. sys/timeb.h 3108 3109 /* 3110 * This header is architecture neutral 3111 * Please refer to the generic specification for details 3112 */ 3113 __________________________________________________________ 3114 3115 11.3.53. sys/times.h 3116 3117 /* 3118 * This header is architecture neutral 3119 * Please refer to the generic specification for details 3120 */ 3121 __________________________________________________________ 3122 3123 11.3.54. sys/types.h 3124 3125 typedef int32_t ssize_t; 3126 3127 #define __FDSET_LONGS 32 3128 __________________________________________________________ 3129 3130 11.3.55. sys/un.h 3131 3132 /* 3133 * This header is architecture neutral 3134 * Please refer to the generic specification for details 3135 */ 3136 __________________________________________________________ 3137 3138 11.3.56. sys/utsname.h 3139 3140 /* 3141 * This header is architecture neutral 3142 * Please refer to the generic specification for details 3143 */ 3144 __________________________________________________________ 3145 3146 11.3.57. sys/wait.h 3147 3148 /* 3149 * This header is architecture neutral 3150 * Please refer to the generic specification for details 3151 */ 3152 __________________________________________________________ 3153 3154 11.3.58. syslog.h 3155 3156 /* 3157 * This header is architecture neutral 3158 * Please refer to the generic specification for details 3159 */ 3160 __________________________________________________________ 3161 3162 11.3.59. termios.h 3163 3164 #define TAB1 1024 3165 #define CR3 12288 3166 #define CRDLY 12288 3167 #define FF1 16384 3168 #define FFDLY 16384 3169 #define XCASE 16384 3170 #define ONLCR 2 3171 #define TAB2 2048 3172 #define TAB3 3072 3173 #define TABDLY 3072 3174 #define BS1 32768 3175 #define BSDLY 32768 3176 #define OLCUC 4 3177 #define CR1 4096 3178 #define IUCLC 4096 3179 #define VT1 65536 3180 #define VTDLY 65536 3181 #define NLDLY 768 3182 #define CR2 8192 3183 3184 #define VWERASE 10 3185 #define VREPRINT 11 3186 #define VSUSP 12 3187 #define VSTART 13 3188 #define VSTOP 14 3189 #define VDISCARD 16 3190 #define VMIN 5 3191 #define VEOL 6 3192 #define VEOL2 8 3193 #define VSWTC 9 3194 3195 #define IXOFF 1024 3196 #define IXON 512 3197 3198 #define CSTOPB 1024 3199 #define HUPCL 16384 3200 #define CREAD 2048 3201 #define CS6 256 3202 #define CLOCAL 32768 3203 #define PARENB 4096 3204 #define CS7 512 3205 #define VTIME 7 3206 #define CS8 768 3207 #define CSIZE 768 3208 #define PARODD 8192 3209 3210 #define NOFLSH 0x80000000 3211 #define ECHOKE 1 3212 #define IEXTEN 1024 3213 #define ISIG 128 3214 #define ECHONL 16 3215 #define ECHOE 2 3216 #define ICANON 256 3217 #define ECHOPRT 32 3218 #define ECHOK 4 3219 #define TOSTOP 4194304 3220 #define PENDIN 536870912 3221 #define ECHOCTL 64 3222 #define FLUSHO 8388608 3223 __________________________________________________________ 3224 3225 11.3.60. ucontext.h 3226 3227 typedef struct _libc_vrstate { 3228 unsigned int vrregs[128]; 3229 unsigned int vrsave; 3230 unsigned int _pad[2]; 3231 unsigned int vscr; 3232 } vrregset_t __attribute__ ((__aligned__(16))); 3233 3234 #define NGREG 48 3235 3236 typedef unsigned long int gregset_t[48]; 3237 3238 typedef struct _libc_fpstate { 3239 double fpregs[32]; 3240 double fpscr; 3241 int _pad[2]; 3242 } fpregset_t; 3243 3244 typedef struct { 3245 gregset_t gregs; 3246 fpregset_t fpregs; 3247 vrregset_t vrregs; 3248 } mcontext_t; 3249 3250 union uc_regs_ptr { 3251 struct pt_regs *regs; 3252 mcontext_t *uc_regs; 3253 }; 3254 3255 typedef struct ucontext { 3256 unsigned long int uc_flags; 3257 struct ucontext *uc_link; 3258 stack_t uc_stack; 3259 int uc_pad[7]; 3260 union uc_regs_ptr uc_mcontext; 3261 sigset_t uc_sigmask; 3262 char uc_reg_space[sizeof(mcontext_t) + 12]; 3263 } ucontext_t; 3264 __________________________________________________________ 3265 3266 11.3.61. ulimit.h 3267 3268 /* 3269 * This header is architecture neutral 3270 * Please refer to the generic specification for details 3271 */ 3272 __________________________________________________________ 3273 3274 11.3.62. unistd.h 3275 3276 /* 3277 * This header is architecture neutral 3278 * Please refer to the generic specification for details 3279 */ 3280 __________________________________________________________ 3281 3282 11.3.63. utime.h 3283 3284 /* 3285 * This header is architecture neutral 3286 * Please refer to the generic specification for details 3287 */ 3288 __________________________________________________________ 3289 3290 11.3.64. utmp.h 3291 3292 struct lastlog { 3293 time_t ll_time; 3294 char ll_line[UT_LINESIZE]; 3295 char ll_host[UT_HOSTSIZE]; 3296 }; 3297 3298 struct utmp { 3299 short ut_type; 3300 pid_t ut_pid; 3301 char ut_line[UT_LINESIZE]; 3302 char ut_id[4]; 3303 char ut_user[UT_NAMESIZE]; 3304 char ut_host[UT_HOSTSIZE]; 3305 struct exit_status ut_exit; 3306 long int ut_session; 3307 struct timeval ut_tv; 3308 int32_t ut_addr_v6[4]; 3309 char __unused[20]; 3310 }; 3311 __________________________________________________________ 3312 3313 11.3.65. utmpx.h 3314 3315 struct utmpx { 3316 short ut_type; 3317 pid_t ut_pid; 3318 char ut_line[UT_LINESIZE]; 3319 char ut_id[4]; 3320 char ut_user[UT_NAMESIZE]; 3321 char ut_host[UT_HOSTSIZE]; 3322 struct exit_status ut_exit; 3323 long int ut_session; 3324 struct timeval ut_tv; 3325 int32_t ut_addr_v6[4]; 3326 char __unused[20]; 3327 }; 3328 __________________________________________________________ 3329 3330 11.3.66. wctype.h 3331 3332 /* 3333 * This header is architecture neutral 3334 * Please refer to the generic specification for details 3335 */ 3336 __________________________________________________________ 3337 3338 11.3.67. wordexp.h 3339 3340 /* 3341 * This header is architecture neutral 3342 * Please refer to the generic specification for details 3343 */ 3344 __________________________________________________________ 3345 3346 11.4. Interfaces for libm 3347 3348 Table 11-33 defines the library name and shared object name for 3349 the libm library 3350 3351 Table 11-33. libm Definition 3352 Library: libm 3353 SONAME: libm.so.6 3354 3355 The behavior of the interfaces in this library is specified by 3356 the following specifications: 3357 3358 [ISOC99] ISO C (1999) 3359 [LSB] ISO/IEC 23360 Part 1 3360 [SUSv3] ISO POSIX (2003) 3361 [SVID.3] SVID Issue 3 3362 __________________________________________________________ 3363 3364 11.4.1. Math 3365 __________________________________________________________ 3366 3367 11.4.1.1. Interfaces for Math 3368 3369 An LSB conforming implementation shall provide the architecture 3370 specific functions for Math specified in Table 11-34, with the 3371 full mandatory functionality as described in the referenced 3372 underlying specification. 3373 3374 Table 11-34. libm - Math Function Interfaces 3375 __finite(GLIBC_2.1) [LSB] __finitef(GLIBC_2.1) [LSB] 3376 __finitel(GLIBC_2.1) [LSB] __fpclassify(GLIBC_2.1) [LSB] 3377 __fpclassifyf(GLIBC_2.1) [LSB] __signbit(GLIBC_2.1) [LSB] 3378 __signbitf(GLIBC_2.1) [LSB] acos(GLIBC_2.0) [SUSv3] 3379 acosf(GLIBC_2.0) [SUSv3] acosh(GLIBC_2.0) [SUSv3] 3380 acoshf(GLIBC_2.0) [SUSv3] acoshl(GLIBC_2.0) [SUSv3] 3381 acosl(GLIBC_2.0) [SUSv3] asin(GLIBC_2.0) [SUSv3] 3382 asinf(GLIBC_2.0) [SUSv3] asinh(GLIBC_2.0) [SUSv3] 3383 asinhf(GLIBC_2.0) [SUSv3] asinhl(GLIBC_2.0) [SUSv3] 3384 asinl(GLIBC_2.0) [SUSv3] atan(GLIBC_2.0) [SUSv3] 3385 atan2(GLIBC_2.0) [SUSv3] atan2f(GLIBC_2.0) [SUSv3] 3386 atan2l(GLIBC_2.0) [SUSv3] atanf(GLIBC_2.0) [SUSv3] 3387 atanh(GLIBC_2.0) [SUSv3] atanhf(GLIBC_2.0) [SUSv3] 3388 atanhl(GLIBC_2.0) [SUSv3] atanl(GLIBC_2.0) [SUSv3] 3389 cabs(GLIBC_2.1) [SUSv3] cabsf(GLIBC_2.1) [SUSv3] 3390 cabsl(GLIBC_2.1) [SUSv3] cacos(GLIBC_2.1) [SUSv3] 3391 cacosf(GLIBC_2.1) [SUSv3] cacosh(GLIBC_2.1) [SUSv3] 3392 cacoshf(GLIBC_2.1) [SUSv3] cacoshl(GLIBC_2.1) [SUSv3] 3393 cacosl(GLIBC_2.1) [SUSv3] carg(GLIBC_2.1) [SUSv3] 3394 cargf(GLIBC_2.1) [SUSv3] cargl(GLIBC_2.1) [SUSv3] 3395 casin(GLIBC_2.1) [SUSv3] casinf(GLIBC_2.1) [SUSv3] 3396 casinh(GLIBC_2.1) [SUSv3] casinhf(GLIBC_2.1) [SUSv3] 3397 casinhl(GLIBC_2.1) [SUSv3] casinl(GLIBC_2.1) [SUSv3] 3398 catan(GLIBC_2.1) [SUSv3] catanf(GLIBC_2.1) [SUSv3] 3399 catanh(GLIBC_2.1) [SUSv3] catanhf(GLIBC_2.1) [SUSv3] 3400 catanhl(GLIBC_2.1) [SUSv3] catanl(GLIBC_2.1) [SUSv3] 3401 cbrt(GLIBC_2.0) [SUSv3] cbrtf(GLIBC_2.0) [SUSv3] 3402 cbrtl(GLIBC_2.0) [SUSv3] ccos(GLIBC_2.1) [SUSv3] 3403 ccosf(GLIBC_2.1) [SUSv3] ccosh(GLIBC_2.1) [SUSv3] 3404 ccoshf(GLIBC_2.1) [SUSv3] ccoshl(GLIBC_2.1) [SUSv3] 3405 ccosl(GLIBC_2.1) [SUSv3] ceil(GLIBC_2.0) [SUSv3] 3406 ceilf(GLIBC_2.0) [SUSv3] ceill(GLIBC_2.0) [SUSv3] 3407 cexp(GLIBC_2.1) [SUSv3] cexpf(GLIBC_2.1) [SUSv3] 3408 cexpl(GLIBC_2.1) [SUSv3] cimag(GLIBC_2.1) [SUSv3] 3409 cimagf(GLIBC_2.1) [SUSv3] cimagl(GLIBC_2.1) [SUSv3] 3410 clog(GLIBC_2.1) [SUSv3] clog10(GLIBC_2.1) [LSB] 3411 clog10f(GLIBC_2.1) [LSB] clog10l(GLIBC_2.1) [LSB] 3412 clogf(GLIBC_2.1) [SUSv3] clogl(GLIBC_2.1) [SUSv3] 3413 conj(GLIBC_2.1) [SUSv3] conjf(GLIBC_2.1) [SUSv3] 3414 conjl(GLIBC_2.1) [SUSv3] copysign(GLIBC_2.0) [SUSv3] 3415 copysignf(GLIBC_2.0) [SUSv3] copysignl(GLIBC_2.0) [SUSv3] 3416 cos(GLIBC_2.0) [SUSv3] cosf(GLIBC_2.0) [SUSv3] 3417 cosh(GLIBC_2.0) [SUSv3] coshf(GLIBC_2.0) [SUSv3] 3418 coshl(GLIBC_2.0) [SUSv3] cosl(GLIBC_2.0) [SUSv3] 3419 cpow(GLIBC_2.1) [SUSv3] cpowf(GLIBC_2.1) [SUSv3] 3420 cpowl(GLIBC_2.1) [SUSv3] cproj(GLIBC_2.1) [SUSv3] 3421 cprojf(GLIBC_2.1) [SUSv3] cprojl(GLIBC_2.1) [SUSv3] 3422 creal(GLIBC_2.1) [SUSv3] crealf(GLIBC_2.1) [SUSv3] 3423 creall(GLIBC_2.1) [SUSv3] csin(GLIBC_2.1) [SUSv3] 3424 csinf(GLIBC_2.1) [SUSv3] csinh(GLIBC_2.1) [SUSv3] 3425 csinhf(GLIBC_2.1) [SUSv3] csinhl(GLIBC_2.1) [SUSv3] 3426 csinl(GLIBC_2.1) [SUSv3] csqrt(GLIBC_2.1) [SUSv3] 3427 csqrtf(GLIBC_2.1) [SUSv3] csqrtl(GLIBC_2.1) [SUSv3] 3428 ctan(GLIBC_2.1) [SUSv3] ctanf(GLIBC_2.1) [SUSv3] 3429 ctanh(GLIBC_2.1) [SUSv3] ctanhf(GLIBC_2.1) [SUSv3] 3430 ctanhl(GLIBC_2.1) [SUSv3] ctanl(GLIBC_2.1) [SUSv3] 3431 drem(GLIBC_2.0) [LSB] dremf(GLIBC_2.0) [LSB] dreml(GLIBC_2.0) 3432 [LSB] erf(GLIBC_2.0) [SUSv3] 3433 erfc(GLIBC_2.0) [SUSv3] erfcf(GLIBC_2.0) [SUSv3] 3434 erfcl(GLIBC_2.0) [SUSv3] erff(GLIBC_2.0) [SUSv3] 3435 erfl(GLIBC_2.0) [SUSv3] exp(GLIBC_2.0) [SUSv3] exp10(GLIBC_2.1) 3436 [LSB] exp10f(GLIBC_2.1) [LSB] 3437 exp10l(GLIBC_2.1) [LSB] exp2(GLIBC_2.1) [SUSv3] 3438 exp2f(GLIBC_2.1) [SUSv3] expf(GLIBC_2.0) [SUSv3] 3439 expl(GLIBC_2.0) [SUSv3] expm1(GLIBC_2.0) [SUSv3] 3440 expm1f(GLIBC_2.0) [SUSv3] expm1l(GLIBC_2.0) [SUSv3] 3441 fabs(GLIBC_2.0) [SUSv3] fabsf(GLIBC_2.0) [SUSv3] 3442 fabsl(GLIBC_2.0) [SUSv3] fdim(GLIBC_2.1) [SUSv3] 3443 fdimf(GLIBC_2.1) [SUSv3] fdiml(GLIBC_2.1) [SUSv3] 3444 feclearexcept(GLIBC_2.2) [SUSv3] fedisableexcept(GLIBC_2.2) 3445 [LSB] 3446 feenableexcept(GLIBC_2.2) [LSB] fegetenv(GLIBC_2.2) [SUSv3] 3447 fegetexcept(GLIBC_2.2) [LSB] fegetexceptflag(GLIBC_2.2) [SUSv3] 3448 fegetround(GLIBC_2.1) [SUSv3] feholdexcept(GLIBC_2.1) [SUSv3] 3449 feraiseexcept(GLIBC_2.2) [SUSv3] fesetenv(GLIBC_2.2) [SUSv3] 3450 fesetexceptflag(GLIBC_2.2) [SUSv3] fesetround(GLIBC_2.1) 3451 [SUSv3] fetestexcept(GLIBC_2.1) [SUSv3] feupdateenv(GLIBC_2.2) 3452 [SUSv3] 3453 finite(GLIBC_2.0) [LSB] finitef(GLIBC_2.0) [LSB] 3454 finitel(GLIBC_2.0) [LSB] floor(GLIBC_2.0) [SUSv3] 3455 floorf(GLIBC_2.0) [SUSv3] floorl(GLIBC_2.0) [SUSv3] 3456 fma(GLIBC_2.1) [SUSv3] fmaf(GLIBC_2.1) [SUSv3] 3457 fmal(GLIBC_2.1) [SUSv3] fmax(GLIBC_2.1) [SUSv3] 3458 fmaxf(GLIBC_2.1) [SUSv3] fmaxl(GLIBC_2.1) [SUSv3] 3459 fmin(GLIBC_2.1) [SUSv3] fminf(GLIBC_2.1) [SUSv3] 3460 fminl(GLIBC_2.1) [SUSv3] fmod(GLIBC_2.0) [SUSv3] 3461 fmodf(GLIBC_2.0) [SUSv3] fmodl(GLIBC_2.0) [SUSv3] 3462 frexp(GLIBC_2.0) [SUSv3] frexpf(GLIBC_2.0) [SUSv3] 3463 frexpl(GLIBC_2.0) [SUSv3] gamma(GLIBC_2.0) [LSB] 3464 gammaf(GLIBC_2.0) [LSB] gammal(GLIBC_2.0) [LSB] 3465 hypot(GLIBC_2.0) [SUSv3] hypotf(GLIBC_2.0) [SUSv3] 3466 hypotl(GLIBC_2.0) [SUSv3] ilogb(GLIBC_2.0) [SUSv3] 3467 ilogbf(GLIBC_2.0) [SUSv3] ilogbl(GLIBC_2.0) [SUSv3] 3468 j0(GLIBC_2.0) [SUSv3] j0f(GLIBC_2.0) [LSB] 3469 j0l(GLIBC_2.0) [LSB] j1(GLIBC_2.0) [SUSv3] j1f(GLIBC_2.0) [LSB] 3470 j1l(GLIBC_2.0) [LSB] 3471 jn(GLIBC_2.0) [SUSv3] jnf(GLIBC_2.0) [LSB] jnl(GLIBC_2.0) [LSB] 3472 ldexp(GLIBC_2.0) [SUSv3] 3473 ldexpf(GLIBC_2.0) [SUSv3] ldexpl(GLIBC_2.0) [SUSv3] 3474 lgamma(GLIBC_2.0) [SUSv3] lgamma_r(GLIBC_2.0) [LSB] 3475 lgammaf(GLIBC_2.0) [SUSv3] lgammaf_r(GLIBC_2.0) [LSB] 3476 lgammal(GLIBC_2.0) [SUSv3] lgammal_r(GLIBC_2.0) [LSB] 3477 llrint(GLIBC_2.1) [SUSv3] llrintf(GLIBC_2.1) [SUSv3] 3478 llrintl(GLIBC_2.1) [SUSv3] llround(GLIBC_2.1) [SUSv3] 3479 llroundf(GLIBC_2.1) [SUSv3] llroundl(GLIBC_2.1) [SUSv3] 3480 log(GLIBC_2.0) [SUSv3] log10(GLIBC_2.0) [SUSv3] 3481 log10f(GLIBC_2.0) [SUSv3] log10l(GLIBC_2.0) [SUSv3] 3482 log1p(GLIBC_2.0) [SUSv3] log1pf(GLIBC_2.0) [SUSv3] 3483 log1pl(GLIBC_2.0) [SUSv3] log2(GLIBC_2.1) [SUSv3] 3484 log2f(GLIBC_2.1) [SUSv3] log2l(GLIBC_2.1) [SUSv3] 3485 logb(GLIBC_2.0) [SUSv3] logbf(GLIBC_2.0) [SUSv3] 3486 logbl(GLIBC_2.0) [SUSv3] logf(GLIBC_2.0) [SUSv3] 3487 logl(GLIBC_2.0) [SUSv3] lrint(GLIBC_2.1) [SUSv3] 3488 lrintf(GLIBC_2.1) [SUSv3] lrintl(GLIBC_2.1) [SUSv3] 3489 lround(GLIBC_2.1) [SUSv3] lroundf(GLIBC_2.1) [SUSv3] 3490 lroundl(GLIBC_2.1) [SUSv3] matherr(GLIBC_2.0) [SVID.3] 3491 modf(GLIBC_2.0) [SUSv3] modff(GLIBC_2.0) [SUSv3] 3492 modfl(GLIBC_2.0) [SUSv3] nan(GLIBC_2.1) [SUSv3] 3493 nanf(GLIBC_2.1) [SUSv3] nanl(GLIBC_2.1) [SUSv3] 3494 nearbyint(GLIBC_2.1) [SUSv3] nearbyintf(GLIBC_2.1) [SUSv3] 3495 nearbyintl(GLIBC_2.1) [SUSv3] nextafter(GLIBC_2.0) [SUSv3] 3496 nextafterf(GLIBC_2.0) [SUSv3] nextafterl(GLIBC_2.0) [SUSv3] 3497 nexttoward(GLIBC_2.1) [SUSv3] nexttowardf(GLIBC_2.1) [SUSv3] 3498 nexttowardl(GLIBC_2.1) [SUSv3] pow(GLIBC_2.0) [SUSv3] 3499 pow10(GLIBC_2.1) [LSB] pow10f(GLIBC_2.1) [LSB] 3500 pow10l(GLIBC_2.1) [LSB] powf(GLIBC_2.0) [SUSv3] 3501 powl(GLIBC_2.0) [SUSv3] remainder(GLIBC_2.0) [SUSv3] 3502 remainderf(GLIBC_2.0) [SUSv3] remainderl(GLIBC_2.0) [SUSv3] 3503 remquo(GLIBC_2.1) [SUSv3] remquof(GLIBC_2.1) [SUSv3] 3504 remquol(GLIBC_2.1) [SUSv3] rint(GLIBC_2.0) [SUSv3] 3505 rintf(GLIBC_2.0) [SUSv3] rintl(GLIBC_2.0) [SUSv3] 3506 round(GLIBC_2.1) [SUSv3] roundf(GLIBC_2.1) [SUSv3] 3507 roundl(GLIBC_2.1) [SUSv3] scalb(GLIBC_2.0) [SUSv3] 3508 scalbf(GLIBC_2.0) [ISOC99] scalbl(GLIBC_2.0) [ISOC99] 3509 scalbln(GLIBC_2.1) [SUSv3] scalblnf(GLIBC_2.1) [SUSv3] 3510 scalblnl(GLIBC_2.1) [SUSv3] scalbn(GLIBC_2.0) [SUSv3] 3511 scalbnf(GLIBC_2.0) [SUSv3] scalbnl(GLIBC_2.0) [SUSv3] 3512 significand(GLIBC_2.0) [LSB] significandf(GLIBC_2.0) [LSB] 3513 significandl(GLIBC_2.0) [LSB] sin(GLIBC_2.0) [SUSv3] 3514 sincos(GLIBC_2.1) [LSB] sincosf(GLIBC_2.1) [LSB] 3515 sincosl(GLIBC_2.1) [LSB] sinf(GLIBC_2.0) [SUSv3] 3516 sinh(GLIBC_2.0) [SUSv3] sinhf(GLIBC_2.0) [SUSv3] 3517 sinhl(GLIBC_2.0) [SUSv3] sinl(GLIBC_2.0) [SUSv3] 3518 sqrt(GLIBC_2.0) [SUSv3] sqrtf(GLIBC_2.0) [SUSv3] 3519 sqrtl(GLIBC_2.0) [SUSv3] tan(GLIBC_2.0) [SUSv3] tanf(GLIBC_2.0) 3520 [SUSv3] tanh(GLIBC_2.0) [SUSv3] 3521 tanhf(GLIBC_2.0) [SUSv3] tanhl(GLIBC_2.0) [SUSv3] 3522 tanl(GLIBC_2.0) [SUSv3] tgamma(GLIBC_2.1) [SUSv3] 3523 tgammaf(GLIBC_2.1) [SUSv3] tgammal(GLIBC_2.1) [SUSv3] 3524 trunc(GLIBC_2.1) [SUSv3] truncf(GLIBC_2.1) [SUSv3] 3525 truncl(GLIBC_2.1) [SUSv3] y0(GLIBC_2.0) [SUSv3] y0f(GLIBC_2.0) 3526 [LSB] y0l(GLIBC_2.0) [LSB] 3527 y1(GLIBC_2.0) [SUSv3] y1f(GLIBC_2.0) [LSB] y1l(GLIBC_2.0) [LSB] 3528 yn(GLIBC_2.0) [SUSv3] 3529 ynf(GLIBC_2.0) [LSB] ynl(GLIBC_2.0) [LSB] 3530 3531 An LSB conforming implementation shall provide the architecture 3532 specific deprecated functions for Math specified in Table 3533 11-35, with the full mandatory functionality as described in 3534 the referenced underlying specification. 3535 3536 Note: These interfaces are deprecated, and applications 3537 should avoid using them. These interfaces may be withdrawn 3538 in future releases of this specification. 3539 3540 Table 11-35. libm - Math Deprecated Function Interfaces 3541 drem(GLIBC_2.0) [LSB] dremf(GLIBC_2.0) [LSB] dreml(GLIBC_2.0) 3542 [LSB] finite(GLIBC_2.0) [LSB] 3543 finitef(GLIBC_2.0) [LSB] finitel(GLIBC_2.0) [LSB] 3544 gamma(GLIBC_2.0) [LSB] gammaf(GLIBC_2.0) [LSB] 3545 gammal(GLIBC_2.0) [LSB] matherr(GLIBC_2.0) [SVID.3] 3546 3547 An LSB conforming implementation shall provide the architecture 3548 specific data interfaces for Math specified in Table 11-36, 3549 with the full mandatory functionality as described in the 3550 referenced underlying specification. 3551 3552 Table 11-36. libm - Math Data Interfaces 3553 signgam(GLIBC_2.0) [SUSv3] 3554 __________________________________________________________ 3555 3556 11.5. Data Definitions for libm 3557 3558 This section defines global identifiers and their values that 3559 are associated with interfaces contained in libm. These 3560 definitions are organized into groups that correspond to system 3561 headers. This convention is used as a convenience for the 3562 reader, and does not imply the existence of these headers, or 3563 their content. Where an interface is defined as requiring a 3564 particular system header file all of the data definitions for 3565 that system header file presented here shall be in effect. 3566 3567 This section gives data definitions to promote binary 3568 application portability, not to repeat source interface 3569 definitions available elsewhere. System providers and 3570 application developers should use this ABI to supplement - not 3571 to replace - source interface definition specifications. 3572 3573 This specification uses the ISO C (1999) C Language as the 3574 reference programming language, and data definitions are 3575 specified in ISO C format. The C language is used here as a 3576 convenient notation. Using a C language description of these 3577 data objects does not preclude their use by other programming 3578 languages. 3579 __________________________________________________________ 3580 3581 11.5.1. complex.h 3582 3583 /* 3584 * This header is architecture neutral 3585 * Please refer to the generic specification for details 3586 */ 3587 __________________________________________________________ 3588 3589 11.5.2. fenv.h 3590 3591 #define FE_INVALID (1 << (31 - 2)) 3592 #define FE_OVERFLOW (1 << (31 - 3)) 3593 #define FE_UNDERFLOW (1 << (31 - 4)) 3594 #define FE_DIVBYZERO (1 << (31 - 5)) 3595 #define FE_INEXACT (1 << (31 - 6)) 3596 3597 #define FE_ALL_EXCEPT \ 3598 (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID) 3599 3600 #define FE_TONEAREST 0 3601 #define FE_TOWARDZERO 1 3602 #define FE_UPWARD 2 3603 #define FE_DOWNWARD 3 3604 3605 typedef unsigned int fexcept_t; 3606 3607 typedef double fenv_t; 3608 3609 #define FE_DFL_ENV (&__fe_dfl_env) 3610 __________________________________________________________ 3611 3612 11.5.3. math.h 3613 3614 #define fpclassify(x) \ 3615 (sizeof (x) == sizeof (float) ? __fpclassifyf (x) : __fpclassify (x) ) 3616 #define signbit(x) \ 3617 (sizeof (x) == sizeof (float)? __signbitf (x): __signbit (x)) 3618 #define isfinite(x) \ 3619 (sizeof (x) == sizeof (float) ? __finitef (x) : __finite (x)) 3620 #define isinf(x) \ 3621 (sizeof (x) == sizeof (float) ? __isinff (x) : __isinf (x)) 3622 #define isnan(x) \ 3623 (sizeof (x) == sizeof (float) ? __isnanf (x) : __isnan (x)) 3624 3625 #define HUGE_VALL 0x1.0p2047L 3626 3627 #define FP_ILOGB0 -2147483647 3628 #define FP_ILOGBNAN 2147483647 3629 __________________________________________________________ 3630 3631 11.6. Interfaces for libpthread 3632 3633 Table 11-37 defines the library name and shared object name for 3634 the libpthread library 3635 3636 Table 11-37. libpthread Definition 3637 Library: libpthread 3638 SONAME: libpthread.so.0 3639 3640 The behavior of the interfaces in this library is specified by 3641 the following specifications: 3642 3643 [LFS] Large File Support 3644 [LSB] ISO/IEC 23360 Part 1 3645 [SUSv3] ISO POSIX (2003) 3646 __________________________________________________________ 3647 3648 11.6.1. Realtime Threads 3649 __________________________________________________________ 3650 3651 11.6.1.1. Interfaces for Realtime Threads 3652 3653 An LSB conforming implementation shall provide the architecture 3654 specific functions for Realtime Threads specified in Table 3655 11-38, with the full mandatory functionality as described in 3656 the referenced underlying specification. 3657 3658 Table 11-38. libpthread - Realtime Threads Function Interfaces 3659 pthread_attr_getinheritsched(GLIBC_2.0) [SUSv3] 3660 pthread_attr_getschedpolicy(GLIBC_2.0) [SUSv3] 3661 pthread_attr_getscope(GLIBC_2.0) [SUSv3] 3662 pthread_attr_setinheritsched(GLIBC_2.0) [SUSv3] 3663 pthread_attr_setschedpolicy(GLIBC_2.0) [SUSv3] 3664 pthread_attr_setscope(GLIBC_2.0) [SUSv3] 3665 pthread_getschedparam(GLIBC_2.0) [SUSv3] 3666 pthread_setschedparam(GLIBC_2.0) [SUSv3] 3667 __________________________________________________________ 3668 3669 11.6.2. Advanced Realtime Threads 3670 __________________________________________________________ 3671 3672 11.6.2.1. Interfaces for Advanced Realtime Threads 3673 3674 An LSB conforming implementation shall provide the architecture 3675 specific functions for Advanced Realtime Threads specified in 3676 Table 11-39, with the full mandatory functionality as described 3677 in the referenced underlying specification. 3678 3679 Table 11-39. libpthread - Advanced Realtime Threads Function 3680 Interfaces 3681 pthread_barrier_destroy(GLIBC_2.2) [SUSv3] 3682 pthread_barrier_init(GLIBC_2.2) [SUSv3] 3683 pthread_barrier_wait(GLIBC_2.2) [SUSv3] 3684 pthread_barrierattr_destroy(GLIBC_2.2) [SUSv3] 3685 pthread_barrierattr_init(GLIBC_2.2) [SUSv3] 3686 pthread_barrierattr_setpshared(GLIBC_2.2) [SUSv3] 3687 pthread_getcpuclockid(GLIBC_2.2) [SUSv3] 3688 pthread_spin_destroy(GLIBC_2.2) [SUSv3] 3689 pthread_spin_init(GLIBC_2.2) [SUSv3] 3690 pthread_spin_lock(GLIBC_2.2) [SUSv3] 3691 pthread_spin_trylock(GLIBC_2.2) [SUSv3] 3692 pthread_spin_unlock(GLIBC_2.2) [SUSv3] 3693 __________________________________________________________ 3694 3695 11.6.3. Posix Threads 3696 __________________________________________________________ 3697 3698 11.6.3.1. Interfaces for Posix Threads 3699 3700 An LSB conforming implementation shall provide the architecture 3701 specific functions for Posix Threads specified in Table 11-40, 3702 with the full mandatory functionality as described in the 3703 referenced underlying specification. 3704 3705 Table 11-40. libpthread - Posix Threads Function Interfaces 3706 _pthread_cleanup_pop(GLIBC_2.0) [LSB] 3707 _pthread_cleanup_push(GLIBC_2.0) [LSB] 3708 pthread_attr_destroy(GLIBC_2.0) [SUSv3] 3709 pthread_attr_getdetachstate(GLIBC_2.0) [SUSv3] 3710 pthread_attr_getguardsize(GLIBC_2.1) [SUSv3] 3711 pthread_attr_getschedparam(GLIBC_2.0) [SUSv3] 3712 pthread_attr_getstack(GLIBC_2.2) [SUSv3] 3713 pthread_attr_getstackaddr(GLIBC_2.1) [SUSv3] 3714 pthread_attr_getstacksize(GLIBC_2.1) [SUSv3] 3715 pthread_attr_init(GLIBC_2.1) [SUSv3] 3716 pthread_attr_setdetachstate(GLIBC_2.0) [SUSv3] 3717 pthread_attr_setguardsize(GLIBC_2.1) [SUSv3] 3718 pthread_attr_setschedparam(GLIBC_2.0) [SUSv3] 3719 pthread_attr_setstackaddr(GLIBC_2.1) [SUSv3] 3720 pthread_attr_setstacksize(GLIBC_2.1) [SUSv3] 3721 pthread_cancel(GLIBC_2.0) [SUSv3] 3722 pthread_cond_broadcast(GLIBC_2.3.2) [SUSv3] 3723 pthread_cond_destroy(GLIBC_2.3.2) [SUSv3] 3724 pthread_cond_init(GLIBC_2.3.2) [SUSv3] 3725 pthread_cond_signal(GLIBC_2.3.2) [SUSv3] 3726 pthread_cond_timedwait(GLIBC_2.3.2) [SUSv3] 3727 pthread_cond_wait(GLIBC_2.3.2) [SUSv3] 3728 pthread_condattr_destroy(GLIBC_2.0) [SUSv3] 3729 pthread_condattr_getpshared(GLIBC_2.2) [SUSv3] 3730 pthread_condattr_init(GLIBC_2.0) [SUSv3] 3731 pthread_condattr_setpshared(GLIBC_2.2) [SUSv3] 3732 pthread_create(GLIBC_2.1) [SUSv3] pthread_detach(GLIBC_2.0) 3733 [SUSv3] 3734 pthread_equal(GLIBC_2.0) [SUSv3] pthread_exit(GLIBC_2.0) 3735 [SUSv3] pthread_getconcurrency(GLIBC_2.1) [SUSv3] 3736 pthread_getspecific(GLIBC_2.0) [SUSv3] 3737 pthread_join(GLIBC_2.0) [SUSv3] pthread_key_create(GLIBC_2.0) 3738 [SUSv3] pthread_key_delete(GLIBC_2.0) [SUSv3] 3739 pthread_kill(GLIBC_2.0) [SUSv3] 3740 pthread_mutex_destroy(GLIBC_2.0) [SUSv3] 3741 pthread_mutex_init(GLIBC_2.0) [SUSv3] 3742 pthread_mutex_lock(GLIBC_2.0) [SUSv3] 3743 pthread_mutex_timedlock(GLIBC_2.2) [SUSv3] 3744 pthread_mutex_trylock(GLIBC_2.0) [SUSv3] 3745 pthread_mutex_unlock(GLIBC_2.0) [SUSv3] 3746 pthread_mutexattr_destroy(GLIBC_2.0) [SUSv3] 3747 pthread_mutexattr_getpshared(GLIBC_2.2) [SUSv3] 3748 pthread_mutexattr_gettype(GLIBC_2.1) [SUSv3] 3749 pthread_mutexattr_init(GLIBC_2.0) [SUSv3] 3750 pthread_mutexattr_setpshared(GLIBC_2.2) [SUSv3] 3751 pthread_mutexattr_settype(GLIBC_2.1) [SUSv3] 3752 pthread_once(GLIBC_2.0) [SUSv3] 3753 pthread_rwlock_destroy(GLIBC_2.1) [SUSv3] 3754 pthread_rwlock_init(GLIBC_2.1) [SUSv3] 3755 pthread_rwlock_rdlock(GLIBC_2.1) [SUSv3] 3756 pthread_rwlock_timedrdlock(GLIBC_2.2) [SUSv3] 3757 pthread_rwlock_timedwrlock(GLIBC_2.2) [SUSv3] 3758 pthread_rwlock_tryrdlock(GLIBC_2.1) [SUSv3] 3759 pthread_rwlock_trywrlock(GLIBC_2.1) [SUSv3] 3760 pthread_rwlock_unlock(GLIBC_2.1) [SUSv3] 3761 pthread_rwlock_wrlock(GLIBC_2.1) [SUSv3] 3762 pthread_rwlockattr_destroy(GLIBC_2.1) [SUSv3] 3763 pthread_rwlockattr_getpshared(GLIBC_2.1) [SUSv3] 3764 pthread_rwlockattr_init(GLIBC_2.1) [SUSv3] 3765 pthread_rwlockattr_setpshared(GLIBC_2.1) [SUSv3] 3766 pthread_self(GLIBC_2.0) [SUSv3] 3767 pthread_setcancelstate(GLIBC_2.0) [SUSv3] 3768 pthread_setcanceltype(GLIBC_2.0) [SUSv3] 3769 pthread_setconcurrency(GLIBC_2.1) [SUSv3] 3770 pthread_setspecific(GLIBC_2.0) [SUSv3] 3771 pthread_sigmask(GLIBC_2.0) [SUSv3] 3772 pthread_testcancel(GLIBC_2.0) [SUSv3] sem_close(GLIBC_2.1.1) 3773 [SUSv3] sem_destroy(GLIBC_2.1) [SUSv3] sem_getvalue(GLIBC_2.1) 3774 [SUSv3] 3775 sem_init(GLIBC_2.1) [SUSv3] sem_open(GLIBC_2.1.1) [SUSv3] 3776 sem_post(GLIBC_2.1) [SUSv3] sem_timedwait(GLIBC_2.2) [SUSv3] 3777 sem_trywait(GLIBC_2.1) [SUSv3] sem_unlink(GLIBC_2.1.1) [SUSv3] 3778 sem_wait(GLIBC_2.1) [SUSv3] 3779 3780 An LSB conforming implementation shall provide the architecture 3781 specific deprecated functions for Posix Threads specified in 3782 Table 11-41, with the full mandatory functionality as described 3783 in the referenced underlying specification. 3784 3785 Note: These interfaces are deprecated, and applications 3786 should avoid using them. These interfaces may be withdrawn 3787 in future releases of this specification. 3788 3789 Table 11-41. libpthread - Posix Threads Deprecated Function 3790 Interfaces 3791 pthread_attr_getstackaddr(GLIBC_2.1) [SUSv3] 3792 pthread_attr_setstackaddr(GLIBC_2.1) [SUSv3] 3793 __________________________________________________________ 3794 3795 11.6.4. Thread aware versions of libc interfaces 3796 __________________________________________________________ 3797 3798 11.6.4.1. Interfaces for Thread aware versions of libc interfaces 3799 3800 An LSB conforming implementation shall provide the architecture 3801 specific functions for Thread aware versions of libc interfaces 3802 specified in Table 11-42, with the full mandatory functionality 3803 as described in the referenced underlying specification. 3804 3805 Table 11-42. libpthread - Thread aware versions of libc 3806 interfaces Function Interfaces 3807 lseek64(GLIBC_2.2) [LFS] open64(GLIBC_2.2) [LFS] 3808 pread(GLIBC_2.2) [SUSv3] pread64(GLIBC_2.2) [LFS] 3809 pwrite(GLIBC_2.2) [SUSv3] pwrite64(GLIBC_2.2) [LFS] 3810 __________________________________________________________ 3811 3812 11.7. Data Definitions for libpthread 3813 3814 This section defines global identifiers and their values that 3815 are associated with interfaces contained in libpthread. These 3816 definitions are organized into groups that correspond to system 3817 headers. This convention is used as a convenience for the 3818 reader, and does not imply the existence of these headers, or 3819 their content. Where an interface is defined as requiring a 3820 particular system header file all of the data definitions for 3821 that system header file presented here shall be in effect. 3822 3823 This section gives data definitions to promote binary 3824 application portability, not to repeat source interface 3825 definitions available elsewhere. System providers and 3826 application developers should use this ABI to supplement - not 3827 to replace - source interface definition specifications. 3828 3829 This specification uses the ISO C (1999) C Language as the 3830 reference programming language, and data definitions are 3831 specified in ISO C format. The C language is used here as a 3832 convenient notation. Using a C language description of these 3833 data objects does not preclude their use by other programming 3834 languages. 3835 __________________________________________________________ 3836 3837 11.7.1. pthread.h 3838 3839 #define __SIZEOF_PTHREAD_BARRIER_T 20 3840 3841 typedef union { 3842 char __size[__SIZEOF_PTHREAD_BARRIER_T]; 3843 long int __align; 3844 } pthread_barrier_t; 3845 __________________________________________________________ 3846 3847 11.7.2. semaphore.h 3848 3849 /* 3850 * This header is architecture neutral 3851 * Please refer to the generic specification for details 3852 */ 3853 __________________________________________________________ 3854 3855 11.8. Interfaces for libgcc_s 3856 3857 Table 11-43 defines the library name and shared object name for 3858 the libgcc_s library 3859 3860 Table 11-43. libgcc_s Definition 3861 Library: libgcc_s 3862 SONAME: libgcc_s.so.1 3863 3864 The behavior of the interfaces in this library is specified by 3865 the following specifications: 3866 3867 [LSB] ISO/IEC 23360 Part 1 3868 __________________________________________________________ 3869 3870 11.8.1. Unwind Library 3871 __________________________________________________________ 3872 3873 11.8.1.1. Interfaces for Unwind Library 3874 3875 An LSB conforming implementation shall provide the architecture 3876 specific functions for Unwind Library specified in Table 11-44, 3877 with the full mandatory functionality as described in the 3878 referenced underlying specification. 3879 3880 Table 11-44. libgcc_s - Unwind Library Function Interfaces 3881 _Unwind_Backtrace(GCC_3.3) [LSB] 3882 _Unwind_DeleteException(GCC_3.0) [LSB] 3883 _Unwind_FindEnclosingFunction(GCC_3.3) [LSB] 3884 _Unwind_Find_FDE(GCC_3.0) [LSB] 3885 _Unwind_ForcedUnwind(GCC_3.0) [LSB] _Unwind_GetCFA(GCC_3.3) 3886 [LSB] _Unwind_GetDataRelBase(GCC_3.0) [LSB] 3887 _Unwind_GetGR(GCC_3.0) [LSB] 3888 _Unwind_GetIP(GCC_3.0) [LSB] 3889 _Unwind_GetLanguageSpecificData(GCC_3.0) [LSB] 3890 _Unwind_GetRegionStart(GCC_3.0) [LSB] 3891 _Unwind_GetTextRelBase(GCC_3.0) [LSB] 3892 _Unwind_RaiseException(GCC_3.0) [LSB] _Unwind_Resume(GCC_3.0) 3893 [LSB] _Unwind_Resume_or_Rethrow(GCC_3.3) [LSB] 3894 _Unwind_SetGR(GCC_3.0) [LSB] 3895 _Unwind_SetIP(GCC_3.0) [LSB] 3896 __________________________________________________________ 3897 3898 11.9. Data Definitions for libgcc_s 3899 3900 This section defines global identifiers and their values that 3901 are associated with interfaces contained in libgcc_s. These 3902 definitions are organized into groups that correspond to system 3903 headers. This convention is used as a convenience for the 3904 reader, and does not imply the existence of these headers, or 3905 their content. Where an interface is defined as requiring a 3906 particular system header file all of the data definitions for 3907 that system header file presented here shall be in effect. 3908 3909 This section gives data definitions to promote binary 3910 application portability, not to repeat source interface 3911 definitions available elsewhere. System providers and 3912 application developers should use this ABI to supplement - not 3913 to replace - source interface definition specifications. 3914 3915 This specification uses the ISO C (1999) C Language as the 3916 reference programming language, and data definitions are 3917 specified in ISO C format. The C language is used here as a 3918 convenient notation. Using a C language description of these 3919 data objects does not preclude their use by other programming 3920 languages. 3921 __________________________________________________________ 3922 3923 11.9.1. unwind.h 3924 3925 typedef _Unwind_Reason_Code(*_Unwind_Stop_Fn) (int version, 3926 _Unwind_Action actions, 3927 _Unwind_Exception_Class 3928 exceptionClass, 3929 struct _Unwind_Exception* 3930 exceptionObject, 3931 struct _Unwind_Context * 3932 context, 3933 void *stop_parameter); 3934 3935 typedef _Unwind_Reason_Code(*_Unwind_Trace_Fn) (struct _Unwind_Context *, 3936 void *); 3937 extern void _Unwind_DeleteException(struct _Unwind_Exception *); 3938 extern fde *_Unwind_Find_FDE(void *, struct dwarf_eh_base *); 3939 extern _Unwind_Ptr _Unwind_GetDataRelBase(struct _Unwind_Context *); 3940 extern _Unwind_Word _Unwind_GetGR(struct _Unwind_Context *, int); 3941 extern _Unwind_Ptr _Unwind_GetIP(struct _Unwind_Context *); 3942 extern _Unwind_Ptr _Unwind_GetLanguageSpecificData(struct _Unwind_Context 3943 *, unsigned int); 3944 extern _Unwind_Ptr _Unwind_GetRegionStart(struct _Unwind_Context *); 3945 extern _Unwind_Reason_Code _Unwind_RaiseException(struct _Unwind_Exception 3946 *); 3947 extern void _Unwind_SetIP(struct _Unwind_Context *, unsigned int); 3948 extern void _Unwind_Resume(struct _Unwind_Exception *); 3949 extern void _Unwind_SetGR(struct _Unwind_Context *, int, u_int64_t); 3950 extern _Unwind_Ptr _Unwind_GetTextRelBase(struct _Unwind_Context *); 3951 extern _Unwind_Ptr _Unwind_ForcedUnwind(struct _Unwind_Exception *, 3952 _Unwind_Stop_Fn, void *); 3953 extern _Unwind_Reason_Code _Unwind_Backtrace(_Unwind_Trace_Fn, void *); 3954 extern _Unwind_Reason_Code _Unwind_GetCFA(struct _Unwind_Context *); 3955 extern _Unwind_Reason_Code _Unwind_Resume_or_Rethrow(struct 3956 _Unwind_Exception *); 3957 extern void *_Unwind_FindEnclosingFunction(void *); 3958 __________________________________________________________ 3959 3960 11.10. Interface Definitions for libgcc_s 3961 3962 Table of Contents 3963 _Unwind_DeleteException -- private C++ error handling method 3964 _Unwind_Find_FDE -- private C++ error handling method 3965 _Unwind_ForcedUnwind -- private C++ error handling method 3966 _Unwind_GetDataRelBase -- private IA64 C++ error handling 3967 method 3968 3969 _Unwind_GetGR -- private C++ error handling method 3970 _Unwind_GetIP -- private C++ error handling method 3971 _Unwind_GetLanguageSpecificData -- private C++ error handling 3972 method 3973 3974 _Unwind_GetRegionStart -- private C++ error handling method 3975 _Unwind_GetTextRelBase -- private IA64 C++ error handling 3976 method 3977 3978 _Unwind_RaiseException -- private C++ error handling method 3979 _Unwind_Resume -- private C++ error handling method 3980 _Unwind_SetGR -- private C++ error handling method 3981 _Unwind_SetIP -- private C++ error handling method 3982 3983 The interfaces defined on the following pages are included in 3984 libgcc_s and are defined by this specification. Unless 3985 otherwise noted, these interfaces shall be included in the 3986 source standard. 3987 3988 Other interfaces listed in Section 11.8 shall behave as 3989 described in the referenced base document. For interfaces 3990 referencing LSB and not listed below, please see the generic 3991 part of the specification. 3992 3993 _Unwind_DeleteException 3994 3995 Name 3996 3997 _Unwind_DeleteException -- private C++ error handling method 3998 3999 Synopsis 4000 4001 void _Unwind_DeleteException(struct _Unwind_Exception * 4002 object); 4003 4004 Description 4005 4006 _Unwind_DeleteException() deletes the given exception object. 4007 If a given runtime resumes normal execution after catching a 4008 foreign exception, it will not know how to delete that 4009 exception. Such an exception shall be deleted by calling 4010 _Unwind_DeleteException(). This is a convenience function that 4011 calls the function pointed to by the exception_cleanup field of 4012 the exception header. 4013 4014 _Unwind_Find_FDE 4015 4016 Name 4017 4018 _Unwind_Find_FDE -- private C++ error handling method 4019 4020 Synopsis 4021 4022 fde * _Unwind_Find_FDE(void * pc, struct dwarf_eh_bases * 4023 bases); 4024 4025 Description 4026 4027 _Unwind_Find_FDE() looks for the object containing pc, then 4028 inserts into bases. 4029 4030 _Unwind_ForcedUnwind 4031 4032 Name 4033 4034 _Unwind_ForcedUnwind -- private C++ error handling method 4035 4036 Synopsis 4037 4038 _Unwind_Reason_Code _Unwind_ForcedUnwind(struct 4039 _Unwind_Exception * object, _Unwind_Stop_Fn stop, void * 4040 stop_parameter); 4041 4042 Description 4043 4044 _Unwind_ForcedUnwind() raises an exception for forced 4045 unwinding, passing along the given exception object, which 4046 should have its exception_class and exception_cleanup fields 4047 set. The exception object has been allocated by the 4048 language-specific runtime, and has a language-specific format, 4049 except that it shall contain an _Unwind_Exception struct. 4050 4051 Forced unwinding is a single-phase process. stop and 4052 stop_parameter control the termination of the unwind process 4053 instead of the usual personality routine query. stop is called 4054 for each unwind frame, with the parameteres described for the 4055 usual personality routine below, plus an additional 4056 stop_parameter. 4057 4058 Return Value 4059 4060 When stop identifies the destination frame, it transfers 4061 control to the user code as appropriate without returning, 4062 normally after calling _Unwind_DeleteException(). If not, then 4063 it should return an _Unwind_Reason_Code value. 4064 4065 If stop returns any reason code other than _URC_NO_REASON, then 4066 the stack state is indeterminate from the point of view of the 4067 caller of _Unwind_ForcedUnwind(). Rather than attempt to 4068 return, therefore, the unwind library should use the 4069 exception_cleanup entry in the exception, and then call 4070 abort(). 4071 4072 _URC_NO_REASON 4073 This is not the destination from. The unwind runtime 4074 will call frame's personality routine with the 4075 _UA_FORCE_UNWIND and _UA_CLEANUP_PHASE flag set in 4076 actions, and then unwind to the next frame and call the 4077 stop() function again. 4078 4079 _URC_END_OF_STACK 4080 In order to allow _Unwind_ForcedUnwind() to perform 4081 special processing when it reaches the end of the stack, 4082 the unwind runtime will call it after the last frame is 4083 rejected, with a NULL stack pointer in the context, and 4084 the stop() function shall catch this condition. It may 4085 return this code if it cannot handle end-of-stack. 4086 4087 _URC_FATAL_PHASE2_ERROR 4088 The stop() function may return this code for other fatal 4089 conditions like stack corruption. 4090 4091 _Unwind_GetDataRelBase 4092 4093 Name 4094 4095 _Unwind_GetDataRelBase -- private IA64 C++ error handling 4096 method 4097 4098 Synopsis 4099 4100 _Unwind_Ptr _Unwind_GetDataRelBase(struct _Unwind_Context * 4101 context); 4102 4103 Description 4104 4105 _Unwind_GetDataRelBase() returns the global pointer in register 4106 one for context. 4107 4108 _Unwind_GetGR 4109 4110 Name 4111 4112 _Unwind_GetGR -- private C++ error handling method 4113 4114 Synopsis 4115 4116 _Unwind_Word _Unwind_GetGR(struct _Unwind_Context * context, 4117 int index); 4118 4119 Description 4120 4121 _Unwind_GetGR() returns data at index found in context. The 4122 register is identified by its index: 0 to 31 are for the fixed 4123 registers, and 32 to 127 are for the stacked registers. 4124 4125 During the two phases of unwinding, only GR1 has a guaranteed 4126 value, which is the global pointer of the frame referenced by 4127 the unwind context. If the register has its NAT bit set, the 4128 behavior is unspecified. 4129 4130 _Unwind_GetIP 4131 4132 Name 4133 4134 _Unwind_GetIP -- private C++ error handling method 4135 4136 Synopsis 4137 4138 _Unwind_Ptr _Unwind_GetIP(struct _Unwind_Context * context); 4139 4140 Description 4141 4142 _Unwind_GetIP() returns the instruction pointer value for the 4143 routine identified by the unwind context. 4144 4145 _Unwind_GetLanguageSpecificData 4146 4147 Name 4148 4149 _Unwind_GetLanguageSpecificData -- private C++ error handling 4150 method 4151 4152 Synopsis 4153 4154 _Unwind_Ptr _Unwind_GetLanguageSpecificData(struct 4155 _Unwind_Context * context, uint value); 4156 4157 Description 4158 4159 _Unwind_GetLanguageSpecificData() returns the address of the 4160 language specific data area for the current stack frame. 4161 4162 _Unwind_GetRegionStart 4163 4164 Name 4165 4166 _Unwind_GetRegionStart -- private C++ error handling method 4167 4168 Synopsis 4169 4170 _Unwind_Ptr _Unwind_GetRegionStart(struct _Unwind_Context * 4171 context); 4172 4173 Description 4174 4175 _Unwind_GetRegionStart() routine returns the address (i.e., 0) 4176 of the beginning of the procedure or code fragment described by 4177 the current unwind descriptor block. 4178 4179 _Unwind_GetTextRelBase 4180 4181 Name 4182 4183 _Unwind_GetTextRelBase -- private IA64 C++ error handling 4184 method 4185 4186 Synopsis 4187 4188 _Unwind_Ptr _Unwind_GetTextRelBase(struct _Unwind_Context * 4189 context); 4190 4191 Description 4192 4193 _Unwind_GetTextRelBase() calls the abort method, then returns. 4194 4195 _Unwind_RaiseException 4196 4197 Name 4198 4199 _Unwind_RaiseException -- private C++ error handling method 4200 4201 Synopsis 4202 4203 _Unwind_Reason_Code _Unwind_RaiseException(struct 4204 _Unwind_Exception * object); 4205 4206 Description 4207 4208 _Unwind_RaiseException() raises an exception, passing along the 4209 given exception object, which should have its exception_class 4210 and exception_cleanup fields set. The exception object has been 4211 allocated by the language-specific runtime, and has a 4212 language-specific format, exception that it shall contain an 4213 _Unwind_Exception. 4214 4215 Return Value 4216 4217 _Unwind_RaiseException() does not return unless an error 4218 condition is found. If an error condition occurs, an 4219 _Unwind_Reason_Code is returnd: 4220 4221 _URC_END_OF_STACK 4222 The unwinder encountered the end of the stack during 4223 phase one without finding a handler. The unwind runtime 4224 will not have modified the stack. The C++ runtime will 4225 normally call uncaught_exception() in this case. 4226 4227 _URC_FATAL_PHASE1_ERROR 4228 The unwinder encountered an unexpected error during 4229 phase one, because of something like stack corruption. 4230 The unwind runtime will not have modified the stack. The 4231 C++ runtime will normally call terminate() in this case. 4232 4233 _URC_FATAL_PHASE2_ERROR 4234 The unwinder encountered an unexpected error during 4235 phase two. This is usually a throw, which will call 4236 terminate(). 4237 4238 _Unwind_Resume 4239 4240 Name 4241 4242 _Unwind_Resume -- private C++ error handling method 4243 4244 Synopsis 4245 4246 void _Unwind_Resume(struct _Unwind_Exception * object); 4247 4248 Description 4249 4250 _Unwind_Resume() resumes propagation of an existing exception 4251 object. A call to this routine is inserted as the end of a 4252 landing pad that performs cleanup, but does not resume normal 4253 execution. It causes unwinding to proceed further. 4254 4255 _Unwind_SetGR 4256 4257 Name 4258 4259 _Unwind_SetGR -- private C++ error handling method 4260 4261 Synopsis 4262 4263 void _Unwind_SetGR(struct _Unwind_Context * context, int index, 4264 uint value); 4265 4266 Description 4267 4268 _Unwind_SetGR() sets the value of the register indexed for the 4269 routine identified by the unwind context. 4270 4271 _Unwind_SetIP 4272 4273 Name 4274 4275 _Unwind_SetIP -- private C++ error handling method 4276 4277 Synopsis 4278 4279 void _Unwind_SetIP(struct _Unwind_Context * context, uint 4280 value); 4281 4282 Description 4283 4284 _Unwind_SetIP() sets the value of the instruction pointer for 4285 the routine identified by the unwind context 4286 __________________________________________________________ 4287 4288 11.11. Interfaces for libdl 4289 4290 Table 11-45 defines the library name and shared object name for 4291 the libdl library 4292 4293 Table 11-45. libdl Definition 4294 Library: libdl 4295 SONAME: libdl.so.2 4296 4297 The behavior of the interfaces in this library is specified by 4298 the following specifications: 4299 4300 [LSB] ISO/IEC 23360 Part 1 4301 [SUSv3] ISO POSIX (2003) 4302 __________________________________________________________ 4303 4304 11.11.1. Dynamic Loader 4305 __________________________________________________________ 4306 4307 11.11.1.1. Interfaces for Dynamic Loader 4308 4309 An LSB conforming implementation shall provide the architecture 4310 specific functions for Dynamic Loader specified in Table 11-46, 4311 with the full mandatory functionality as described in the 4312 referenced underlying specification. 4313 4314 Table 11-46. libdl - Dynamic Loader Function Interfaces 4315 dladdr(GLIBC_2.0) [LSB] dlclose(GLIBC_2.0) [SUSv3] 4316 dlerror(GLIBC_2.0) [SUSv3] dlopen(GLIBC_2.1) [LSB] 4317 dlsym(GLIBC_2.0) [LSB] 4318 __________________________________________________________ 4319 4320 11.12. Data Definitions for libdl 4321 4322 This section defines global identifiers and their values that 4323 are associated with interfaces contained in libdl. These 4324 definitions are organized into groups that correspond to system 4325 headers. This convention is used as a convenience for the 4326 reader, and does not imply the existence of these headers, or 4327 their content. Where an interface is defined as requiring a 4328 particular system header file all of the data definitions for 4329 that system header file presented here shall be in effect. 4330 4331 This section gives data definitions to promote binary 4332 application portability, not to repeat source interface 4333 definitions available elsewhere. System providers and 4334 application developers should use this ABI to supplement - not 4335 to replace - source interface definition specifications. 4336 4337 This specification uses the ISO C (1999) C Language as the 4338 reference programming language, and data definitions are 4339 specified in ISO C format. The C language is used here as a 4340 convenient notation. Using a C language description of these 4341 data objects does not preclude their use by other programming 4342 languages. 4343 __________________________________________________________ 4344 4345 11.12.1. dlfcn.h 4346 4347 /* 4348 * This header is architecture neutral 4349 * Please refer to the generic specification for details 4350 */ 4351 __________________________________________________________ 4352 4353 11.13. Interfaces for libcrypt 4354 4355 Table 11-47 defines the library name and shared object name for 4356 the libcrypt library 4357 4358 Table 11-47. libcrypt Definition 4359 Library: libcrypt 4360 SONAME: libcrypt.so.1 4361 4362 The behavior of the interfaces in this library is specified by 4363 the following specifications: 4364 4365 [SUSv3] ISO POSIX (2003) 4366 __________________________________________________________ 4367 4368 11.13.1. Encryption 4369 __________________________________________________________ 4370 4371 11.13.1.1. Interfaces for Encryption 4372 4373 An LSB conforming implementation shall provide the architecture 4374 specific functions for Encryption specified in Table 11-48, 4375 with the full mandatory functionality as described in the 4376 referenced underlying specification. 4377 4378 Table 11-48. libcrypt - Encryption Function Interfaces 4379 crypt(GLIBC_2.0) [SUSv3] encrypt(GLIBC_2.0) [SUSv3] 4380 setkey(GLIBC_2.0) [SUSv3] 4381 4382 IV. Utility Libraries 4383 4384 Table of Contents 4385 12. Libraries 4386 4387 12.1. Interfaces for libz 4388 4389 12.1.1. Compression Library 4390 4391 12.2. Data Definitions for libz 4392 4393 12.2.1. zlib.h 4394 4395 12.3. Interfaces for libncurses 4396 4397 12.3.1. Curses 4398 4399 12.4. Data Definitions for libncurses 4400 4401 12.4.1. curses.h 4402 4403 12.5. Interfaces for libutil 4404 4405 12.5.1. Utility Functions 4406 __________________________________________________________ 4407 4408 Chapter 12. Libraries 4409 4410 An LSB-conforming implementation shall also support some 4411 utility libraries which are built on top of the interfaces 4412 provided by the base libraries. These libraries implement 4413 common functionality, and hide additional system dependent 4414 information such as file formats and device names. 4415 __________________________________________________________ 4416 4417 12.1. Interfaces for libz 4418 4419 Table 12-1 defines the library name and shared object name for 4420 the libz library 4421 4422 Table 12-1. libz Definition 4423 Library: libz 4424 SONAME: libz.so.1 4425 __________________________________________________________ 4426 4427 12.1.1. Compression Library 4428 __________________________________________________________ 4429 4430 12.1.1.1. Interfaces for Compression Library 4431 4432 No external functions are defined for libz - Compression 4433 Library in this part of the specification. See also the generic 4434 specification. 4435 __________________________________________________________ 4436 4437 12.2. Data Definitions for libz 4438 4439 This section defines global identifiers and their values that 4440 are associated with interfaces contained in libz. These 4441 definitions are organized into groups that correspond to system 4442 headers. This convention is used as a convenience for the 4443 reader, and does not imply the existence of these headers, or 4444 their content. Where an interface is defined as requiring a 4445 particular system header file all of the data definitions for 4446 that system header file presented here shall be in effect. 4447 4448 This section gives data definitions to promote binary 4449 application portability, not to repeat source interface 4450 definitions available elsewhere. System providers and 4451 application developers should use this ABI to supplement - not 4452 to replace - source interface definition specifications. 4453 4454 This specification uses the ISO C (1999) C Language as the 4455 reference programming language, and data definitions are 4456 specified in ISO C format. The C language is used here as a 4457 convenient notation. Using a C language description of these 4458 data objects does not preclude their use by other programming 4459 languages. 4460 __________________________________________________________ 4461 4462 12.2.1. zlib.h 4463 4464 /* 4465 * This header is architecture neutral 4466 * Please refer to the generic specification for details 4467 */ 4468 __________________________________________________________ 4469 4470 12.3. Interfaces for libncurses 4471 4472 Table 12-2 defines the library name and shared object name for 4473 the libncurses library 4474 4475 Table 12-2. libncurses Definition 4476 Library: libncurses 4477 SONAME: libncurses.so.5 4478 __________________________________________________________ 4479 4480 12.3.1. Curses 4481 __________________________________________________________ 4482 4483 12.3.1.1. Interfaces for Curses 4484 4485 No external functions are defined for libncurses - Curses in 4486 this part of the specification. See also the generic 4487 specification. 4488 __________________________________________________________ 4489 4490 12.4. Data Definitions for libncurses 4491 4492 This section defines global identifiers and their values that 4493 are associated with interfaces contained in libncurses. These 4494 definitions are organized into groups that correspond to system 4495 headers. This convention is used as a convenience for the 4496 reader, and does not imply the existence of these headers, or 4497 their content. Where an interface is defined as requiring a 4498 particular system header file all of the data definitions for 4499 that system header file presented here shall be in effect. 4500 4501 This section gives data definitions to promote binary 4502 application portability, not to repeat source interface 4503 definitions available elsewhere. System providers and 4504 application developers should use this ABI to supplement - not 4505 to replace - source interface definition specifications. 4506 4507 This specification uses the ISO C (1999) C Language as the 4508 reference programming language, and data definitions are 4509 specified in ISO C format. The C language is used here as a 4510 convenient notation. Using a C language description of these 4511 data objects does not preclude their use by other programming 4512 languages. 4513 __________________________________________________________ 4514 4515 12.4.1. curses.h 4516 4517 /* 4518 * This header is architecture neutral 4519 * Please refer to the generic specification for details 4520 */ 4521 __________________________________________________________ 4522 4523 12.5. Interfaces for libutil 4524 4525 Table 12-3 defines the library name and shared object name for 4526 the libutil library 4527 4528 Table 12-3. libutil Definition 4529 Library: libutil 4530 SONAME: libutil.so.1 4531 4532 The behavior of the interfaces in this library is specified by 4533 the following specifications: 4534 4535 [LSB] ISO/IEC 23360 Part 1 4536 __________________________________________________________ 4537 4538 12.5.1. Utility Functions 4539 __________________________________________________________ 4540 4541 12.5.1.1. Interfaces for Utility Functions 4542 4543 An LSB conforming implementation shall provide the architecture 4544 specific functions for Utility Functions specified in Table 4545 12-4, with the full mandatory functionality as described in the 4546 referenced underlying specification. 4547 4548 Table 12-4. libutil - Utility Functions Function Interfaces 4549 forkpty(GLIBC_2.0) [LSB] login(GLIBC_2.0) [LSB] 4550 login_tty(GLIBC_2.0) [LSB] logout(GLIBC_2.0) [LSB] 4551 logwtmp(GLIBC_2.0) [LSB] openpty(GLIBC_2.0) [LSB] 4552 4553 V. Package Format and Installation 4554 4555 Table of Contents 4556 13. Software Installation 4557 4558 13.1. Package Dependencies 4559 13.2. Package Architecture Considerations 4560 __________________________________________________________ 4561 4562 Chapter 13. Software Installation 4563 __________________________________________________________ 4564 4565 13.1. Package Dependencies 4566 4567 The LSB runtime environment shall provde the following 4568 dependencies. 4569 4570 lsb-core-ppc32 4571 4572 This dependency is used to indicate that the application is 4573 dependent on features contained in the LSB-Core specification. 4574 4575 This dependency shall have a version of 3.0. 4576 4577 Other LSB modules may add additional dependencies; such 4578 dependencies shall have the format lsb-module-ppc32. 4579 __________________________________________________________ 4580 4581 13.2. Package Architecture Considerations 4582 4583 All packages must specify an architecture of ppc. A LSB runtime 4584 environment must accept an architecture of ppc even if the 4585 native architecture is different. 4586 4587 The archnum value in the Lead Section shall be 0x0005. 4588 __________________________________________________________ 4589 4590 Appendix A. Alphabetical Listing of Interfaces 4591 __________________________________________________________ 4592 4593 A.1. libc 4594 4595 The behavior of the interfaces in this library is specified by 4596 the following Standards. 4597 4598 Large File Support [LFS] 4599 ISO/IEC 23360 Part 1 [LSB] 4600 SUSv2 [SUSv2] 4601 ISO POSIX (2003) [SUSv3] 4602 SVID Issue 3 [SVID.3] 4603 SVID Issue 4 [SVID.4] 4604 4605 Table A-1. libc Function Interfaces 4606 _Exit(GLIBC_2.1.1)[SUSv3] getsid(GLIBC_2.0)[SUSv3] 4607 setutent(GLIBC_2.0)[LSB] 4608 _IO_feof(GLIBC_2.0)[LSB] getsockname(GLIBC_2.0)[SUSv3] 4609 setutxent(GLIBC_2.1)[SUSv3] 4610 _IO_getc(GLIBC_2.0)[LSB] getsockopt(GLIBC_2.0)[LSB] 4611 setvbuf(GLIBC_2.0)[SUSv3] 4612 _IO_putc(GLIBC_2.0)[LSB] getsubopt(GLIBC_2.0)[SUSv3] 4613 shmat(GLIBC_2.0)[SUSv3] 4614 _IO_puts(GLIBC_2.0)[LSB] gettext(GLIBC_2.0)[LSB] 4615 shmctl(GLIBC_2.2)[SUSv3] 4616 __assert_fail(GLIBC_2.0)[LSB] gettimeofday(GLIBC_2.0)[SUSv3] 4617 shmdt(GLIBC_2.0)[SUSv3] 4618 __ctype_get_mb_cur_max(GLIBC_2.0)[LSB] getuid(GLIBC_2.0)[SUSv3] 4619 shmget(GLIBC_2.0)[SUSv3] 4620 __cxa_atexit(GLIBC_2.1.3)[LSB] getutent(GLIBC_2.0)[LSB] 4621 shutdown(GLIBC_2.0)[SUSv3] 4622 __cxa_finalize(GLIBC_2.1.3)[LSB] getutent_r(GLIBC_2.0)[LSB] 4623 sigaction(GLIBC_2.0)[SUSv3] 4624 __errno_location(GLIBC_2.0)[LSB] getutxent(GLIBC_2.1)[SUSv3] 4625 sigaddset(GLIBC_2.0)[SUSv3] 4626 __fpending(GLIBC_2.2)[LSB] getutxid(GLIBC_2.1)[SUSv3] 4627 sigaltstack(GLIBC_2.0)[SUSv3] 4628 __fxstat(GLIBC_2.0)[LSB] getutxline(GLIBC_2.1)[SUSv3] 4629 sigandset(GLIBC_2.0)[LSB] 4630 __fxstat64(GLIBC_2.2)[LSB] getw(GLIBC_2.0)[SUSv2] 4631 sigdelset(GLIBC_2.0)[SUSv3] 4632 __getpagesize(GLIBC_2.0)[LSB] getwc(GLIBC_2.2)[SUSv3] 4633 sigemptyset(GLIBC_2.0)[SUSv3] 4634 __getpgid(GLIBC_2.0)[LSB] getwchar(GLIBC_2.2)[SUSv3] 4635 sigfillset(GLIBC_2.0)[SUSv3] 4636 __h_errno_location(GLIBC_2.0)[LSB] getwd(GLIBC_2.0)[SUSv3] 4637 sighold(GLIBC_2.1)[SUSv3] 4638 __isinf(GLIBC_2.0)[LSB] glob(GLIBC_2.0)[SUSv3] 4639 sigignore(GLIBC_2.1)[SUSv3] 4640 __isinff(GLIBC_2.0)[LSB] glob64(GLIBC_2.2)[LSB] 4641 siginterrupt(GLIBC_2.0)[SUSv3] 4642 __isinfl(GLIBC_2.0)[LSB] globfree(GLIBC_2.0)[SUSv3] 4643 sigisemptyset(GLIBC_2.0)[LSB] 4644 __isnan(GLIBC_2.0)[LSB] globfree64(GLIBC_2.1)[LSB] 4645 sigismember(GLIBC_2.0)[SUSv3] 4646 __isnanf(GLIBC_2.0)[LSB] gmtime(GLIBC_2.0)[SUSv3] 4647 siglongjmp(GLIBC_2.3.4)[SUSv3] 4648 __isnanl(GLIBC_2.0)[LSB] gmtime_r(GLIBC_2.0)[SUSv3] 4649 signal(GLIBC_2.0)[SUSv3] 4650 __libc_current_sigrtmax(GLIBC_2.1)[LSB] 4651 grantpt(GLIBC_2.1)[SUSv3] sigorset(GLIBC_2.0)[LSB] 4652 __libc_current_sigrtmin(GLIBC_2.1)[LSB] 4653 hcreate(GLIBC_2.0)[SUSv3] sigpause(GLIBC_2.0)[LSB] 4654 __libc_start_main(GLIBC_2.0)[LSB] hdestroy(GLIBC_2.0)[SUSv3] 4655 sigpending(GLIBC_2.0)[SUSv3] 4656 __lxstat(GLIBC_2.0)[LSB] hsearch(GLIBC_2.0)[SUSv3] 4657 sigprocmask(GLIBC_2.0)[SUSv3] 4658 __lxstat64(GLIBC_2.2)[LSB] htonl(GLIBC_2.0)[SUSv3] 4659 sigqueue(GLIBC_2.1)[SUSv3] 4660 __mempcpy(GLIBC_2.0)[LSB] htons(GLIBC_2.0)[SUSv3] 4661 sigrelse(GLIBC_2.1)[SUSv3] 4662 __rawmemchr(GLIBC_2.1)[LSB] iconv(GLIBC_2.1)[SUSv3] 4663 sigreturn(GLIBC_2.0)[LSB] 4664 __sigsetjmp(GLIBC_2.3.4)[LSB] iconv_close(GLIBC_2.1)[SUSv3] 4665 sigset(GLIBC_2.1)[SUSv3] 4666 __stpcpy(GLIBC_2.0)[LSB] iconv_open(GLIBC_2.1)[SUSv3] 4667 sigsuspend(GLIBC_2.0)[SUSv3] 4668 __strdup(GLIBC_2.0)[LSB] if_freenameindex(GLIBC_2.1)[SUSv3] 4669 sigtimedwait(GLIBC_2.1)[SUSv3] 4670 __strtod_internal(GLIBC_2.0)[LSB] 4671 if_indextoname(GLIBC_2.1)[SUSv3] sigwait(GLIBC_2.0)[SUSv3] 4672 __strtof_internal(GLIBC_2.0)[LSB] 4673 if_nameindex(GLIBC_2.1)[SUSv3] sigwaitinfo(GLIBC_2.1)[SUSv3] 4674 __strtok_r(GLIBC_2.0)[LSB] if_nametoindex(GLIBC_2.1)[SUSv3] 4675 sleep(GLIBC_2.0)[SUSv3] 4676 __strtol_internal(GLIBC_2.0)[LSB] imaxabs(GLIBC_2.1.1)[SUSv3] 4677 snprintf(GLIBC_2.0)[SUSv3] 4678 __strtold_internal(GLIBC_2.0)[LSB] imaxdiv(GLIBC_2.1.1)[SUSv3] 4679 sockatmark(GLIBC_2.2.4)[SUSv3] 4680 __strtoll_internal(GLIBC_2.0)[LSB] index(GLIBC_2.0)[SUSv3] 4681 socket(GLIBC_2.0)[SUSv3] 4682 __strtoul_internal(GLIBC_2.0)[LSB] inet_addr(GLIBC_2.0)[SUSv3] 4683 socketpair(GLIBC_2.0)[SUSv3] 4684 __strtoull_internal(GLIBC_2.0)[LSB] inet_aton(GLIBC_2.0)[LSB] 4685 sprintf(GLIBC_2.0)[SUSv3] 4686 __sysconf(GLIBC_2.2)[LSB] inet_ntoa(GLIBC_2.0)[SUSv3] 4687 srand(GLIBC_2.0)[SUSv3] 4688 __sysv_signal(GLIBC_2.0)[LSB] inet_ntop(GLIBC_2.0)[SUSv3] 4689 srand48(GLIBC_2.0)[SUSv3] 4690 __wcstod_internal(GLIBC_2.0)[LSB] inet_pton(GLIBC_2.0)[SUSv3] 4691 srandom(GLIBC_2.0)[SUSv3] 4692 __wcstof_internal(GLIBC_2.0)[LSB] initgroups(GLIBC_2.0)[LSB] 4693 sscanf(GLIBC_2.0)[LSB] 4694 __wcstol_internal(GLIBC_2.0)[LSB] initstate(GLIBC_2.0)[SUSv3] 4695 statfs(GLIBC_2.0)[LSB] 4696 __wcstold_internal(GLIBC_2.0)[LSB] insque(GLIBC_2.0)[SUSv3] 4697 statfs64(GLIBC_2.1)[LSB] 4698 __wcstoul_internal(GLIBC_2.0)[LSB] ioctl(GLIBC_2.0)[LSB] 4699 statvfs(GLIBC_2.1)[SUSv3] 4700 __xmknod(GLIBC_2.0)[LSB] isalnum(GLIBC_2.0)[SUSv3] 4701 statvfs64(GLIBC_2.1)[LFS] 4702 __xpg_basename(GLIBC_2.0)[LSB] isalpha(GLIBC_2.0)[SUSv3] 4703 stime(GLIBC_2.0)[LSB] 4704 __xpg_sigpause(GLIBC_2.2)[LSB] isascii(GLIBC_2.0)[SUSv3] 4705 stpcpy(GLIBC_2.0)[LSB] 4706 __xpg_strerror_r(GLIBC_2.3.4)[LSB] isatty(GLIBC_2.0)[SUSv3] 4707 stpncpy(GLIBC_2.0)[LSB] 4708 __xstat(GLIBC_2.0)[LSB] isblank(GLIBC_2.0)[SUSv3] 4709 strcasecmp(GLIBC_2.0)[SUSv3] 4710 __xstat64(GLIBC_2.2)[LSB] iscntrl(GLIBC_2.0)[SUSv3] 4711 strcasestr(GLIBC_2.1)[LSB] 4712 _exit(GLIBC_2.0)[SUSv3] isdigit(GLIBC_2.0)[SUSv3] 4713 strcat(GLIBC_2.0)[SUSv3] 4714 _longjmp(GLIBC_2.3.4)[SUSv3] isgraph(GLIBC_2.0)[SUSv3] 4715 strchr(GLIBC_2.0)[SUSv3] 4716 _setjmp(GLIBC_2.3.4)[SUSv3] islower(GLIBC_2.0)[SUSv3] 4717 strcmp(GLIBC_2.0)[SUSv3] 4718 _tolower(GLIBC_2.0)[SUSv3] isprint(GLIBC_2.0)[SUSv3] 4719 strcoll(GLIBC_2.0)[SUSv3] 4720 _toupper(GLIBC_2.0)[SUSv3] ispunct(GLIBC_2.0)[SUSv3] 4721 strcpy(GLIBC_2.0)[SUSv3] 4722 a64l(GLIBC_2.0)[SUSv3] isspace(GLIBC_2.0)[SUSv3] 4723 strcspn(GLIBC_2.0)[SUSv3] 4724 abort(GLIBC_2.0)[SUSv3] isupper(GLIBC_2.0)[SUSv3] 4725 strdup(GLIBC_2.0)[SUSv3] 4726 abs(GLIBC_2.0)[SUSv3] iswalnum(GLIBC_2.0)[SUSv3] 4727 strerror(GLIBC_2.0)[SUSv3] 4728 accept(GLIBC_2.0)[SUSv3] iswalpha(GLIBC_2.0)[SUSv3] 4729 strerror_r(GLIBC_2.0)[LSB] 4730 access(GLIBC_2.0)[SUSv3] iswblank(GLIBC_2.1)[SUSv3] 4731 strfmon(GLIBC_2.0)[SUSv3] 4732 acct(GLIBC_2.0)[LSB] iswcntrl(GLIBC_2.0)[SUSv3] 4733 strftime(GLIBC_2.0)[SUSv3] 4734 adjtime(GLIBC_2.0)[LSB] iswctype(GLIBC_2.0)[SUSv3] 4735 strlen(GLIBC_2.0)[SUSv3] 4736 alarm(GLIBC_2.0)[SUSv3] iswdigit(GLIBC_2.0)[SUSv3] 4737 strncasecmp(GLIBC_2.0)[SUSv3] 4738 asctime(GLIBC_2.0)[SUSv3] iswgraph(GLIBC_2.0)[SUSv3] 4739 strncat(GLIBC_2.0)[SUSv3] 4740 asctime_r(GLIBC_2.0)[SUSv3] iswlower(GLIBC_2.0)[SUSv3] 4741 strncmp(GLIBC_2.0)[SUSv3] 4742 asprintf(GLIBC_2.0)[LSB] iswprint(GLIBC_2.0)[SUSv3] 4743 strncpy(GLIBC_2.0)[SUSv3] 4744 atof(GLIBC_2.0)[SUSv3] iswpunct(GLIBC_2.0)[SUSv3] 4745 strndup(GLIBC_2.0)[LSB] 4746 atoi(GLIBC_2.0)[SUSv3] iswspace(GLIBC_2.0)[SUSv3] 4747 strnlen(GLIBC_2.0)[LSB] 4748 atol(GLIBC_2.0)[SUSv3] iswupper(GLIBC_2.0)[SUSv3] 4749 strpbrk(GLIBC_2.0)[SUSv3] 4750 atoll(GLIBC_2.0)[SUSv3] iswxdigit(GLIBC_2.0)[SUSv3] 4751 strptime(GLIBC_2.0)[LSB] 4752 authnone_create(GLIBC_2.0)[SVID.4] isxdigit(GLIBC_2.0)[SUSv3] 4753 strrchr(GLIBC_2.0)[SUSv3] 4754 basename(GLIBC_2.0)[LSB] jrand48(GLIBC_2.0)[SUSv3] 4755 strsep(GLIBC_2.0)[LSB] 4756 bcmp(GLIBC_2.0)[SUSv3] key_decryptsession(GLIBC_2.1)[SVID.3] 4757 strsignal(GLIBC_2.0)[LSB] 4758 bcopy(GLIBC_2.0)[SUSv3] kill(GLIBC_2.0)[LSB] 4759 strspn(GLIBC_2.0)[SUSv3] 4760 bind(GLIBC_2.0)[SUSv3] killpg(GLIBC_2.0)[SUSv3] 4761 strstr(GLIBC_2.0)[SUSv3] 4762 bind_textdomain_codeset(GLIBC_2.2)[LSB] l64a(GLIBC_2.0)[SUSv3] 4763 strtod(GLIBC_2.0)[SUSv3] 4764 bindresvport(GLIBC_2.0)[LSB] labs(GLIBC_2.0)[SUSv3] 4765 strtof(GLIBC_2.0)[SUSv3] 4766 bindtextdomain(GLIBC_2.0)[LSB] lchown(GLIBC_2.0)[SUSv3] 4767 strtoimax(GLIBC_2.1)[SUSv3] 4768 brk(GLIBC_2.0)[SUSv2] lcong48(GLIBC_2.0)[SUSv3] 4769 strtok(GLIBC_2.0)[SUSv3] 4770 bsd_signal(GLIBC_2.0)[SUSv3] ldiv(GLIBC_2.0)[SUSv3] 4771 strtok_r(GLIBC_2.0)[SUSv3] 4772 bsearch(GLIBC_2.0)[SUSv3] lfind(GLIBC_2.0)[SUSv3] 4773 strtol(GLIBC_2.0)[SUSv3] 4774 btowc(GLIBC_2.0)[SUSv3] link(GLIBC_2.0)[LSB] 4775 strtold(GLIBC_2.0)[SUSv3] 4776 bzero(GLIBC_2.0)[SUSv3] listen(GLIBC_2.0)[SUSv3] 4777 strtoll(GLIBC_2.0)[SUSv3] 4778 calloc(GLIBC_2.0)[SUSv3] llabs(GLIBC_2.0)[SUSv3] 4779 strtoq(GLIBC_2.0)[LSB] 4780 catclose(GLIBC_2.0)[SUSv3] lldiv(GLIBC_2.0)[SUSv3] 4781 strtoul(GLIBC_2.0)[SUSv3] 4782 catgets(GLIBC_2.0)[SUSv3] localeconv(GLIBC_2.2)[SUSv3] 4783 strtoull(GLIBC_2.0)[SUSv3] 4784 catopen(GLIBC_2.0)[SUSv3] localtime(GLIBC_2.0)[SUSv3] 4785 strtoumax(GLIBC_2.1)[SUSv3] 4786 cfgetispeed(GLIBC_2.0)[SUSv3] localtime_r(GLIBC_2.0)[SUSv3] 4787 strtouq(GLIBC_2.0)[LSB] 4788 cfgetospeed(GLIBC_2.0)[SUSv3] lockf(GLIBC_2.0)[SUSv3] 4789 strxfrm(GLIBC_2.0)[SUSv3] 4790 cfmakeraw(GLIBC_2.0)[LSB] lockf64(GLIBC_2.1)[LFS] 4791 svc_getreqset(GLIBC_2.0)[SVID.3] 4792 cfsetispeed(GLIBC_2.0)[SUSv3] longjmp(GLIBC_2.3.4)[SUSv3] 4793 svc_register(GLIBC_2.0)[LSB] 4794 cfsetospeed(GLIBC_2.0)[SUSv3] lrand48(GLIBC_2.0)[SUSv3] 4795 svc_run(GLIBC_2.0)[LSB] 4796 cfsetspeed(GLIBC_2.0)[LSB] lsearch(GLIBC_2.0)[SUSv3] 4797 svc_sendreply(GLIBC_2.0)[LSB] 4798 chdir(GLIBC_2.0)[SUSv3] lseek(GLIBC_2.0)[SUSv3] 4799 svcerr_auth(GLIBC_2.0)[SVID.3] 4800 chmod(GLIBC_2.0)[SUSv3] makecontext(GLIBC_2.3.4)[SUSv3] 4801 svcerr_decode(GLIBC_2.0)[SVID.3] 4802 chown(GLIBC_2.1)[SUSv3] malloc(GLIBC_2.0)[SUSv3] 4803 svcerr_noproc(GLIBC_2.0)[SVID.3] 4804 chroot(GLIBC_2.0)[SUSv2] mblen(GLIBC_2.0)[SUSv3] 4805 svcerr_noprog(GLIBC_2.0)[SVID.3] 4806 clearerr(GLIBC_2.0)[SUSv3] mbrlen(GLIBC_2.0)[SUSv3] 4807 svcerr_progvers(GLIBC_2.0)[SVID.3] 4808 clnt_create(GLIBC_2.0)[SVID.4] mbrtowc(GLIBC_2.0)[SUSv3] 4809 svcerr_systemerr(GLIBC_2.0)[SVID.3] 4810 clnt_pcreateerror(GLIBC_2.0)[SVID.4] mbsinit(GLIBC_2.0)[SUSv3] 4811 svcerr_weakauth(GLIBC_2.0)[SVID.3] 4812 clnt_perrno(GLIBC_2.0)[SVID.4] mbsnrtowcs(GLIBC_2.0)[LSB] 4813 svctcp_create(GLIBC_2.0)[LSB] 4814 clnt_perror(GLIBC_2.0)[SVID.4] mbsrtowcs(GLIBC_2.0)[SUSv3] 4815 svcudp_create(GLIBC_2.0)[LSB] 4816 clnt_spcreateerror(GLIBC_2.0)[SVID.4] 4817 mbstowcs(GLIBC_2.0)[SUSv3] swab(GLIBC_2.0)[SUSv3] 4818 clnt_sperrno(GLIBC_2.0)[SVID.4] mbtowc(GLIBC_2.0)[SUSv3] 4819 swapcontext(GLIBC_2.3.4)[SUSv3] 4820 clnt_sperror(GLIBC_2.0)[SVID.4] memccpy(GLIBC_2.0)[SUSv3] 4821 swprintf(GLIBC_2.2)[SUSv3] 4822 clock(GLIBC_2.0)[SUSv3] memchr(GLIBC_2.0)[SUSv3] 4823 swscanf(GLIBC_2.2)[LSB] 4824 close(GLIBC_2.0)[SUSv3] memcmp(GLIBC_2.0)[SUSv3] 4825 symlink(GLIBC_2.0)[SUSv3] 4826 closedir(GLIBC_2.0)[SUSv3] memcpy(GLIBC_2.0)[SUSv3] 4827 sync(GLIBC_2.0)[SUSv3] 4828 closelog(GLIBC_2.0)[SUSv3] memmem(GLIBC_2.0)[LSB] 4829 sysconf(GLIBC_2.0)[LSB] 4830 confstr(GLIBC_2.0)[SUSv3] memmove(GLIBC_2.0)[SUSv3] 4831 syslog(GLIBC_2.0)[SUSv3] 4832 connect(GLIBC_2.0)[SUSv3] memrchr(GLIBC_2.2)[LSB] 4833 system(GLIBC_2.0)[LSB] 4834 creat(GLIBC_2.0)[SUSv3] memset(GLIBC_2.0)[SUSv3] 4835 tcdrain(GLIBC_2.0)[SUSv3] 4836 creat64(GLIBC_2.1)[LFS] mkdir(GLIBC_2.0)[SUSv3] 4837 tcflow(GLIBC_2.0)[SUSv3] 4838 ctermid(GLIBC_2.0)[SUSv3] mkfifo(GLIBC_2.0)[SUSv3] 4839 tcflush(GLIBC_2.0)[SUSv3] 4840 ctime(GLIBC_2.0)[SUSv3] mkstemp(GLIBC_2.0)[SUSv3] 4841 tcgetattr(GLIBC_2.0)[SUSv3] 4842 ctime_r(GLIBC_2.0)[SUSv3] mkstemp64(GLIBC_2.2)[LFS] 4843 tcgetpgrp(GLIBC_2.0)[SUSv3] 4844 cuserid(GLIBC_2.0)[SUSv2] mktemp(GLIBC_2.0)[SUSv3] 4845 tcgetsid(GLIBC_2.1)[SUSv3] 4846 daemon(GLIBC_2.0)[LSB] mktime(GLIBC_2.0)[SUSv3] 4847 tcsendbreak(GLIBC_2.0)[SUSv3] 4848 dcgettext(GLIBC_2.0)[LSB] mlock(GLIBC_2.0)[SUSv3] 4849 tcsetattr(GLIBC_2.0)[SUSv3] 4850 dcngettext(GLIBC_2.2)[LSB] mlockall(GLIBC_2.0)[SUSv3] 4851 tcsetpgrp(GLIBC_2.0)[SUSv3] 4852 dgettext(GLIBC_2.0)[LSB] mmap(GLIBC_2.0)[SUSv3] 4853 tdelete(GLIBC_2.0)[SUSv3] 4854 difftime(GLIBC_2.0)[SUSv3] mmap64(GLIBC_2.1)[LFS] 4855 telldir(GLIBC_2.0)[SUSv3] 4856 dirname(GLIBC_2.0)[SUSv3] mprotect(GLIBC_2.0)[SUSv3] 4857 tempnam(GLIBC_2.0)[SUSv3] 4858 div(GLIBC_2.0)[SUSv3] mrand48(GLIBC_2.0)[SUSv3] 4859 textdomain(GLIBC_2.0)[LSB] 4860 dngettext(GLIBC_2.2)[LSB] mremap(GLIBC_2.0)[LSB] 4861 tfind(GLIBC_2.0)[SUSv3] 4862 drand48(GLIBC_2.0)[SUSv3] msgctl(GLIBC_2.2)[SUSv3] 4863 time(GLIBC_2.0)[SUSv3] 4864 dup(GLIBC_2.0)[SUSv3] msgget(GLIBC_2.0)[SUSv3] 4865 times(GLIBC_2.0)[SUSv3] 4866 dup2(GLIBC_2.0)[SUSv3] msgrcv(GLIBC_2.0)[SUSv3] 4867 tmpfile(GLIBC_2.1)[SUSv3] 4868 ecvt(GLIBC_2.0)[SUSv3] msgsnd(GLIBC_2.0)[SUSv3] 4869 tmpfile64(GLIBC_2.1)[LFS] 4870 endgrent(GLIBC_2.0)[SUSv3] msync(GLIBC_2.0)[SUSv3] 4871 tmpnam(GLIBC_2.0)[SUSv3] 4872 endprotoent(GLIBC_2.0)[SUSv3] munlock(GLIBC_2.0)[SUSv3] 4873 toascii(GLIBC_2.0)[SUSv3] 4874 endpwent(GLIBC_2.0)[SUSv3] munlockall(GLIBC_2.0)[SUSv3] 4875 tolower(GLIBC_2.0)[SUSv3] 4876 endservent(GLIBC_2.0)[SUSv3] munmap(GLIBC_2.0)[SUSv3] 4877 toupper(GLIBC_2.0)[SUSv3] 4878 endutent(GLIBC_2.0)[LSB] nanosleep(GLIBC_2.0)[SUSv3] 4879 towctrans(GLIBC_2.0)[SUSv3] 4880 endutxent(GLIBC_2.1)[SUSv3] nftw(GLIBC_2.3.3)[SUSv3] 4881 towlower(GLIBC_2.0)[SUSv3] 4882 erand48(GLIBC_2.0)[SUSv3] nftw64(GLIBC_2.3.3)[LFS] 4883 towupper(GLIBC_2.0)[SUSv3] 4884 err(GLIBC_2.0)[LSB] ngettext(GLIBC_2.2)[LSB] 4885 truncate(GLIBC_2.0)[SUSv3] 4886 error(GLIBC_2.0)[LSB] nice(GLIBC_2.0)[SUSv3] 4887 truncate64(GLIBC_2.1)[LFS] 4888 errx(GLIBC_2.0)[LSB] nl_langinfo(GLIBC_2.0)[SUSv3] 4889 tsearch(GLIBC_2.0)[SUSv3] 4890 execl(GLIBC_2.0)[SUSv3] nrand48(GLIBC_2.0)[SUSv3] 4891 ttyname(GLIBC_2.0)[SUSv3] 4892 execle(GLIBC_2.0)[SUSv3] ntohl(GLIBC_2.0)[SUSv3] 4893 ttyname_r(GLIBC_2.0)[SUSv3] 4894 execlp(GLIBC_2.0)[SUSv3] ntohs(GLIBC_2.0)[SUSv3] 4895 twalk(GLIBC_2.0)[SUSv3] 4896 execv(GLIBC_2.0)[SUSv3] open(GLIBC_2.0)[SUSv3] 4897 tzset(GLIBC_2.0)[SUSv3] 4898 execve(GLIBC_2.0)[SUSv3] opendir(GLIBC_2.0)[SUSv3] 4899 ualarm(GLIBC_2.0)[SUSv3] 4900 execvp(GLIBC_2.0)[SUSv3] openlog(GLIBC_2.0)[SUSv3] 4901 ulimit(GLIBC_2.0)[SUSv3] 4902 exit(GLIBC_2.0)[SUSv3] pathconf(GLIBC_2.0)[SUSv3] 4903 umask(GLIBC_2.0)[SUSv3] 4904 fchdir(GLIBC_2.0)[SUSv3] pause(GLIBC_2.0)[SUSv3] 4905 uname(GLIBC_2.0)[SUSv3] 4906 fchmod(GLIBC_2.0)[SUSv3] pclose(GLIBC_2.1)[SUSv3] 4907 ungetc(GLIBC_2.0)[SUSv3] 4908 fchown(GLIBC_2.0)[SUSv3] perror(GLIBC_2.0)[SUSv3] 4909 ungetwc(GLIBC_2.2)[SUSv3] 4910 fclose(GLIBC_2.1)[SUSv3] pipe(GLIBC_2.0)[SUSv3] 4911 unlink(GLIBC_2.0)[LSB] 4912 fcntl(GLIBC_2.0)[LSB] pmap_getport(GLIBC_2.0)[LSB] 4913 unlockpt(GLIBC_2.1)[SUSv3] 4914 fcvt(GLIBC_2.0)[SUSv3] pmap_set(GLIBC_2.0)[LSB] 4915 unsetenv(GLIBC_2.0)[SUSv3] 4916 fdatasync(GLIBC_2.0)[SUSv3] pmap_unset(GLIBC_2.0)[LSB] 4917 usleep(GLIBC_2.0)[SUSv3] 4918 fdopen(GLIBC_2.1)[SUSv3] poll(GLIBC_2.0)[SUSv3] 4919 utime(GLIBC_2.0)[SUSv3] 4920 feof(GLIBC_2.0)[SUSv3] popen(GLIBC_2.1)[SUSv3] 4921 utimes(GLIBC_2.0)[SUSv3] 4922 ferror(GLIBC_2.0)[SUSv3] posix_fadvise(GLIBC_2.2)[SUSv3] 4923 utmpname(GLIBC_2.0)[LSB] 4924 fflush(GLIBC_2.0)[SUSv3] posix_fadvise64(GLIBC_2.3.3)[LSB] 4925 vasprintf(GLIBC_2.0)[LSB] 4926 fflush_unlocked(GLIBC_2.0)[LSB] 4927 posix_fallocate(GLIBC_2.2)[SUSv3] vdprintf(GLIBC_2.0)[LSB] 4928 ffs(GLIBC_2.0)[SUSv3] posix_fallocate64(GLIBC_2.3.3)[LSB] 4929 verrx(GLIBC_2.0)[LSB] 4930 fgetc(GLIBC_2.0)[SUSv3] posix_madvise(GLIBC_2.2)[SUSv3] 4931 vfork(GLIBC_2.0)[SUSv3] 4932 fgetpos(GLIBC_2.2)[SUSv3] posix_memalign(GLIBC_2.2)[SUSv3] 4933 vfprintf(GLIBC_2.0)[SUSv3] 4934 fgetpos64(GLIBC_2.2)[LFS] posix_openpt(GLIBC_2.2.1)[SUSv3] 4935 vfscanf(GLIBC_2.0)[LSB] 4936 fgets(GLIBC_2.0)[SUSv3] posix_spawn(GLIBC_2.2)[SUSv3] 4937 vfwprintf(GLIBC_2.2)[SUSv3] 4938 fgetwc(GLIBC_2.2)[SUSv3] 4939 posix_spawn_file_actions_addclose(GLIBC_2.2)[SUSv3] 4940 vfwscanf(GLIBC_2.2)[LSB] 4941 fgetwc_unlocked(GLIBC_2.2)[LSB] 4942 posix_spawn_file_actions_adddup2(GLIBC_2.2)[SUSv3] 4943 vprintf(GLIBC_2.0)[SUSv3] 4944 fgetws(GLIBC_2.2)[SUSv3] 4945 posix_spawn_file_actions_addopen(GLIBC_2.2)[SUSv3] 4946 vscanf(GLIBC_2.0)[LSB] 4947 fileno(GLIBC_2.0)[SUSv3] 4948 posix_spawn_file_actions_destroy(GLIBC_2.2)[SUSv3] 4949 vsnprintf(GLIBC_2.0)[SUSv3] 4950 flock(GLIBC_2.0)[LSB] 4951 posix_spawn_file_actions_init(GLIBC_2.2)[SUSv3] 4952 vsprintf(GLIBC_2.0)[SUSv3] 4953 flockfile(GLIBC_2.0)[SUSv3] 4954 posix_spawnattr_destroy(GLIBC_2.2)[SUSv3] 4955 vsscanf(GLIBC_2.0)[LSB] 4956 fmtmsg(GLIBC_2.1)[SUSv3] 4957 posix_spawnattr_getflags(GLIBC_2.2)[SUSv3] 4958 vswprintf(GLIBC_2.2)[SUSv3] 4959 fnmatch(GLIBC_2.2.3)[SUSv3] 4960 posix_spawnattr_getpgroup(GLIBC_2.2)[SUSv3] 4961 vswscanf(GLIBC_2.2)[LSB] 4962 fopen(GLIBC_2.1)[SUSv3] 4963 posix_spawnattr_getschedparam(GLIBC_2.2)[SUSv3] 4964 vsyslog(GLIBC_2.0)[LSB] 4965 fopen64(GLIBC_2.1)[LFS] 4966 posix_spawnattr_getschedpolicy(GLIBC_2.2)[SUSv3] 4967 vwprintf(GLIBC_2.2)[SUSv3] 4968 fork(GLIBC_2.0)[SUSv3] 4969 posix_spawnattr_getsigdefault(GLIBC_2.2)[SUSv3] 4970 vwscanf(GLIBC_2.2)[LSB] 4971 fpathconf(GLIBC_2.0)[SUSv3] 4972 posix_spawnattr_getsigmask(GLIBC_2.2)[SUSv3] 4973 wait(GLIBC_2.0)[SUSv3] 4974 fprintf(GLIBC_2.0)[SUSv3] 4975 posix_spawnattr_init(GLIBC_2.2)[SUSv3] wait4(GLIBC_2.0)[LSB] 4976 fputc(GLIBC_2.0)[SUSv3] 4977 posix_spawnattr_setflags(GLIBC_2.2)[SUSv3] 4978 waitid(GLIBC_2.1)[SUSv3] 4979 fputs(GLIBC_2.0)[SUSv3] 4980 posix_spawnattr_setpgroup(GLIBC_2.2)[SUSv3] 4981 waitpid(GLIBC_2.0)[LSB] 4982 fputwc(GLIBC_2.2)[SUSv3] 4983 posix_spawnattr_setschedparam(GLIBC_2.2)[SUSv3] 4984 warn(GLIBC_2.0)[LSB] 4985 fputws(GLIBC_2.2)[SUSv3] 4986 posix_spawnattr_setschedpolicy(GLIBC_2.2)[SUSv3] 4987 warnx(GLIBC_2.0)[LSB] 4988 fread(GLIBC_2.0)[SUSv3] 4989 posix_spawnattr_setsigdefault(GLIBC_2.2)[SUSv3] 4990 wcpcpy(GLIBC_2.0)[LSB] 4991 free(GLIBC_2.0)[SUSv3] 4992 posix_spawnattr_setsigmask(GLIBC_2.2)[SUSv3] 4993 wcpncpy(GLIBC_2.0)[LSB] 4994 freeaddrinfo(GLIBC_2.0)[SUSv3] posix_spawnp(GLIBC_2.2)[SUSv3] 4995 wcrtomb(GLIBC_2.0)[SUSv3] 4996 freopen(GLIBC_2.0)[SUSv3] printf(GLIBC_2.0)[SUSv3] 4997 wcscasecmp(GLIBC_2.1)[LSB] 4998 freopen64(GLIBC_2.1)[LFS] pselect(GLIBC_2.0)[SUSv3] 4999 wcscat(GLIBC_2.0)[SUSv3] 5000 fscanf(GLIBC_2.0)[LSB] psignal(GLIBC_2.0)[LSB] 5001 wcschr(GLIBC_2.0)[SUSv3] 5002 fseek(GLIBC_2.0)[SUSv3] ptsname(GLIBC_2.1)[SUSv3] 5003 wcscmp(GLIBC_2.0)[SUSv3] 5004 fseeko(GLIBC_2.1)[SUSv3] putc(GLIBC_2.0)[SUSv3] 5005 wcscoll(GLIBC_2.0)[SUSv3] 5006 fseeko64(GLIBC_2.1)[LFS] putc_unlocked(GLIBC_2.0)[SUSv3] 5007 wcscpy(GLIBC_2.0)[SUSv3] 5008 fsetpos(GLIBC_2.2)[SUSv3] putchar(GLIBC_2.0)[SUSv3] 5009 wcscspn(GLIBC_2.0)[SUSv3] 5010 fsetpos64(GLIBC_2.2)[LFS] putchar_unlocked(GLIBC_2.0)[SUSv3] 5011 wcsdup(GLIBC_2.0)[LSB] 5012 fstatfs(GLIBC_2.0)[LSB] putenv(GLIBC_2.0)[SUSv3] 5013 wcsftime(GLIBC_2.2)[SUSv3] 5014 fstatfs64(GLIBC_2.1)[LSB] puts(GLIBC_2.0)[SUSv3] 5015 wcslen(GLIBC_2.0)[SUSv3] 5016 fstatvfs(GLIBC_2.1)[SUSv3] pututxline(GLIBC_2.1)[SUSv3] 5017 wcsncasecmp(GLIBC_2.1)[LSB] 5018 fstatvfs64(GLIBC_2.1)[LFS] putw(GLIBC_2.0)[SUSv2] 5019 wcsncat(GLIBC_2.0)[SUSv3] 5020 fsync(GLIBC_2.0)[SUSv3] putwc(GLIBC_2.2)[SUSv3] 5021 wcsncmp(GLIBC_2.0)[SUSv3] 5022 ftell(GLIBC_2.0)[SUSv3] putwchar(GLIBC_2.2)[SUSv3] 5023 wcsncpy(GLIBC_2.0)[SUSv3] 5024 ftello(GLIBC_2.1)[SUSv3] qsort(GLIBC_2.0)[SUSv3] 5025 wcsnlen(GLIBC_2.1)[LSB] 5026 ftello64(GLIBC_2.1)[LFS] raise(GLIBC_2.0)[SUSv3] 5027 wcsnrtombs(GLIBC_2.0)[LSB] 5028 ftime(GLIBC_2.0)[SUSv3] rand(GLIBC_2.0)[SUSv3] 5029 wcspbrk(GLIBC_2.0)[SUSv3] 5030 ftok(GLIBC_2.0)[SUSv3] rand_r(GLIBC_2.0)[SUSv3] 5031 wcsrchr(GLIBC_2.0)[SUSv3] 5032 ftruncate(GLIBC_2.0)[SUSv3] random(GLIBC_2.0)[SUSv3] 5033 wcsrtombs(GLIBC_2.0)[SUSv3] 5034 ftruncate64(GLIBC_2.1)[LFS] read(GLIBC_2.0)[SUSv3] 5035 wcsspn(GLIBC_2.0)[SUSv3] 5036 ftrylockfile(GLIBC_2.0)[SUSv3] readdir(GLIBC_2.0)[SUSv3] 5037 wcsstr(GLIBC_2.0)[SUSv3] 5038 ftw(GLIBC_2.0)[SUSv3] readdir64(GLIBC_2.2)[LFS] 5039 wcstod(GLIBC_2.0)[SUSv3] 5040 ftw64(GLIBC_2.1)[LFS] readdir64_r(GLIBC_2.2)[LSB] 5041 wcstof(GLIBC_2.0)[SUSv3] 5042 funlockfile(GLIBC_2.0)[SUSv3] readdir_r(GLIBC_2.0)[SUSv3] 5043 wcstoimax(GLIBC_2.1)[SUSv3] 5044 fwide(GLIBC_2.2)[SUSv3] readlink(GLIBC_2.0)[SUSv3] 5045 wcstok(GLIBC_2.0)[SUSv3] 5046 fwprintf(GLIBC_2.2)[SUSv3] readv(GLIBC_2.0)[SUSv3] 5047 wcstol(GLIBC_2.0)[SUSv3] 5048 fwrite(GLIBC_2.0)[SUSv3] realloc(GLIBC_2.0)[SUSv3] 5049 wcstold(GLIBC_2.0)[SUSv3] 5050 fwscanf(GLIBC_2.2)[LSB] realpath(GLIBC_2.3)[SUSv3] 5051 wcstoll(GLIBC_2.1)[SUSv3] 5052 gai_strerror(GLIBC_2.1)[SUSv3] recv(GLIBC_2.0)[SUSv3] 5053 wcstombs(GLIBC_2.0)[SUSv3] 5054 gcvt(GLIBC_2.0)[SUSv3] recvfrom(GLIBC_2.0)[SUSv3] 5055 wcstoq(GLIBC_2.0)[LSB] 5056 getaddrinfo(GLIBC_2.0)[SUSv3] recvmsg(GLIBC_2.0)[SUSv3] 5057 wcstoul(GLIBC_2.0)[SUSv3] 5058 getc(GLIBC_2.0)[SUSv3] regcomp(GLIBC_2.0)[SUSv3] 5059 wcstoull(GLIBC_2.1)[SUSv3] 5060 getc_unlocked(GLIBC_2.0)[SUSv3] regerror(GLIBC_2.0)[SUSv3] 5061 wcstoumax(GLIBC_2.1)[SUSv3] 5062 getchar(GLIBC_2.0)[SUSv3] regexec(GLIBC_2.3.4)[LSB] 5063 wcstouq(GLIBC_2.0)[LSB] 5064 getchar_unlocked(GLIBC_2.0)[SUSv3] regfree(GLIBC_2.0)[SUSv3] 5065 wcswcs(GLIBC_2.1)[SUSv3] 5066 getcontext(GLIBC_2.3.4)[SUSv3] remove(GLIBC_2.0)[SUSv3] 5067 wcswidth(GLIBC_2.0)[SUSv3] 5068 getcwd(GLIBC_2.0)[SUSv3] remque(GLIBC_2.0)[SUSv3] 5069 wcsxfrm(GLIBC_2.0)[SUSv3] 5070 getdate(GLIBC_2.1)[SUSv3] rename(GLIBC_2.0)[SUSv3] 5071 wctob(GLIBC_2.0)[SUSv3] 5072 getdomainname(GLIBC_2.0)[LSB] rewind(GLIBC_2.0)[SUSv3] 5073 wctomb(GLIBC_2.0)[SUSv3] 5074 getdtablesize(GLIBC_2.0)[LSB] rewinddir(GLIBC_2.0)[SUSv3] 5075 wctrans(GLIBC_2.0)[SUSv3] 5076 getegid(GLIBC_2.0)[SUSv3] rindex(GLIBC_2.0)[SUSv3] 5077 wctype(GLIBC_2.0)[SUSv3] 5078 getenv(GLIBC_2.0)[SUSv3] rmdir(GLIBC_2.0)[SUSv3] 5079 wcwidth(GLIBC_2.0)[SUSv3] 5080 geteuid(GLIBC_2.0)[SUSv3] sbrk(GLIBC_2.0)[SUSv2] 5081 wmemchr(GLIBC_2.0)[SUSv3] 5082 getgid(GLIBC_2.0)[SUSv3] scanf(GLIBC_2.0)[LSB] 5083 wmemcmp(GLIBC_2.0)[SUSv3] 5084 getgrent(GLIBC_2.0)[SUSv3] 5085 sched_get_priority_max(GLIBC_2.0)[SUSv3] 5086 wmemcpy(GLIBC_2.0)[SUSv3] 5087 getgrgid(GLIBC_2.0)[SUSv3] 5088 sched_get_priority_min(GLIBC_2.0)[SUSv3] 5089 wmemmove(GLIBC_2.0)[SUSv3] 5090 getgrgid_r(GLIBC_2.1.2)[SUSv3] sched_getparam(GLIBC_2.0)[SUSv3] 5091 wmemset(GLIBC_2.0)[SUSv3] 5092 getgrnam(GLIBC_2.0)[SUSv3] sched_getscheduler(GLIBC_2.0)[SUSv3] 5093 wordexp(GLIBC_2.1)[SUSv3] 5094 getgrnam_r(GLIBC_2.1.2)[SUSv3] 5095 sched_rr_get_interval(GLIBC_2.0)[SUSv3] 5096 wordfree(GLIBC_2.1)[SUSv3] 5097 getgrouplist(GLIBC_2.2.4)[LSB] sched_setparam(GLIBC_2.0)[SUSv3] 5098 wprintf(GLIBC_2.2)[SUSv3] 5099 getgroups(GLIBC_2.0)[SUSv3] sched_setscheduler(GLIBC_2.0)[LSB] 5100 write(GLIBC_2.0)[SUSv3] 5101 gethostbyaddr(GLIBC_2.0)[SUSv3] sched_yield(GLIBC_2.0)[SUSv3] 5102 writev(GLIBC_2.0)[SUSv3] 5103 gethostbyaddr_r(GLIBC_2.1.2)[LSB] seed48(GLIBC_2.0)[SUSv3] 5104 wscanf(GLIBC_2.2)[LSB] 5105 gethostbyname(GLIBC_2.0)[SUSv3] seekdir(GLIBC_2.0)[SUSv3] 5106 xdr_accepted_reply(GLIBC_2.0)[SVID.3] 5107 gethostbyname2(GLIBC_2.0)[LSB] select(GLIBC_2.0)[SUSv3] 5108 xdr_array(GLIBC_2.0)[SVID.3] 5109 gethostbyname2_r(GLIBC_2.1.2)[LSB] semctl(GLIBC_2.2)[SUSv3] 5110 xdr_bool(GLIBC_2.0)[SVID.3] 5111 gethostbyname_r(GLIBC_2.1.2)[LSB] semget(GLIBC_2.0)[SUSv3] 5112 xdr_bytes(GLIBC_2.0)[SVID.3] 5113 gethostid(GLIBC_2.0)[SUSv3] semop(GLIBC_2.0)[SUSv3] 5114 xdr_callhdr(GLIBC_2.0)[SVID.3] 5115 gethostname(GLIBC_2.0)[SUSv3] send(GLIBC_2.0)[SUSv3] 5116 xdr_callmsg(GLIBC_2.0)[SVID.3] 5117 getitimer(GLIBC_2.0)[SUSv3] sendmsg(GLIBC_2.0)[SUSv3] 5118 xdr_char(GLIBC_2.0)[SVID.3] 5119 getloadavg(GLIBC_2.2)[LSB] sendto(GLIBC_2.0)[SUSv3] 5120 xdr_double(GLIBC_2.0)[SVID.3] 5121 getlogin(GLIBC_2.0)[SUSv3] setbuf(GLIBC_2.0)[SUSv3] 5122 xdr_enum(GLIBC_2.0)[SVID.3] 5123 getlogin_r(GLIBC_2.0)[SUSv3] setbuffer(GLIBC_2.0)[LSB] 5124 xdr_float(GLIBC_2.0)[SVID.3] 5125 getnameinfo(GLIBC_2.1)[SUSv3] setcontext(GLIBC_2.3.4)[SUSv3] 5126 xdr_free(GLIBC_2.0)[SVID.3] 5127 getopt(GLIBC_2.0)[LSB] setegid(GLIBC_2.0)[SUSv3] 5128 xdr_int(GLIBC_2.0)[SVID.3] 5129 getopt_long(GLIBC_2.0)[LSB] setenv(GLIBC_2.0)[SUSv3] 5130 xdr_long(GLIBC_2.0)[SVID.3] 5131 getopt_long_only(GLIBC_2.0)[LSB] seteuid(GLIBC_2.0)[SUSv3] 5132 xdr_opaque(GLIBC_2.0)[SVID.3] 5133 getpagesize(GLIBC_2.0)[LSB] setgid(GLIBC_2.0)[SUSv3] 5134 xdr_opaque_auth(GLIBC_2.0)[SVID.3] 5135 getpeername(GLIBC_2.0)[SUSv3] setgrent(GLIBC_2.0)[SUSv3] 5136 xdr_pointer(GLIBC_2.0)[SVID.3] 5137 getpgid(GLIBC_2.0)[SUSv3] setgroups(GLIBC_2.0)[LSB] 5138 xdr_reference(GLIBC_2.0)[SVID.3] 5139 getpgrp(GLIBC_2.0)[SUSv3] sethostname(GLIBC_2.0)[LSB] 5140 xdr_rejected_reply(GLIBC_2.0)[SVID.3] 5141 getpid(GLIBC_2.0)[SUSv3] setitimer(GLIBC_2.0)[SUSv3] 5142 xdr_replymsg(GLIBC_2.0)[SVID.3] 5143 getppid(GLIBC_2.0)[SUSv3] setlocale(GLIBC_2.0)[SUSv3] 5144 xdr_short(GLIBC_2.0)[SVID.3] 5145 getpriority(GLIBC_2.0)[SUSv3] setlogmask(GLIBC_2.0)[SUSv3] 5146 xdr_string(GLIBC_2.0)[SVID.3] 5147 getprotobyname(GLIBC_2.0)[SUSv3] setpgid(GLIBC_2.0)[SUSv3] 5148 xdr_u_char(GLIBC_2.0)[SVID.3] 5149 getprotobynumber(GLIBC_2.0)[SUSv3] setpgrp(GLIBC_2.0)[SUSv3] 5150 xdr_u_int(GLIBC_2.0)[LSB] 5151 getprotoent(GLIBC_2.0)[SUSv3] setpriority(GLIBC_2.0)[SUSv3] 5152 xdr_u_long(GLIBC_2.0)[SVID.3] 5153 getpwent(GLIBC_2.0)[SUSv3] setprotoent(GLIBC_2.0)[SUSv3] 5154 xdr_u_short(GLIBC_2.0)[SVID.3] 5155 getpwnam(GLIBC_2.0)[SUSv3] setpwent(GLIBC_2.0)[SUSv3] 5156 xdr_union(GLIBC_2.0)[SVID.3] 5157 getpwnam_r(GLIBC_2.1.2)[SUSv3] setregid(GLIBC_2.0)[SUSv3] 5158 xdr_vector(GLIBC_2.0)[SVID.3] 5159 getpwuid(GLIBC_2.0)[SUSv3] setreuid(GLIBC_2.0)[SUSv3] 5160 xdr_void(GLIBC_2.0)[SVID.3] 5161 getpwuid_r(GLIBC_2.1.2)[SUSv3] setrlimit(GLIBC_2.2)[SUSv3] 5162 xdr_wrapstring(GLIBC_2.0)[SVID.3] 5163 getrlimit(GLIBC_2.2)[SUSv3] setrlimit64(GLIBC_2.1)[LFS] 5164 xdrmem_create(GLIBC_2.0)[SVID.3] 5165 getrlimit64(GLIBC_2.2)[LFS] setservent(GLIBC_2.0)[SUSv3] 5166 xdrrec_create(GLIBC_2.0)[SVID.3] 5167 getrusage(GLIBC_2.0)[SUSv3] setsid(GLIBC_2.0)[SUSv3] 5168 xdrrec_eof(GLIBC_2.0)[SVID.3] 5169 getservbyname(GLIBC_2.0)[SUSv3] setsockopt(GLIBC_2.0)[LSB] 5170 xdrstdio_create(GLIBC_2.0)[LSB] 5171 getservbyport(GLIBC_2.0)[SUSv3] setstate(GLIBC_2.0)[SUSv3] 5172 getservent(GLIBC_2.0)[SUSv3] setuid(GLIBC_2.0)[SUSv3] 5173 5174 Table A-2. libc Data Interfaces 5175 __daylight[LSB] __tzname[LSB] in6addr_loopback[SUSv3] 5176 __environ[LSB] _sys_errlist[LSB] 5177 __timezone[LSB] in6addr_any[SUSv3] 5178 __________________________________________________________ 5179 5180 A.2. libcrypt 5181 5182 The behavior of the interfaces in this library is specified by 5183 the following Standards. 5184 5185 ISO POSIX (2003) [SUSv3] 5186 5187 Table A-3. libcrypt Function Interfaces 5188 crypt(GLIBC_2.0)[SUSv3] encrypt(GLIBC_2.0)[SUSv3] 5189 setkey(GLIBC_2.0)[SUSv3] 5190 __________________________________________________________ 5191 5192 A.3. libdl 5193 5194 The behavior of the interfaces in this library is specified by 5195 the following Standards. 5196 5197 ISO/IEC 23360 Part 1 [LSB] 5198 ISO POSIX (2003) [SUSv3] 5199 5200 Table A-4. libdl Function Interfaces 5201 dladdr(GLIBC_2.0)[LSB] dlerror(GLIBC_2.0)[SUSv3] 5202 dlsym(GLIBC_2.0)[LSB] 5203 dlclose(GLIBC_2.0)[SUSv3] dlopen(GLIBC_2.1)[LSB] 5204 __________________________________________________________ 5205 5206 A.4. libgcc_s 5207 5208 The behavior of the interfaces in this library is specified by 5209 the following Standards. 5210 5211 ISO/IEC 23360 Part 1 [LSB] 5212 5213 Table A-5. libgcc_s Function Interfaces 5214 _Unwind_Backtrace(GCC_3.3)[LSB] 5215 _Unwind_GetDataRelBase(GCC_3.0)[LSB] 5216 _Unwind_RaiseException(GCC_3.0)[LSB] 5217 _Unwind_DeleteException(GCC_3.0)[LSB] 5218 _Unwind_GetGR(GCC_3.0)[LSB] _Unwind_Resume(GCC_3.0)[LSB] 5219 _Unwind_FindEnclosingFunction(GCC_3.3)[LSB] 5220 _Unwind_GetIP(GCC_3.0)[LSB] 5221 _Unwind_Resume_or_Rethrow(GCC_3.3)[LSB] 5222 _Unwind_Find_FDE(GCC_3.0)[LSB] 5223 _Unwind_GetLanguageSpecificData(GCC_3.0)[LSB] 5224 _Unwind_SetGR(GCC_3.0)[LSB] 5225 _Unwind_ForcedUnwind(GCC_3.0)[LSB] 5226 _Unwind_GetRegionStart(GCC_3.0)[LSB] 5227 _Unwind_SetIP(GCC_3.0)[LSB] 5228 _Unwind_GetCFA(GCC_3.3)[LSB] 5229 _Unwind_GetTextRelBase(GCC_3.0)[LSB] 5230 __________________________________________________________ 5231 5232 A.5. libm 5233 5234 The behavior of the interfaces in this library is specified by 5235 the following Standards. 5236 5237 ISO C (1999) [ISOC99] 5238 ISO/IEC 23360 Part 1 [LSB] 5239 ISO POSIX (2003) [SUSv3] 5240 SVID Issue 3 [SVID.3] 5241 5242 Table A-6. libm Function Interfaces 5243 __finite(GLIBC_2.1)[LSB] csinl(GLIBC_2.1)[SUSv3] 5244 llroundf(GLIBC_2.1)[SUSv3] 5245 __finitef(GLIBC_2.1)[LSB] csqrt(GLIBC_2.1)[SUSv3] 5246 llroundl(GLIBC_2.1)[SUSv3] 5247 __finitel(GLIBC_2.1)[LSB] csqrtf(GLIBC_2.1)[SUSv3] 5248 log(GLIBC_2.0)[SUSv3] 5249 __fpclassify(GLIBC_2.1)[LSB] csqrtl(GLIBC_2.1)[SUSv3] 5250 log10(GLIBC_2.0)[SUSv3] 5251 __fpclassifyf(GLIBC_2.1)[LSB] ctan(GLIBC_2.1)[SUSv3] 5252 log10f(GLIBC_2.0)[SUSv3] 5253 __signbit(GLIBC_2.1)[LSB] ctanf(GLIBC_2.1)[SUSv3] 5254 log10l(GLIBC_2.0)[SUSv3] 5255 __signbitf(GLIBC_2.1)[LSB] ctanh(GLIBC_2.1)[SUSv3] 5256 log1p(GLIBC_2.0)[SUSv3] 5257 acos(GLIBC_2.0)[SUSv3] ctanhf(GLIBC_2.1)[SUSv3] 5258 log1pf(GLIBC_2.0)[SUSv3] 5259 acosf(GLIBC_2.0)[SUSv3] ctanhl(GLIBC_2.1)[SUSv3] 5260 log1pl(GLIBC_2.0)[SUSv3] 5261 acosh(GLIBC_2.0)[SUSv3] ctanl(GLIBC_2.1)[SUSv3] 5262 log2(GLIBC_2.1)[SUSv3] 5263 acoshf(GLIBC_2.0)[SUSv3] drem(GLIBC_2.0)[LSB] 5264 log2f(GLIBC_2.1)[SUSv3] 5265 acoshl(GLIBC_2.0)[SUSv3] dremf(GLIBC_2.0)[LSB] 5266 log2l(GLIBC_2.1)[SUSv3] 5267 acosl(GLIBC_2.0)[SUSv3] dreml(GLIBC_2.0)[LSB] 5268 logb(GLIBC_2.0)[SUSv3] 5269 asin(GLIBC_2.0)[SUSv3] erf(GLIBC_2.0)[SUSv3] 5270 logbf(GLIBC_2.0)[SUSv3] 5271 asinf(GLIBC_2.0)[SUSv3] erfc(GLIBC_2.0)[SUSv3] 5272 logbl(GLIBC_2.0)[SUSv3] 5273 asinh(GLIBC_2.0)[SUSv3] erfcf(GLIBC_2.0)[SUSv3] 5274 logf(GLIBC_2.0)[SUSv3] 5275 asinhf(GLIBC_2.0)[SUSv3] erfcl(GLIBC_2.0)[SUSv3] 5276 logl(GLIBC_2.0)[SUSv3] 5277 asinhl(GLIBC_2.0)[SUSv3] erff(GLIBC_2.0)[SUSv3] 5278 lrint(GLIBC_2.1)[SUSv3] 5279 asinl(GLIBC_2.0)[SUSv3] erfl(GLIBC_2.0)[SUSv3] 5280 lrintf(GLIBC_2.1)[SUSv3] 5281 atan(GLIBC_2.0)[SUSv3] exp(GLIBC_2.0)[SUSv3] 5282 lrintl(GLIBC_2.1)[SUSv3] 5283 atan2(GLIBC_2.0)[SUSv3] exp10(GLIBC_2.1)[LSB] 5284 lround(GLIBC_2.1)[SUSv3] 5285 atan2f(GLIBC_2.0)[SUSv3] exp10f(GLIBC_2.1)[LSB] 5286 lroundf(GLIBC_2.1)[SUSv3] 5287 atan2l(GLIBC_2.0)[SUSv3] exp10l(GLIBC_2.1)[LSB] 5288 lroundl(GLIBC_2.1)[SUSv3] 5289 atanf(GLIBC_2.0)[SUSv3] exp2(GLIBC_2.1)[SUSv3] 5290 matherr(GLIBC_2.0)[SVID.3] 5291 atanh(GLIBC_2.0)[SUSv3] exp2f(GLIBC_2.1)[SUSv3] 5292 modf(GLIBC_2.0)[SUSv3] 5293 atanhf(GLIBC_2.0)[SUSv3] expf(GLIBC_2.0)[SUSv3] 5294 modff(GLIBC_2.0)[SUSv3] 5295 atanhl(GLIBC_2.0)[SUSv3] expl(GLIBC_2.0)[SUSv3] 5296 modfl(GLIBC_2.0)[SUSv3] 5297 atanl(GLIBC_2.0)[SUSv3] expm1(GLIBC_2.0)[SUSv3] 5298 nan(GLIBC_2.1)[SUSv3] 5299 cabs(GLIBC_2.1)[SUSv3] expm1f(GLIBC_2.0)[SUSv3] 5300 nanf(GLIBC_2.1)[SUSv3] 5301 cabsf(GLIBC_2.1)[SUSv3] expm1l(GLIBC_2.0)[SUSv3] 5302 nanl(GLIBC_2.1)[SUSv3] 5303 cabsl(GLIBC_2.1)[SUSv3] fabs(GLIBC_2.0)[SUSv3] 5304 nearbyint(GLIBC_2.1)[SUSv3] 5305 cacos(GLIBC_2.1)[SUSv3] fabsf(GLIBC_2.0)[SUSv3] 5306 nearbyintf(GLIBC_2.1)[SUSv3] 5307 cacosf(GLIBC_2.1)[SUSv3] fabsl(GLIBC_2.0)[SUSv3] 5308 nearbyintl(GLIBC_2.1)[SUSv3] 5309 cacosh(GLIBC_2.1)[SUSv3] fdim(GLIBC_2.1)[SUSv3] 5310 nextafter(GLIBC_2.0)[SUSv3] 5311 cacoshf(GLIBC_2.1)[SUSv3] fdimf(GLIBC_2.1)[SUSv3] 5312 nextafterf(GLIBC_2.0)[SUSv3] 5313 cacoshl(GLIBC_2.1)[SUSv3] fdiml(GLIBC_2.1)[SUSv3] 5314 nextafterl(GLIBC_2.0)[SUSv3] 5315 cacosl(GLIBC_2.1)[SUSv3] feclearexcept(GLIBC_2.2)[SUSv3] 5316 nexttoward(GLIBC_2.1)[SUSv3] 5317 carg(GLIBC_2.1)[SUSv3] fedisableexcept(GLIBC_2.2)[LSB] 5318 nexttowardf(GLIBC_2.1)[SUSv3] 5319 cargf(GLIBC_2.1)[SUSv3] feenableexcept(GLIBC_2.2)[LSB] 5320 nexttowardl(GLIBC_2.1)[SUSv3] 5321 cargl(GLIBC_2.1)[SUSv3] fegetenv(GLIBC_2.2)[SUSv3] 5322 pow(GLIBC_2.0)[SUSv3] 5323 casin(GLIBC_2.1)[SUSv3] fegetexcept(GLIBC_2.2)[LSB] 5324 pow10(GLIBC_2.1)[LSB] 5325 casinf(GLIBC_2.1)[SUSv3] fegetexceptflag(GLIBC_2.2)[SUSv3] 5326 pow10f(GLIBC_2.1)[LSB] 5327 casinh(GLIBC_2.1)[SUSv3] fegetround(GLIBC_2.1)[SUSv3] 5328 pow10l(GLIBC_2.1)[LSB] 5329 casinhf(GLIBC_2.1)[SUSv3] feholdexcept(GLIBC_2.1)[SUSv3] 5330 powf(GLIBC_2.0)[SUSv3] 5331 casinhl(GLIBC_2.1)[SUSv3] feraiseexcept(GLIBC_2.2)[SUSv3] 5332 powl(GLIBC_2.0)[SUSv3] 5333 casinl(GLIBC_2.1)[SUSv3] fesetenv(GLIBC_2.2)[SUSv3] 5334 remainder(GLIBC_2.0)[SUSv3] 5335 catan(GLIBC_2.1)[SUSv3] fesetexceptflag(GLIBC_2.2)[SUSv3] 5336 remainderf(GLIBC_2.0)[SUSv3] 5337 catanf(GLIBC_2.1)[SUSv3] fesetround(GLIBC_2.1)[SUSv3] 5338 remainderl(GLIBC_2.0)[SUSv3] 5339 catanh(GLIBC_2.1)[SUSv3] fetestexcept(GLIBC_2.1)[SUSv3] 5340 remquo(GLIBC_2.1)[SUSv3] 5341 catanhf(GLIBC_2.1)[SUSv3] feupdateenv(GLIBC_2.2)[SUSv3] 5342 remquof(GLIBC_2.1)[SUSv3] 5343 catanhl(GLIBC_2.1)[SUSv3] finite(GLIBC_2.0)[LSB] 5344 remquol(GLIBC_2.1)[SUSv3] 5345 catanl(GLIBC_2.1)[SUSv3] finitef(GLIBC_2.0)[LSB] 5346 rint(GLIBC_2.0)[SUSv3] 5347 cbrt(GLIBC_2.0)[SUSv3] finitel(GLIBC_2.0)[LSB] 5348 rintf(GLIBC_2.0)[SUSv3] 5349 cbrtf(GLIBC_2.0)[SUSv3] floor(GLIBC_2.0)[SUSv3] 5350 rintl(GLIBC_2.0)[SUSv3] 5351 cbrtl(GLIBC_2.0)[SUSv3] floorf(GLIBC_2.0)[SUSv3] 5352 round(GLIBC_2.1)[SUSv3] 5353 ccos(GLIBC_2.1)[SUSv3] floorl(GLIBC_2.0)[SUSv3] 5354 roundf(GLIBC_2.1)[SUSv3] 5355 ccosf(GLIBC_2.1)[SUSv3] fma(GLIBC_2.1)[SUSv3] 5356 roundl(GLIBC_2.1)[SUSv3] 5357 ccosh(GLIBC_2.1)[SUSv3] fmaf(GLIBC_2.1)[SUSv3] 5358 scalb(GLIBC_2.0)[SUSv3] 5359 ccoshf(GLIBC_2.1)[SUSv3] fmal(GLIBC_2.1)[SUSv3] 5360 scalbf(GLIBC_2.0)[ISOC99] 5361 ccoshl(GLIBC_2.1)[SUSv3] fmax(GLIBC_2.1)[SUSv3] 5362 scalbl(GLIBC_2.0)[ISOC99] 5363 ccosl(GLIBC_2.1)[SUSv3] fmaxf(GLIBC_2.1)[SUSv3] 5364 scalbln(GLIBC_2.1)[SUSv3] 5365 ceil(GLIBC_2.0)[SUSv3] fmaxl(GLIBC_2.1)[SUSv3] 5366 scalblnf(GLIBC_2.1)[SUSv3] 5367 ceilf(GLIBC_2.0)[SUSv3] fmin(GLIBC_2.1)[SUSv3] 5368 scalblnl(GLIBC_2.1)[SUSv3] 5369 ceill(GLIBC_2.0)[SUSv3] fminf(GLIBC_2.1)[SUSv3] 5370 scalbn(GLIBC_2.0)[SUSv3] 5371 cexp(GLIBC_2.1)[SUSv3] fminl(GLIBC_2.1)[SUSv3] 5372 scalbnf(GLIBC_2.0)[SUSv3] 5373 cexpf(GLIBC_2.1)[SUSv3] fmod(GLIBC_2.0)[SUSv3] 5374 scalbnl(GLIBC_2.0)[SUSv3] 5375 cexpl(GLIBC_2.1)[SUSv3] fmodf(GLIBC_2.0)[SUSv3] 5376 significand(GLIBC_2.0)[LSB] 5377 cimag(GLIBC_2.1)[SUSv3] fmodl(GLIBC_2.0)[SUSv3] 5378 significandf(GLIBC_2.0)[LSB] 5379 cimagf(GLIBC_2.1)[SUSv3] frexp(GLIBC_2.0)[SUSv3] 5380 significandl(GLIBC_2.0)[LSB] 5381 cimagl(GLIBC_2.1)[SUSv3] frexpf(GLIBC_2.0)[SUSv3] 5382 sin(GLIBC_2.0)[SUSv3] 5383 clog(GLIBC_2.1)[SUSv3] frexpl(GLIBC_2.0)[SUSv3] 5384 sincos(GLIBC_2.1)[LSB] 5385 clog10(GLIBC_2.1)[LSB] gamma(GLIBC_2.0)[LSB] 5386 sincosf(GLIBC_2.1)[LSB] 5387 clog10f(GLIBC_2.1)[LSB] gammaf(GLIBC_2.0)[LSB] 5388 sincosl(GLIBC_2.1)[LSB] 5389 clog10l(GLIBC_2.1)[LSB] gammal(GLIBC_2.0)[LSB] 5390 sinf(GLIBC_2.0)[SUSv3] 5391 clogf(GLIBC_2.1)[SUSv3] hypot(GLIBC_2.0)[SUSv3] 5392 sinh(GLIBC_2.0)[SUSv3] 5393 clogl(GLIBC_2.1)[SUSv3] hypotf(GLIBC_2.0)[SUSv3] 5394 sinhf(GLIBC_2.0)[SUSv3] 5395 conj(GLIBC_2.1)[SUSv3] hypotl(GLIBC_2.0)[SUSv3] 5396 sinhl(GLIBC_2.0)[SUSv3] 5397 conjf(GLIBC_2.1)[SUSv3] ilogb(GLIBC_2.0)[SUSv3] 5398 sinl(GLIBC_2.0)[SUSv3] 5399 conjl(GLIBC_2.1)[SUSv3] ilogbf(GLIBC_2.0)[SUSv3] 5400 sqrt(GLIBC_2.0)[SUSv3] 5401 copysign(GLIBC_2.0)[SUSv3] ilogbl(GLIBC_2.0)[SUSv3] 5402 sqrtf(GLIBC_2.0)[SUSv3] 5403 copysignf(GLIBC_2.0)[SUSv3] j0(GLIBC_2.0)[SUSv3] 5404 sqrtl(GLIBC_2.0)[SUSv3] 5405 copysignl(GLIBC_2.0)[SUSv3] j0f(GLIBC_2.0)[LSB] 5406 tan(GLIBC_2.0)[SUSv3] 5407 cos(GLIBC_2.0)[SUSv3] j0l(GLIBC_2.0)[LSB] 5408 tanf(GLIBC_2.0)[SUSv3] 5409 cosf(GLIBC_2.0)[SUSv3] j1(GLIBC_2.0)[SUSv3] 5410 tanh(GLIBC_2.0)[SUSv3] 5411 cosh(GLIBC_2.0)[SUSv3] j1f(GLIBC_2.0)[LSB] 5412 tanhf(GLIBC_2.0)[SUSv3] 5413 coshf(GLIBC_2.0)[SUSv3] j1l(GLIBC_2.0)[LSB] 5414 tanhl(GLIBC_2.0)[SUSv3] 5415 coshl(GLIBC_2.0)[SUSv3] jn(GLIBC_2.0)[SUSv3] 5416 tanl(GLIBC_2.0)[SUSv3] 5417 cosl(GLIBC_2.0)[SUSv3] jnf(GLIBC_2.0)[LSB] 5418 tgamma(GLIBC_2.1)[SUSv3] 5419 cpow(GLIBC_2.1)[SUSv3] jnl(GLIBC_2.0)[LSB] 5420 tgammaf(GLIBC_2.1)[SUSv3] 5421 cpowf(GLIBC_2.1)[SUSv3] ldexp(GLIBC_2.0)[SUSv3] 5422 tgammal(GLIBC_2.1)[SUSv3] 5423 cpowl(GLIBC_2.1)[SUSv3] ldexpf(GLIBC_2.0)[SUSv3] 5424 trunc(GLIBC_2.1)[SUSv3] 5425 cproj(GLIBC_2.1)[SUSv3] ldexpl(GLIBC_2.0)[SUSv3] 5426 truncf(GLIBC_2.1)[SUSv3] 5427 cprojf(GLIBC_2.1)[SUSv3] lgamma(GLIBC_2.0)[SUSv3] 5428 truncl(GLIBC_2.1)[SUSv3] 5429 cprojl(GLIBC_2.1)[SUSv3] lgamma_r(GLIBC_2.0)[LSB] 5430 y0(GLIBC_2.0)[SUSv3] 5431 creal(GLIBC_2.1)[SUSv3] lgammaf(GLIBC_2.0)[SUSv3] 5432 y0f(GLIBC_2.0)[LSB] 5433 crealf(GLIBC_2.1)[SUSv3] lgammaf_r(GLIBC_2.0)[LSB] 5434 y0l(GLIBC_2.0)[LSB] 5435 creall(GLIBC_2.1)[SUSv3] lgammal(GLIBC_2.0)[SUSv3] 5436 y1(GLIBC_2.0)[SUSv3] 5437 csin(GLIBC_2.1)[SUSv3] lgammal_r(GLIBC_2.0)[LSB] 5438 y1f(GLIBC_2.0)[LSB] 5439 csinf(GLIBC_2.1)[SUSv3] llrint(GLIBC_2.1)[SUSv3] 5440 y1l(GLIBC_2.0)[LSB] 5441 csinh(GLIBC_2.1)[SUSv3] llrintf(GLIBC_2.1)[SUSv3] 5442 yn(GLIBC_2.0)[SUSv3] 5443 csinhf(GLIBC_2.1)[SUSv3] llrintl(GLIBC_2.1)[SUSv3] 5444 ynf(GLIBC_2.0)[LSB] 5445 csinhl(GLIBC_2.1)[SUSv3] llround(GLIBC_2.1)[SUSv3] 5446 ynl(GLIBC_2.0)[LSB] 5447 5448 Table A-7. libm Data Interfaces 5449 signgam[SUSv3] 5450 __________________________________________________________ 5451 5452 A.6. libpthread 5453 5454 The behavior of the interfaces in this library is specified by 5455 the following Standards. 5456 5457 Large File Support [LFS] 5458 ISO/IEC 23360 Part 1 [LSB] 5459 ISO POSIX (2003) [SUSv3] 5460 5461 Table A-8. libpthread Function Interfaces 5462 _pthread_cleanup_pop(GLIBC_2.0)[LSB] 5463 pthread_cond_signal(GLIBC_2.3.2)[SUSv3] 5464 pthread_rwlock_timedrdlock(GLIBC_2.2)[SUSv3] 5465 _pthread_cleanup_push(GLIBC_2.0)[LSB] 5466 pthread_cond_timedwait(GLIBC_2.3.2)[SUSv3] 5467 pthread_rwlock_timedwrlock(GLIBC_2.2)[SUSv3] 5468 lseek64(GLIBC_2.2)[LFS] pthread_cond_wait(GLIBC_2.3.2)[SUSv3] 5469 pthread_rwlock_tryrdlock(GLIBC_2.1)[SUSv3] 5470 open64(GLIBC_2.2)[LFS] 5471 pthread_condattr_destroy(GLIBC_2.0)[SUSv3] 5472 pthread_rwlock_trywrlock(GLIBC_2.1)[SUSv3] 5473 pread(GLIBC_2.2)[SUSv3] 5474 pthread_condattr_getpshared(GLIBC_2.2)[SUSv3] 5475 pthread_rwlock_unlock(GLIBC_2.1)[SUSv3] 5476 pread64(GLIBC_2.2)[LFS] pthread_condattr_init(GLIBC_2.0)[SUSv3] 5477 pthread_rwlock_wrlock(GLIBC_2.1)[SUSv3] 5478 pthread_attr_destroy(GLIBC_2.0)[SUSv3] 5479 pthread_condattr_setpshared(GLIBC_2.2)[SUSv3] 5480 pthread_rwlockattr_destroy(GLIBC_2.1)[SUSv3] 5481 pthread_attr_getdetachstate(GLIBC_2.0)[SUSv3] 5482 pthread_create(GLIBC_2.1)[SUSv3] 5483 pthread_rwlockattr_getpshared(GLIBC_2.1)[SUSv3] 5484 pthread_attr_getguardsize(GLIBC_2.1)[SUSv3] 5485 pthread_detach(GLIBC_2.0)[SUSv3] 5486 pthread_rwlockattr_init(GLIBC_2.1)[SUSv3] 5487 pthread_attr_getinheritsched(GLIBC_2.0)[SUSv3] 5488 pthread_equal(GLIBC_2.0)[SUSv3] 5489 pthread_rwlockattr_setpshared(GLIBC_2.1)[SUSv3] 5490 pthread_attr_getschedparam(GLIBC_2.0)[SUSv3] 5491 pthread_exit(GLIBC_2.0)[SUSv3] pthread_self(GLIBC_2.0)[SUSv3] 5492 pthread_attr_getschedpolicy(GLIBC_2.0)[SUSv3] 5493 pthread_getconcurrency(GLIBC_2.1)[SUSv3] 5494 pthread_setcancelstate(GLIBC_2.0)[SUSv3] 5495 pthread_attr_getscope(GLIBC_2.0)[SUSv3] 5496 pthread_getcpuclockid(GLIBC_2.2)[SUSv3] 5497 pthread_setcanceltype(GLIBC_2.0)[SUSv3] 5498 pthread_attr_getstack(GLIBC_2.2)[SUSv3] 5499 pthread_getschedparam(GLIBC_2.0)[SUSv3] 5500 pthread_setconcurrency(GLIBC_2.1)[SUSv3] 5501 pthread_attr_getstackaddr(GLIBC_2.1)[SUSv3] 5502 pthread_getspecific(GLIBC_2.0)[SUSv3] 5503 pthread_setschedparam(GLIBC_2.0)[SUSv3] 5504 pthread_attr_getstacksize(GLIBC_2.1)[SUSv3] 5505 pthread_join(GLIBC_2.0)[SUSv3] 5506 pthread_setspecific(GLIBC_2.0)[SUSv3] 5507 pthread_attr_init(GLIBC_2.1)[SUSv3] 5508 pthread_key_create(GLIBC_2.0)[SUSv3] 5509 pthread_sigmask(GLIBC_2.0)[SUSv3] 5510 pthread_attr_setdetachstate(GLIBC_2.0)[SUSv3] 5511 pthread_key_delete(GLIBC_2.0)[SUSv3] 5512 pthread_spin_destroy(GLIBC_2.2)[SUSv3] 5513 pthread_attr_setguardsize(GLIBC_2.1)[SUSv3] 5514 pthread_kill(GLIBC_2.0)[SUSv3] 5515 pthread_spin_init(GLIBC_2.2)[SUSv3] 5516 pthread_attr_setinheritsched(GLIBC_2.0)[SUSv3] 5517 pthread_mutex_destroy(GLIBC_2.0)[SUSv3] 5518 pthread_spin_lock(GLIBC_2.2)[SUSv3] 5519 pthread_attr_setschedparam(GLIBC_2.0)[SUSv3] 5520 pthread_mutex_init(GLIBC_2.0)[SUSv3] 5521 pthread_spin_trylock(GLIBC_2.2)[SUSv3] 5522 pthread_attr_setschedpolicy(GLIBC_2.0)[SUSv3] 5523 pthread_mutex_lock(GLIBC_2.0)[SUSv3] 5524 pthread_spin_unlock(GLIBC_2.2)[SUSv3] 5525 pthread_attr_setscope(GLIBC_2.0)[SUSv3] 5526 pthread_mutex_timedlock(GLIBC_2.2)[SUSv3] 5527 pthread_testcancel(GLIBC_2.0)[SUSv3] 5528 pthread_attr_setstackaddr(GLIBC_2.1)[SUSv3] 5529 pthread_mutex_trylock(GLIBC_2.0)[SUSv3] 5530 pwrite(GLIBC_2.2)[SUSv3] 5531 pthread_attr_setstacksize(GLIBC_2.1)[SUSv3] 5532 pthread_mutex_unlock(GLIBC_2.0)[SUSv3] pwrite64(GLIBC_2.2)[LFS] 5533 pthread_barrier_destroy(GLIBC_2.2)[SUSv3] 5534 pthread_mutexattr_destroy(GLIBC_2.0)[SUSv3] 5535 sem_close(GLIBC_2.1.1)[SUSv3] 5536 pthread_barrier_init(GLIBC_2.2)[SUSv3] 5537 pthread_mutexattr_getpshared(GLIBC_2.2)[SUSv3] 5538 sem_destroy(GLIBC_2.1)[SUSv3] 5539 pthread_barrier_wait(GLIBC_2.2)[SUSv3] 5540 pthread_mutexattr_gettype(GLIBC_2.1)[SUSv3] 5541 sem_getvalue(GLIBC_2.1)[SUSv3] 5542 pthread_barrierattr_destroy(GLIBC_2.2)[SUSv3] 5543 pthread_mutexattr_init(GLIBC_2.0)[SUSv3] 5544 sem_init(GLIBC_2.1)[SUSv3] 5545 pthread_barrierattr_init(GLIBC_2.2)[SUSv3] 5546 pthread_mutexattr_setpshared(GLIBC_2.2)[SUSv3] 5547 sem_open(GLIBC_2.1.1)[SUSv3] 5548 pthread_barrierattr_setpshared(GLIBC_2.2)[SUSv3] 5549 pthread_mutexattr_settype(GLIBC_2.1)[SUSv3] 5550 sem_post(GLIBC_2.1)[SUSv3] 5551 pthread_cancel(GLIBC_2.0)[SUSv3] pthread_once(GLIBC_2.0)[SUSv3] 5552 sem_timedwait(GLIBC_2.2)[SUSv3] 5553 pthread_cond_broadcast(GLIBC_2.3.2)[SUSv3] 5554 pthread_rwlock_destroy(GLIBC_2.1)[SUSv3] 5555 sem_trywait(GLIBC_2.1)[SUSv3] 5556 pthread_cond_destroy(GLIBC_2.3.2)[SUSv3] 5557 pthread_rwlock_init(GLIBC_2.1)[SUSv3] 5558 sem_unlink(GLIBC_2.1.1)[SUSv3] 5559 pthread_cond_init(GLIBC_2.3.2)[SUSv3] 5560 pthread_rwlock_rdlock(GLIBC_2.1)[SUSv3] 5561 sem_wait(GLIBC_2.1)[SUSv3] 5562 __________________________________________________________ 5563 5564 A.7. librt 5565 5566 The behavior of the interfaces in this library is specified by 5567 the following Standards. 5568 5569 ISO POSIX (2003) [SUSv3] 5570 5571 Table A-9. librt Function Interfaces 5572 clock_getcpuclockid(GLIBC_2.2)[SUSv3] 5573 clock_settime(GLIBC_2.2)[SUSv3] timer_delete(GLIBC_2.2)[SUSv3] 5574 clock_getres(GLIBC_2.2)[SUSv3] shm_open(GLIBC_2.2)[SUSv3] 5575 timer_getoverrun(GLIBC_2.2)[SUSv3] 5576 clock_gettime(GLIBC_2.2)[SUSv3] shm_unlink(GLIBC_2.2)[SUSv3] 5577 timer_gettime(GLIBC_2.2)[SUSv3] 5578 clock_nanosleep(GLIBC_2.2)[SUSv3] 5579 timer_create(GLIBC_2.2)[SUSv3] timer_settime(GLIBC_2.2)[SUSv3] 5580 __________________________________________________________ 5581 5582 A.8. libutil 5583 5584 The behavior of the interfaces in this library is specified by 5585 the following Standards. 5586 5587 ISO/IEC 23360 Part 1 [LSB] 5588 5589 Table A-10. libutil Function Interfaces 5590 forkpty(GLIBC_2.0)[LSB] login_tty(GLIBC_2.0)[LSB] 5591 logwtmp(GLIBC_2.0)[LSB] 5592 login(GLIBC_2.0)[LSB] logout(GLIBC_2.0)[LSB] 5593 openpty(GLIBC_2.0)[LSB] 5594 __________________________________________________________ 5595 5596 Appendix B. GNU Free Documentation License (Informative) 5597 5598 This specification is published under the terms of the GNU Free 5599 Documentation License, Version 1.1, March 2000 5600 5601 Copyright (C) 2000 Free Software Foundation, Inc. 59 Temple 5602 Place, Suite 330, Boston, MA 02111-1307 USA Everyone is 5603 permitted to copy and distribute verbatim copies of this 5604 license document, but changing it is not allowed. 5605 __________________________________________________________ 5606 5607 B.1. PREAMBLE 5608 5609 The purpose of this License is to make a manual, textbook, or 5610 other written document "free" in the sense of freedom: to 5611 assure everyone the effective freedom to copy and redistribute 5612 it, with or without modifying it, either commercially or 5613 noncommercially. Secondarily, this License preserves for the 5614 author and publisher a way to get credit for their work, while 5615 not being considered responsible for modifications made by 5616 others. 5617 5618 This License is a kind of "copyleft", which means that 5619 derivative works of the document must themselves be free in the 5620 same sense. It complements the GNU General Public License, 5621 which is a copyleft license designed for free software. 5622 5623 We have designed this License in order to use it for manuals 5624 for free software, because free software needs free 5625 documentation: a free program should come with manuals 5626 providing the same freedoms that the software does. But this 5627 License is not limited to software manuals; it can be used for 5628 any textual work, regardless of subject matter or whether it is 5629 published as a printed book. We recommend this License 5630 principally for works whose purpose is instruction or 5631 reference. 5632 __________________________________________________________ 5633 5634 B.2. APPLICABILITY AND DEFINITIONS 5635 5636 This License applies to any manual or other work that contains 5637 a notice placed by the copyright holder saying it can be 5638 distributed under the terms of this License. The "Document", 5639 below, refers to any such manual or work. Any member of the 5640 public is a licensee, and is addressed as "you". 5641 5642 A "Modified Version" of the Document means any work containing 5643 the Document or a portion of it, either copied verbatim, or 5644 with modifications and/or translated into another language. 5645 5646 A "Secondary Section" is a named appendix or a front-matter 5647 section of the Document that deals exclusively with the 5648 relationship of the publishers or authors of the Document to 5649 the Document's overall subject (or to related matters) and 5650 contains nothing that could fall directly within that overall 5651 subject. (For example, if the Document is in part a textbook of 5652 mathematics, a Secondary Section may not explain any 5653 mathematics.) The relationship could be a matter of historical 5654 connection with the subject or with related matters, or of 5655 legal, commercial, philosophical, ethical or political position 5656 regarding them. 5657 5658 The "Invariant Sections" are certain Secondary Sections whose 5659 titles are designated, as being those of Invariant Sections, in 5660 the notice that says that the Document is released under this 5661 License. 5662 5663 The "Cover Texts" are certain short passages of text that are 5664 listed, as Front-Cover Texts or Back-Cover Texts, in the notice 5665 that says that the Document is released under this License. 5666 5667 A "Transparent" copy of the Document means a machine-readable 5668 copy, represented in a format whose specification is available 5669 to the general public, whose contents can be viewed and edited 5670 directly and straightforwardly with generic text editors or 5671 (for images composed of pixels) generic paint programs or (for 5672 drawings) some widely available drawing editor, and that is 5673 suitable for input to text formatters or for automatic 5674 translation to a variety of formats suitable for input to text 5675 formatters. A copy made in an otherwise Transparent file format 5676 whose markup has been designed to thwart or discourage 5677 subsequent modification by readers is not Transparent. A copy 5678 that is not "Transparent" is called "Opaque". 5679 5680 Examples of suitable formats for Transparent copies include 5681 plain ASCII without markup, Texinfo input format, LaTeX input 5682 format, SGML or XML using a publicly available DTD, and 5683 standard-conforming simple HTML designed for human 5684 modification. Opaque formats include PostScript, PDF, 5685 proprietary formats that can be read and edited only by 5686 proprietary word processors, SGML or XML for which the DTD 5687 and/or processing tools are not generally available, and the 5688 machine-generated HTML produced by some word processors for 5689 output purposes only. 5690 5691 The "Title Page" means, for a printed book, the title page 5692 itself, plus such following pages as are needed to hold, 5693 legibly, the material this License requires to appear in the 5694 title page. For works in formats which do not have any title 5695 page as such, "Title Page" means the text near the most 5696 prominent appearance of the work's title, preceding the 5697 beginning of the body of the text. 5698 __________________________________________________________ 5699 5700 B.3. VERBATIM COPYING 5701 5702 You may copy and distribute the Document in any medium, either 5703 commercially or noncommercially, provided that this License, 5704 the copyright notices, and the license notice saying this 5705 License applies to the Document are reproduced in all copies, 5706 and that you add no other conditions whatsoever to those of 5707 this License. You may not use technical measures to obstruct or 5708 control the reading or further copying of the copies you make 5709 or distribute. However, you may accept compensation in exchange 5710 for copies. If you distribute a large enough number of copies 5711 you must also follow the conditions in section 3. 5712 5713 You may also lend copies, under the same conditions stated 5714 above, and you may publicly display copies. 5715 __________________________________________________________ 5716 5717 B.4. COPYING IN QUANTITY 5718 5719 If you publish printed copies of the Document numbering more 5720 than 100, and the Document's license notice requires Cover 5721 Texts, you must enclose the copies in covers that carry, 5722 clearly and legibly, all these Cover Texts: Front-Cover Texts 5723 on the front cover, and Back-Cover Texts on the back cover. 5724 Both covers must also clearly and legibly identify you as the 5725 publisher of these copies. The front cover must present the 5726 full title with all words of the title equally prominent and 5727 visible. You may add other material on the covers in addition. 5728 Copying with changes limited to the covers, as long as they 5729 preserve the title of the Document and satisfy these 5730 conditions, can be treated as verbatim copying in other 5731 respects. 5732 5733 If the required texts for either cover are too voluminous to 5734 fit legibly, you should put the first ones listed (as many as 5735 fit reasonably) on the actual cover, and continue the rest onto 5736 adjacent pages. 5737 5738 If you publish or distribute Opaque copies of the Document 5739 numbering more than 100, you must either include a 5740 machine-readable Transparent copy along with each Opaque copy, 5741 or state in or with each Opaque copy a publicly-accessible 5742 computer-network location containing a complete Transparent 5743 copy of the Document, free of added material, which the general 5744 network-using public has access to download anonymously at no 5745 charge using public-standard network protocols. If you use the 5746 latter option, you must take reasonably prudent steps, when you 5747 begin distribution of Opaque copies in quantity, to ensure that 5748 this Transparent copy will remain thus accessible at the stated 5749 location until at least one year after the last time you 5750 distribute an Opaque copy (directly or through your agents or 5751 retailers) of that edition to the public. 5752 5753 It is requested, but not required, that you contact the authors 5754 of the Document well before redistributing any large number of 5755 copies, to give them a chance to provide you with an updated 5756 version of the Document. 5757 __________________________________________________________ 5758 5759 B.5. MODIFICATIONS 5760 5761 You may copy and distribute a Modified Version of the Document 5762 under the conditions of sections 2 and 3 above, provided that 5763 you release the Modified Version under precisely this License, 5764 with the Modified Version filling the role of the Document, 5765 thus licensing distribution and modification of the Modified 5766 Version to whoever possesses a copy of it. In addition, you 5767 must do these things in the Modified Version: 5768 5769 A. Use in the Title Page (and on the covers, if any) a title 5770 distinct from that of the Document, and from those of 5771 previous versions (which should, if there were any, be 5772 listed in the History section of the Document). You may use 5773 the same title as a previous version if the original 5774 publisher of that version gives permission. 5775 B. List on the Title Page, as authors, one or more persons or 5776 entities responsible for authorship of the modifications in 5777 the Modified Version, together with at least five of the 5778 principal authors of the Document (all of its principal 5779 authors, if it has less than five). 5780 C. State on the Title page the name of the publisher of the 5781 Modified Version, as the publisher. 5782 D. Preserve all the copyright notices of the Document. 5783 E. Add an appropriate copyright notice for your modifications 5784 adjacent to the other copyright notices. 5785 F. Include, immediately after the copyright notices, a license 5786 notice giving the public permission to use the Modified 5787 Version under the terms of this License, in the form shown 5788 in the Addendum below. 5789 G. Preserve in that license notice the full lists of Invariant 5790 Sections and required Cover Texts given in the Document's 5791 license notice. 5792 H. Include an unaltered copy of this License. 5793 I. Preserve the section entitled "History", and its title, and 5794 add to it an item stating at least the title, year, new 5795 authors, and publisher of the Modified Version as given on 5796 the Title Page. If there is no section entitled "History" 5797 in the Document, create one stating the title, year, 5798 authors, and publisher of the Document as given on its 5799 Title Page, then add an item describing the Modified 5800 Version as stated in the previous sentence. 5801 J. Preserve the network location, if any, given in the 5802 Document for public access to a Transparent copy of the 5803 Document, and likewise the network locations given in the 5804 Document for previous versions it was based on. These may 5805 be placed in the "History" section. You may omit a network 5806 location for a work that was published at least four years 5807 before the Document itself, or if the original publisher of 5808 the version it refers to gives permission. 5809 K. In any section entitled "Acknowledgements" or 5810 "Dedications", preserve the section's title, and preserve 5811 in the section all the substance and tone of each of the 5812 contributor acknowledgements and/or dedications given 5813 therein. 5814 L. Preserve all the Invariant Sections of the Document, 5815 unaltered in their text and in their titles. Section 5816 numbers or the equivalent are not considered part of the 5817 section titles. 5818 M. Delete any section entitled "Endorsements". Such a section 5819 may not be included in the Modified Version. 5820 N. Do not retitle any existing section as "Endorsements" or to 5821 conflict in title with any Invariant Section. 5822 5823 If the Modified Version includes new front-matter sections or 5824 appendices that qualify as Secondary Sections and contain no 5825 material copied from the Document, you may at your option 5826 designate some or all of these sections as invariant. To do 5827 this, add their titles to the list of Invariant Sections in the 5828 Modified Version's license notice. These titles must be 5829 distinct from any other section titles. 5830 5831 You may add a section entitled "Endorsements", provided it 5832 contains nothing but endorsements of your Modified Version by 5833 various parties--for example, statements of peer review or that 5834 the text has been approved by an organization as the 5835 authoritative definition of a standard. 5836 5837 You may add a passage of up to five words as a Front-Cover 5838 Text, and a passage of up to 25 words as a Back-Cover Text, to 5839 the end of the list of Cover Texts in the Modified Version. 5840 Only one passage of Front-Cover Text and one of Back-Cover Text 5841 may be added by (or through arrangements made by) any one 5842 entity. If the Document already includes a cover text for the 5843 same cover, previously added by you or by arrangement made by 5844 the same entity you are acting on behalf of, you may not add 5845 another; but you may replace the old one, on explicit 5846 permission from the previous publisher that added the old one. 5847 5848 The author(s) and publisher(s) of the Document do not by this 5849 License give permission to use their names for publicity for or 5850 to assert or imply endorsement of any Modified Version. 5851 __________________________________________________________ 5852 5853 B.6. COMBINING DOCUMENTS 5854 5855 You may combine the Document with other documents released 5856 under this License, under the terms defined in section 4 above 5857 for modified versions, provided that you include in the 5858 combination all of the Invariant Sections of all of the 5859 original documents, unmodified, and list them all as Invariant 5860 Sections of your combined work in its license notice. 5861 5862 The combined work need only contain one copy of this License, 5863 and multiple identical Invariant Sections may be replaced with 5864 a single copy. If there are multiple Invariant Sections with 5865 the same name but different contents, make the title of each 5866 such section unique by adding at the end of it, in parentheses, 5867 the name of the original author or publisher of that section if 5868 known, or else a unique number. Make the same adjustment to the 5869 section titles in the list of Invariant Sections in the license 5870 notice of the combined work. 5871 5872 In the combination, you must combine any sections entitled 5873 "History" in the various original documents, forming one 5874 section entitled "History"; likewise combine any sections 5875 entitled "Acknowledgements", and any sections entitled 5876 "Dedications". You must delete all sections entitled 5877 "Endorsements." 5878 __________________________________________________________ 5879 5880 B.7. COLLECTIONS OF DOCUMENTS 5881 5882 You may make a collection consisting of the Document and other 5883 documents released under this License, and replace the 5884 individual copies of this License in the various documents with 5885 a single copy that is included in the collection, provided that 5886 you follow the rules of this License for verbatim copying of 5887 each of the documents in all other respects. 5888 5889 You may extract a single document from such a collection, and 5890 distribute it individually under this License, provided you 5891 insert a copy of this License into the extracted document, and 5892 follow this License in all other respects regarding verbatim 5893 copying of that document. 5894 __________________________________________________________ 5895 5896 B.8. AGGREGATION WITH INDEPENDENT WORKS 5897 5898 A compilation of the Document or its derivatives with other 5899 separate and independent documents or works, in or on a volume 5900 of a storage or distribution medium, does not as a whole count 5901 as a Modified Version of the Document, provided no compilation 5902 copyright is claimed for the compilation. Such a compilation is 5903 called an "aggregate", and this License does not apply to the 5904 other self-contained works thus compiled with the Document, on 5905 account of their being thus compiled, if they are not 5906 themselves derivative works of the Document. 5907 5908 If the Cover Text requirement of section 3 is applicable to 5909 these copies of the Document, then if the Document is less than 5910 one quarter of the entire aggregate, the Document's Cover Texts 5911 may be placed on covers that surround only the Document within 5912 the aggregate. Otherwise they must appear on covers around the 5913 whole aggregate. 5914 __________________________________________________________ 5915 5916 B.9. TRANSLATION 5917 5918 Translation is considered a kind of modification, so you may 5919 distribute translations of the Document under the terms of 5920 section 4. Replacing Invariant Sections with translations 5921 requires special permission from their copyright holders, but 5922 you may include translations of some or all Invariant Sections 5923 in addition to the original versions of these Invariant 5924 Sections. You may include a translation of this License 5925 provided that you also include the original English version of 5926 this License. In case of a disagreement between the translation 5927 and the original English version of this License, the original 5928 English version will prevail. 5929 __________________________________________________________ 5930 5931 B.10. TERMINATION 5932 5933 You may not copy, modify, sublicense, or distribute the 5934 Document except as expressly provided for under this License. 5935 Any other attempt to copy, modify, sublicense or distribute the 5936 Document is void, and will automatically terminate your rights 5937 under this License. However, parties who have received copies, 5938 or rights, from you under this License will not have their 5939 licenses terminated so long as such parties remain in full 5940 compliance. 5941 __________________________________________________________ 5942 5943 B.11. FUTURE REVISIONS OF THIS LICENSE 5944 5945 The Free Software Foundation may publish new, revised versions 5946 of the GNU Free Documentation License from time to time. Such 5947 new versions will be similar in spirit to the present version, 5948 but may differ in detail to address new problems or concerns. 5949 See http://www.gnu.org/copyleft/. 5950 5951 Each version of the License is given a distinguishing version 5952 number. If the Document specifies that a particular numbered 5953 version of this License "or any later version" applies to it, 5954 you have the option of following the terms and conditions 5955 either of that specified version or of any later version that 5956 has been published (not as a draft) by the Free Software 5957 Foundation. If the Document does not specify a version number 5958 of this License, you may choose any version ever published (not 5959 as a draft) by the Free Software Foundation. 5960 __________________________________________________________ 5961 5962 B.12. How to use this License for your documents 5963 5964 To use this License in a document you have written, include a 5965 copy of the License in the document and put the following 5966 copyright and license notices just after the title page: 5967 5968 Copyright (c) YEAR YOUR NAME. Permission is granted to copy, 5969 distribute and/or modify this document under the terms of 5970 the GNU Free Documentation License, Version 1.1 or any later 5971 version published by the Free Software Foundation; with the 5972 Invariant Sections being LIST THEIR TITLES, with the 5973 Front-Cover Texts being LIST, and with the Back-Cover Texts 5974 being LIST. A copy of the license is included in the section 5975 entitled "GNU Free Documentation License". 5976 5977 If you have no Invariant Sections, write "with no Invariant 5978 Sections" instead of saying which ones are invariant. If you 5979 have no Front-Cover Texts, write "no Front-Cover Texts" instead 5980 of "Front-Cover Texts being LIST"; likewise for Back-Cover 5981 Texts. 5982 5983 If your document contains nontrivial examples of program code, 5984 we recommend releasing these examples in parallel under your 5985 choice of free software license, such as the GNU General Public 5986 License, to permit their use in free software.