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