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