1.\" $NetBSD: intro.3,v 1.31 2015/11/22 09:37:33 wiz 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 November 22, 2015 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. 67When using the C compiler 68.Xr cc 1 , 69it is not necessary to supply the linker flag 70.Fl l Ns Ar c 71for these functions. 72There are several subsystems included inside 73.Em libc : 74.Pp 75.Bl -tag -width "XXXXXX" 76.It standard I/O routines 77see 78.Xr stdio 3 79.It database routines 80see 81.Xr db 3 82.It bit operators 83see 84.Xr bitstring 3 85.It string operators 86see 87.Xr string 3 88.It character tests and character operators 89.It Tn encryption and hash routines 90see 91.Xr md4 3 92and 93.Xr md5 3 . 94.It storage allocation 95see 96.Xr mpool 3 97and 98.Xr malloc 3 99.It time functions 100see 101.Xr time 3 102.It signal handling 103see 104.Xr signal 3 105.El 106.It Em libcom_err Pq Fl l Ns Ar com_err 107The common error description library. 108See 109.Xr com_err 3 . 110.It Em libcompat Pq Fl l Ns Ar compat 111Functions which are obsolete but are available for compatibility with 112.Bx 4.3 . 113In particular, a number of system call interfaces provided in previous 114releases of 115.Bx 116have been included for source code compatibility. 117Use of these routines should, for the most part, be avoided. 118The manual page entry 119for each compatibility routine indicates the proper interface to use. 120.It Em libcrypt Pq Fl l Ns Ar crypt 121The crypt library. 122See 123.Xr crypt 3 . 124.It Em libcrypto Pq Fl l Ns Ar crypto 125The OpenSSL cryptographic library. 126See 127.Xr crypto 3 . 128.It Em libcrypto_idea Pq Fl l Ns Ar crypto_idea 129The OpenSSL cryptographic library routines for the IDEA algorithm. 130This algorithm is separated from libcrypto since the IDEA algorithm is 131protected by patents and its use is restricted. 132.It Em libcrypto_rc5 Pq Fl l Ns Ar crypto_rc5 133The OpenSSL cryptographic library routines for the RC5 algorithm. 134This algorithm is separated from libcrypto since the RC5 algorithm is 135protected by patents and its use is restricted. 136.It Em libcurses Pq Fl l Ns Ar curses Fl l Ns Ar terminfo 137Terminal independent screen management routines 138for two dimensional non-bitmap display terminals. 139See 140.Xr curses 3 . 141.It Em libdes Pq Fl l Ns Ar des 142The OpenSSL cryptographic library for the DES algorithms. 143See 144.Xr des 3 . 145.It Em libdm Pq Fl l Ns Ar dm 146The device-mapper driver access library used for communication with 147kernel driver 148.Xr dm 4 149and for 150.Xr lvm 8 151subsystem. 152.It Em libedit Pq Fl l Ns Ar edit 153The command-line editor or editline library. 154The editline library provides generic editing and history functions. 155See 156.Xr editline 3 . 157.It Em libform Pq Fl l Ns Ar form 158The curses form library provides a terminal-independent form system 159using the curses library. 160The form library provides facilities for defining forms on terminals. 161See 162.Xr forms 3 . 163.It Em libgssapi Pq Fl l Ns Ar gssapi 164The Generic Security Services (GSS) API library. 165This library provides 166verification services to applications and usually sits above the 167cryptographic libraries. 168.It Em libhesiod Pq Fl l Ns Ar hesiod 169The Hesiod library. 170This library provides routines for performing 171lookups of Hesiod information, which is stored as text records in the 172Domain Name Service. 173See 174.Xr hesiod 3 . 175.It Em libhdb Pq Fl l Ns Ar hdb 176The Heimdal Kerberos 5 authentication/authorisation database access 177library. 178.It Em libintl Pq Fl l Ns Ar intl 179The internationalized message handling library. 180See 181.Xr gettext 3 . 182.It Em libipsec Pq Fl l Ns Ar ipsec 183The IPsec policy control library. 184See 185.Xr ipsec_set_policy 3 186and 187.Xr ipsec_strerror 3 . 188.It Em libkadm Pq Fl l Ns Ar kadm 189The Kerberos IV administration server and client library. 190.It Em libkadm5clnt Pq Fl l Ns Ar kadm5clnt 191The Kerberos 5 administration client library. 192.It Em libkadm5srv Pq Fl l Ns Ar kadm5srv 193The Kerberos 5 administration server library. 194.It Em libkafs Pq Fl l Ns Ar kafs 195The Kerberos IV AFS library. 196See 197.Xr kafs 3 . 198.It Em libkdb Pq Fl l Ns Ar kdb 199The Kerberos IV authentication/authorisation database access library. 200.It Em libkrb Pq Fl l Ns Ar krb 201The Kerberos IV library. 202.It Em libkrb5 Pq Fl l Ns Ar krb5 203The Kerberos 5 library. 204See 205.Xr krb5 3 . 206.It Em libkstream Pq Fl l Ns Ar kstream 207Kerberos IV encrypted stream library. 208.It Em libkvm Pq Fl l Ns Ar kvm 209Kernel data access library. 210See 211.Xr kvm 3 . 212.It Em libl Pq Fl l Ns Ar l 213The library for 214.Xr lex 1 . 215.It Em libm Pq Fl l Ns Ar m 216The math library. 217See 218.Xr math 3 . 219.\" The math library is loaded as needed by the Pascal compiler 220.\" .Xr pc 1 , 221.\" but not by the C compiler which requires the 222.\" .Fl l Ns Ar m 223.\" flag (see 224.\" .Xr math 3 ) . 225.\" .It Em libmp Pq Fl l Ns Ar mp 226.\" .It Em libom 227.\" Old math library. 228.\" .It Em libplot Pq Fl l Ns Ar plot 229.\" Device independent plotting functions (see 230.\" .Xr plot 3 ) . 231.\" .It Em libplotf77 Pq Fl l Ns Ar plotf77 232.\" The device independent plotting functions for fortran (see 233.\" .Xr plot 3 ) . 234.\" .It Em libresolv Pq Fl l Ns Ar resolv 235.\" Routines for network address resolution. 236.It Em libmenu Pq Fl l Ns Ar menu 237The curses menu library. 238See 239.Xr menus 3 . 240.It Em libpanel Pq Fl l Ns Ar panel 241The curses panel library. 242See 243.Xr panel 3 . 244.It Em libpcap Pq Fl l Ns Ar pcap 245The packet capture library. 246See 247.Xr pcap 3 . 248.It Em libpci Pq Fl l Ns Ar pci 249The PCI bus access library. 250See 251.Xr pci 3 . 252.It Em libposix Pq Fl l Ns Ar posix 253The POSIX compatibility library provides a compatibility interface for 254POSIX functions which differ from the standard BSD interfaces. 255See 256.Xr chown 2 257and 258.Xr rename 2 . 259.It Em libresolv Pq Fl l Ns Ar resolv 260The DNS resolver library. 261.It Em librmt Pq Fl l Ns Ar rmt 262Remote magnetic tape library. 263See 264.Xr rmtops 3 . 265.It Em libroken Pq Fl l Ns Ar roken 266A library containing compatibility functions used by Kerberos. 267It implements functionality required by the Kerberos implementation not 268implemented in the standard 269.Nx 270libraries. 271.It Em librpcsvc Pq Fl l Ns Ar rpcsvc 272The Remote Procedure Call (RPC) services library. 273See 274.Xr rpc 3 . 275.It Em libskey Pq Fl l Ns Ar skey 276The S/Key one-time password library. 277See 278.Xr skey 3 . 279.It Em libsl Pq Fl l Ns Ar sl 280.It Em libss Pq Fl l Ns Ar ss 281.It Em libssl Pq Fl l Ns Ar ssl 282The secure sockets layer (SSL) library. 283See 284.Xr ssl 3 . 285.It Em libtelnet Pq Fl l Ns Ar telnet 286The telnet library. 287.It Em libterminfo Pq Fl l Ns Ar terminfo 288The terminal-independent operation library. 289See 290.Xr terminfo 3 . 291.It Em libusbhid Pq Fl l Ns Ar usbhid 292The Universal Serial Bus (USB) Human Interface Devices access library. 293See 294.Xr libusbhid 3 . 295.It Em libutil Pq Fl l Ns Ar util 296The system utilities library. 297See 298.Xr util 3 . 299.It Em libwrap Pq Fl l Ns Ar wrap 300The TCP wrappers library. 301See 302.Xr hosts_access 3 . 303.It Em liby Pq Fl l Ns Ar y 304The library for 305.Xr yacc 1 . 306.It Em libz Pq Fl l Ns Ar z 307General-purpose compression library. 308See 309.Xr zlib 3 . 310.El 311.Sh SEE ALSO 312.Xr cc 1 , 313.Xr ld 1 , 314.Xr nm 1 , 315.Xr rtld 1 , 316.Xr intro 2 317.Sh HISTORY 318An 319.Nm 320manual appeared in 321.At v7 . 322