xref: /netbsd-src/share/man/man3/intro.3 (revision b936cc7999a0522f8999a6f74a1b6315cebfbb0c)
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