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