xref: /netbsd-src/share/man/man3/intro.3 (revision aaf4ece63a859a04e37cf3a7229b5fab0157cc06)
1.\"	$NetBSD: intro.3,v 1.21 2004/11/10 16:38:29 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 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 libcdk Pq Fl l Ns Ar cdk
105Curses development kit (CDK) library.  See
106.Xr cdk 3 .
107.It Em libcom_err Pq Fl l Ns Ar com_err
108The common error description library.  See
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.  Use of these
117routines should, for the most part, be avoided.  The 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.  See
121.Xr crypt 3 .
122.It Em libcrypto Pq Fl l Ns Ar crypto
123The OpenSSL cryptographic library.  See
124.Xr crypto 3 .
125.It Em libcrypto_idea Pq Fl l Ns Ar crypto_idea
126The OpenSSL cryptographic library routines for the IDEA algorithm.
127This algorithm is separated from libcrypto since the IDEA algorithm is
128protected by patents and its use is restricted.
129.It Em libcrypto_rc5 Pq Fl l Ns Ar crypto_rc5
130The OpenSSL cryptographic library routines for the RC5 algorithm.
131This algorithm is separated from libcrypto since the RC5 algorithm is
132protected by patents and its use is restricted.
133.It Xo
134.Em libcurses
135.Pf ( Ns Fl l Ns Ar curses
136.Fl l Ns Ar termcap )
137.Xc
138Terminal independent screen management routines
139for two dimensional non-bitmap display terminals.  See
140.Xr curses 3 .
141.It Em libdes Pq Fl l Ns Ar des
142The OpenSSL cryptographic library for the DES algorithms.  See
143.Xr des 3 .
144.It Em libedit Pq Fl l Ns Ar edit
145The command-line editor or editline library.  The editline library
146provides generic editing and history functions.  See
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.  The form library provides facilities for
151defining forms on terminals.  See
152.Xr forms 3 .
153.It Em libgssapi Pq Fl l Ns Ar gssapi
154The Generic Security Services (GSS) API library.  This library provides
155verification services to applications and usually sits above the
156cryptographic libraries.
157.It Em libhesiod Pq Fl l Ns Ar hesiod
158The Hesiod library.  This library provides routines for performing
159lookups of Hesiod information, which is stored as text records in the
160Domain Name Service.  See
161.Xr hesiod 3 .
162.It Em libhdb Pq Fl l Ns Ar hdb
163The Heimdal Kerberos 5 authentication/authorisation database access
164library.
165.It Em libintl Pq Fl l Ns Ar intl
166The internationalized message handling library.  See
167.Xr gettext 3 .
168.It Em libipsec Pq Fl l Ns Ar ipsec
169The IPsec policy control library.  See
170.Xr ipsec_set_policy 3
171and
172.Xr ipsec_strerror 3 .
173.It Em libkadm Pq Fl l Ns Ar kadm
174The Kerberos IV administration server and client library.
175.It Em libkadm5clnt Pq Fl l Ns Ar kadm5clnt
176The Kerberos 5 administration client library.
177.It Em libkadm5srv Pq Fl l Ns Ar kadm5srv
178The Kerberos 5 administration server library.
179.It Em libkafs Pq Fl l Ns Ar kafs
180The Kerberos IV AFS library.  See
181.Xr kafs 3 .
182.It Em libkdb Pq Fl l Ns Ar kdb
183The Kerberos IV authentication/authorisation database access library.
184.It Em libkrb Pq Fl l Ns Ar krb
185The Kerberos IV library.
186.It Em libkrb5 Pq Fl l Ns Ar krb5
187The Kerberos 5 library.  See
188.Xr krb5 3 .
189.It Em libkstream Pq Fl l Ns Ar kstream
190Kerberos IV encrypted stream library.
191.It Em libkvm Pq Fl l Ns Ar kvm
192Kernel data access library.  See
193.Xr kvm 3 .
194.It Em libl Pq Fl l Ns Ar l
195The library for
196.Xr lex 1 .
197.It Em libm Pq Fl l Ns Ar m
198The math library.  See
199.Xr math 3 .
200.\" The math library is loaded as needed by the Pascal compiler
201.\" .Xr pc 1 ,
202.\" but not by the C compiler which requires the
203.\" .Fl l Ns Ar m
204.\" flag (see
205.\" .Xr math 3 ) .
206.\" .It Em libmp Pq Fl l Ns Ar mp
207.\" .It Em libom
208.\" Old math library.
209.\" .It Em libplot Pq Fl l Ns Ar plot
210.\" Device independent plotting functions (see
211.\" .Xr plot 3 ) .
212.\" .It Em libplotf77 Pq Fl l Ns Ar plotf77
213.\" The device independent plotting functions for fortran. (see
214.\" .Xr plot 3 ) .
215.\" .It Em libresolv Pq Fl l Ns Ar resolv
216.\" Routines for network address resolution.
217.It Em libmenu Pq Fl l Ns Ar menu
218The curses menu library.  See
219.Xr menus 3 .
220.It Em libpcap Pq Fl l Ns Ar pcap
221The packet capture library.  See
222.Xr pcap 3 .
223.It Em libpci Pq Fl l Ns Ar pci
224The PCI bus access library.  See
225.Xr pci 3 .
226.It Em libposix Pq Fl l Ns Ar posix
227The POSIX compatibility library provides a compatibility interface for
228POSIX functions which differ from the standard BSD interfaces.  See
229.Xr chown 2
230and
231.Xr rename 2 .
232.It Em libresolv Pq Fl l Ns Ar resolv
233The DNS resolver library.
234.It Em librmt Pq Fl l Ns Ar rmt
235Remote magnetic tape library.  See
236.Xr rmtops 3 .
237.It Em libroken Pq Fl l Ns Ar roken
238A library containing compatibility functions used by Kerberos.  It
239implements functionality required by the Kerberos implementation not
240implemented in the standard
241.Nx
242libraries.
243.It Em librpcsvc Pq Fl l Ns Ar rpcsvc
244The Remote Procedure Call (RPC) services library.  See
245.Xr rpc 3 .
246.It Em libskey Pq Fl l Ns Ar skey
247The S/Key one-time password library.  See
248.Xr skey 3 .
249.It Em libsl Pq Fl l Ns Ar sl
250.It Em libss Pq Fl l Ns Ar ss
251.It Em libssl Pq Fl l Ns Ar ssl
252The secure sockets layer (SSL) library.  See
253.Xr ssl 3 .
254.It Em libtelnet Pq Fl l Ns Ar telnet
255The telnet library.
256.It Em libtermcap Pq Fl l Ns Ar termcap
257The terminal-independent operation library.  See
258.Xr termcap 3 .
259.It Em libusb Pq Fl l Ns Ar usb
260The Universal Serial Bus (USB) access library.
261.\" See
262.\" .Xr usb 3 .
263.It Em libutil Pq Fl l Ns Ar util
264The system utilities library.  See
265.Xr util 3 .
266.It Em libwrap Pq Fl l Ns Ar wrap
267The TCP wrappers library.  See
268.Xr hosts_access 3 .
269.It Em liby Pq Fl l Ns Ar y
270The library for
271.Xr yacc 1 .
272.It Em libz Pq Fl l Ns Ar z
273General-purpose compression library.
274.El
275.Sh SEE ALSO
276.Xr cc 1 ,
277.Xr ld 1 ,
278.Xr nm 1 ,
279.Xr rtld 1 ,
280.Xr intro 2
281.Sh HISTORY
282An
283.Nm
284manual appeared in
285.At v7 .
286