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