1.\" $NetBSD: intro.3,v 1.36 2021/04/14 07:56:23 nia 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 April 14, 2021 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.Bl -tag -width "XXXXXX" 75.It standard I/O routines 76see 77.Xr stdio 3 78.It database routines 79see 80.Xr db 3 81.It bit operators 82see 83.Xr bitstring 3 84.It string operators 85see 86.Xr string 3 87.It character tests and character operators 88.It Tn encryption and hash routines 89see 90.Xr md4 3 91and 92.Xr md5 3 . 93.It storage allocation 94see 95.Xr mpool 3 96and 97.Xr malloc 3 98.It time functions 99see 100.Xr time 3 101.It signal handling 102see 103.Xr signal 3 104.El 105.It Em libcom_err Pq Fl l Ns Ar com_err 106The common error description library. 107See 108.Xr com_err 3 . 109.It Em libcompat Pq Fl l Ns Ar compat 110Functions which are obsolete but are available for compatibility with 111.Bx 4.3 . 112In particular, a number of system call interfaces provided in previous 113releases of 114.Bx 115have been included for source code compatibility. 116Use of these routines should, for the most part, be avoided. 117The manual page entry 118for each compatibility routine indicates the proper interface to use. 119.It Em libcrypt Pq Fl l Ns Ar crypt 120The crypt library. 121See 122.Xr crypt 3 . 123.It Em libcrypto Pq Fl l Ns Ar crypto 124The OpenSSL cryptographic library. 125See 126.Xr crypto 7 . 127.It Em libcurses Pq Fl l Ns Ar curses Fl l Ns Ar terminfo 128Terminal independent screen management routines 129for two dimensional non-bitmap display terminals. 130See 131.Xr curses 3 . 132.It Em libdes Pq Fl l Ns Ar des 133The OpenSSL cryptographic library for the DES algorithms. 134See 135.Xr des 3 . 136.It Em libdm Pq Fl l Ns Ar dm 137The device-mapper driver access library used for communication with 138kernel driver 139.Xr dm 4 140and for 141.Xr lvm 8 142subsystem. 143.It Em libedit Pq Fl l Ns Ar edit 144The command-line editor or editline library. 145The editline library provides generic editing and history functions. 146See 147.Xr editline 3 . 148.It Em libform Pq Fl l Ns Ar form 149The curses form library provides a terminal-independent form system 150using the curses library. 151The form library provides facilities for defining forms on terminals. 152See 153.Xr forms 3 . 154.It Em libgssapi Pq Fl l Ns Ar gssapi 155The Generic Security Services (GSS) API library. 156This library provides 157verification services to applications and usually sits above the 158cryptographic libraries. 159.It Em libhesiod Pq Fl l Ns Ar hesiod 160The Hesiod library. 161This library provides routines for performing 162lookups of Hesiod information, which is stored as text records in the 163Domain Name Service. 164See 165.Xr hesiod 3 . 166.It Em libhdb Pq Fl l Ns Ar hdb 167The Heimdal Kerberos 5 authentication/authorisation database access 168library. 169.It Em libintl Pq Fl l Ns Ar intl 170The internationalized message handling library. 171See 172.Xr gettext 3 . 173.It Em libipsec Pq Fl l Ns Ar ipsec 174The IPsec policy control library. 175See 176.Xr ipsec_set_policy 3 177and 178.Xr ipsec_strerror 3 . 179.It Em libkadm5clnt Pq Fl l Ns Ar kadm5clnt 180The Kerberos 5 administration client library. 181.It Em libkadm5srv Pq Fl l Ns Ar kadm5srv 182The Kerberos 5 administration server library. 183See 184.Xr kadm5_pwcheck 3 . 185.It Em libkafs Pq Fl l Ns Ar kafs 186The Kerberos IV AFS library. 187See 188.Xr kafs 3 . 189.It Em libkdb Pq Fl l Ns Ar kdb 190The Kerberos IV authentication/authorisation database access library. 191.It Em libkrb Pq Fl l Ns Ar krb 192The Kerberos IV library. 193.It Em libkrb5 Pq Fl l Ns Ar krb5 194The Kerberos 5 library. 195See 196.Xr krb5 3 . 197.It Em libkstream Pq Fl l Ns Ar kstream 198Kerberos IV encrypted stream library. 199.It Em libkvm Pq Fl l Ns Ar kvm 200Kernel data access library. 201See 202.Xr kvm 3 . 203.It Em libl Pq Fl l Ns Ar l 204The library for 205.Xr lex 1 . 206.It Em libm Pq Fl l Ns Ar m 207The math library. 208See 209.Xr math 3 . 210.\" The math library is loaded as needed by the Pascal compiler 211.\" .Xr pc 1 , 212.\" but not by the C compiler which requires the 213.\" .Fl l Ns Ar m 214.\" flag (see 215.\" .Xr math 3 ) . 216.\" .It Em libmp Pq Fl l Ns Ar mp 217.\" .It Em libom 218.\" Old math library. 219.\" .It Em libplot Pq Fl l Ns Ar plot 220.\" Device independent plotting functions (see 221.\" .Xr plot 3 ) . 222.\" .It Em libplotf77 Pq Fl l Ns Ar plotf77 223.\" The device independent plotting functions for fortran (see 224.\" .Xr plot 3 ) . 225.\" .It Em libresolv Pq Fl l Ns Ar resolv 226.\" Routines for network address resolution. 227.It Em libmenu Pq Fl l Ns Ar menu 228The curses menu library. 229See 230.Xr menus 3 . 231.It Em libnvmm Pq Fl l Ns Ar nvmm 232.Nx 233Virtualization API. 234See 235.Xr libnvmm 3 . 236.It Em libossaudio Pq Fl l Ns Ar ossaudio 237Open Sound System compatibility library. 238See 239.Xr ossaudio 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 7 . 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