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