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