1 2 Linux Standard Base Core Specification for PPC32 2.1 3 4 Copyright © 2004 Free Standards Group 5 6 Permission is granted to copy, distribute and/or modify this 7 document under the terms of the GNU Free Documentation 8 License, Version 1.1; with no Invariant Sections, with no 9 Front-Cover Texts, and with no Back-Cover Texts. A copy of the 10 license is included in the section entitled "GNU Free 11 Documentation License". 12 13 Portions of the text are copyrighted by the following parties: 14 15 * The Regents of the University of California 16 * Free Software Foundation 17 * Ian F. Darwin 18 * Paul Vixie 19 * BSDI (now Wind River) 20 * Andrew G Morgan 21 * Jean-loup Gailly and Mark Adler 22 * Massachusetts Institute of Technology 23 24 These excerpts are being used in accordance with their 25 respective licenses. 26 27 Linux is a trademark of Linus Torvalds. 28 29 UNIX a registered trademark of the Open Group in the United 30 States and other countries. 31 32 LSB is a trademark of the Free Standards Group in the USA and 33 other countries. 34 35 AMD is a trademark of Advanced Micro Devices, Inc. 36 37 Intel and Itanium are registered trademarks and Intel386 is a 38 trademarks of Intel Corporation. 39 40 OpenGL is a registered trademark of Silicon Graphics, Inc. 41 42 Table of Contents 43 Specification Introduction 44 ELF Specification 45 Linux Standard Base Specification 46 Linux Packaging Specification 47 Free Documentation License 48 49 Specification Introduction 50 _________________________________________________________ 51 52 Table of Contents 53 Foreword 54 Introduction 55 I. Introductory Elements 56 57 1. Scope 58 59 1.1. General 60 1.2. Module Specific Scope 61 62 2. Normative References 63 3. Requirements 64 65 3.1. Relevant Libraries 66 3.2. LSB Implementation Conformance 67 3.3. LSB Application Conformance 68 69 4. Definitions 70 5. Terminology 71 6. Documentation Conventions 72 73 List of Tables 74 2-1. Normative References 75 3-1. Standard Library Names 76 _________________________________________________________ 77 78 Foreword 79 80 This is version 2.1 of the Linux Standard Base Core 81 Specification for PPC32. An implementation of this version of 82 the specification may not claim to be an implementation of the 83 Linux Standard Base unless it has successfully completed the 84 compliance process as defined by the Free Standards Group. 85 _________________________________________________________ 86 87 Introduction 88 89 The LSB defines a binary interface for application programs 90 that are compiled and packaged for LSB-conforming 91 implementations on many different hardware architectures. 92 Since a binary specification shall include information 93 specific to the computer processor architecture for which it 94 is intended, it is not possible for a single document to 95 specify the interface for all possible LSB-conforming 96 implementations. Therefore, the LSB is a family of 97 specifications, rather than a single one. 98 99 This document should be used in conjunction with the documents 100 it references. This document enumerates the system components 101 it includes, but descriptions of those components may be 102 included entirely or partly in this document, partly in other 103 documents, or entirely in other reference documents. For 104 example, the section that describes system service routines 105 includes a list of the system routines supported in this 106 interface, formal declarations of the data structures they use 107 that are visible to applications, and a pointer to the 108 underlying referenced specification for information about the 109 syntax and semantics of each call. Only those routines not 110 described in standards referenced by this document, or 111 extensions to those standards, are described in the detail. 112 Information referenced in this way is as much a part of this 113 document as is the information explicitly included here. 114 115 The specification carries a version number of either the form 116 x.y or x.y.z. This version number carries the following 117 meaning: 118 119 * The first number (x) is the major version number. All 120 versions with the same major version number should share 121 binary compatibility. Any addition or deletion of a new 122 library results in a new version number. Interfaces marked 123 as deprecated may be removed from the specification at a 124 major version change. 125 * The second number (y) is the minor version number. 126 Individual interfaces may be added if all certified 127 implementations already had that (previously undocumented) 128 interface. Interfaces may be marked as deprecated at a 129 minor version change. Other minor changes may be permitted 130 at the discretion of the LSB workgroup. 131 * The third number (z), if present, is the editorial level. 132 Only editorial changes should be included in such 133 versions. 134 135 I. Introductory Elements 136 137 Table of Contents 138 1. Scope 139 2. Normative References 140 3. Requirements 141 4. Definitions 142 5. Terminology 143 6. Documentation Conventions 144 _________________________________________________________ 145 146 Chapter 1. Scope 147 148 1.1. General 149 150 The Linux Standard Base (LSB) defines a system interface for 151 compiled applications and a minimal environment for support of 152 installation scripts. Its purpose is to enable a uniform 153 industry standard environment for high-volume applications 154 conforming to the LSB. 155 156 These specifications are composed of two basic parts: A common 157 specification ("LSB-generic") describing those parts of the 158 interface that remain constant across all implementations of 159 the LSB, and an architecture-specific specification 160 ("LSB-arch") describing the parts of the interface that vary 161 by processor architecture. Together, the LSB-generic and the 162 architecture-specific supplement for a single hardware 163 architecture provide a complete interface specification for 164 compiled application programs on systems that share a common 165 hardware architecture. 166 167 The LSB-generic document shall be used in conjunction with an 168 architecture-specific supplement. Whenever a section of the 169 LSB-generic specification shall be supplemented by 170 architecture-specific information, the LSB-generic document 171 includes a reference to the architecture supplement. 172 Architecture supplements may also contain additional 173 information that is not referenced in the LSB-generic 174 document. 175 176 The LSB contains both a set of Application Program Interfaces 177 (APIs) and Application Binary Interfaces (ABIs). APIs may 178 appear in the source code of portable applications, while the 179 compiled binary of that application may use the larger set of 180 ABIs. A conforming implementation shall provide all of the 181 ABIs listed here. The compilation system may replace (e.g. by 182 macro definition) certain APIs with calls to one or more of 183 the underlying binary interfaces, and may insert calls to 184 binary interfaces as needed. 185 186 The LSB is primarily a binary interface definition. Not all of 187 the source level APIs available to applications may be 188 contained in this specification. 189 _________________________________________________________ 190 191 1.2. Module Specific Scope 192 193 This is the PPC32 architecture specific Core module of the 194 Linux Standards Base (LSB). This module supplements the 195 generic LSB Core module with those interfaces that differ 196 between architectures. 197 198 Interfaces described in this module are mandatory except where 199 explicitly listed otherwise. Core interfaces may be 200 supplemented by other modules; all modules are built upon the 201 core. 202 _________________________________________________________ 203 204 Chapter 2. Normative References 205 206 The specifications listed below are referenced in whole or in 207 part by the Linux Standard Base. In this specification, where 208 only a particular section of one of these references is 209 identified, then the normative reference is to that section 210 alone, and the rest of the referenced document is informative. 211 212 Table 2-1. Normative References 213 Name Title URL 214 DWARF Debugging Information Format DWARF Debugging Information 215 Format, Revision 2.0.0 (July 27, 1993) 216 http://www.eagercon.com/dwarf/dwarf-2.0.0.pdf 217 Filesystem Hierarchy Standard Filesystem Hierarchy Standard 218 (FHS) 2.3 http://www.pathname.com/fhs/ 219 IEEE Std 754-1985 IEEE Standard 754 for Binary Floating-Point 220 Arithmetic http://www.ieee.org/ 221 ISO C (1999) ISO/IEC 9899: 1999, Programming Languages --C 222 ISO POSIX (2003) 223 224 ISO/IEC 9945-1:2003 Information technology -- Portable 225 Operating System Interface (POSIX) -- Part 1: Base Definitions 226 227 ISO/IEC 9945-2:2003 Information technology -- Portable 228 Operating System Interface (POSIX) -- Part 2: System 229 Interfaces 230 231 ISO/IEC 9945-3:2003 Information technology -- Portable 232 Operating System Interface (POSIX) -- Part 3: Shell and 233 Utilities 234 235 ISO/IEC 9945-4:2003 Information technology -- Portable 236 Operating System Interface (POSIX) -- Part 4: Rationale 237 http://www.unix.org/version3/ 238 ITU-T V.42 International Telecommunication Union 239 Recommendation V.42 (2002): Error-correcting procedures for 240 DCEs using asynchronous-to-synchronous conversionITUV 241 http://www.itu.int/rec/recommendation.asp?type=folders&lang=e& 242 parent=T-REC-V.42 243 Large File Support Large File Support 244 http://www.UNIX-systems.org/version2/whatsnew/lfs20mar.html 245 Li18nux Globalization Specification LI18NUX 2000 Globalization 246 Specification, Version 1.0 with Amendment 4 247 http://www.li18nux.org/docs/html/LI18NUX-2000-amd4.htm 248 Linux Allocated Device Registry LINUX ALLOCATED DEVICES 249 http://www.lanana.org/docs/device-list/devices.txt 250 PAM Open Software Foundation, Request For Comments: 86.0 , 251 October 1995, V. Samar & R.Schemers (SunSoft) 252 http://www.opengroup.org/tech/rfc/mirror-rfc/rfc86.0.txt 253 RFC 1321: The MD5 Message-Digest Algorithm IETF RFC 1321: The 254 MD5 Message-Digest Algorithm 255 http://www.ietf.org/rfc/rfc1321.txt 256 RFC 1833: Binding Protocols for ONC RPC Version 2 IETF RFC 257 1833: Binding Protocols for ONC RPC Version 2 258 http://www.ietf.org/rfc/rfc1833.txt 259 RFC 1950: ZLIB Compressed Data Format Specication IETF RFC 260 1950: ZLIB Compressed Data Format Specification 261 http://www.ietf.org/rfc/rfc1950.txt 262 RFC 1951: DEFLATE Compressed Data Format Specification IETF 263 RFC 1951: DEFLATE Compressed Data Format Specification version 264 1.3 http://www.ietf.org/rfc/rfc1951.txt 265 RFC 1952: GZIP File Format Specification IETF RFC 1952: GZIP 266 file format specification version 4.3 267 http://www.ietf.org/rfc/rfc1952.txt 268 RFC 2440: OpenPGP Message Format IETF RFC 2440: OpenPGP 269 Message Format http://www.ietf.org/rfc/rfc2440.txt 270 SUSv2 CAE Specification, January 1997, System Interfaces and 271 Headers (XSH),Issue 5 (ISBN: 1-85912-181-0, C606) 272 http://www.opengroup.org/publications/catalog/un.htm 273 SUSv2 Command and Utilities The Single UNIX® 274 Specification(SUS) Version 2, Commands and Utilities (XCU), 275 Issue 5 (ISBN: 1-85912-191-8, C604) 276 http://www.opengroup.org/publications/catalog/un.htm 277 SVID Issue 3 American Telephone and Telegraph Company, System 278 V Interface Definition, Issue 3 ; Morristown, NJ, UNIX Press, 279 1989.(ISBN 0201566524) 280 SVID Issue 4 System V Interface Definition,Fourth Edition 281 System V ABI System V Application Binary Interface, Edition 282 4.1 http://www.caldera.com/developers/devspecs/gabi41.pdf 283 System V ABI Update System V Application Binary Interface - 284 DRAFT - 17 December 2003 285 http://www.caldera.com/developers/gabi/2003-12-17/contents.htm 286 l 287 System V Application Binary Interface PowerPC Processor 288 Supplement System V Application Binary Interface PowerPC 289 Processor Supplement http://www.esofta.com/pdfs/SVR4abippc.pdf 290 The PowerPC (TM) Architecture The PowerPC (TM) Architecture: A 291 Specification for a new family of RISC processors 292 http://www.austin.ibm.com 293 The PowerPC (TM) Architecture Book I Changes The PowerPC 294 Architecture Book I changes 295 http://www-1.ibm.com/servers/eserver/pseries/library/ppc_chg1. 296 html 297 The PowerPC (TM) Architecture Book II Changes The PowerPC 298 Architecture Book II changes 299 http://www-1.ibm.com/servers/eserver/pseries/library/ppc_chg2. 300 html 301 The PowerPC (TM) Architecture Book III Changes The PowerPC 302 Architecture Book III changes 303 http://www-1.ibm.com/servers/eserver/pseries/library/ppc_chg3. 304 html 305 this specification Linux Standard Base 306 http://www.linuxbase.org/spec/ 307 X/Open Curses CAE Specification, May 1996, X/Open Curses, 308 Issue 4, Version 2 (ISBN: 1-85912-171-3, C610), plus 309 Corrigendum U018 310 http://www.opengroup.org/publications/catalog/un.htm 311 _________________________________________________________ 312 313 Chapter 3. Requirements 314 315 3.1. Relevant Libraries 316 317 The libraries listed in Table 3-1 shall be available on PPC32 318 Linux Standard Base systems, with the specified runtime names. 319 These names override or supplement the names specified in the 320 generic LSB specification. The specified program interpreter, 321 referred to as proginterp in this table, shall be used to load 322 the shared libraries specified by DT_NEEDED entries at run 323 time. 324 325 Table 3-1. Standard Library Names 326 Library Runtime Name 327 libm libm.so.6 328 libdl libdl.so.2 329 libcrypt libcrypt.so.1 330 libz libz.so.1 331 libncurses libncurses.so.5 332 libutil libutil.so.1 333 libc libc.so.6 334 libpthread libpthread.so.0 335 proginterp /lib/ld-lsb-ppc32.so.2 336 libgcc_s libgcc_s.so.1 337 338 These libraries will be in an implementation-defined directory 339 which the dynamic linker shall search by default. 340 _________________________________________________________ 341 342 3.2. LSB Implementation Conformance 343 344 A conforming implementation shall satisfy the following 345 requirements: 346 347 * The implementation shall implement fully the architecture 348 described in the hardware manual for the target processor 349 architecture. 350 * The implementation shall be capable of executing compiled 351 applications having the format and using the system 352 interfaces described in this document. 353 * The implementation shall provide libraries containing the 354 interfaces specified by this document, and shall provide a 355 dynamic linking mechanism that allows these interfaces to 356 be attached to applications at runtime. All the interfaces 357 shall behave as specified in this document. 358 * The map of virtual memory provided by the implementation 359 shall conform to the requirements of this document. 360 * The implementation's low-level behavior with respect to 361 function call linkage, system traps, signals, and other 362 such activities shall conform to the formats described in 363 this document. 364 * The implementation shall provide all of the mandatory 365 interfaces in their entirety. 366 * The implementation may provide one or more of the optional 367 interfaces. Each optional interface that is provided shall 368 be provided in its entirety. The product documentation 369 shall state which optional interfaces are provided. 370 * The implementation shall provide all files and utilities 371 specified as part of this document in the format defined 372 here and in other referenced documents. All commands and 373 utilities shall behave as required by this document. The 374 implementation shall also provide all mandatory components 375 of an application's runtime environment that are included 376 or referenced in this document. 377 * The implementation, when provided with standard data 378 formats and values at a named interface, shall provide the 379 behavior defined for those values and data formats at that 380 interface. However, a conforming implementation may 381 consist of components which are separately packaged and/or 382 sold. For example, a vendor of a conforming implementation 383 might sell the hardware, operating system, and windowing 384 system as separately packaged items. 385 * The implementation may provide additional interfaces with 386 different names. It may also provide additional behavior 387 corresponding to data values outside the standard ranges, 388 for standard named interfaces. 389 _________________________________________________________ 390 391 3.3. LSB Application Conformance 392 393 A conforming application shall satisfy the following 394 requirements: 395 396 * Its executable files are either shell scripts or object 397 files in the format defined for the Object File Format 398 system interface. 399 * Its object files participate in dynamic linking as defined 400 in the Program Loading and Linking System interface. 401 * It employs only the instructions, traps, and other 402 low-level facilities defined in the Low-Level System 403 interface as being for use by applications. 404 * If it requires any optional interface defined in this 405 document in order to be installed or to execute 406 successfully, the requirement for that optional interface 407 is stated in the application's documentation. 408 * It does not use any interface or data format that is not 409 required to be provided by a conforming implementation, 410 unless: 411 + If such an interface or data format is supplied by 412 another application through direct invocation of that 413 application during execution, that application is in 414 turn an LSB conforming application. 415 + The use of that interface or data format, as well as 416 its source, is identified in the documentation of the 417 application. 418 * It shall not use any values for a named interface that are 419 reserved for vendor extensions. 420 421 A strictly conforming application does not require or use any 422 interface, facility, or implementation-defined extension that 423 is not defined in this document in order to be installed or to 424 execute successfully. 425 _________________________________________________________ 426 427 Chapter 4. Definitions 428 429 For the purposes of this document, the following definitions, 430 as specified in the ISO/IEC Directives, Part 2, 2001, 4th 431 Edition, apply: 432 433 can 434 be able to; there is a possibility of; it is possible 435 to 436 437 cannot 438 be unable to; there is no possibilty of; it is not 439 possible to 440 441 may 442 is permitted; is allowed; is permissible 443 444 need not 445 it is not required that; no...is required 446 447 shall 448 is to; is required to; it is required that; has to; 449 only...is permitted; it is necessary 450 451 shall not 452 is not allowed [permitted] [acceptable] [permissible]; 453 is required to be not; is required that...be not; is 454 not to be 455 456 should 457 it is recommended that; ought to 458 459 should not 460 it is not recommended that; ought not to 461 _________________________________________________________ 462 463 Chapter 5. Terminology 464 465 For the purposes of this document, the following terms apply: 466 467 archLSB 468 The architectural part of the LSB Specification which 469 describes the specific parts of the interface that are 470 platform specific. The archLSB is complementary to the 471 gLSB. 472 473 Binary Standard 474 The total set of interfaces that are available to be 475 used in the compiled binary code of a conforming 476 application. 477 478 gLSB 479 The common part of the LSB Specification that describes 480 those parts of the interface that remain constant 481 across all hardware implementations of the LSB. 482 483 implementation-defined 484 Describes a value or behavior that is not defined by 485 this document but is selected by an implementor. The 486 value or behavior may vary among implementations that 487 conform to this document. An application should not 488 rely on the existence of the value or behavior. An 489 application that relies on such a value or behavior 490 cannot be assured to be portable across conforming 491 implementations. The implementor shall document such a 492 value or behavior so that it can be used correctly by 493 an application. 494 495 Shell Script 496 A file that is read by an interpreter (e.g., awk). The 497 first line of the shell script includes a reference to 498 its interpreter binary. 499 500 Source Standard 501 The set of interfaces that are available to be used in 502 the source code of a conforming application. 503 504 undefined 505 Describes the nature of a value or behavior not defined 506 by this document which results from use of an invalid 507 program construct or invalid data input. The value or 508 behavior may vary among implementations that conform to 509 this document. An application should not rely on the 510 existence or validity of the value or behavior. An 511 application that relies on any particular value or 512 behavior cannot be assured to be portable across 513 conforming implementations. 514 515 unspecified 516 Describes the nature of a value or behavior not 517 specified by this document which results from use of a 518 valid program construct or valid data input. The value 519 or behavior may vary among implementations that conform 520 to this document. An application should not rely on the 521 existence or validity of the value or behavior. An 522 application that relies on any particular value or 523 behavior cannot be assured to be portable across 524 conforming implementations. 525 526 Other terms and definitions used in this document shall have 527 the same meaning as defined in Chapter 3 of the Base 528 Definitions volume of ISO POSIX (2003). 529 _________________________________________________________ 530 531 Chapter 6. Documentation Conventions 532 533 Throughout this document, the following typographic 534 conventions are used: 535 536 function() 537 the name of a function 538 539 command 540 the name of a command or utility 541 542 CONSTANT 543 a constant value 544 545 parameter 546 a parameter 547 548 variable 549 a variable 550 551 Throughout this specification, several tables of interfaces 552 are presented. Each entry in these tables has the following 553 format: 554 555 name 556 the name of the interface 557 558 (symver) 559 An optional symbol version identifier, if required. 560 561 [refno] 562 A reference number indexing the table of referenced 563 specifications that follows this table. 564 565 For example, 566 567 forkpty(GLIBC_2.0) [1] 568 569 refers to the interface named forkpty() with symbol version 570 GLIBC_2.0 that is defined in the first of the listed 571 references below the table. 572 573 ELF Specification 574 _________________________________________________________ 575 576 Table of Contents 577 I. Low Level System Information 578 579 1. Machine Interface 580 581 1.1. Processor Architecture 582 1.2. Data Representation 583 584 2. Function Calling Sequence 585 586 2.1. CPU Registers 587 2.2. Floating Point Registers 588 2.3. Stack Frame 589 2.4. Arguments 590 2.5. Return Values 591 592 3. Operating System Interface 593 594 3.1. Processor Execution Mode 595 3.2. Exception Interface 596 3.3. Signal Delivery 597 598 4. Process Initialization 599 600 4.1. Special Registers 601 4.2. Process Stack (on entry) 602 4.3. Auxiliary Vector 603 4.4. Environment 604 605 5. Coding Examples 606 607 5.1. Code Model Overview/Architecture Constraints 608 5.2. Position-Independent Function Prologue 609 5.3. Data Objects 610 5.4. Function Calls 611 5.5. Branching 612 613 6. C Stack Frame 614 615 6.1. Variable Argument List 616 6.2. Dynamic Allocation of Stack Space 617 618 7. Debug Information 619 620 II. Object Format 621 622 8. ELF Header 623 624 8.1. Machine Information 625 626 9. Sections 627 628 9.1. Special Sections 629 9.2. Linux Special Sections 630 9.3. Section Types 631 9.4. Section Attribute Flags 632 9.5. Special Section Types 633 634 10. Symbol Table 635 11. Relocation 636 637 11.1. Relocation Types 638 639 III. Program Loading and Dynamic Linking 640 641 12. Program Header 642 643 12.1. Types 644 12.2. Flags 645 646 13. Program Loading 647 14. Dynamic Linking 648 649 14.1. Dynamic Section 650 14.2. Global Offset Table 651 14.3. Shared Object Dependencies 652 14.4. Function Addresses 653 14.5. Procedure Linkage Table 654 14.6. Initialization and Termination Functions 655 656 List of Figures 657 4-1. Initial Process Stack 658 659 List of Tables 660 1-1. Scalar Types 661 4-1. Extra Auxiliary Types 662 9-1. ELF Special Sections 663 9-2. Additional Special Sections 664 665 I. Low Level System Information 666 667 Table of Contents 668 1. Machine Interface 669 2. Function Calling Sequence 670 3. Operating System Interface 671 4. Process Initialization 672 5. Coding Examples 673 6. C Stack Frame 674 7. Debug Information 675 _________________________________________________________ 676 677 Chapter 1. Machine Interface 678 679 1.1. Processor Architecture 680 681 The PowerPC Architecture is specified by the following 682 documents: 683 684 * System V Application Binary Interface PowerPC Processor 685 Supplement 686 * The PowerPC (TM) Architecture 687 * The PowerPC (TM) Architecture Book I Changes 688 * The PowerPC (TM) Architecture Book II Changes 689 * The PowerPC (TM) Architecture Book III Changes 690 691 Only the features of the PowerPC processor instruction set may 692 be assumed to be present. An application is responsible for 693 determining if any additional instruction set features are 694 available before using those additional features. If a feature 695 is not present, then the application may not use it. 696 697 Only instructions which do not require elevated privileges may 698 be used. 699 700 Applications may not make system calls directly. The 701 interfaces in the C library must be used instead. 702 703 An implementation must support the 32-bit computation mode as 704 described in The PowerPC (TM) Architecture. Conforming 705 applications shall not use instructions provided only for the 706 64-bit mode. 707 708 Applications conforming to this specification must provide 709 feedback to the user if a feature that is required for correct 710 execution of the application is not present. Applications 711 conforming to this specification should attempt to execute in 712 a diminished capacity if a required feature is not present. 713 714 This specification does not provide any performance guarantees 715 of a conforming system. A system conforming to this 716 specification may be implemented in either hardware or 717 software. 718 _________________________________________________________ 719 720 1.2. Data Representation 721 722 LSB-conforming applications shall use the data representation 723 as defined in Chapter 3 of the System V Application Binary 724 Interface PowerPC Processor Supplement. 725 _________________________________________________________ 726 727 1.2.1. Byte Ordering 728 729 LSB-conforming applications shall use big-endian byte 730 ordering. LSB-conforming implementations may support 731 little-endian applications. 732 _________________________________________________________ 733 734 1.2.2. Fundamental Types 735 736 In addition to the fundamental types specified in Chapter 3 of 737 the System V Application Binary Interface PowerPC Processor 738 Supplement, a 64 bit data type is defined here. 739 740 Table 1-1. Scalar Types 741 Type C sizeof Alignment (bytes) IntelI386 Architecture 742 Integral long long 8 8 signed double word 743 signed long long 744 unsigned long long 8 8 unsigned double word 745 746 LSB-conforming applications shall not use the long double 747 fundamental type. 748 _________________________________________________________ 749 750 1.2.3. Aggregates and Unions 751 _________________________________________________________ 752 753 1.2.4. Bit Fields 754 _________________________________________________________ 755 756 Chapter 2. Function Calling Sequence 757 758 LSB-conforming applications shall use the function calling 759 sequence as defined in Chapter 3 of the System V Application 760 Binary Interface PowerPC Processor Supplement. 761 _________________________________________________________ 762 763 2.1. CPU Registers 764 765 See Chapter 3 of the System V Application Binary Interface 766 PowerPC Processor Supplement. 767 _________________________________________________________ 768 769 2.2. Floating Point Registers 770 771 See Chapter 3 of the System V Application Binary Interface 772 PowerPC Processor Supplement. 773 _________________________________________________________ 774 775 2.3. Stack Frame 776 777 See Chapter 3 of the System V Application Binary Interface 778 PowerPC Processor Supplement. 779 _________________________________________________________ 780 781 2.4. Arguments 782 783 See Chapter 3 of the System V Application Binary Interface 784 PowerPC Processor Supplement. 785 _________________________________________________________ 786 787 2.5. Return Values 788 789 LSB-conforming applications shall not return structures or 790 unions in registers as described in Section 3 of System V 791 Application Binary Interface PowerPC Processor Supplement. 792 Instead they must use the alternative method of passing the 793 address of a buffer in a register as shown in the same 794 section. 795 _________________________________________________________ 796 797 Chapter 3. Operating System Interface 798 799 LSB-conforming applications shall use the Operating System 800 Interfaces as defined in Chapter 3 of the System V Application 801 Binary Interface PowerPC Processor Supplement. 802 _________________________________________________________ 803 804 3.1. Processor Execution Mode 805 806 See Chapter 3 of the System V Application Binary Interface 807 PowerPC Processor Supplement. 808 _________________________________________________________ 809 810 3.2. Exception Interface 811 812 See Chapter 3 of the System V Application Binary Interface 813 PowerPC Processor Supplement. 814 _________________________________________________________ 815 816 3.2.1. Hardware Exception Types 817 818 See Chapter 3 of the System V Application Binary Interface 819 PowerPC Processor Supplement. 820 _________________________________________________________ 821 822 3.2.2. Software Trap Types 823 824 See Chapter 3 of the System V Application Binary Interface 825 PowerPC Processor Supplement. 826 _________________________________________________________ 827 828 3.2.3. Debugging Support 829 830 See Chapter 3 of the System V Application Binary Interface 831 PowerPC Processor Supplement. 832 _________________________________________________________ 833 834 3.2.4. Process Startup 835 836 See Chapter 3 of the System V Application Binary Interface 837 PowerPC Processor Supplement. 838 _________________________________________________________ 839 840 3.3. Signal Delivery 841 _________________________________________________________ 842 843 3.3.1. Signal Handler Interface 844 845 See Chapter 3 of the System V Application Binary Interface 846 PowerPC Processor Supplement. 847 _________________________________________________________ 848 849 Chapter 4. Process Initialization 850 851 LSB-conforming applications shall use the Operating System 852 Interfaces as defined in Chapter 3 of the System V Application 853 Binary Interface PowerPC Processor Supplement. 854 _________________________________________________________ 855 856 4.1. Special Registers 857 858 Contrary to what is stated in the Registers part of Chapter 3 859 of the System V Application Binary Interface PowerPC Processor 860 Supplement there are no values set in registers r3, r4, r5, r6 861 and r7. Instead the values specified to appear in all of those 862 registers except r7 are placed on the stack. The value to be 863 placed into register r7, the termination function pointer is 864 not passed to the process. 865 _________________________________________________________ 866 867 4.2. Process Stack (on entry) 868 869 Figure 3-31 in System V Application Binary Interface PowerPC 870 Processor Supplement is incorrect. The initial stack must look 871 like the following. 872 873 [initial_process_stack.jpg] 874 875 Figure 4-1. Initial Process Stack 876 _________________________________________________________ 877 878 4.3. Auxiliary Vector 879 880 In addition to the types defined in Chapter 3 of the System V 881 Application Binary Interface PowerPC Processor Supplement the 882 following are also supported: 883 884 Table 4-1. Extra Auxiliary Types 885 Name Value Comment 886 AT_NOTELF 10 Program is not ELF 887 AT_UID 11 Real uid 888 AT_EUID 12 Effective uid 889 AT_GID 13 Real gid 890 AT_EGID 14 Effective gid 891 AT_PLATFORM 15 String identifying CPU for optimizations 892 AT_HWCAP 16 Arch dependent hints at CPU capabilities 893 AT_CLKTCK 17 Frequency at which times() increments 894 AT_DCACHEBSIZE 19 The a_val member of this entry gives the 895 data cache block size for processors on the system on which 896 this program is running. If the processors have unified 897 caches, AT_DCACHEBSIZE is the same as AT_UCACHEBSIZE 898 AT_ICACHEBSIZE 20 The a_val member of this entyr gives the 899 instruction cache block size for processors on the system on 900 which this program is running. If the processors have unified 901 caches, AT_DCACHEBSIZE is the same as AT_UCACHEBSIZE. 902 AT_UCACHEBSIZE 21 The a_val member of this entry is zero if 903 the processors on the system on which this program is running 904 do not have a unified instruction and data cache. Otherwise it 905 gives the cache block size. 906 AT_IGNOREPPC 22 All entries of this type should be ignored. 907 908 The last three entries in the table above override the values 909 specified in System V Application Binary Interface PowerPC 910 Processor Supplement. 911 _________________________________________________________ 912 913 4.4. Environment 914 _________________________________________________________ 915 916 Chapter 5. Coding Examples 917 918 LSB-conforming applications may implement fundamental 919 operations using the Coding Examples as defined in Chapter 3 920 of the System V Application Binary Interface PowerPC Processor 921 Supplement. 922 _________________________________________________________ 923 924 5.1. Code Model Overview/Architecture Constraints 925 926 See Chapter 3 of the System V Application Binary Interface 927 PowerPC Processor Supplement. 928 _________________________________________________________ 929 930 5.2. Position-Independent Function Prologue 931 932 See Chapter 3 of the System V Application Binary Interface 933 PowerPC Processor Supplement. 934 _________________________________________________________ 935 936 5.3. Data Objects 937 _________________________________________________________ 938 939 5.3.1. Absolute Load & Store 940 941 See Chapter 3 of the System V Application Binary Interface 942 PowerPC Processor Supplement. 943 _________________________________________________________ 944 945 5.3.2. Position Relative Load & Store 946 947 See Chapter 3 of the System V Application Binary Interface 948 PowerPC Processor Supplement. 949 _________________________________________________________ 950 951 5.4. Function Calls 952 953 See Chapter 3 of the System V Application Binary Interface 954 PowerPC Processor Supplement. 955 _________________________________________________________ 956 957 5.4.1. Absolute Direct Function Call 958 959 See Chapter 3 of the System V Application Binary Interface 960 PowerPC Processor Supplement. 961 _________________________________________________________ 962 963 5.4.2. Absolute Indirect Function Call 964 965 See Chapter 3 of the System V Application Binary Interface 966 PowerPC Processor Supplement. 967 _________________________________________________________ 968 969 5.4.3. Position-Independent Direct Function Call 970 971 See Chapter 3 of the System V Application Binary Interface 972 PowerPC Processor Supplement. 973 _________________________________________________________ 974 975 5.4.4. Position-Independent Indirect Function Call 976 977 See Chapter 3 of the System V Application Binary Interface 978 PowerPC Processor Supplement. 979 _________________________________________________________ 980 981 5.5. Branching 982 983 See Chapter 3 of the System V Application Binary Interface 984 PowerPC Processor Supplement. 985 _________________________________________________________ 986 987 5.5.1. Branch Instruction 988 989 See Chapter 3 of the System V Application Binary Interface 990 PowerPC Processor Supplement. 991 _________________________________________________________ 992 993 5.5.2. Absolute switch() code 994 995 See Chapter 3 of the System V Application Binary Interface 996 PowerPC Processor Supplement. 997 _________________________________________________________ 998 999 5.5.3. Position-Independent switch() code 1000 1001 See Chapter 3 of the System V Application Binary Interface 1002 PowerPC Processor Supplement. 1003 _________________________________________________________ 1004 1005 Chapter 6. C Stack Frame 1006 1007 6.1. Variable Argument List 1008 1009 See Chapter 3 of the System V Application Binary Interface 1010 PowerPC Processor Supplement. 1011 _________________________________________________________ 1012 1013 6.2. Dynamic Allocation of Stack Space 1014 1015 See Chapter 3 of the System V Application Binary Interface 1016 PowerPC Processor Supplement. 1017 _________________________________________________________ 1018 1019 Chapter 7. Debug Information 1020 1021 The LSB does not currently specify the format of Debug 1022 information. 1023 1024 II. Object Format 1025 1026 LSB-conforming implementations shall support an object file , 1027 called Executable and Linking Format (ELF) as defined by the 1028 System V Application Binary Interface PowerPC Processor 1029 Supplement and as supplemented by the Linux Standard Base 1030 Specification and this document. LSB-conforming 1031 implementations need not support tags related functionality. 1032 LSB-conforming applications must not rely on tags related 1033 functionality. 1034 1035 Table of Contents 1036 8. ELF Header 1037 9. Sections 1038 10. Symbol Table 1039 11. Relocation 1040 _________________________________________________________ 1041 1042 Chapter 8. ELF Header 1043 1044 8.1. Machine Information 1045 1046 LSB-conforming applications shall use the Machine Information 1047 as defined in System V Application Binary Interface PowerPC 1048 Processor Supplement, Chapter 4. 1049 _________________________________________________________ 1050 1051 8.1.1. File Class 1052 _________________________________________________________ 1053 1054 8.1.2. Data Encoding 1055 _________________________________________________________ 1056 1057 8.1.3. OS Identification 1058 _________________________________________________________ 1059 1060 8.1.4. Processor Identification 1061 1062 See Chapter 4 of the System V Application Binary Interface 1063 PowerPC Processor Supplement. 1064 _________________________________________________________ 1065 1066 8.1.5. Processor Specific Flags 1067 1068 See Chapter 4 of the System V Application Binary Interface 1069 PowerPC Processor Supplement. 1070 _________________________________________________________ 1071 1072 Chapter 9. Sections 1073 _________________________________________________________ 1074 1075 9.1. Special Sections 1076 1077 The following sections are defined in the System V Application 1078 Binary Interface PowerPC Processor Supplement. 1079 1080 Table 9-1. ELF Special Sections 1081 Name Type Attributes 1082 .got SHT_PROGBITS SHF_ALLOC+SHF_WRITE+SHF_EXECINSTR 1083 .plt SHT_NOBITS SHF_ALLOC+SHF_WRITE+SHF_EXECINSTR 1084 .sdata SHT_PROGBITS SHF_ALLOC+SHF_WRITE 1085 1086 .got 1087 This section holds the global offset table. See `Coding 1088 Examples' in Chapter 3, `Special Sections' in Chapter 1089 4, and `Global Offset Table' in Chapter 5 of the 1090 processor supplement for more information. 1091 1092 .plt 1093 This section holds the Procedure Linkage Table 1094 1095 .sdata 1096 This section holds initialized small data that 1097 contribute to the program memory image 1098 1099 Note that the .tags, .taglist and .tagsym sections described 1100 in System V Application Binary Interface PowerPC Processor 1101 Supplement are not supported. 1102 _________________________________________________________ 1103 1104 9.2. Linux Special Sections 1105 1106 The following Linux PPC32 specific sections are defined here. 1107 1108 Table 9-2. Additional Special Sections 1109 Name Type Attributes 1110 .got2 SHT_PROGBITS SHF_ALLOC+SHF_WRITE 1111 .rela.bss SHT_RELA SHF_ALLOC 1112 .rela.dyn SHT_RELA SHF_ALLOC 1113 .rela.got SHT_RELA SHF_ALLOC 1114 .rela.got2 SHT_RELA SHF_ALLOC 1115 .rela.plt SHT_RELA SHF_ALLOC 1116 .rela.sbss SHT_RELA SHF_ALLOC 1117 .sbss SHT_NOBITS SHF_ALLOC+SHF_WRITE 1118 .sdata2 SHT_PROGBITS SHF_ALLOC 1119 1120 .got2 1121 This section holds the second level GOT 1122 1123 .rela.bss 1124 This section holds RELA type relocation information for 1125 the BSS section of a shared library or dynamically 1126 linked application 1127 1128 .rela.dyn 1129 This section holds RELA type relocation information for 1130 all sections of a shared library except the PLT 1131 1132 .rela.got 1133 This section holds RELA type relocation information for 1134 the GOT section of a shared library or dynamically 1135 linked application 1136 1137 .rela.got2 1138 This section holds RELA type relocation information for 1139 the second level GOT section of a shared library or 1140 dynamically linked application 1141 1142 .rela.plt 1143 This section holds RELA type relocation information for 1144 the PLT section of a shared library or dynamically 1145 linked application 1146 1147 .rela.sbss 1148 This section holds RELA type relocation information for 1149 the SBSS section of a shared library or dynamically 1150 linked application 1151 1152 .sbss 1153 This section holds uninitialized data that contribute 1154 to the program's memory image. The system initializes 1155 the data with zeroes when the program begins to run. 1156 1157 .sdata2 1158 This section holds the second level of initialised 1159 small data 1160 _________________________________________________________ 1161 1162 9.3. Section Types 1163 1164 See Chapter 4 of the System V Application Binary Interface 1165 PowerPC Processor Supplement. 1166 _________________________________________________________ 1167 1168 9.4. Section Attribute Flags 1169 1170 See Chapter 4 of the System V Application Binary Interface 1171 PowerPC Processor Supplement. 1172 _________________________________________________________ 1173 1174 9.5. Special Section Types 1175 1176 See Chapter 4 of the System V Application Binary Interface 1177 PowerPC Processor Supplement. 1178 _________________________________________________________ 1179 1180 Chapter 10. Symbol Table 1181 1182 LSB-conforming applications shall use the Symbol Table as 1183 defined in Chapter 4 of the System V Application Binary 1184 Interface PowerPC Processor Supplement. 1185 _________________________________________________________ 1186 1187 Chapter 11. Relocation 1188 1189 LSB-conforming applications shall use Relocations as defined 1190 in Chapter 4 of the System V Application Binary Interface 1191 PowerPC Processor Supplement. 1192 _________________________________________________________ 1193 1194 11.1. Relocation Types 1195 1196 The relocation type R_PPC_ADDR30 as specified in Table 4-8 of 1197 System V Application Binary Interface PowerPC Processor 1198 Supplement is not supported. 1199 1200 III. Program Loading and Dynamic Linking 1201 1202 LSB-conforming implementations shall support the object file 1203 information and system actions that create running programs as 1204 specified in the System V ABI, System V Application Binary 1205 Interface PowerPC Processor Supplement and as supplemented by 1206 the generic Linux Standard Base Specification and this 1207 document. 1208 1209 Table of Contents 1210 12. Program Header 1211 13. Program Loading 1212 14. Dynamic Linking 1213 _________________________________________________________ 1214 1215 Chapter 12. Program Header 1216 _________________________________________________________ 1217 1218 12.1. Types 1219 _________________________________________________________ 1220 1221 12.2. Flags 1222 _________________________________________________________ 1223 1224 Chapter 13. Program Loading 1225 1226 See System V Application Binary Interface PowerPC Processor 1227 Supplement, Chapter 5.1. 1228 _________________________________________________________ 1229 1230 Chapter 14. Dynamic Linking 1231 1232 See System V Application Binary Interface PowerPC Processor 1233 Supplement, Chapter 5.4. 1234 _________________________________________________________ 1235 1236 14.1. Dynamic Section 1237 1238 The following dynamic entries are defined in the System V 1239 Application Binary Interface PowerPC Processor Supplement, 1240 Chapter 5.4. 1241 1242 DT_JMPREL 1243 This entry is associated with a table of relocation 1244 entries for the procedure linkage table. This entry is 1245 mandatory both for executable and shared object files 1246 1247 DT_PLTGOT 1248 This entry's d_ptr member gives the address of the 1249 first byte in the procedure linkage table 1250 1251 In addtion the following dynamic entries are also supported: 1252 1253 DT_RELACOUNT 1254 The number of relative relocations in .rela.dyn 1255 _________________________________________________________ 1256 1257 14.2. Global Offset Table 1258 1259 See System V Application Binary Interface PowerPC Processor 1260 Supplement, Chapter 5.4. 1261 _________________________________________________________ 1262 1263 14.3. Shared Object Dependencies 1264 1265 See Chapter 5 of the System V Application Binary Interface 1266 PowerPC Processor Supplement. 1267 _________________________________________________________ 1268 1269 14.4. Function Addresses 1270 1271 See Chapter 5 of the System V Application Binary Interface 1272 PowerPC Processor Supplement. 1273 _________________________________________________________ 1274 1275 14.5. Procedure Linkage Table 1276 1277 See Chapter 5 of the System V Application Binary Interface 1278 PowerPC Processor Supplement. 1279 _________________________________________________________ 1280 1281 14.6. Initialization and Termination Functions 1282 1283 Linux Standard Base Specification 1284 _________________________________________________________ 1285 1286 Table of Contents 1287 I. Base Libraries 1288 1289 1. Libraries 1290 1291 1.1. Program Interpreter/Dynamic Linker 1292 1.2. Interfaces for libc 1293 1.3. Data Definitions for libc 1294 1.4. Interfaces for libm 1295 1.5. Data Definitions for libm 1296 1.6. Interfaces for libpthread 1297 1.7. Interfaces for libgcc_s 1298 1.8. Interface Definitions for libgcc_s 1299 1.9. Interfaces for libdl 1300 1.10. Interfaces for libcrypt 1301 1302 II. Utility Libraries 1303 1304 2. Libraries 1305 1306 2.1. Interfaces for libz 1307 2.2. Data Definitions for libz 1308 2.3. Interfaces for libncurses 1309 2.4. Data Definitions for libncurses 1310 2.5. Interfaces for libutil 1311 1312 A. Alphabetical Listing of Interfaces 1313 1314 A.1. libgcc_s 1315 1316 List of Tables 1317 1-1. libc Definition 1318 1-2. libc - RPC Function Interfaces 1319 1-3. libc - RPC Deprecated Function Interfaces 1320 1-4. libc - System Calls Function Interfaces 1321 1-5. libc - System Calls Deprecated Function Interfaces 1322 1-6. libc - Standard I/O Function Interfaces 1323 1-7. libc - Standard I/O Data Interfaces 1324 1-8. libc - Signal Handling Function Interfaces 1325 1-9. libc - Signal Handling Deprecated Function Interfaces 1326 1-10. libc - Signal Handling Data Interfaces 1327 1-11. libc - Localization Functions Function Interfaces 1328 1-12. libc - Localization Functions Data Interfaces 1329 1-13. libc - Socket Interface Function Interfaces 1330 1-14. libc - Socket Interface Deprecated Function Interfaces 1331 1-15. libc - Wide Characters Function Interfaces 1332 1-16. libc - String Functions Function Interfaces 1333 1-17. libc - String Functions Deprecated Function Interfaces 1334 1-18. libc - IPC Functions Function Interfaces 1335 1-19. libc - Regular Expressions Function Interfaces 1336 1-20. libc - Regular Expressions Deprecated Function 1337 Interfaces 1338 1339 1-21. libc - Regular Expressions Deprecated Data Interfaces 1340 1-22. libc - Character Type Functions Function Interfaces 1341 1-23. libc - Time Manipulation Function Interfaces 1342 1-24. libc - Time Manipulation Deprecated Function Interfaces 1343 1-25. libc - Time Manipulation Data Interfaces 1344 1-26. libc - Terminal Interface Functions Function Interfaces 1345 1-27. libc - System Database Interface Function Interfaces 1346 1-28. libc - System Database Interface Deprecated Function 1347 Interfaces 1348 1349 1-29. libc - Language Support Function Interfaces 1350 1-30. libc - Large File Support Function Interfaces 1351 1-31. libc - Standard Library Function Interfaces 1352 1-32. libc - Standard Library Deprecated Function Interfaces 1353 1-33. libc - Standard Library Data Interfaces 1354 1-34. libm Definition 1355 1-35. libm - Math Function Interfaces 1356 1-36. libm - Math Data Interfaces 1357 1-37. libpthread Definition 1358 1-38. libpthread - Posix Threads Function Interfaces 1359 1-39. libgcc_s Definition 1360 1-40. libgcc_s - Unwind Library Function Interfaces 1361 1-41. libdl Definition 1362 1-42. libdl - Dynamic Loader Function Interfaces 1363 1-43. libcrypt Definition 1364 1-44. libcrypt - Encryption Function Interfaces 1365 2-1. libz Definition 1366 2-2. libncurses Definition 1367 2-3. libutil Definition 1368 2-4. libutil - Utility Functions Function Interfaces 1369 A-1. libgcc_s Function Interfaces 1370 1371 I. Base Libraries 1372 1373 Table of Contents 1374 1. Libraries 1375 _________________________________________________________ 1376 1377 Chapter 1. Libraries 1378 1379 An LSB-conforming implementation shall support base libraries 1380 which provide interfaces for accessing the operating system, 1381 processor and other hardware in the system. 1382 1383 Only those interfaces that are unique to the PowerPC 32 1384 platform are defined here. This section should be used in 1385 conjunction with the corresponding section in the Linux 1386 Standard Base Specification. 1387 _________________________________________________________ 1388 1389 1.1. Program Interpreter/Dynamic Linker 1390 1391 The LSB specifies the Program Interpreter to be 1392 /lib/ld-lsb-ppc32.so.2. 1393 _________________________________________________________ 1394 1395 1.2. Interfaces for libc 1396 1397 Table 1-1 defines the library name and shared object name for 1398 the libc library 1399 1400 Table 1-1. libc Definition 1401 Library: libc 1402 SONAME: libc.so.6 1403 1404 The behavior of the interfaces in this library is specified by 1405 the following specifications: 1406 1407 Large File Support 1408 this specification 1409 SUSv2 1410 ISO POSIX (2003) 1411 SVID Issue 3 1412 SVID Issue 4 1413 _________________________________________________________ 1414 1415 1.2.1. RPC 1416 _________________________________________________________ 1417 1418 1.2.1.1. Interfaces for RPC 1419 1420 An LSB conforming implementation shall provide the 1421 architecture specific functions for RPC specified in Table 1422 1-2, with the full functionality as described in the 1423 referenced underlying specification. 1424 1425 Table 1-2. libc - RPC Function Interfaces 1426 authnone_create(GLIBC_2.0) [1] svc_getreqset(GLIBC_2.0) [2] 1427 svcudp_create(GLIBC_2.0) [3] xdr_int(GLIBC_2.0) [2] 1428 xdr_u_long(GLIBC_2.0) [2] 1429 clnt_create(GLIBC_2.0) [1] svc_register(GLIBC_2.0) [3] 1430 xdr_accepted_reply(GLIBC_2.0) [2] xdr_long(GLIBC_2.0) [2] 1431 xdr_u_short(GLIBC_2.0) [2] 1432 clnt_pcreateerror(GLIBC_2.0) [1] svc_run(GLIBC_2.0) [3] 1433 xdr_array(GLIBC_2.0) [2] xdr_opaque(GLIBC_2.0) [2] 1434 xdr_union(GLIBC_2.0) [2] 1435 clnt_perrno(GLIBC_2.0) [1] svc_sendreply(GLIBC_2.0) [3] 1436 xdr_bool(GLIBC_2.0) [2] xdr_opaque_auth(GLIBC_2.0) [2] 1437 xdr_vector(GLIBC_2.0) [2] 1438 clnt_perror(GLIBC_2.0) [1] svcerr_auth(GLIBC_2.0) [2] 1439 xdr_bytes(GLIBC_2.0) [2] xdr_pointer(GLIBC_2.0) [2] 1440 xdr_void(GLIBC_2.0) [2] 1441 clnt_spcreateerror(GLIBC_2.0) [1] svcerr_decode(GLIBC_2.0) [2] 1442 xdr_callhdr(GLIBC_2.0) [2] xdr_reference(GLIBC_2.0) [2] 1443 xdr_wrapstring(GLIBC_2.0) [2] 1444 clnt_sperrno(GLIBC_2.0) [1] svcerr_noproc(GLIBC_2.0) [2] 1445 xdr_callmsg(GLIBC_2.0) [2] xdr_rejected_reply(GLIBC_2.0) [2] 1446 xdrmem_create(GLIBC_2.0) [2] 1447 clnt_sperror(GLIBC_2.0) [1] svcerr_noprog(GLIBC_2.0) [2] 1448 xdr_char(GLIBC_2.0) [2] xdr_replymsg(GLIBC_2.0) [2] 1449 xdrrec_create(GLIBC_2.0) [2] 1450 key_decryptsession(GLIBC_2.1) [2] svcerr_progvers(GLIBC_2.0) 1451 [2] xdr_double(GLIBC_2.0) [2] xdr_short(GLIBC_2.0) [2] 1452 xdrrec_eof(GLIBC_2.0) [2] 1453 pmap_getport(GLIBC_2.0) [3] svcerr_systemerr(GLIBC_2.0) [2] 1454 xdr_enum(GLIBC_2.0) [2] xdr_string(GLIBC_2.0) [2] 1455 pmap_set(GLIBC_2.0) [3] svcerr_weakauth(GLIBC_2.0) [2] 1456 xdr_float(GLIBC_2.0) [2] xdr_u_char(GLIBC_2.0) [2] 1457 pmap_unset(GLIBC_2.0) [3] svctcp_create(GLIBC_2.0) [3] 1458 xdr_free(GLIBC_2.0) [2] xdr_u_int(GLIBC_2.0) [3] 1459 1460 Referenced Specification(s) 1461 1462 [1]. SVID Issue 4 1463 1464 [2]. SVID Issue 3 1465 1466 [3]. this specification 1467 1468 An LSB conforming implementation shall provide the 1469 architecture specific deprecated functions for RPC specified 1470 in Table 1-3, with the full functionality as described in the 1471 referenced underlying specification. 1472 1473 Note: These interfaces are deprecated, and applications 1474 should avoid using them. These interfaces may be withdrawn 1475 in future releases of this specification. 1476 1477 Table 1-3. libc - RPC Deprecated Function Interfaces 1478 getdomainname(GLIBC_2.0) [1] setdomainname(GLIBC_2.0) [1] 1479 1480 Referenced Specification(s) 1481 1482 [1]. this specification 1483 _________________________________________________________ 1484 1485 1.2.2. System Calls 1486 _________________________________________________________ 1487 1488 1.2.2.1. Interfaces for System Calls 1489 1490 An LSB conforming implementation shall provide the 1491 architecture specific functions for System Calls specified in 1492 Table 1-4, with the full functionality as described in the 1493 referenced underlying specification. 1494 1495 Table 1-4. libc - System Calls Function Interfaces 1496 __fxstat(GLIBC_2.0) [1] fchmod(GLIBC_2.0) [2] getwd(GLIBC_2.0) 1497 [2] read(GLIBC_2.0) [2] setrlimit(GLIBC_2.2) [2] 1498 __getpgid(GLIBC_2.0) [1] fchown(GLIBC_2.0) [2] 1499 initgroups(GLIBC_2.0) [1] readdir(GLIBC_2.0) [2] 1500 setrlimit64(GLIBC_2.1) [3] 1501 __lxstat(GLIBC_2.0) [1] fcntl(GLIBC_2.0) [1] ioctl(GLIBC_2.0) 1502 [1] readdir_r(GLIBC_2.0) [2] setsid(GLIBC_2.0) [2] 1503 __xmknod(GLIBC_2.0) [1] fdatasync(GLIBC_2.0) [2] 1504 kill(GLIBC_2.0) [1] readlink(GLIBC_2.0) [2] setuid(GLIBC_2.0) 1505 [2] 1506 __xstat(GLIBC_2.0) [1] flock(GLIBC_2.0) [1] killpg(GLIBC_2.0) 1507 [2] readv(GLIBC_2.0) [2] sleep(GLIBC_2.0) [2] 1508 access(GLIBC_2.0) [2] fork(GLIBC_2.0) [2] lchown(GLIBC_2.0) 1509 [2] rename(GLIBC_2.0) [2] statvfs(GLIBC_2.1) [2] 1510 acct(GLIBC_2.0) [1] fstatvfs(GLIBC_2.1) [2] link(GLIBC_2.0) 1511 [2] rmdir(GLIBC_2.0) [2] stime(GLIBC_2.0) [1] 1512 alarm(GLIBC_2.0) [2] fsync(GLIBC_2.0) [2] lockf(GLIBC_2.0) [2] 1513 sbrk(GLIBC_2.0) [4] symlink(GLIBC_2.0) [2] 1514 brk(GLIBC_2.0) [4] ftime(GLIBC_2.0) [2] lseek(GLIBC_2.0) [2] 1515 sched_get_priority_max(GLIBC_2.0) [2] sync(GLIBC_2.0) [2] 1516 chdir(GLIBC_2.0) [2] ftruncate(GLIBC_2.0) [2] mkdir(GLIBC_2.0) 1517 [2] sched_get_priority_min(GLIBC_2.0) [2] sysconf(GLIBC_2.0) 1518 [2] 1519 chmod(GLIBC_2.0) [2] getcontext(GLIBC_2.3.3) [2] 1520 mkfifo(GLIBC_2.0) [2] sched_getparam(GLIBC_2.0) [2] 1521 time(GLIBC_2.0) [2] 1522 chown(GLIBC_2.1) [2] getegid(GLIBC_2.0) [2] mlock(GLIBC_2.0) 1523 [2] sched_getscheduler(GLIBC_2.0) [2] times(GLIBC_2.0) [2] 1524 chroot(GLIBC_2.0) [4] geteuid(GLIBC_2.0) [2] 1525 mlockall(GLIBC_2.0) [2] sched_rr_get_interval(GLIBC_2.0) [2] 1526 truncate(GLIBC_2.0) [2] 1527 clock(GLIBC_2.0) [2] getgid(GLIBC_2.0) [2] mmap(GLIBC_2.0) [2] 1528 sched_setparam(GLIBC_2.0) [2] ulimit(GLIBC_2.0) [2] 1529 close(GLIBC_2.0) [2] getgroups(GLIBC_2.0) [2] 1530 mprotect(GLIBC_2.0) [2] sched_setscheduler(GLIBC_2.0) [2] 1531 umask(GLIBC_2.0) [2] 1532 closedir(GLIBC_2.0) [2] getitimer(GLIBC_2.0) [2] 1533 msync(GLIBC_2.0) [2] sched_yield(GLIBC_2.0) [2] 1534 uname(GLIBC_2.0) [2] 1535 creat(GLIBC_2.0) [1] getloadavg(GLIBC_2.2) [1] 1536 munlock(GLIBC_2.0) [2] select(GLIBC_2.0) [2] unlink(GLIBC_2.0) 1537 [1] 1538 dup(GLIBC_2.0) [2] getpagesize(GLIBC_2.0) [4] 1539 munlockall(GLIBC_2.0) [2] setcontext(GLIBC_2.3.3) [2] 1540 utime(GLIBC_2.0) [2] 1541 dup2(GLIBC_2.0) [2] getpgid(GLIBC_2.0) [2] munmap(GLIBC_2.0) 1542 [2] setegid(GLIBC_2.0) [2] utimes(GLIBC_2.0) [2] 1543 execl(GLIBC_2.0) [2] getpgrp(GLIBC_2.0) [2] 1544 nanosleep(GLIBC_2.0) [2] seteuid(GLIBC_2.0) [2] 1545 vfork(GLIBC_2.0) [2] 1546 execle(GLIBC_2.0) [2] getpid(GLIBC_2.0) [2] nice(GLIBC_2.0) 1547 [2] setgid(GLIBC_2.0) [2] wait(GLIBC_2.0) [2] 1548 execlp(GLIBC_2.0) [2] getppid(GLIBC_2.0) [2] open(GLIBC_2.0) 1549 [1] setitimer(GLIBC_2.0) [2] wait4(GLIBC_2.0) [1] 1550 execv(GLIBC_2.0) [2] getpriority(GLIBC_2.0) [2] 1551 opendir(GLIBC_2.0) [2] setpgid(GLIBC_2.0) [2] 1552 waitpid(GLIBC_2.0) [1] 1553 execve(GLIBC_2.0) [2] getrlimit(GLIBC_2.2) [2] 1554 pathconf(GLIBC_2.0) [2] setpgrp(GLIBC_2.0) [2] 1555 write(GLIBC_2.0) [2] 1556 execvp(GLIBC_2.0) [2] getrusage(GLIBC_2.0) [2] 1557 pause(GLIBC_2.0) [2] setpriority(GLIBC_2.0) [2] 1558 writev(GLIBC_2.0) [2] 1559 exit(GLIBC_2.0) [2] getsid(GLIBC_2.0) [2] pipe(GLIBC_2.0) [2] 1560 setregid(GLIBC_2.0) [2] 1561 fchdir(GLIBC_2.0) [2] getuid(GLIBC_2.0) [2] poll(GLIBC_2.0) 1562 [2] setreuid(GLIBC_2.0) [2] 1563 1564 Referenced Specification(s) 1565 1566 [1]. this specification 1567 1568 [2]. ISO POSIX (2003) 1569 1570 [3]. Large File Support 1571 1572 [4]. SUSv2 1573 1574 An LSB conforming implementation shall provide the 1575 architecture specific deprecated functions for System Calls 1576 specified in Table 1-5, with the full functionality as 1577 described in the referenced underlying specification. 1578 1579 Note: These interfaces are deprecated, and applications 1580 should avoid using them. These interfaces may be withdrawn 1581 in future releases of this specification. 1582 1583 Table 1-5. libc - System Calls Deprecated Function Interfaces 1584 wait3(GLIBC_2.0) [1] 1585 1586 Referenced Specification(s) 1587 1588 [1]. this specification 1589 _________________________________________________________ 1590 1591 1.2.3. Standard I/O 1592 _________________________________________________________ 1593 1594 1.2.3.1. Interfaces for Standard I/O 1595 1596 An LSB conforming implementation shall provide the 1597 architecture specific functions for Standard I/O specified in 1598 Table 1-6, with the full functionality as described in the 1599 referenced underlying specification. 1600 1601 Table 1-6. libc - Standard I/O Function Interfaces 1602 _IO_feof(GLIBC_2.0) [1] fgetpos(GLIBC_2.2) [2] 1603 fsetpos(GLIBC_2.2) [2] putchar(GLIBC_2.0) [2] 1604 sscanf(GLIBC_2.0) [2] 1605 _IO_getc(GLIBC_2.0) [1] fgets(GLIBC_2.0) [2] ftell(GLIBC_2.0) 1606 [2] putchar_unlocked(GLIBC_2.0) [2] telldir(GLIBC_2.0) [2] 1607 _IO_putc(GLIBC_2.0) [1] fgetwc_unlocked(GLIBC_2.2) [1] 1608 ftello(GLIBC_2.1) [2] puts(GLIBC_2.0) [2] tempnam(GLIBC_2.0) 1609 [2] 1610 _IO_puts(GLIBC_2.0) [1] fileno(GLIBC_2.0) [2] 1611 fwrite(GLIBC_2.0) [2] putw(GLIBC_2.0) [3] ungetc(GLIBC_2.0) 1612 [2] 1613 asprintf(GLIBC_2.0) [1] flockfile(GLIBC_2.0) [2] 1614 getc(GLIBC_2.0) [2] remove(GLIBC_2.0) [2] vasprintf(GLIBC_2.0) 1615 [1] 1616 clearerr(GLIBC_2.0) [2] fopen(GLIBC_2.1) [1] 1617 getc_unlocked(GLIBC_2.0) [2] rewind(GLIBC_2.0) [2] 1618 vdprintf(GLIBC_2.0) [1] 1619 ctermid(GLIBC_2.0) [2] fprintf(GLIBC_2.0) [2] 1620 getchar(GLIBC_2.0) [2] rewinddir(GLIBC_2.0) [2] 1621 vfprintf(GLIBC_2.0) [2] 1622 fclose(GLIBC_2.1) [2] fputc(GLIBC_2.0) [2] 1623 getchar_unlocked(GLIBC_2.0) [2] scanf(GLIBC_2.0) [2] 1624 vprintf(GLIBC_2.0) [2] 1625 fdopen(GLIBC_2.1) [2] fputs(GLIBC_2.0) [2] getw(GLIBC_2.0) [3] 1626 seekdir(GLIBC_2.0) [2] vsnprintf(GLIBC_2.0) [2] 1627 feof(GLIBC_2.0) [2] fread(GLIBC_2.0) [2] pclose(GLIBC_2.1) [2] 1628 setbuf(GLIBC_2.0) [2] vsprintf(GLIBC_2.0) [2] 1629 ferror(GLIBC_2.0) [2] freopen(GLIBC_2.0) [1] popen(GLIBC_2.1) 1630 [2] setbuffer(GLIBC_2.0) [1] 1631 fflush(GLIBC_2.0) [2] fscanf(GLIBC_2.0) [2] printf(GLIBC_2.0) 1632 [2] setvbuf(GLIBC_2.0) [2] 1633 fflush_unlocked(GLIBC_2.0) [1] fseek(GLIBC_2.0) [2] 1634 putc(GLIBC_2.0) [2] snprintf(GLIBC_2.0) [2] 1635 fgetc(GLIBC_2.0) [2] fseeko(GLIBC_2.1) [2] 1636 putc_unlocked(GLIBC_2.0) [2] sprintf(GLIBC_2.0) [2] 1637 1638 Referenced Specification(s) 1639 1640 [1]. this specification 1641 1642 [2]. ISO POSIX (2003) 1643 1644 [3]. SUSv2 1645 1646 An LSB conforming implementation shall provide the 1647 architecture specific data interfaces for Standard I/O 1648 specified in Table 1-7, with the full functionality as 1649 described in the referenced underlying specification. 1650 1651 Table 1-7. libc - Standard I/O Data Interfaces 1652 stderr(GLIBC_2.0) [1] stdin(GLIBC_2.0) [1] stdout(GLIBC_2.0) 1653 [1] 1654 1655 Referenced Specification(s) 1656 1657 [1]. ISO POSIX (2003) 1658 _________________________________________________________ 1659 1660 1.2.4. Signal Handling 1661 _________________________________________________________ 1662 1663 1.2.4.1. Interfaces for Signal Handling 1664 1665 An LSB conforming implementation shall provide the 1666 architecture specific functions for Signal Handling specified 1667 in Table 1-8, with the full functionality as described in the 1668 referenced underlying specification. 1669 1670 Table 1-8. libc - Signal Handling Function Interfaces 1671 __libc_current_sigrtmax(GLIBC_2.1) [1] sigaction(GLIBC_2.0) 1672 [2] sighold(GLIBC_2.1) [2] sigorset(GLIBC_2.0) [1] 1673 sigset(GLIBC_2.1) [2] 1674 __libc_current_sigrtmin(GLIBC_2.1) [1] sigaddset(GLIBC_2.0) 1675 [2] sigignore(GLIBC_2.1) [2] sigpause(GLIBC_2.0) [2] 1676 sigsuspend(GLIBC_2.0) [2] 1677 __sigsetjmp(GLIBC_2.0) [1] sigaltstack(GLIBC_2.0) [2] 1678 siginterrupt(GLIBC_2.0) [2] sigpending(GLIBC_2.0) [2] 1679 sigtimedwait(GLIBC_2.1) [2] 1680 __sysv_signal(GLIBC_2.0) [1] sigandset(GLIBC_2.0) [1] 1681 sigisemptyset(GLIBC_2.0) [1] sigprocmask(GLIBC_2.0) [2] 1682 sigwait(GLIBC_2.0) [2] 1683 bsd_signal(GLIBC_2.0) [2] sigdelset(GLIBC_2.0) [2] 1684 sigismember(GLIBC_2.0) [2] sigqueue(GLIBC_2.1) [2] 1685 sigwaitinfo(GLIBC_2.1) [2] 1686 psignal(GLIBC_2.0) [1] sigemptyset(GLIBC_2.0) [2] 1687 siglongjmp(GLIBC_2.0) [2] sigrelse(GLIBC_2.1) [2] 1688 raise(GLIBC_2.0) [2] sigfillset(GLIBC_2.0) [2] 1689 signal(GLIBC_2.0) [2] sigreturn(GLIBC_2.0) [1] 1690 1691 Referenced Specification(s) 1692 1693 [1]. this specification 1694 1695 [2]. ISO POSIX (2003) 1696 1697 An LSB conforming implementation shall provide the 1698 architecture specific deprecated functions for Signal Handling 1699 specified in Table 1-9, with the full functionality as 1700 described in the referenced underlying specification. 1701 1702 Note: These interfaces are deprecated, and applications 1703 should avoid using them. These interfaces may be withdrawn 1704 in future releases of this specification. 1705 1706 Table 1-9. libc - Signal Handling Deprecated Function 1707 Interfaces 1708 sigblock(GLIBC_2.0) [1] siggetmask(GLIBC_2.0) [1] 1709 sigstack(GLIBC_2.0) [2] 1710 1711 Referenced Specification(s) 1712 1713 [1]. this specification 1714 1715 [2]. SUSv2 1716 1717 An LSB conforming implementation shall provide the 1718 architecture specific data interfaces for Signal Handling 1719 specified in Table 1-10, with the full functionality as 1720 described in the referenced underlying specification. 1721 1722 Table 1-10. libc - Signal Handling Data Interfaces 1723 _sys_siglist(GLIBC_2.1) [1] 1724 1725 Referenced Specification(s) 1726 1727 [1]. this specification 1728 _________________________________________________________ 1729 1730 1.2.5. Localization Functions 1731 _________________________________________________________ 1732 1733 1.2.5.1. Interfaces for Localization Functions 1734 1735 An LSB conforming implementation shall provide the 1736 architecture specific functions for Localization Functions 1737 specified in Table 1-11, with the full functionality as 1738 described in the referenced underlying specification. 1739 1740 Table 1-11. libc - Localization Functions Function Interfaces 1741 bind_textdomain_codeset(GLIBC_2.2) [1] catopen(GLIBC_2.0) [2] 1742 dngettext(GLIBC_2.2) [1] iconv_open(GLIBC_2.1) [2] 1743 setlocale(GLIBC_2.0) [2] 1744 bindtextdomain(GLIBC_2.0) [1] dcgettext(GLIBC_2.0) [1] 1745 gettext(GLIBC_2.0) [1] localeconv(GLIBC_2.2) [2] 1746 textdomain(GLIBC_2.0) [1] 1747 catclose(GLIBC_2.0) [2] dcngettext(GLIBC_2.2) [1] 1748 iconv(GLIBC_2.1) [2] ngettext(GLIBC_2.2) [1] 1749 catgets(GLIBC_2.0) [2] dgettext(GLIBC_2.0) [1] 1750 iconv_close(GLIBC_2.1) [2] nl_langinfo(GLIBC_2.0) [2] 1751 1752 Referenced Specification(s) 1753 1754 [1]. this specification 1755 1756 [2]. ISO POSIX (2003) 1757 1758 An LSB conforming implementation shall provide the 1759 architecture specific data interfaces for Localization 1760 Functions specified in Table 1-12, with the full functionality 1761 as described in the referenced underlying specification. 1762 1763 Table 1-12. libc - Localization Functions Data Interfaces 1764 _nl_msg_cat_cntr(GLIBC_2.0) [1] 1765 1766 Referenced Specification(s) 1767 1768 [1]. this specification 1769 _________________________________________________________ 1770 1771 1.2.6. Socket Interface 1772 _________________________________________________________ 1773 1774 1.2.6.1. Interfaces for Socket Interface 1775 1776 An LSB conforming implementation shall provide the 1777 architecture specific functions for Socket Interface specified 1778 in Table 1-13, with the full functionality as described in the 1779 referenced underlying specification. 1780 1781 Table 1-13. libc - Socket Interface Function Interfaces 1782 __h_errno_location(GLIBC_2.0) [1] gethostname(GLIBC_2.0) [2] 1783 if_nameindex(GLIBC_2.1) [2] send(GLIBC_2.0) [2] 1784 socket(GLIBC_2.0) [2] 1785 accept(GLIBC_2.0) [2] getpeername(GLIBC_2.0) [2] 1786 if_nametoindex(GLIBC_2.1) [2] sendmsg(GLIBC_2.0) [2] 1787 socketpair(GLIBC_2.0) [2] 1788 bind(GLIBC_2.0) [2] getsockname(GLIBC_2.0) [2] 1789 listen(GLIBC_2.0) [2] sendto(GLIBC_2.0) [2] 1790 bindresvport(GLIBC_2.0) [1] getsockopt(GLIBC_2.0) [2] 1791 recv(GLIBC_2.0) [2] setsockopt(GLIBC_2.0) [1] 1792 connect(GLIBC_2.0) [2] if_freenameindex(GLIBC_2.1) [2] 1793 recvfrom(GLIBC_2.0) [2] shutdown(GLIBC_2.0) [2] 1794 gethostid(GLIBC_2.0) [2] if_indextoname(GLIBC_2.1) [2] 1795 recvmsg(GLIBC_2.0) [2] sockatmark(GLIBC_2.2.4) [2] 1796 1797 Referenced Specification(s) 1798 1799 [1]. this specification 1800 1801 [2]. ISO POSIX (2003) 1802 1803 An LSB conforming implementation shall provide the 1804 architecture specific deprecated functions for Socket 1805 Interface specified in Table 1-14, with the full functionality 1806 as described in the referenced underlying specification. 1807 1808 Note: These interfaces are deprecated, and applications 1809 should avoid using them. These interfaces may be withdrawn 1810 in future releases of this specification. 1811 1812 Table 1-14. libc - Socket Interface Deprecated Function 1813 Interfaces 1814 gethostbyname_r(GLIBC_2.1.2) [1] 1815 1816 Referenced Specification(s) 1817 1818 [1]. this specification 1819 _________________________________________________________ 1820 1821 1.2.7. Wide Characters 1822 _________________________________________________________ 1823 1824 1.2.7.1. Interfaces for Wide Characters 1825 1826 An LSB conforming implementation shall provide the 1827 architecture specific functions for Wide Characters specified 1828 in Table 1-15, with the full functionality as described in the 1829 referenced underlying specification. 1830 1831 Table 1-15. libc - Wide Characters Function Interfaces 1832 __wcstod_internal(GLIBC_2.0) [1] mbsinit(GLIBC_2.0) [2] 1833 vwscanf(GLIBC_2.2) [2] wcsnlen(GLIBC_2.1) [1] 1834 wcstoumax(GLIBC_2.1) [2] 1835 __wcstof_internal(GLIBC_2.0) [1] mbsnrtowcs(GLIBC_2.0) [1] 1836 wcpcpy(GLIBC_2.0) [1] wcsnrtombs(GLIBC_2.0) [1] 1837 wcstouq(GLIBC_2.0) [1] 1838 __wcstol_internal(GLIBC_2.0) [1] mbsrtowcs(GLIBC_2.0) [2] 1839 wcpncpy(GLIBC_2.0) [1] wcspbrk(GLIBC_2.0) [2] 1840 wcswcs(GLIBC_2.1) [2] 1841 __wcstold_internal(GLIBC_2.0) [1] mbstowcs(GLIBC_2.0) [2] 1842 wcrtomb(GLIBC_2.0) [2] wcsrchr(GLIBC_2.0) [2] 1843 wcswidth(GLIBC_2.0) [2] 1844 __wcstoul_internal(GLIBC_2.0) [1] mbtowc(GLIBC_2.0) [2] 1845 wcscasecmp(GLIBC_2.1) [1] wcsrtombs(GLIBC_2.0) [2] 1846 wcsxfrm(GLIBC_2.0) [2] 1847 btowc(GLIBC_2.0) [2] putwc(GLIBC_2.2) [2] wcscat(GLIBC_2.0) 1848 [2] wcsspn(GLIBC_2.0) [2] wctob(GLIBC_2.0) [2] 1849 fgetwc(GLIBC_2.2) [2] putwchar(GLIBC_2.2) [2] 1850 wcschr(GLIBC_2.0) [2] wcsstr(GLIBC_2.0) [2] wctomb(GLIBC_2.0) 1851 [2] 1852 fgetws(GLIBC_2.2) [2] swprintf(GLIBC_2.2) [2] 1853 wcscmp(GLIBC_2.0) [2] wcstod(GLIBC_2.0) [2] wctrans(GLIBC_2.0) 1854 [2] 1855 fputwc(GLIBC_2.2) [2] swscanf(GLIBC_2.2) [2] 1856 wcscoll(GLIBC_2.0) [2] wcstof(GLIBC_2.0) [2] wctype(GLIBC_2.0) 1857 [2] 1858 fputws(GLIBC_2.2) [2] towctrans(GLIBC_2.0) [2] 1859 wcscpy(GLIBC_2.0) [2] wcstoimax(GLIBC_2.1) [2] 1860 wcwidth(GLIBC_2.0) [2] 1861 fwide(GLIBC_2.2) [2] towlower(GLIBC_2.0) [2] 1862 wcscspn(GLIBC_2.0) [2] wcstok(GLIBC_2.0) [2] 1863 wmemchr(GLIBC_2.0) [2] 1864 fwprintf(GLIBC_2.2) [2] towupper(GLIBC_2.0) [2] 1865 wcsdup(GLIBC_2.0) [1] wcstol(GLIBC_2.0) [2] wmemcmp(GLIBC_2.0) 1866 [2] 1867 fwscanf(GLIBC_2.2) [2] ungetwc(GLIBC_2.2) [2] 1868 wcsftime(GLIBC_2.2) [2] wcstold(GLIBC_2.0) [2] 1869 wmemcpy(GLIBC_2.0) [2] 1870 getwc(GLIBC_2.2) [2] vfwprintf(GLIBC_2.2) [2] 1871 wcslen(GLIBC_2.0) [2] wcstoll(GLIBC_2.1) [2] 1872 wmemmove(GLIBC_2.0) [2] 1873 getwchar(GLIBC_2.2) [2] vfwscanf(GLIBC_2.2) [2] 1874 wcsncasecmp(GLIBC_2.1) [1] wcstombs(GLIBC_2.0) [2] 1875 wmemset(GLIBC_2.0) [2] 1876 mblen(GLIBC_2.0) [2] vswprintf(GLIBC_2.2) [2] 1877 wcsncat(GLIBC_2.0) [2] wcstoq(GLIBC_2.0) [1] 1878 wprintf(GLIBC_2.2) [2] 1879 mbrlen(GLIBC_2.0) [2] vswscanf(GLIBC_2.2) [2] 1880 wcsncmp(GLIBC_2.0) [2] wcstoul(GLIBC_2.0) [2] 1881 wscanf(GLIBC_2.2) [2] 1882 mbrtowc(GLIBC_2.0) [2] vwprintf(GLIBC_2.2) [2] 1883 wcsncpy(GLIBC_2.0) [2] wcstoull(GLIBC_2.1) [2] 1884 1885 Referenced Specification(s) 1886 1887 [1]. this specification 1888 1889 [2]. ISO POSIX (2003) 1890 _________________________________________________________ 1891 1892 1.2.8. String Functions 1893 _________________________________________________________ 1894 1895 1.2.8.1. Interfaces for String Functions 1896 1897 An LSB conforming implementation shall provide the 1898 architecture specific functions for String Functions specified 1899 in Table 1-16, with the full functionality as described in the 1900 referenced underlying specification. 1901 1902 Table 1-16. libc - String Functions Function Interfaces 1903 __mempcpy(GLIBC_2.0) [1] bzero(GLIBC_2.0) [2] 1904 strcasestr(GLIBC_2.1) [1] strncat(GLIBC_2.0) [2] 1905 strtok(GLIBC_2.0) [2] 1906 __rawmemchr(GLIBC_2.1) [1] ffs(GLIBC_2.0) [2] 1907 strcat(GLIBC_2.0) [2] strncmp(GLIBC_2.0) [2] 1908 strtok_r(GLIBC_2.0) [2] 1909 __stpcpy(GLIBC_2.0) [1] index(GLIBC_2.0) [2] strchr(GLIBC_2.0) 1910 [2] strncpy(GLIBC_2.0) [2] strtold(GLIBC_2.0) [2] 1911 __strdup(GLIBC_2.0) [1] memccpy(GLIBC_2.0) [2] 1912 strcmp(GLIBC_2.0) [2] strndup(GLIBC_2.0) [1] 1913 strtoll(GLIBC_2.0) [2] 1914 __strtod_internal(GLIBC_2.0) [1] memchr(GLIBC_2.0) [2] 1915 strcoll(GLIBC_2.0) [2] strnlen(GLIBC_2.0) [1] 1916 strtoq(GLIBC_2.0) [1] 1917 __strtof_internal(GLIBC_2.0) [1] memcmp(GLIBC_2.0) [2] 1918 strcpy(GLIBC_2.0) [2] strpbrk(GLIBC_2.0) [2] 1919 strtoull(GLIBC_2.0) [2] 1920 __strtok_r(GLIBC_2.0) [1] memcpy(GLIBC_2.0) [2] 1921 strcspn(GLIBC_2.0) [2] strptime(GLIBC_2.0) [1] 1922 strtoumax(GLIBC_2.1) [2] 1923 __strtol_internal(GLIBC_2.0) [1] memmove(GLIBC_2.0) [2] 1924 strdup(GLIBC_2.0) [2] strrchr(GLIBC_2.0) [2] 1925 strtouq(GLIBC_2.0) [1] 1926 __strtold_internal(GLIBC_2.0) [1] memrchr(GLIBC_2.2) [1] 1927 strerror(GLIBC_2.0) [2] strsep(GLIBC_2.0) [1] 1928 strxfrm(GLIBC_2.0) [2] 1929 __strtoll_internal(GLIBC_2.0) [1] memset(GLIBC_2.0) [2] 1930 strerror_r(GLIBC_2.0) [1] strsignal(GLIBC_2.0) [1] 1931 swab(GLIBC_2.0) [2] 1932 __strtoul_internal(GLIBC_2.0) [1] rindex(GLIBC_2.0) [2] 1933 strfmon(GLIBC_2.0) [2] strspn(GLIBC_2.0) [2] 1934 __strtoull_internal(GLIBC_2.0) [1] stpcpy(GLIBC_2.0) [1] 1935 strftime(GLIBC_2.0) [2] strstr(GLIBC_2.0) [2] 1936 bcmp(GLIBC_2.0) [2] stpncpy(GLIBC_2.0) [1] strlen(GLIBC_2.0) 1937 [2] strtof(GLIBC_2.0) [2] 1938 bcopy(GLIBC_2.0) [2] strcasecmp(GLIBC_2.0) [2] 1939 strncasecmp(GLIBC_2.0) [2] strtoimax(GLIBC_2.1) [2] 1940 1941 Referenced Specification(s) 1942 1943 [1]. this specification 1944 1945 [2]. ISO POSIX (2003) 1946 1947 An LSB conforming implementation shall provide the 1948 architecture specific deprecated functions for String 1949 Functions specified in Table 1-17, with the full functionality 1950 as described in the referenced underlying specification. 1951 1952 Note: These interfaces are deprecated, and applications 1953 should avoid using them. These interfaces may be withdrawn 1954 in future releases of this specification. 1955 1956 Table 1-17. libc - String Functions Deprecated Function 1957 Interfaces 1958 strfry(GLIBC_2.0) [1] strverscmp(GLIBC_2.1) [1] 1959 1960 Referenced Specification(s) 1961 1962 [1]. this specification 1963 _________________________________________________________ 1964 1965 1.2.9. IPC Functions 1966 _________________________________________________________ 1967 1968 1.2.9.1. Interfaces for IPC Functions 1969 1970 An LSB conforming implementation shall provide the 1971 architecture specific functions for IPC Functions specified in 1972 Table 1-18, with the full functionality as described in the 1973 referenced underlying specification. 1974 1975 Table 1-18. libc - IPC Functions Function Interfaces 1976 ftok(GLIBC_2.0) [1] msgrcv(GLIBC_2.0) [1] semget(GLIBC_2.0) 1977 [1] shmctl(GLIBC_2.2) [1] 1978 msgctl(GLIBC_2.2) [1] msgsnd(GLIBC_2.0) [1] semop(GLIBC_2.0) 1979 [1] shmdt(GLIBC_2.0) [1] 1980 msgget(GLIBC_2.0) [1] semctl(GLIBC_2.2) [1] shmat(GLIBC_2.0) 1981 [1] shmget(GLIBC_2.0) [1] 1982 1983 Referenced Specification(s) 1984 1985 [1]. ISO POSIX (2003) 1986 _________________________________________________________ 1987 1988 1.2.10. Regular Expressions 1989 _________________________________________________________ 1990 1991 1.2.10.1. Interfaces for Regular Expressions 1992 1993 An LSB conforming implementation shall provide the 1994 architecture specific functions for Regular Expressions 1995 specified in Table 1-19, with the full functionality as 1996 described in the referenced underlying specification. 1997 1998 Table 1-19. libc - Regular Expressions Function Interfaces 1999 regcomp(GLIBC_2.0) [1] regerror(GLIBC_2.0) [1] 2000 regexec(GLIBC_2.0) [1] regfree(GLIBC_2.0) [1] 2001 2002 Referenced Specification(s) 2003 2004 [1]. ISO POSIX (2003) 2005 2006 An LSB conforming implementation shall provide the 2007 architecture specific deprecated functions for Regular 2008 Expressions specified in Table 1-20, with the full 2009 functionality as described in the referenced underlying 2010 specification. 2011 2012 Note: These interfaces are deprecated, and applications 2013 should avoid using them. These interfaces may be withdrawn 2014 in future releases of this specification. 2015 2016 Table 1-20. libc - Regular Expressions Deprecated Function 2017 Interfaces 2018 advance(GLIBC_2.0) [1] re_comp(GLIBC_2.0) [1] 2019 re_exec(GLIBC_2.0) [1] step(GLIBC_2.0) [1] 2020 2021 Referenced Specification(s) 2022 2023 [1]. SUSv2 2024 2025 An LSB conforming implementation shall provide the 2026 architecture specific deprecated data interfaces for Regular 2027 Expressions specified in Table 1-21, with the full 2028 functionality as described in the referenced underlying 2029 specification. 2030 2031 Note: These interfaces are deprecated, and applications 2032 should avoid using them. These interfaces may be withdrawn 2033 in future releases of this specification. 2034 2035 Table 1-21. libc - Regular Expressions Deprecated Data 2036 Interfaces 2037 loc1(GLIBC_2.0) [1] loc2(GLIBC_2.0) [1] locs(GLIBC_2.0) [1] 2038 2039 Referenced Specification(s) 2040 2041 [1]. SUSv2 2042 _________________________________________________________ 2043 2044 1.2.11. Character Type Functions 2045 _________________________________________________________ 2046 2047 1.2.11.1. Interfaces for Character Type Functions 2048 2049 An LSB conforming implementation shall provide the 2050 architecture specific functions for Character Type Functions 2051 specified in Table 1-22, with the full functionality as 2052 described in the referenced underlying specification. 2053 2054 Table 1-22. libc - Character Type Functions Function 2055 Interfaces 2056 __ctype_get_mb_cur_max(GLIBC_2.0) [1] isdigit(GLIBC_2.0) [2] 2057 iswalnum(GLIBC_2.0) [2] iswlower(GLIBC_2.0) [2] 2058 toascii(GLIBC_2.0) [2] 2059 _tolower(GLIBC_2.0) [2] isgraph(GLIBC_2.0) [2] 2060 iswalpha(GLIBC_2.0) [2] iswprint(GLIBC_2.0) [2] 2061 tolower(GLIBC_2.0) [2] 2062 _toupper(GLIBC_2.0) [2] islower(GLIBC_2.0) [2] 2063 iswblank(GLIBC_2.1) [2] iswpunct(GLIBC_2.0) [2] 2064 toupper(GLIBC_2.0) [2] 2065 isalnum(GLIBC_2.0) [2] isprint(GLIBC_2.0) [2] 2066 iswcntrl(GLIBC_2.0) [2] iswspace(GLIBC_2.0) [2] 2067 isalpha(GLIBC_2.0) [2] ispunct(GLIBC_2.0) [2] 2068 iswctype(GLIBC_2.0) [2] iswupper(GLIBC_2.0) [2] 2069 isascii(GLIBC_2.0) [2] isspace(GLIBC_2.0) [2] 2070 iswdigit(GLIBC_2.0) [2] iswxdigit(GLIBC_2.0) [2] 2071 iscntrl(GLIBC_2.0) [2] isupper(GLIBC_2.0) [2] 2072 iswgraph(GLIBC_2.0) [2] isxdigit(GLIBC_2.0) [2] 2073 2074 Referenced Specification(s) 2075 2076 [1]. this specification 2077 2078 [2]. ISO POSIX (2003) 2079 _________________________________________________________ 2080 2081 1.2.12. Time Manipulation 2082 _________________________________________________________ 2083 2084 1.2.12.1. Interfaces for Time Manipulation 2085 2086 An LSB conforming implementation shall provide the 2087 architecture specific functions for Time Manipulation 2088 specified in Table 1-23, with the full functionality as 2089 described in the referenced underlying specification. 2090 2091 Table 1-23. libc - Time Manipulation Function Interfaces 2092 adjtime(GLIBC_2.0) [1] ctime(GLIBC_2.0) [2] gmtime(GLIBC_2.0) 2093 [2] localtime_r(GLIBC_2.0) [2] ualarm(GLIBC_2.0) [2] 2094 asctime(GLIBC_2.0) [2] ctime_r(GLIBC_2.0) [2] 2095 gmtime_r(GLIBC_2.0) [2] mktime(GLIBC_2.0) [2] 2096 asctime_r(GLIBC_2.0) [2] difftime(GLIBC_2.0) [2] 2097 localtime(GLIBC_2.0) [2] tzset(GLIBC_2.0) [2] 2098 2099 Referenced Specification(s) 2100 2101 [1]. this specification 2102 2103 [2]. ISO POSIX (2003) 2104 2105 An LSB conforming implementation shall provide the 2106 architecture specific deprecated functions for Time 2107 Manipulation specified in Table 1-24, with the full 2108 functionality as described in the referenced underlying 2109 specification. 2110 2111 Note: These interfaces are deprecated, and applications 2112 should avoid using them. These interfaces may be withdrawn 2113 in future releases of this specification. 2114 2115 Table 1-24. libc - Time Manipulation Deprecated Function 2116 Interfaces 2117 adjtimex(GLIBC_2.0) [1] 2118 2119 Referenced Specification(s) 2120 2121 [1]. this specification 2122 2123 An LSB conforming implementation shall provide the 2124 architecture specific data interfaces for Time Manipulation 2125 specified in Table 1-25, with the full functionality as 2126 described in the referenced underlying specification. 2127 2128 Table 1-25. libc - Time Manipulation Data Interfaces 2129 __daylight(GLIBC_2.0) [1] __tzname(GLIBC_2.0) [1] 2130 timezone(GLIBC_2.0) [2] 2131 __timezone(GLIBC_2.0) [1] daylight(GLIBC_2.0) [2] 2132 tzname(GLIBC_2.0) [2] 2133 2134 Referenced Specification(s) 2135 2136 [1]. this specification 2137 2138 [2]. ISO POSIX (2003) 2139 _________________________________________________________ 2140 2141 1.2.13. Terminal Interface Functions 2142 _________________________________________________________ 2143 2144 1.2.13.1. Interfaces for Terminal Interface Functions 2145 2146 An LSB conforming implementation shall provide the 2147 architecture specific functions for Terminal Interface 2148 Functions specified in Table 1-26, with the full functionality 2149 as described in the referenced underlying specification. 2150 2151 Table 1-26. libc - Terminal Interface Functions Function 2152 Interfaces 2153 cfgetispeed(GLIBC_2.0) [1] cfsetispeed(GLIBC_2.0) [1] 2154 tcdrain(GLIBC_2.0) [1] tcgetattr(GLIBC_2.0) [1] 2155 tcsendbreak(GLIBC_2.0) [1] 2156 cfgetospeed(GLIBC_2.0) [1] cfsetospeed(GLIBC_2.0) [1] 2157 tcflow(GLIBC_2.0) [1] tcgetpgrp(GLIBC_2.0) [1] 2158 tcsetattr(GLIBC_2.0) [1] 2159 cfmakeraw(GLIBC_2.0) [2] cfsetspeed(GLIBC_2.0) [2] 2160 tcflush(GLIBC_2.0) [1] tcgetsid(GLIBC_2.1) [1] 2161 tcsetpgrp(GLIBC_2.0) [1] 2162 2163 Referenced Specification(s) 2164 2165 [1]. ISO POSIX (2003) 2166 2167 [2]. this specification 2168 _________________________________________________________ 2169 2170 1.2.14. System Database Interface 2171 _________________________________________________________ 2172 2173 1.2.14.1. Interfaces for System Database Interface 2174 2175 An LSB conforming implementation shall provide the 2176 architecture specific functions for System Database Interface 2177 specified in Table 1-27, with the full functionality as 2178 described in the referenced underlying specification. 2179 2180 Table 1-27. libc - System Database Interface Function 2181 Interfaces 2182 endgrent(GLIBC_2.0) [1] getgrgid_r(GLIBC_2.0) [1] 2183 getpwent(GLIBC_2.0) [1] getutent(GLIBC_2.0) [2] 2184 setprotoent(GLIBC_2.0) [1] 2185 endprotoent(GLIBC_2.0) [1] getgrnam(GLIBC_2.0) [1] 2186 getpwnam(GLIBC_2.0) [1] getutent_r(GLIBC_2.0) [2] 2187 setpwent(GLIBC_2.0) [1] 2188 endpwent(GLIBC_2.0) [1] getgrnam_r(GLIBC_2.0) [1] 2189 getpwnam_r(GLIBC_2.0) [1] getutxent(GLIBC_2.1) [1] 2190 setservent(GLIBC_2.0) [1] 2191 endservent(GLIBC_2.0) [1] gethostbyaddr(GLIBC_2.0) [1] 2192 getpwuid(GLIBC_2.0) [1] getutxid(GLIBC_2.1) [1] 2193 setutent(GLIBC_2.0) [2] 2194 endutent(GLIBC_2.0) [3] gethostbyname(GLIBC_2.0) [1] 2195 getpwuid_r(GLIBC_2.1.2) [1] getutxline(GLIBC_2.1) [1] 2196 setutxent(GLIBC_2.1) [1] 2197 endutxent(GLIBC_2.1) [1] getprotobyname(GLIBC_2.0) [1] 2198 getservbyname(GLIBC_2.0) [1] pututxline(GLIBC_2.1) [1] 2199 utmpname(GLIBC_2.0) [2] 2200 getgrent(GLIBC_2.0) [1] getprotobynumber(GLIBC_2.0) [1] 2201 getservbyport(GLIBC_2.0) [1] setgrent(GLIBC_2.0) [1] 2202 getgrgid(GLIBC_2.0) [1] getprotoent(GLIBC_2.0) [1] 2203 getservent(GLIBC_2.0) [1] setgroups(GLIBC_2.0) [2] 2204 2205 Referenced Specification(s) 2206 2207 [1]. ISO POSIX (2003) 2208 2209 [2]. this specification 2210 2211 [3]. SUSv2 2212 2213 An LSB conforming implementation shall provide the 2214 architecture specific deprecated functions for System Database 2215 Interface specified in Table 1-28, with the full functionality 2216 as described in the referenced underlying specification. 2217 2218 Note: These interfaces are deprecated, and applications 2219 should avoid using them. These interfaces may be withdrawn 2220 in future releases of this specification. 2221 2222 Table 1-28. libc - System Database Interface Deprecated 2223 Function Interfaces 2224 endnetent(GLIBC_2.0) [1] getnetbyaddr(GLIBC_2.0) [1] 2225 setnetent(GLIBC_2.0) [1] 2226 2227 Referenced Specification(s) 2228 2229 [1]. ISO POSIX (2003) 2230 _________________________________________________________ 2231 2232 1.2.15. Language Support 2233 _________________________________________________________ 2234 2235 1.2.15.1. Interfaces for Language Support 2236 2237 An LSB conforming implementation shall provide the 2238 architecture specific functions for Language Support specified 2239 in Table 1-29, with the full functionality as described in the 2240 referenced underlying specification. 2241 2242 Table 1-29. libc - Language Support Function Interfaces 2243 __libc_start_main(GLIBC_2.0) [1] 2244 2245 Referenced Specification(s) 2246 2247 [1]. this specification 2248 _________________________________________________________ 2249 2250 1.2.16. Large File Support 2251 _________________________________________________________ 2252 2253 1.2.16.1. Interfaces for Large File Support 2254 2255 An LSB conforming implementation shall provide the 2256 architecture specific functions for Large File Support 2257 specified in Table 1-30, with the full functionality as 2258 described in the referenced underlying specification. 2259 2260 Table 1-30. libc - Large File Support Function Interfaces 2261 __fxstat64(GLIBC_2.2) [1] fopen64(GLIBC_2.1) [2] 2262 ftello64(GLIBC_2.1) [2] lseek64(GLIBC_2.1) [2] 2263 readdir64(GLIBC_2.2) [2] 2264 __lxstat64(GLIBC_2.2) [1] freopen64(GLIBC_2.1) [2] 2265 ftruncate64(GLIBC_2.1) [2] mkstemp64(GLIBC_2.2) [2] 2266 statvfs64(GLIBC_2.1) [2] 2267 __xstat64(GLIBC_2.2) [1] fseeko64(GLIBC_2.1) [2] 2268 ftw64(GLIBC_2.1) [2] mmap64(GLIBC_2.1) [2] 2269 tmpfile64(GLIBC_2.1) [2] 2270 creat64(GLIBC_2.1) [2] fsetpos64(GLIBC_2.2) [2] 2271 getrlimit64(GLIBC_2.2) [2] nftw64(GLIBC_2.1) [2] 2272 truncate64(GLIBC_2.1) [2] 2273 fgetpos64(GLIBC_2.2) [2] fstatvfs64(GLIBC_2.1) [2] 2274 lockf64(GLIBC_2.1) [2] open64(GLIBC_2.1) [2] 2275 2276 Referenced Specification(s) 2277 2278 [1]. this specification 2279 2280 [2]. Large File Support 2281 _________________________________________________________ 2282 2283 1.2.17. Standard Library 2284 _________________________________________________________ 2285 2286 1.2.17.1. Interfaces for Standard Library 2287 2288 An LSB conforming implementation shall provide the 2289 architecture specific functions for Standard Library specified 2290 in Table 1-31, with the full functionality as described in the 2291 referenced underlying specification. 2292 2293 Table 1-31. libc - Standard Library Function Interfaces 2294 _Exit(GLIBC_2.1.1) [1] dirname(GLIBC_2.0) [1] glob(GLIBC_2.0) 2295 [1] lsearch(GLIBC_2.0) [1] srandom(GLIBC_2.0) [1] 2296 __assert_fail(GLIBC_2.0) [2] div(GLIBC_2.0) [1] 2297 glob64(GLIBC_2.2) [2] makecontext(GLIBC_2.3.3) [1] 2298 strtod(GLIBC_2.0) [1] 2299 __cxa_atexit(GLIBC_2.1.3) [2] drand48(GLIBC_2.0) [1] 2300 globfree(GLIBC_2.0) [1] malloc(GLIBC_2.0) [1] 2301 strtol(GLIBC_2.0) [1] 2302 __errno_location(GLIBC_2.0) [2] ecvt(GLIBC_2.0) [1] 2303 globfree64(GLIBC_2.1) [2] memmem(GLIBC_2.0) [2] 2304 strtoul(GLIBC_2.0) [1] 2305 __fpending(GLIBC_2.2) [2] erand48(GLIBC_2.0) [1] 2306 grantpt(GLIBC_2.1) [1] mkstemp(GLIBC_2.0) [1] 2307 swapcontext(GLIBC_2.1) [1] 2308 __getpagesize(GLIBC_2.0) [2] err(GLIBC_2.0) [2] 2309 hcreate(GLIBC_2.0) [1] mktemp(GLIBC_2.0) [1] syslog(GLIBC_2.0) 2310 [1] 2311 __isinf(GLIBC_2.0) [2] error(GLIBC_2.0) [2] 2312 hdestroy(GLIBC_2.0) [1] mrand48(GLIBC_2.0) [1] 2313 system(GLIBC_2.0) [2] 2314 __isinff(GLIBC_2.0) [2] errx(GLIBC_2.0) [2] hsearch(GLIBC_2.0) 2315 [1] nftw(GLIBC_2.1) [1] tdelete(GLIBC_2.0) [1] 2316 __isinfl(GLIBC_2.0) [2] fcvt(GLIBC_2.0) [1] htonl(GLIBC_2.0) 2317 [1] nrand48(GLIBC_2.0) [1] tfind(GLIBC_2.0) [1] 2318 __isnan(GLIBC_2.0) [2] fmtmsg(GLIBC_2.1) [1] htons(GLIBC_2.0) 2319 [1] ntohl(GLIBC_2.0) [1] tmpfile(GLIBC_2.1) [1] 2320 __isnanf(GLIBC_2.0) [2] fnmatch(GLIBC_2.2.3) [1] 2321 imaxabs(GLIBC_2.1.1) [1] ntohs(GLIBC_2.0) [1] 2322 tmpnam(GLIBC_2.0) [1] 2323 __isnanl(GLIBC_2.0) [2] fpathconf(GLIBC_2.0) [1] 2324 imaxdiv(GLIBC_2.1.1) [1] openlog(GLIBC_2.0) [1] 2325 tsearch(GLIBC_2.0) [1] 2326 __sysconf(GLIBC_2.2) [2] free(GLIBC_2.0) [1] 2327 inet_addr(GLIBC_2.0) [1] perror(GLIBC_2.0) [1] 2328 ttyname(GLIBC_2.0) [1] 2329 _exit(GLIBC_2.0) [1] freeaddrinfo(GLIBC_2.0) [1] 2330 inet_ntoa(GLIBC_2.0) [1] posix_memalign(GLIBC_2.2) [1] 2331 ttyname_r(GLIBC_2.0) [1] 2332 _longjmp(GLIBC_2.0) [1] ftrylockfile(GLIBC_2.0) [1] 2333 inet_ntop(GLIBC_2.0) [1] ptsname(GLIBC_2.1) [1] 2334 twalk(GLIBC_2.0) [1] 2335 _setjmp(GLIBC_2.0) [1] ftw(GLIBC_2.0) [1] inet_pton(GLIBC_2.0) 2336 [1] putenv(GLIBC_2.0) [1] unlockpt(GLIBC_2.1) [1] 2337 a64l(GLIBC_2.0) [1] funlockfile(GLIBC_2.0) [1] 2338 initstate(GLIBC_2.0) [1] qsort(GLIBC_2.0) [1] 2339 unsetenv(GLIBC_2.0) [1] 2340 abort(GLIBC_2.0) [1] gai_strerror(GLIBC_2.1) [1] 2341 insque(GLIBC_2.0) [1] rand(GLIBC_2.0) [1] usleep(GLIBC_2.0) 2342 [1] 2343 abs(GLIBC_2.0) [1] gcvt(GLIBC_2.0) [1] isatty(GLIBC_2.0) [1] 2344 rand_r(GLIBC_2.0) [1] verrx(GLIBC_2.0) [2] 2345 atof(GLIBC_2.0) [1] getaddrinfo(GLIBC_2.0) [1] 2346 isblank(GLIBC_2.0) [1] random(GLIBC_2.0) [1] 2347 vfscanf(GLIBC_2.0) [1] 2348 atoi(GLIBC_2.0) [1] getcwd(GLIBC_2.0) [1] jrand48(GLIBC_2.0) 2349 [1] realloc(GLIBC_2.0) [1] vscanf(GLIBC_2.0) [1] 2350 atol(GLIBC_2.0) [1] getdate(GLIBC_2.1) [1] l64a(GLIBC_2.0) [1] 2351 realpath(GLIBC_2.3) [1] vsscanf(GLIBC_2.0) [1] 2352 atoll(GLIBC_2.0) [1] getenv(GLIBC_2.0) [1] labs(GLIBC_2.0) [1] 2353 remque(GLIBC_2.0) [1] vsyslog(GLIBC_2.0) [2] 2354 basename(GLIBC_2.0) [1] getlogin(GLIBC_2.0) [1] 2355 lcong48(GLIBC_2.0) [1] seed48(GLIBC_2.0) [1] warn(GLIBC_2.0) 2356 [2] 2357 bsearch(GLIBC_2.0) [1] getnameinfo(GLIBC_2.1) [1] 2358 ldiv(GLIBC_2.0) [1] setenv(GLIBC_2.0) [1] warnx(GLIBC_2.0) [2] 2359 calloc(GLIBC_2.0) [1] getopt(GLIBC_2.0) [2] lfind(GLIBC_2.0) 2360 [1] sethostname(GLIBC_2.0) [2] wordexp(GLIBC_2.1) [1] 2361 closelog(GLIBC_2.0) [1] getopt_long(GLIBC_2.0) [2] 2362 llabs(GLIBC_2.0) [1] setlogmask(GLIBC_2.0) [1] 2363 wordfree(GLIBC_2.1) [1] 2364 confstr(GLIBC_2.0) [1] getopt_long_only(GLIBC_2.0) [2] 2365 lldiv(GLIBC_2.0) [1] setstate(GLIBC_2.0) [1] 2366 cuserid(GLIBC_2.0) [3] getsubopt(GLIBC_2.0) [1] 2367 longjmp(GLIBC_2.0) [1] srand(GLIBC_2.0) [1] 2368 daemon(GLIBC_2.0) [2] gettimeofday(GLIBC_2.0) [1] 2369 lrand48(GLIBC_2.0) [1] srand48(GLIBC_2.0) [1] 2370 2371 Referenced Specification(s) 2372 2373 [1]. ISO POSIX (2003) 2374 2375 [2]. this specification 2376 2377 [3]. SUSv2 2378 2379 An LSB conforming implementation shall provide the 2380 architecture specific deprecated functions for Standard 2381 Library specified in Table 1-32, with the full functionality 2382 as described in the referenced underlying specification. 2383 2384 Note: These interfaces are deprecated, and applications 2385 should avoid using them. These interfaces may be withdrawn 2386 in future releases of this specification. 2387 2388 Table 1-32. libc - Standard Library Deprecated Function 2389 Interfaces 2390 random_r(GLIBC_2.0) [1] sethostid(GLIBC_2.0) [1] 2391 2392 Referenced Specification(s) 2393 2394 [1]. this specification 2395 2396 An LSB conforming implementation shall provide the 2397 architecture specific data interfaces for Standard Library 2398 specified in Table 1-33, with the full functionality as 2399 described in the referenced underlying specification. 2400 2401 Table 1-33. libc - Standard Library Data Interfaces 2402 __environ(GLIBC_2.0) [1] _sys_errlist(GLIBC_2.1) [1] 2403 getdate_err(GLIBC_2.1) [2] opterr(GLIBC_2.0) [1] 2404 optopt(GLIBC_2.0) [1] 2405 _environ(GLIBC_2.0) [1] environ(GLIBC_2.0) [2] 2406 optarg(GLIBC_2.0) [2] optind(GLIBC_2.0) [1] 2407 2408 Referenced Specification(s) 2409 2410 [1]. this specification 2411 2412 [2]. ISO POSIX (2003) 2413 _________________________________________________________ 2414 2415 1.3. Data Definitions for libc 2416 2417 This section defines global identifiers and their values that 2418 are associated with interfaces contained in libc. These 2419 definitions are organized into groups that correspond to 2420 system headers. This convention is used as a convenience for 2421 the reader, and does not imply the existence of these headers, 2422 or their content. 2423 2424 These definitions are intended to supplement those provided in 2425 the referenced underlying specifications. 2426 2427 This specification uses ISO/IEC 9899 C Language as the 2428 reference programming language, and data definitions are 2429 specified in ISO C format. The C language is used here as a 2430 convenient notation. Using a C language description of these 2431 data objects does not preclude their use by other programming 2432 languages. 2433 _________________________________________________________ 2434 2435 1.3.1. errno.h 2436 2437 #define EDEADLOCK 58 2438 _________________________________________________________ 2439 2440 1.3.2. fcntl.h 2441 2442 #define F_GETLK64 12 2443 #define F_SETLK64 13 2444 #define F_SETLKW64 14 2445 _________________________________________________________ 2446 2447 1.3.3. inttypes.h 2448 2449 typedef unsigned long long uintmax_t; 2450 typedef long long intmax_t; 2451 typedef unsigned int uintptr_t; 2452 typedef unsigned long long uint64_t; 2453 _________________________________________________________ 2454 2455 1.3.4. limits.h 2456 2457 #define ULONG_MAX 0xFFFFFFFFUL 2458 #define LONG_MAX 2147483647L 2459 2460 #define CHAR_MIN 0 2461 #define CHAR_MAX 255 2462 _________________________________________________________ 2463 2464 1.3.5. setjmp.h 2465 2466 typedef int __jmp_buf[58]; 2467 _________________________________________________________ 2468 2469 1.3.6. signal.h 2470 2471 #define SIGEV_PAD_SIZE ((SIGEV_MAX_SIZE/sizeof(int))-3) 2472 2473 #define SI_PAD_SIZE ((SI_MAX_SIZE/sizeof(int))-3) 2474 2475 struct sigaction 2476 { 2477 union 2478 { 2479 sighandler_t _sa_handler; 2480 void (*_sa_sigaction) (int, siginfo_t *, void *); 2481 } 2482 __sigaction_handler; 2483 sigset_t sa_mask; 2484 unsigned long sa_flags; 2485 void (*sa_restorer) (void); 2486 } 2487 ; 2488 #define MINSIGSTKSZ 2048 2489 #define SIGSTKSZ 8192 2490 2491 struct sigcontext 2492 { 2493 long _unused[4]; 2494 int signal; 2495 unsigned long handler; 2496 unsigned long oldmask; 2497 struct pt_regs *regs; 2498 } 2499 ; 2500 _________________________________________________________ 2501 2502 1.3.7. stddef.h 2503 2504 typedef unsigned int size_t; 2505 typedef int ptrdiff_t; 2506 _________________________________________________________ 2507 2508 1.3.8. stdio.h 2509 2510 #define __IO_FILE_SIZE 152 2511 _________________________________________________________ 2512 2513 1.3.9. sys/ioctl.h 2514 2515 #define TIOCNOTTY 0x5422 2516 #define FIONREAD 1074030207 2517 _________________________________________________________ 2518 2519 1.3.10. sys/ipc.h 2520 2521 struct ipc_perm 2522 { 2523 key_t __key; 2524 uid_t uid; 2525 gid_t gid; 2526 uid_t cuid; 2527 uid_t cgid; 2528 mode_t mode; 2529 long __seq; 2530 int __pad1; 2531 unsigned long long __unused1; 2532 unsigned long long __unused2; 2533 } 2534 ; 2535 _________________________________________________________ 2536 2537 1.3.11. sys/mman.h 2538 2539 #define MCL_FUTURE 16384 2540 #define MCL_CURRENT 8192 2541 _________________________________________________________ 2542 2543 1.3.12. sys/msg.h 2544 2545 typedef unsigned long msglen_t; 2546 typedef unsigned long msgqnum_t; 2547 2548 struct msqid_ds 2549 { 2550 struct ipc_perm msg_perm; 2551 unsigned int __unused1; 2552 time_t msg_stime; 2553 unsigned int __unused2; 2554 time_t msg_rtime; 2555 unsigned int __unused3; 2556 time_t msg_ctime; 2557 unsigned long __msg_cbytes; 2558 msgqnum_t msg_qnum; 2559 msglen_t msg_qbytes; 2560 pid_t msg_lspid; 2561 pid_t msg_lrpid; 2562 unsigned long __unused4; 2563 unsigned long __unused5; 2564 } 2565 ; 2566 _________________________________________________________ 2567 2568 1.3.13. sys/sem.h 2569 2570 struct semid_ds 2571 { 2572 struct ipc_perm sem_perm; 2573 unsigned int __unused1; 2574 time_t sem_otime; 2575 unsigned int __unused2; 2576 time_t sem_ctime; 2577 unsigned long sem_nsems; 2578 unsigned long __unused3; 2579 unsigned long __unused4; 2580 } 2581 ; 2582 _________________________________________________________ 2583 2584 1.3.14. sys/shm.h 2585 2586 #define SHMLBA (__getpagesize()) 2587 2588 typedef unsigned long shmatt_t; 2589 2590 struct shmid_ds 2591 { 2592 struct ipc_perm shm_perm; 2593 unsigned int __unused1; 2594 time_t shm_atime; 2595 unsigned int __unused2; 2596 time_t shm_dtime; 2597 unsigned int __unused3; 2598 time_t shm_ctime; 2599 unsigned int __unused4; 2600 size_t shm_segsz; 2601 pid_t shm_cpid; 2602 pid_t shm_lpid; 2603 shmatt_t shm_nattch; 2604 unsigned long __unused5; 2605 unsigned long __unused6; 2606 } 2607 ; 2608 _________________________________________________________ 2609 2610 1.3.15. sys/socket.h 2611 2612 typedef uint32_t __ss_aligntype; 2613 2614 #define SO_RCVLOWAT 16 2615 #define SO_SNDLOWAT 17 2616 #define SO_RCVTIMEO 18 2617 #define SO_SNDTIMEO 19 2618 _________________________________________________________ 2619 2620 1.3.16. sys/stat.h 2621 2622 #define _STAT_VER 3 2623 2624 struct stat64 2625 { 2626 dev_t st_dev; 2627 ino64_t st_ino; 2628 mode_t st_mode; 2629 nlink_t st_nlink; 2630 uid_t st_uid; 2631 gid_t st_gid; 2632 dev_t st_rdev; 2633 unsigned short __pad2; 2634 off64_t st_size; 2635 blksize_t st_blksize; 2636 blkcnt64_t st_blocks; 2637 struct timespec st_atim; 2638 struct timespec st_mtim; 2639 struct timespec st_ctim; 2640 unsigned long __unused4; 2641 unsigned long __unused5; 2642 } 2643 ; 2644 struct stat 2645 { 2646 dev_t st_dev; 2647 unsigned short __pad1; 2648 ino_t st_ino; 2649 mode_t st_mode; 2650 nlink_t st_nlink; 2651 uid_t st_uid; 2652 gid_t st_gid; 2653 dev_t st_rdev; 2654 unsigned short __pad2; 2655 off_t st_size; 2656 blksize_t st_blksize; 2657 blkcnt_t st_blocks; 2658 struct timespec st_atim; 2659 struct timespec st_mtim; 2660 struct timespec st_ctim; 2661 unsigned long __unused4; 2662 unsigned long __unused5; 2663 } 2664 ; 2665 _________________________________________________________ 2666 2667 1.3.17. sys/statvfs.h 2668 2669 struct statvfs 2670 { 2671 unsigned long f_bsize; 2672 unsigned long f_frsize; 2673 fsblkcnt_t f_blocks; 2674 fsblkcnt_t f_bfree; 2675 fsblkcnt_t f_bavail; 2676 fsfilcnt_t f_files; 2677 fsfilcnt_t f_ffree; 2678 fsfilcnt_t f_favail; 2679 unsigned long f_fsid; 2680 int __f_unused; 2681 unsigned long f_flag; 2682 unsigned long f_namemax; 2683 int __f_spare[6]; 2684 } 2685 ; 2686 struct statvfs64 2687 { 2688 unsigned long f_bsize; 2689 unsigned long f_frsize; 2690 fsblkcnt64_t f_blocks; 2691 fsblkcnt64_t f_bfree; 2692 fsblkcnt64_t f_bavail; 2693 fsfilcnt64_t f_files; 2694 fsfilcnt64_t f_ffree; 2695 fsfilcnt64_t f_favail; 2696 unsigned long f_fsid; 2697 int __f_unused; 2698 unsigned long f_flag; 2699 unsigned long f_namemax; 2700 int __f_spare[6]; 2701 } 2702 ; 2703 _________________________________________________________ 2704 2705 1.3.18. sys/types.h 2706 2707 typedef long long int64_t; 2708 2709 typedef int32_t ssize_t; 2710 2711 #define __FDSET_LONGS 32 2712 _________________________________________________________ 2713 2714 1.3.19. termios.h 2715 2716 #define TAB1 1024 2717 #define CR3 12288 2718 #define CRDLY 12288 2719 #define FF1 16384 2720 #define FFDLY 16384 2721 #define XCASE 16384 2722 #define ONLCR 2 2723 #define TAB2 2048 2724 #define TAB3 3072 2725 #define TABDLY 3072 2726 #define BS1 32768 2727 #define BSDLY 32768 2728 #define OLCUC 4 2729 #define CR1 4096 2730 #define IUCLC 4096 2731 #define VT1 65536 2732 #define VTDLY 65536 2733 #define NLDLY 768 2734 #define CR2 8192 2735 2736 #define VWERASE 10 2737 #define VREPRINT 11 2738 #define VSUSP 12 2739 #define VSTART 13 2740 #define VSTOP 14 2741 #define VDISCARD 16 2742 #define VMIN 5 2743 #define VEOL 6 2744 #define VEOL2 8 2745 #define VSWTC 9 2746 2747 #define IXOFF 1024 2748 #define IXON 512 2749 2750 #define CSTOPB 1024 2751 #define HUPCL 16384 2752 #define CREAD 2048 2753 #define CS6 256 2754 #define CLOCAL 32768 2755 #define PARENB 4096 2756 #define CS7 512 2757 #define VTIME 7 2758 #define CS8 768 2759 #define CSIZE 768 2760 #define PARODD 8192 2761 2762 #define NOFLSH 0x80000000 2763 #define ECHOKE 1 2764 #define IEXTEN 1024 2765 #define ISIG 128 2766 #define ECHONL 16 2767 #define ECHOE 2 2768 #define ICANON 256 2769 #define ECHOPRT 32 2770 #define ECHOK 4 2771 #define TOSTOP 4194304 2772 #define PENDIN 536870912 2773 #define ECHOCTL 64 2774 #define FLUSHO 8388608 2775 _________________________________________________________ 2776 2777 1.3.20. ucontext.h 2778 2779 struct pt_regs 2780 { 2781 unsigned long gpr[32]; 2782 unsigned long nip; 2783 unsigned long msr; 2784 unsigned long orig_gpr3; 2785 unsigned long ctr; 2786 unsigned long link; 2787 unsigned long xer; 2788 unsigned long ccr; 2789 unsigned long mq; 2790 unsigned long trap; 2791 unsigned long dar; 2792 unsigned long dsisr; 2793 unsigned long result; 2794 } 2795 ; 2796 typedef struct _libc_vrstate 2797 { 2798 unsigned int vrregs[128]; 2799 unsigned int vscr; 2800 unsigned int vrsave; 2801 unsigned int _pad[2]; 2802 } 2803 vrregset_t __attribute__ ((__aligned__ (16))); 2804 2805 #define NGREG 48 2806 2807 typedef unsigned long gregset_t[48]; 2808 2809 typedef struct _libc_fpstate 2810 { 2811 double fpregs[32]; 2812 double fpscr; 2813 int _pad[2]; 2814 } 2815 fpregset_t; 2816 2817 typedef struct 2818 { 2819 gregset_t gregs; 2820 fpregset_t fpregs; 2821 vrregset_t vrregs; 2822 } 2823 mcontext_t; 2824 2825 union uc_regs_ptr 2826 { 2827 struct pt_regs *regs; 2828 mcontext_t *uc_regs; 2829 } 2830 ; 2831 2832 typedef struct ucontext 2833 { 2834 unsigned long uc_flags; 2835 struct ucontext *uc_link; 2836 stack_t uc_stack; 2837 int uc_pad[7]; 2838 union uc_regs_ptr uc_mcontext; 2839 sigset_t uc_sigmask; 2840 char uc_reg_space[sizeof (mcontext_t) + 12]; 2841 } 2842 ucontext_t; 2843 _________________________________________________________ 2844 2845 1.3.21. unistd.h 2846 2847 typedef int intptr_t; 2848 _________________________________________________________ 2849 2850 1.3.22. utmp.h 2851 2852 struct lastlog 2853 { 2854 time_t ll_time; 2855 char ll_line[UT_LINESIZE]; 2856 char ll_host[UT_HOSTSIZE]; 2857 } 2858 ; 2859 2860 struct utmp 2861 { 2862 short ut_type; 2863 pid_t ut_pid; 2864 char ut_line[UT_LINESIZE]; 2865 char ut_id[4]; 2866 char ut_user[UT_NAMESIZE]; 2867 char ut_host[UT_HOSTSIZE]; 2868 struct exit_status ut_exit; 2869 long ut_session; 2870 struct timeval ut_tv; 2871 int32_t ut_addr_v6[4]; 2872 char __unused[20]; 2873 } 2874 ; 2875 _________________________________________________________ 2876 2877 1.3.23. utmpx.h 2878 2879 struct utmpx 2880 { 2881 short ut_type; 2882 pid_t ut_pid; 2883 char ut_line[UT_LINESIZE]; 2884 char ut_id[4]; 2885 char ut_user[UT_NAMESIZE]; 2886 char ut_host[UT_HOSTSIZE]; 2887 struct exit_status ut_exit; 2888 long ut_session; 2889 struct timeval ut_tv; 2890 int32_t ut_addr_v6[4]; 2891 char __unused[20]; 2892 } 2893 ; 2894 _________________________________________________________ 2895 2896 1.4. Interfaces for libm 2897 2898 Table 1-34 defines the library name and shared object name for 2899 the libm library 2900 2901 Table 1-34. libm Definition 2902 Library: libm 2903 SONAME: libm.so.6 2904 2905 The behavior of the interfaces in this library is specified by 2906 the following specifications: 2907 2908 ISO C (1999) 2909 this specification 2910 SUSv2 2911 ISO POSIX (2003) 2912 _________________________________________________________ 2913 2914 1.4.1. Math 2915 _________________________________________________________ 2916 2917 1.4.1.1. Interfaces for Math 2918 2919 An LSB conforming implementation shall provide the 2920 architecture specific functions for Math specified in Table 2921 1-35, with the full functionality as described in the 2922 referenced underlying specification. 2923 2924 Table 1-35. libm - Math Function Interfaces 2925 __finite(GLIBC_2.1) [1] ccosl(GLIBC_2.1) [2] exp(GLIBC_2.0) 2926 [2] j1l(GLIBC_2.0) [1] powf(GLIBC_2.0) [2] 2927 __finitef(GLIBC_2.1) [1] ceil(GLIBC_2.0) [2] exp2(GLIBC_2.1) 2928 [2] jn(GLIBC_2.0) [2] powl(GLIBC_2.0) [2] 2929 __finitel(GLIBC_2.1) [1] ceilf(GLIBC_2.0) [2] exp2f(GLIBC_2.1) 2930 [2] jnf(GLIBC_2.0) [1] remainder(GLIBC_2.0) [2] 2931 __fpclassify(GLIBC_2.1) [3] ceill(GLIBC_2.0) [2] 2932 expf(GLIBC_2.0) [2] jnl(GLIBC_2.0) [1] remainderf(GLIBC_2.0) 2933 [2] 2934 __fpclassifyf(GLIBC_2.1) [3] cexp(GLIBC_2.1) [2] 2935 expl(GLIBC_2.0) [2] ldexp(GLIBC_2.0) [2] remainderl(GLIBC_2.0) 2936 [2] 2937 __signbit(GLIBC_2.1) [1] cexpf(GLIBC_2.1) [2] expm1(GLIBC_2.0) 2938 [2] ldexpf(GLIBC_2.0) [2] remquo(GLIBC_2.1) [2] 2939 __signbitf(GLIBC_2.1) [1] cexpl(GLIBC_2.1) [2] 2940 expm1f(GLIBC_2.0) [2] ldexpl(GLIBC_2.0) [2] remquof(GLIBC_2.1) 2941 [2] 2942 acos(GLIBC_2.0) [2] cimag(GLIBC_2.1) [2] expm1l(GLIBC_2.0) [2] 2943 lgamma(GLIBC_2.0) [2] remquol(GLIBC_2.1) [2] 2944 acosf(GLIBC_2.0) [2] cimagf(GLIBC_2.1) [2] fabs(GLIBC_2.0) [2] 2945 lgamma_r(GLIBC_2.0) [1] rint(GLIBC_2.0) [2] 2946 acosh(GLIBC_2.0) [2] cimagl(GLIBC_2.1) [2] fabsf(GLIBC_2.0) 2947 [2] lgammaf(GLIBC_2.0) [2] rintf(GLIBC_2.0) [2] 2948 acoshf(GLIBC_2.0) [2] clog(GLIBC_2.1) [2] fabsl(GLIBC_2.0) [2] 2949 lgammaf_r(GLIBC_2.0) [1] rintl(GLIBC_2.0) [2] 2950 acoshl(GLIBC_2.0) [2] clog10(GLIBC_2.1) [1] fdim(GLIBC_2.1) 2951 [2] lgammal(GLIBC_2.0) [2] round(GLIBC_2.1) [2] 2952 acosl(GLIBC_2.0) [2] clog10f(GLIBC_2.1) [1] fdimf(GLIBC_2.1) 2953 [2] lgammal_r(GLIBC_2.0) [1] roundf(GLIBC_2.1) [2] 2954 asin(GLIBC_2.0) [2] clog10l(GLIBC_2.1) [1] fdiml(GLIBC_2.1) 2955 [2] llrint(GLIBC_2.1) [2] roundl(GLIBC_2.1) [2] 2956 asinf(GLIBC_2.0) [2] clogf(GLIBC_2.1) [2] 2957 feclearexcept(GLIBC_2.2) [2] llrintf(GLIBC_2.1) [2] 2958 scalb(GLIBC_2.0) [2] 2959 asinh(GLIBC_2.0) [2] clogl(GLIBC_2.1) [2] fegetenv(GLIBC_2.2) 2960 [2] llrintl(GLIBC_2.1) [2] scalbf(GLIBC_2.0) [1] 2961 asinhf(GLIBC_2.0) [2] conj(GLIBC_2.1) [2] 2962 fegetexceptflag(GLIBC_2.2) [2] llround(GLIBC_2.1) [2] 2963 scalbl(GLIBC_2.0) [1] 2964 asinhl(GLIBC_2.0) [2] conjf(GLIBC_2.1) [2] 2965 fegetround(GLIBC_2.1) [2] llroundf(GLIBC_2.1) [2] 2966 scalbln(GLIBC_2.1) [2] 2967 asinl(GLIBC_2.0) [2] conjl(GLIBC_2.1) [2] 2968 feholdexcept(GLIBC_2.1) [2] llroundl(GLIBC_2.1) [2] 2969 scalblnf(GLIBC_2.1) [2] 2970 atan(GLIBC_2.0) [2] copysign(GLIBC_2.0) [2] 2971 feraiseexcept(GLIBC_2.2) [2] log(GLIBC_2.0) [2] 2972 scalblnl(GLIBC_2.1) [2] 2973 atan2(GLIBC_2.0) [2] copysignf(GLIBC_2.0) [2] 2974 fesetenv(GLIBC_2.2) [2] log10(GLIBC_2.0) [2] scalbn(GLIBC_2.0) 2975 [2] 2976 atan2f(GLIBC_2.0) [2] copysignl(GLIBC_2.0) [2] 2977 fesetexceptflag(GLIBC_2.2) [2] log10f(GLIBC_2.0) [2] 2978 scalbnf(GLIBC_2.0) [2] 2979 atan2l(GLIBC_2.0) [2] cos(GLIBC_2.0) [2] fesetround(GLIBC_2.1) 2980 [2] log10l(GLIBC_2.0) [2] scalbnl(GLIBC_2.0) [2] 2981 atanf(GLIBC_2.0) [2] cosf(GLIBC_2.0) [2] 2982 fetestexcept(GLIBC_2.1) [2] log1p(GLIBC_2.0) [2] 2983 significand(GLIBC_2.0) [1] 2984 atanh(GLIBC_2.0) [2] cosh(GLIBC_2.0) [2] 2985 feupdateenv(GLIBC_2.2) [2] log1pf(GLIBC_2.0) [2] 2986 significandf(GLIBC_2.0) [1] 2987 atanhf(GLIBC_2.0) [2] coshf(GLIBC_2.0) [2] finite(GLIBC_2.0) 2988 [4] log1pl(GLIBC_2.0) [2] significandl(GLIBC_2.0) [1] 2989 atanhl(GLIBC_2.0) [2] coshl(GLIBC_2.0) [2] finitef(GLIBC_2.0) 2990 [1] log2(GLIBC_2.1) [2] sin(GLIBC_2.0) [2] 2991 atanl(GLIBC_2.0) [2] cosl(GLIBC_2.0) [2] finitel(GLIBC_2.0) 2992 [1] log2f(GLIBC_2.1) [2] sincos(GLIBC_2.1) [1] 2993 cabs(GLIBC_2.1) [2] cpow(GLIBC_2.1) [2] floor(GLIBC_2.0) [2] 2994 log2l(GLIBC_2.1) [2] sincosf(GLIBC_2.1) [1] 2995 cabsf(GLIBC_2.1) [2] cpowf(GLIBC_2.1) [2] floorf(GLIBC_2.0) 2996 [2] logb(GLIBC_2.0) [2] sincosl(GLIBC_2.1) [1] 2997 cabsl(GLIBC_2.1) [2] cpowl(GLIBC_2.1) [2] floorl(GLIBC_2.0) 2998 [2] logbf(GLIBC_2.0) [2] sinf(GLIBC_2.0) [2] 2999 cacos(GLIBC_2.1) [2] cproj(GLIBC_2.1) [2] fma(GLIBC_2.1) [2] 3000 logbl(GLIBC_2.0) [2] sinh(GLIBC_2.0) [2] 3001 cacosf(GLIBC_2.1) [2] cprojf(GLIBC_2.1) [2] fmaf(GLIBC_2.1) 3002 [2] logf(GLIBC_2.0) [2] sinhf(GLIBC_2.0) [2] 3003 cacosh(GLIBC_2.1) [2] cprojl(GLIBC_2.1) [2] fmal(GLIBC_2.1) 3004 [2] logl(GLIBC_2.0) [2] sinhl(GLIBC_2.0) [2] 3005 cacoshf(GLIBC_2.1) [2] creal(GLIBC_2.1) [2] fmax(GLIBC_2.1) 3006 [2] lrint(GLIBC_2.1) [2] sinl(GLIBC_2.0) [2] 3007 cacoshl(GLIBC_2.1) [2] crealf(GLIBC_2.1) [2] fmaxf(GLIBC_2.1) 3008 [2] lrintf(GLIBC_2.1) [2] sqrt(GLIBC_2.0) [2] 3009 cacosl(GLIBC_2.1) [2] creall(GLIBC_2.1) [2] fmaxl(GLIBC_2.1) 3010 [2] lrintl(GLIBC_2.1) [2] sqrtf(GLIBC_2.0) [2] 3011 carg(GLIBC_2.1) [2] csin(GLIBC_2.1) [2] fmin(GLIBC_2.1) [2] 3012 lround(GLIBC_2.1) [2] sqrtl(GLIBC_2.0) [2] 3013 cargf(GLIBC_2.1) [2] csinf(GLIBC_2.1) [2] fminf(GLIBC_2.1) [2] 3014 lroundf(GLIBC_2.1) [2] tan(GLIBC_2.0) [2] 3015 cargl(GLIBC_2.1) [2] csinh(GLIBC_2.1) [2] fminl(GLIBC_2.1) [2] 3016 lroundl(GLIBC_2.1) [2] tanf(GLIBC_2.0) [2] 3017 casin(GLIBC_2.1) [2] csinhf(GLIBC_2.1) [2] fmod(GLIBC_2.0) [2] 3018 matherr(GLIBC_2.0) [1] tanh(GLIBC_2.0) [2] 3019 casinf(GLIBC_2.1) [2] csinhl(GLIBC_2.1) [2] fmodf(GLIBC_2.0) 3020 [2] modf(GLIBC_2.0) [2] tanhf(GLIBC_2.0) [2] 3021 casinh(GLIBC_2.1) [2] csinl(GLIBC_2.1) [2] fmodl(GLIBC_2.0) 3022 [2] modff(GLIBC_2.0) [2] tanhl(GLIBC_2.0) [2] 3023 casinhf(GLIBC_2.1) [2] csqrt(GLIBC_2.1) [2] frexp(GLIBC_2.0) 3024 [2] modfl(GLIBC_2.0) [2] tanl(GLIBC_2.0) [2] 3025 casinhl(GLIBC_2.1) [2] csqrtf(GLIBC_2.1) [2] frexpf(GLIBC_2.0) 3026 [2] nan(GLIBC_2.1) [2] tgamma(GLIBC_2.1) [2] 3027 casinl(GLIBC_2.1) [2] csqrtl(GLIBC_2.1) [2] frexpl(GLIBC_2.0) 3028 [2] nanf(GLIBC_2.1) [2] tgammaf(GLIBC_2.1) [2] 3029 catan(GLIBC_2.1) [2] ctan(GLIBC_2.1) [2] gamma(GLIBC_2.0) [4] 3030 nanl(GLIBC_2.1) [2] tgammal(GLIBC_2.1) [2] 3031 catanf(GLIBC_2.1) [2] ctanf(GLIBC_2.1) [2] gammaf(GLIBC_2.0) 3032 [1] nearbyint(GLIBC_2.1) [2] trunc(GLIBC_2.1) [2] 3033 catanh(GLIBC_2.1) [2] ctanh(GLIBC_2.1) [2] gammal(GLIBC_2.0) 3034 [1] nearbyintf(GLIBC_2.1) [2] truncf(GLIBC_2.1) [2] 3035 catanhf(GLIBC_2.1) [2] ctanhf(GLIBC_2.1) [2] hypot(GLIBC_2.0) 3036 [2] nearbyintl(GLIBC_2.1) [2] truncl(GLIBC_2.1) [2] 3037 catanhl(GLIBC_2.1) [2] ctanhl(GLIBC_2.1) [2] hypotf(GLIBC_2.0) 3038 [2] nextafter(GLIBC_2.0) [2] y0(GLIBC_2.0) [2] 3039 catanl(GLIBC_2.1) [2] ctanl(GLIBC_2.1) [2] hypotl(GLIBC_2.0) 3040 [2] nextafterf(GLIBC_2.0) [2] y0f(GLIBC_2.0) [1] 3041 cbrt(GLIBC_2.0) [2] dremf(GLIBC_2.0) [1] ilogb(GLIBC_2.0) [2] 3042 nextafterl(GLIBC_2.0) [2] y0l(GLIBC_2.0) [1] 3043 cbrtf(GLIBC_2.0) [2] dreml(GLIBC_2.0) [1] ilogbf(GLIBC_2.0) 3044 [2] nexttoward(GLIBC_2.1) [2] y1(GLIBC_2.0) [2] 3045 cbrtl(GLIBC_2.0) [2] erf(GLIBC_2.0) [2] ilogbl(GLIBC_2.0) [2] 3046 nexttowardf(GLIBC_2.1) [2] y1f(GLIBC_2.0) [1] 3047 ccos(GLIBC_2.1) [2] erfc(GLIBC_2.0) [2] j0(GLIBC_2.0) [2] 3048 nexttowardl(GLIBC_2.1) [2] y1l(GLIBC_2.0) [1] 3049 ccosf(GLIBC_2.1) [2] erfcf(GLIBC_2.0) [2] j0f(GLIBC_2.0) [1] 3050 pow(GLIBC_2.0) [2] yn(GLIBC_2.0) [2] 3051 ccosh(GLIBC_2.1) [2] erfcl(GLIBC_2.0) [2] j0l(GLIBC_2.0) [1] 3052 pow10(GLIBC_2.1) [1] ynf(GLIBC_2.0) [1] 3053 ccoshf(GLIBC_2.1) [2] erff(GLIBC_2.0) [2] j1(GLIBC_2.0) [2] 3054 pow10f(GLIBC_2.1) [1] ynl(GLIBC_2.0) [1] 3055 ccoshl(GLIBC_2.1) [2] erfl(GLIBC_2.0) [2] j1f(GLIBC_2.0) [1] 3056 pow10l(GLIBC_2.1) [1] 3057 3058 Referenced Specification(s) 3059 3060 [1]. ISO C (1999) 3061 3062 [2]. ISO POSIX (2003) 3063 3064 [3]. this specification 3065 3066 [4]. SUSv2 3067 3068 An LSB conforming implementation shall provide the 3069 architecture specific data interfaces for Math specified in 3070 Table 1-36, with the full functionality as described in the 3071 referenced underlying specification. 3072 3073 Table 1-36. libm - Math Data Interfaces 3074 signgam(GLIBC_2.0) [1] 3075 3076 Referenced Specification(s) 3077 3078 [1]. ISO POSIX (2003) 3079 _________________________________________________________ 3080 3081 1.5. Data Definitions for libm 3082 3083 This section defines global identifiers and their values that 3084 are associated with interfaces contained in libm. These 3085 definitions are organized into groups that correspond to 3086 system headers. This convention is used as a convenience for 3087 the reader, and does not imply the existence of these headers, 3088 or their content. 3089 3090 These definitions are intended to supplement those provided in 3091 the referenced underlying specifications. 3092 3093 This specification uses ISO/IEC 9899 C Language as the 3094 reference programming language, and data definitions are 3095 specified in ISO C format. The C language is used here as a 3096 convenient notation. Using a C language description of these 3097 data objects does not preclude their use by other programming 3098 languages. 3099 _________________________________________________________ 3100 3101 1.5.1. math.h 3102 3103 #define fpclassify(x) (sizeof (x) == sizeof (float) ? __fpclassifyf ( 3104 x) : __fpclassify (x) ) 3105 #define signbit(x) (sizeof (x) == sizeof (float)? __signbitf (x): 3106 __signbit (x)) 3107 3108 #define FP_ILOGB0 -2147483647 3109 #define FP_ILOGBNAN 2147483647 3110 _________________________________________________________ 3111 3112 1.6. Interfaces for libpthread 3113 3114 Table 1-37 defines the library name and shared object name for 3115 the libpthread library 3116 3117 Table 1-37. libpthread Definition 3118 Library: libpthread 3119 SONAME: libpthread.so.0 3120 3121 The behavior of the interfaces in this library is specified by 3122 the following specifications: 3123 3124 Large File Support 3125 this specification 3126 ISO POSIX (2003) 3127 _________________________________________________________ 3128 3129 1.6.1. Realtime Threads 3130 _________________________________________________________ 3131 3132 1.6.1.1. Interfaces for Realtime Threads 3133 3134 No external functions are defined for libpthread - Realtime 3135 Threads 3136 _________________________________________________________ 3137 3138 1.6.2. Advanced Realtime Threads 3139 _________________________________________________________ 3140 3141 1.6.2.1. Interfaces for Advanced Realtime Threads 31