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