1.\" $NetBSD: intro.3,v 1.23 2010/12/09 13:51:45 njoly Exp $ 2.\" 3.\" Copyright (c) 1980, 1991, 1993 4.\" The Regents of the University of California. All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. Neither the name of the University nor the names of its contributors 15.\" may be used to endorse or promote products derived from this software 16.\" without specific prior written permission. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 22.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28.\" SUCH DAMAGE. 29.\" 30.\" @(#)intro.3 8.1 (Berkeley) 6/5/93 31.\" 32.Dd October 4, 2001 33.Dt INTRO 3 34.Os 35.Sh NAME 36.Nm intro 37.Nd introduction to the system libraries 38.Sh DESCRIPTION 39This section provides an overview of the system libraries, their 40functions, error returns and other common definitions and concepts. 41Most of these functions are available from the standard C library, 42.Em libc . 43Other libraries, such as the math library, 44.Em libm , 45must be indicated at compile time with the 46.Fl l 47option of the compiler. 48.\" .Pp 49.\" A subset of the 50.\" .Xr libc functions 51.\" are available from Fortran; 52.\" they are described separately in 53.\" .Xr intro 3f . 54.Pp 55The various system libraries supplied in 56.Nx 57(followed by the linker flags) are: 58.Bl -tag -width "libc (-lc)" 59.It Em libasn1 Pq Fl l Ns Ar asn1 60The abstract syntax notation (ASN) library provides routines for the 61specification of abstract data types. 62.It Em libbz2 Pq Fl l Ns Ar bz2 63Block-sorting compressor library providing routines for fast and 64efficient compression. 65.It Em libc Pq Fl l Ns Ar c 66The standard C library. When using the C compiler 67.Xr cc 1 , 68it is not necessary to supply the linker flag 69.Fl l Ns Ar c 70for these functions. There are several subsystems included inside 71.Em libc : 72.Pp 73.Bl -tag -width "XXXXXX" 74.It standard I/O routines 75see 76.Xr stdio 3 77.It database routines 78see 79.Xr db 3 80.It bit operators 81see 82.Xr bitstring 3 83.It string operators 84see 85.Xr string 3 86.It character tests and character operators 87.It Tn encryption and hash routines 88see 89.Xr md4 3 90and 91.Xr md5 3 . 92.It storage allocation 93see 94.Xr mpool 3 95and 96.Xr malloc 3 97.It time functions 98see 99.Xr time 3 100.It signal handling 101see 102.Xr signal 3 103.El 104.It Em libcom_err Pq Fl l Ns Ar com_err 105The common error description library. See 106.Xr com_err 3 . 107.It Em libcompat Pq Fl l Ns Ar compat 108Functions which are obsolete but are available for compatibility with 109.Bx 4.3 . 110In particular, a number of system call interfaces provided in previous 111releases of 112.Bx 113have been included for source code compatibility. Use of these 114routines should, for the most part, be avoided. The manual page entry 115for each compatibility routine indicates the proper interface to use. 116.It Em libcrypt Pq Fl l Ns Ar crypt 117The crypt library. See 118.Xr crypt 3 . 119.It Em libcrypto Pq Fl l Ns Ar crypto 120The OpenSSL cryptographic library. See 121.Xr crypto 3 . 122.It Em libcrypto_idea Pq Fl l Ns Ar crypto_idea 123The OpenSSL cryptographic library routines for the IDEA algorithm. 124This algorithm is separated from libcrypto since the IDEA algorithm is 125protected by patents and its use is restricted. 126.It Em libcrypto_rc5 Pq Fl l Ns Ar crypto_rc5 127The OpenSSL cryptographic library routines for the RC5 algorithm. 128This algorithm is separated from libcrypto since the RC5 algorithm is 129protected by patents and its use is restricted. 130.It Em libcurses Pq Fl l Ns Ar curses Fl l Ns Ar termcap 131Terminal independent screen management routines 132for two dimensional non-bitmap display terminals. See 133.Xr curses 3 . 134.It Em libdes Pq Fl l Ns Ar des 135The OpenSSL cryptographic library for the DES algorithms. See 136.Xr des 3 . 137.It Em libedit Pq Fl l Ns Ar edit 138The command-line editor or editline library. The editline library 139provides generic editing and history functions. See 140.Xr editline 3 . 141.It Em libform Pq Fl l Ns Ar form 142The curses form library provides a terminal-independent form system 143using the curses library. The form library provides facilities for 144defining forms on terminals. See 145.Xr forms 3 . 146.It Em libgssapi Pq Fl l Ns Ar gssapi 147The Generic Security Services (GSS) API library. This library provides 148verification services to applications and usually sits above the 149cryptographic libraries. 150.It Em libhesiod Pq Fl l Ns Ar hesiod 151The Hesiod library. This library provides routines for performing 152lookups of Hesiod information, which is stored as text records in the 153Domain Name Service. See 154.Xr hesiod 3 . 155.It Em libhdb Pq Fl l Ns Ar hdb 156The Heimdal Kerberos 5 authentication/authorisation database access 157library. 158.It Em libintl Pq Fl l Ns Ar intl 159The internationalized message handling library. See 160.Xr gettext 3 . 161.It Em libipsec Pq Fl l Ns Ar ipsec 162The IPsec policy control library. See 163.Xr ipsec_set_policy 3 164and 165.Xr ipsec_strerror 3 . 166.It Em libkadm Pq Fl l Ns Ar kadm 167The Kerberos IV administration server and client library. 168.It Em libkadm5clnt Pq Fl l Ns Ar kadm5clnt 169The Kerberos 5 administration client library. 170.It Em libkadm5srv Pq Fl l Ns Ar kadm5srv 171The Kerberos 5 administration server library. 172.It Em libkafs Pq Fl l Ns Ar kafs 173The Kerberos IV AFS library. See 174.Xr kafs 3 . 175.It Em libkdb Pq Fl l Ns Ar kdb 176The Kerberos IV authentication/authorisation database access library. 177.It Em libkrb Pq Fl l Ns Ar krb 178The Kerberos IV library. 179.It Em libkrb5 Pq Fl l Ns Ar krb5 180The Kerberos 5 library. See 181.Xr krb5 3 . 182.It Em libkstream Pq Fl l Ns Ar kstream 183Kerberos IV encrypted stream library. 184.It Em libkvm Pq Fl l Ns Ar kvm 185Kernel data access library. See 186.Xr kvm 3 . 187.It Em libl Pq Fl l Ns Ar l 188The library for 189.Xr lex 1 . 190.It Em libm Pq Fl l Ns Ar m 191The math library. See 192.Xr math 3 . 193.\" The math library is loaded as needed by the Pascal compiler 194.\" .Xr pc 1 , 195.\" but not by the C compiler which requires the 196.\" .Fl l Ns Ar m 197.\" flag (see 198.\" .Xr math 3 ) . 199.\" .It Em libmp Pq Fl l Ns Ar mp 200.\" .It Em libom 201.\" Old math library. 202.\" .It Em libplot Pq Fl l Ns Ar plot 203.\" Device independent plotting functions (see 204.\" .Xr plot 3 ) . 205.\" .It Em libplotf77 Pq Fl l Ns Ar plotf77 206.\" The device independent plotting functions for fortran. (see 207.\" .Xr plot 3 ) . 208.\" .It Em libresolv Pq Fl l Ns Ar resolv 209.\" Routines for network address resolution. 210.It Em libmenu Pq Fl l Ns Ar menu 211The curses menu library. See 212.Xr menus 3 . 213.It Em libpcap Pq Fl l Ns Ar pcap 214The packet capture library. See 215.Xr pcap 3 . 216.It Em libpci Pq Fl l Ns Ar pci 217The PCI bus access library. See 218.Xr pci 3 . 219.It Em libposix Pq Fl l Ns Ar posix 220The POSIX compatibility library provides a compatibility interface for 221POSIX functions which differ from the standard BSD interfaces. See 222.Xr chown 2 223and 224.Xr rename 2 . 225.It Em libresolv Pq Fl l Ns Ar resolv 226The DNS resolver library. 227.It Em librmt Pq Fl l Ns Ar rmt 228Remote magnetic tape library. See 229.Xr rmtops 3 . 230.It Em libroken Pq Fl l Ns Ar roken 231A library containing compatibility functions used by Kerberos. It 232implements functionality required by the Kerberos implementation not 233implemented in the standard 234.Nx 235libraries. 236.It Em librpcsvc Pq Fl l Ns Ar rpcsvc 237The Remote Procedure Call (RPC) services library. See 238.Xr rpc 3 . 239.It Em libskey Pq Fl l Ns Ar skey 240The S/Key one-time password library. See 241.Xr skey 3 . 242.It Em libsl Pq Fl l Ns Ar sl 243.It Em libss Pq Fl l Ns Ar ss 244.It Em libssl Pq Fl l Ns Ar ssl 245The secure sockets layer (SSL) library. See 246.Xr ssl 3 . 247.It Em libtelnet Pq Fl l Ns Ar telnet 248The telnet library. 249.It Em libtermcap Pq Fl l Ns Ar termcap 250The terminal-independent operation library. See 251.Xr termcap 3 . 252.It Em libusb Pq Fl l Ns Ar usb 253The Universal Serial Bus (USB) access library. 254.\" See 255.\" .Xr usb 3 . 256.It Em libutil Pq Fl l Ns Ar util 257The system utilities library. See 258.Xr util 3 . 259.It Em libwrap Pq Fl l Ns Ar wrap 260The TCP wrappers library. See 261.Xr hosts_access 3 . 262.It Em liby Pq Fl l Ns Ar y 263The library for 264.Xr yacc 1 . 265.It Em libz Pq Fl l Ns Ar z 266General-purpose compression library. 267.El 268.Sh SEE ALSO 269.Xr cc 1 , 270.Xr ld 1 , 271.Xr nm 1 , 272.Xr rtld 1 , 273.Xr intro 2 274.Sh HISTORY 275An 276.Nm 277manual appeared in 278.At v7 . 279