2004-11-03 13:51:07 +00:00
|
|
|
.\" Copyright (c) 1990, 1993
|
|
|
|
.\" The Regents of the University of California. All rights reserved.
|
|
|
|
.\"
|
accept.2, bind.2, connect.2, getpeername.2, getpriority.2, getsockname.2, getsockopt.2, ioctl.2, killpg.2, listen.2, lseek.2, readlink.2, recv.2, send.2, setpgid.2, setreuid.2, shutdown.2, socket.2, socketpair.2, syscall.2, truncate.2, alloca.3, btree.3, daemon.3, dbopen.3, err.3, exec.3, fclose.3, ferror.3, fflush.3, fopen.3, fread.3, fseek.3, fts.3, hash.3, mpool.3, popen.3, queue.3, rcmd.3, recno.3, rexec.3, scanf.3, setbuf.3, stdarg.3, stdio.3, strtod.3, hostname.7, mdoc.7, mdoc.samples.7: srcfix: LICENSE: s/BSD_4_CLAUSE_FULL/BSD_4_CLAUSE_UCB/
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-03-10 16:41:19 +00:00
|
|
|
.\" %%%LICENSE_START(BSD_4_CLAUSE_UCB)
|
2004-11-03 13:51:07 +00:00
|
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
|
|
.\" modification, are permitted provided that the following conditions
|
|
|
|
.\" are met:
|
|
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
|
|
.\" must display the following acknowledgement:
|
|
|
|
.\" This product includes software developed by the University of
|
|
|
|
.\" California, Berkeley and its contributors.
|
|
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
|
|
.\" may be used to endorse or promote products derived from this software
|
|
|
|
.\" without specific prior written permission.
|
|
|
|
.\"
|
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
|
|
.\" SUCH DAMAGE.
|
accept.2, bind.2, connect.2, getpeername.2, getpriority.2, getsockname.2, getsockopt.2, ioctl.2, killpg.2, listen.2, lseek.2, readlink.2, recv.2, send.2, setpgid.2, setreuid.2, shutdown.2, socket.2, socketpair.2, syscall.2, truncate.2, alloca.3, btree.3, daemon.3, dbopen.3, err.3, exec.3, fclose.3, ferror.3, fflush.3, fopen.3, fread.3, fseek.3, fts.3, getloadavg.3, hash.3, mpool.3, openpty.3, popen.3, queue.3, rcmd.3, recno.3, rexec.3, scanf.3, setbuf.3, stdarg.3, stdio.3, strtod.3, hostname.7, mdoc.7, mdoc.samples.7, operator.7, symlink.7: Add LICENSE_START(BSD_[34]_CLAUSE_FULL)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-03-10 09:28:48 +00:00
|
|
|
.\" %%%LICENSE_END
|
2004-11-03 13:51:07 +00:00
|
|
|
.\"
|
|
|
|
.\" @(#)dbopen.3 8.5 (Berkeley) 1/2/94
|
|
|
|
.\"
|
2012-05-03 15:02:55 +00:00
|
|
|
.TH DBOPEN 3 2012-05-04 "" "Linux Programmer's Manual"
|
2004-11-03 13:51:07 +00:00
|
|
|
.UC 7
|
|
|
|
.SH NAME
|
|
|
|
dbopen \- database access methods
|
|
|
|
.SH SYNOPSIS
|
|
|
|
.nf
|
2007-04-03 15:32:52 +00:00
|
|
|
.B #include <sys/types.h>
|
|
|
|
.B #include <limits.h>
|
|
|
|
.B #include <db.h>
|
2012-05-03 15:02:55 +00:00
|
|
|
.B #include <fcntl.h>
|
2004-11-03 13:51:07 +00:00
|
|
|
|
2007-04-03 15:32:52 +00:00
|
|
|
.BI "DB *dbopen(const char *" file ", int " flags ", int " mode \
|
2007-04-12 22:42:49 +00:00
|
|
|
", DBTYPE " type ,
|
2007-04-03 15:32:52 +00:00
|
|
|
.BI " const void *" openinfo );
|
2004-11-03 13:51:07 +00:00
|
|
|
.fi
|
|
|
|
.SH DESCRIPTION
|
2012-04-22 19:47:35 +00:00
|
|
|
.IR "Note well" :
|
|
|
|
This page documents interfaces provided in glibc up until version 2.1.
|
|
|
|
Since version 2.2, glibc no longer provides these interfaces.
|
|
|
|
Probably, you are looking for the APIs provided by the
|
|
|
|
.I libdb
|
|
|
|
library instead.
|
|
|
|
|
2005-11-02 11:10:24 +00:00
|
|
|
.BR dbopen ()
|
2004-11-03 13:51:07 +00:00
|
|
|
is the library interface to database files.
|
|
|
|
The supported file formats are btree, hashed and UNIX file oriented.
|
|
|
|
The btree format is a representation of a sorted, balanced tree structure.
|
|
|
|
The hashed format is an extensible, dynamic hashing scheme.
|
|
|
|
The flat-file format is a byte stream file with fixed or variable length
|
|
|
|
records.
|
getcpu.2, getunwind.2, kcmp.2, mmap.2, perf_event_open.2, perfmonctl.2, quotactl.2, restart_syscall.2, btree.3, dbopen.3, hash.3, recno.3, sched_getcpu.3, elf.5, bootparam.7, hier.7, netdevice.7, rtnetlink.7: wfix: "xxxx specific" ==> "xxxx-specific"
2014-01-10 17:16:28 +00:00
|
|
|
The formats and file-format-specific information are described in detail
|
2004-11-03 13:51:07 +00:00
|
|
|
in their respective manual pages
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR btree (3),
|
getrlimit.2, mmap.2, stat.2, unimplemented.2, dbopen.3, ecvt_r.3, fopen.3, fts.3, getcontext.3, qecvt.3, ip.7, ld.so.8: grfix: Add Oxford comma
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2014-09-01 15:57:07 +00:00
|
|
|
.BR hash (3),
|
2004-11-03 13:51:07 +00:00
|
|
|
and
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR recno (3).
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
2005-11-02 11:10:24 +00:00
|
|
|
.BR dbopen ()
|
|
|
|
opens
|
2004-11-03 13:51:07 +00:00
|
|
|
.I file
|
|
|
|
for reading and/or writing.
|
|
|
|
Files never intended to be preserved on disk may be created by setting
|
2008-07-10 20:53:08 +00:00
|
|
|
the
|
|
|
|
.I file
|
|
|
|
argument to NULL.
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.I flags
|
|
|
|
and
|
|
|
|
.I mode
|
|
|
|
arguments are as specified to the
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR open (2)
|
2007-12-13 20:46:52 +00:00
|
|
|
routine, however, only the
|
|
|
|
.BR O_CREAT ,
|
|
|
|
.BR O_EXCL ,
|
|
|
|
.BR O_EXLOCK ,
|
|
|
|
.BR O_NONBLOCK ,
|
|
|
|
.BR O_RDONLY ,
|
|
|
|
.BR O_RDWR ,
|
|
|
|
.BR O_SHLOCK ,
|
|
|
|
and
|
2007-06-22 18:09:13 +00:00
|
|
|
.B O_TRUNC
|
|
|
|
flags are meaningful.
|
2007-12-13 20:46:52 +00:00
|
|
|
(Note, opening a database file
|
|
|
|
.B O_WRONLY
|
|
|
|
is not possible.)
|
2011-09-28 03:06:37 +00:00
|
|
|
.\"Three additional options may be specified by ORing
|
2004-11-03 13:51:07 +00:00
|
|
|
.\"them into the
|
|
|
|
.\".I flags
|
|
|
|
.\"argument.
|
|
|
|
.\".TP
|
|
|
|
.\"DB_LOCK
|
|
|
|
.\"Do the necessary locking in the database to support concurrent access.
|
|
|
|
.\"If concurrent access isn't needed or the database is read-only this
|
|
|
|
.\"flag should not be set, as it tends to have an associated performance
|
|
|
|
.\"penalty.
|
|
|
|
.\".TP
|
|
|
|
.\"DB_SHMEM
|
|
|
|
.\"Place the underlying memory pool used by the database in shared
|
|
|
|
.\"memory.
|
|
|
|
.\"Necessary for concurrent access.
|
|
|
|
.\".TP
|
|
|
|
.\"DB_TXN
|
|
|
|
.\"Support transactions in the database.
|
|
|
|
.\"The DB_LOCK and DB_SHMEM flags must be set as well.
|
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.I type
|
2007-12-13 20:46:52 +00:00
|
|
|
argument is of type
|
|
|
|
.I DBTYPE
|
|
|
|
(as defined in the
|
2007-12-09 08:08:53 +00:00
|
|
|
.I <db.h>
|
|
|
|
include file) and
|
2007-12-14 05:23:00 +00:00
|
|
|
may be set to
|
|
|
|
.BR DB_BTREE ,
|
|
|
|
.BR DB_HASH ,
|
|
|
|
or
|
|
|
|
.BR DB_RECNO .
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.I openinfo
|
getcpu.2, getunwind.2, kcmp.2, mmap.2, perf_event_open.2, perfmonctl.2, quotactl.2, restart_syscall.2, btree.3, dbopen.3, hash.3, recno.3, sched_getcpu.3, elf.5, bootparam.7, hier.7, netdevice.7, rtnetlink.7: wfix: "xxxx specific" ==> "xxxx-specific"
2014-01-10 17:16:28 +00:00
|
|
|
argument is a pointer to an access-method-specific structure described
|
2004-11-03 13:51:07 +00:00
|
|
|
in the access method's manual page.
|
|
|
|
If
|
|
|
|
.I openinfo
|
|
|
|
is NULL, each access method will use defaults appropriate for the system
|
|
|
|
and the access method.
|
|
|
|
.PP
|
2005-11-02 11:10:24 +00:00
|
|
|
.BR dbopen ()
|
2007-12-14 13:23:07 +00:00
|
|
|
returns a pointer to a
|
|
|
|
.I DB
|
|
|
|
structure on success and NULL on error.
|
|
|
|
The
|
|
|
|
.I DB
|
|
|
|
structure is defined in the
|
2007-12-09 08:08:53 +00:00
|
|
|
.I <db.h>
|
|
|
|
include file, and contains at
|
2004-11-03 13:51:07 +00:00
|
|
|
least the following fields:
|
|
|
|
.sp
|
2007-12-19 06:57:44 +00:00
|
|
|
.in +4n
|
2004-11-03 13:51:07 +00:00
|
|
|
.nf
|
|
|
|
typedef struct {
|
2007-04-03 15:32:52 +00:00
|
|
|
DBTYPE type;
|
|
|
|
int (*close)(const DB *db);
|
2007-12-23 17:26:26 +00:00
|
|
|
int (*del)(const DB *db, const DBT *key, unsigned int flags);
|
2007-04-03 15:32:52 +00:00
|
|
|
int (*fd)(const DB *db);
|
2008-04-23 21:07:15 +00:00
|
|
|
int (*get)(const DB *db, DBT *key, DBT *data,
|
|
|
|
unsigned int flags);
|
2007-04-03 15:32:52 +00:00
|
|
|
int (*put)(const DB *db, DBT *key, const DBT *data,
|
2007-12-23 17:26:26 +00:00
|
|
|
unsigned int flags);
|
|
|
|
int (*sync)(const DB *db, unsigned int flags);
|
2008-04-23 21:07:15 +00:00
|
|
|
int (*seq)(const DB *db, DBT *key, DBT *data,
|
|
|
|
unsigned int flags);
|
2004-11-03 13:51:07 +00:00
|
|
|
} DB;
|
|
|
|
.fi
|
2007-12-14 05:23:00 +00:00
|
|
|
.in
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
|
|
|
These elements describe a database type and a set of functions performing
|
|
|
|
various actions.
|
|
|
|
These functions take a pointer to a structure as returned by
|
2005-11-02 11:10:24 +00:00
|
|
|
.BR dbopen (),
|
2004-11-03 13:51:07 +00:00
|
|
|
and sometimes one or more pointers to key/data structures and a flag value.
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I type
|
2004-11-03 13:51:07 +00:00
|
|
|
The type of the underlying access method (and file format).
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I close
|
2004-11-03 13:51:07 +00:00
|
|
|
A pointer to a routine to flush any cached information to disk, free any
|
|
|
|
allocated resources, and close the underlying file(s).
|
|
|
|
Since key/data pairs may be cached in memory, failing to sync the file
|
|
|
|
with a
|
|
|
|
.I close
|
|
|
|
or
|
|
|
|
.I sync
|
|
|
|
function may result in inconsistent or lost information.
|
2007-12-29 06:47:34 +00:00
|
|
|
.I close
|
2004-11-03 13:51:07 +00:00
|
|
|
routines return \-1 on error (setting
|
|
|
|
.IR errno )
|
|
|
|
and 0 on success.
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I del
|
2004-11-03 13:51:07 +00:00
|
|
|
A pointer to a routine to remove key/data pairs from the database.
|
|
|
|
.IP
|
2008-07-10 20:53:08 +00:00
|
|
|
The argument
|
2004-11-03 13:51:07 +00:00
|
|
|
.I flag
|
|
|
|
may be set to the following value:
|
|
|
|
.RS
|
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_CURSOR
|
2004-11-03 13:51:07 +00:00
|
|
|
Delete the record referenced by the cursor.
|
|
|
|
The cursor must have previously been initialized.
|
|
|
|
.RE
|
|
|
|
.IP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I delete
|
2004-11-03 13:51:07 +00:00
|
|
|
routines return \-1 on error (setting
|
|
|
|
.IR errno ),
|
|
|
|
0 on success, and 1 if the specified
|
|
|
|
.I key
|
|
|
|
was not in the file.
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I fd
|
2004-11-03 13:51:07 +00:00
|
|
|
A pointer to a routine which returns a file descriptor representative
|
|
|
|
of the underlying database.
|
|
|
|
A file descriptor referencing the same file will be returned to all
|
|
|
|
processes which call
|
2005-11-02 11:10:24 +00:00
|
|
|
.BR dbopen ()
|
2004-11-03 13:51:07 +00:00
|
|
|
with the same
|
|
|
|
.I file
|
|
|
|
name.
|
|
|
|
This file descriptor may be safely used as an argument to the
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR fcntl (2)
|
2004-11-03 13:51:07 +00:00
|
|
|
and
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR flock (2)
|
2004-11-03 13:51:07 +00:00
|
|
|
locking functions.
|
|
|
|
The file descriptor is not necessarily associated with any of the
|
|
|
|
underlying files used by the access method.
|
|
|
|
No file descriptor is available for in memory databases.
|
2007-12-29 06:47:34 +00:00
|
|
|
.I fd
|
2004-11-03 13:51:07 +00:00
|
|
|
routines return \-1 on error (setting
|
|
|
|
.IR errno ),
|
|
|
|
and the file descriptor on success.
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I get
|
2004-11-03 13:51:07 +00:00
|
|
|
A pointer to a routine which is the interface for keyed retrieval from
|
|
|
|
the database.
|
|
|
|
The address and length of the data associated with the specified
|
|
|
|
.I key
|
|
|
|
are returned in the structure referenced by
|
|
|
|
.IR data .
|
2007-12-29 06:47:34 +00:00
|
|
|
.I get
|
2004-11-03 13:51:07 +00:00
|
|
|
routines return \-1 on error (setting
|
|
|
|
.IR errno ),
|
|
|
|
0 on success, and 1 if the
|
|
|
|
.I key
|
|
|
|
was not in the file.
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I put
|
2004-11-03 13:51:07 +00:00
|
|
|
A pointer to a routine to store key/data pairs in the database.
|
|
|
|
.IP
|
2008-07-10 20:53:08 +00:00
|
|
|
The argument
|
2004-11-03 13:51:07 +00:00
|
|
|
.I flag
|
|
|
|
may be set to one of the following values:
|
|
|
|
.RS
|
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_CURSOR
|
2004-11-03 13:51:07 +00:00
|
|
|
Replace the key/data pair referenced by the cursor.
|
|
|
|
The cursor must have previously been initialized.
|
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_IAFTER
|
2004-11-03 13:51:07 +00:00
|
|
|
Append the data immediately after the data referenced by
|
|
|
|
.IR key ,
|
|
|
|
creating a new key/data pair.
|
|
|
|
The record number of the appended key/data pair is returned in the
|
|
|
|
.I key
|
|
|
|
structure.
|
2007-12-14 05:23:00 +00:00
|
|
|
(Applicable only to the
|
|
|
|
.B DB_RECNO
|
|
|
|
access method.)
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_IBEFORE
|
2004-11-03 13:51:07 +00:00
|
|
|
Insert the data immediately before the data referenced by
|
|
|
|
.IR key ,
|
|
|
|
creating a new key/data pair.
|
|
|
|
The record number of the inserted key/data pair is returned in the
|
|
|
|
.I key
|
|
|
|
structure.
|
2007-12-14 05:23:00 +00:00
|
|
|
(Applicable only to the
|
|
|
|
.B DB_RECNO
|
|
|
|
access method.)
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_NOOVERWRITE
|
2004-11-03 13:51:07 +00:00
|
|
|
Enter the new key/data pair only if the key does not previously exist.
|
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_SETCURSOR
|
2004-11-03 13:51:07 +00:00
|
|
|
Store the key/data pair, setting or initializing the position of the
|
|
|
|
cursor to reference it.
|
2007-12-14 05:23:00 +00:00
|
|
|
(Applicable only to the
|
|
|
|
.B DB_BTREE
|
|
|
|
and
|
|
|
|
.B DB_RECNO
|
|
|
|
access methods.)
|
2004-11-03 13:51:07 +00:00
|
|
|
.RE
|
|
|
|
.IP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_SETCURSOR
|
|
|
|
is available only for the
|
|
|
|
.B DB_BTREE
|
|
|
|
and
|
|
|
|
.B DB_RECNO
|
|
|
|
access
|
2004-11-03 13:51:07 +00:00
|
|
|
methods because it implies that the keys have an inherent order
|
|
|
|
which does not change.
|
|
|
|
.IP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_IAFTER
|
|
|
|
and
|
|
|
|
.B R_IBEFORE
|
|
|
|
are available only for the
|
|
|
|
.B DB_RECNO
|
2004-11-03 13:51:07 +00:00
|
|
|
access method because they each imply that the access method is able to
|
|
|
|
create new keys.
|
intro.1, _syscall.2, access.2, arch_prctl.2, cacheflush.2, chown.2, clock_getres.2, clone.2, create_module.2, fcntl.2, flock.2, get_kernel_syms.2, get_robust_list.2, get_thread_area.2, getcpu.2, getpriority.2, getrlimit.2, getrusage.2, ioprio_set.2, kexec_load.2, madvise.2, mbind.2, migrate_pages.2, mknod.2, mmap.2, mount.2, move_pages.2, mprotect.2, open.2, pause.2, pciconfig_read.2, perf_event_open.2, prctl.2, ptrace.2, query_module.2, read.2, reboot.2, recv.2, s390_runtime_instr.2, sched_setscheduler.2, select_tut.2, send.2, set_mempolicy.2, setfsgid.2, setfsuid.2, sigaction.2, spu_create.2, spu_run.2, stime.2, swapon.2, syslog.2, timer_create.2, timer_getoverrun.2, times.2, tkill.2, umount.2, unimplemented.2, ustat.2, vm86.2, wait.2, abs.3, aio_read.3, aio_write.3, bsd_signal.3, catgets.3, clearenv.3, cmsg.3, dbopen.3, dirfd.3, dlopen.3, exec.3, fenv.3, ferror.3, fmemopen.3, fnmatch.3, fopen.3, futimes.3, getaddrinfo.3, getifaddrs.3, getipnodebyname.3, hsearch.3, if_nameindex.3, inet_pton.3, mblen.3, mbrlen.3, mbsrtowcs.3, mbtowc.3, mcheck.3, memfrob.3, mq_notify.3, netlink.3, posix_memalign.3, printf.3, pthread_attr_setscope.3, pthread_cleanup_push.3, pthread_kill_other_threads_np.3, pthread_self.3, pthread_setcancelstate.3, pthread_setconcurrency.3, raise.3, resolver.3, rpc.3, rtime.3, rtnetlink.3, scanf.3, setbuf.3, setnetgrent.3, shm_open.3, sigpause.3, sigset.3, sigwait.3, sockatmark.3, strcasecmp.3, strcmp.3, strdup.3, strftime.3, strptime.3, strsignal.3, strverscmp.3, sysv_signal.3, termios.3, wcrtomb.3, wcsnlen.3, wcsnrtombs.3, wcsrtombs.3, wctomb.3, wprintf.3, console_codes.4, cpuid.4, msr.4, rtc.4, sk98lin.4, st.4, tty.4, charmap.5, core.5, elf.5, hosts.equiv.5, proc.5, resolv.conf.5, services.5, slabinfo.5, arp.7, bootparam.7, capabilities.7, charsets.7, cpuset.7, ddp.7, epoll.7, feature_test_macros.7, futex.7, hier.7, icmp.7, inotify.7, ip.7, ipv6.7, man-pages.7, mdoc.7, mdoc.samples.7, netdevice.7, netlink.7, numa.7, packet.7, path_resolution.7, posixoptions.7, pthreads.7, raw.7, rtld-audit.7, rtnetlink.7, sem_overview.7, sigevent.7, socket.7, spufs.7, tcp.7, udp.7, unicode.7, uri.7, utf-8.7, intro.8, ldconfig.8, sync.8: Global fix: fix placement of word "only"
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-03-31 08:53:00 +00:00
|
|
|
This is true only if the keys are ordered and independent, record numbers
|
2004-11-03 13:51:07 +00:00
|
|
|
for example.
|
|
|
|
.IP
|
|
|
|
The default behavior of the
|
|
|
|
.I put
|
|
|
|
routines is to enter the new key/data pair, replacing any previously
|
|
|
|
existing key.
|
|
|
|
.IP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I put
|
2004-11-03 13:51:07 +00:00
|
|
|
routines return \-1 on error (setting
|
|
|
|
.IR errno ),
|
2007-12-14 05:23:00 +00:00
|
|
|
0 on success, and 1 if the
|
|
|
|
.B R_NOOVERWRITE
|
2004-11-03 13:51:07 +00:00
|
|
|
.I flag
|
|
|
|
was set and the key already exists in the file.
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I seq
|
2004-11-03 13:51:07 +00:00
|
|
|
A pointer to a routine which is the interface for sequential
|
|
|
|
retrieval from the database.
|
|
|
|
The address and length of the key are returned in the structure
|
|
|
|
referenced by
|
|
|
|
.IR key ,
|
|
|
|
and the address and length of the data are returned in the
|
|
|
|
structure referenced
|
|
|
|
by
|
|
|
|
.IR data .
|
|
|
|
.IP
|
|
|
|
Sequential key/data pair retrieval may begin at any time, and the
|
2007-12-16 14:08:46 +00:00
|
|
|
position of the "cursor" is not affected by calls to the
|
2004-11-03 13:51:07 +00:00
|
|
|
.IR del ,
|
|
|
|
.IR get ,
|
|
|
|
.IR put ,
|
|
|
|
or
|
|
|
|
.I sync
|
|
|
|
routines.
|
|
|
|
Modifications to the database during a sequential scan will be reflected
|
2007-06-21 22:55:04 +00:00
|
|
|
in the scan, that is,
|
2007-06-08 11:56:22 +00:00
|
|
|
records inserted behind the cursor will not be returned
|
2004-11-03 13:51:07 +00:00
|
|
|
while records inserted in front of the cursor will be returned.
|
|
|
|
.IP
|
|
|
|
The flag value
|
|
|
|
.B must
|
|
|
|
be set to one of the following values:
|
|
|
|
.RS
|
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_CURSOR
|
2004-11-03 13:51:07 +00:00
|
|
|
The data associated with the specified key is returned.
|
|
|
|
This differs from the
|
|
|
|
.I get
|
|
|
|
routines in that it sets or initializes the cursor to the location of
|
|
|
|
the key as well.
|
2007-12-14 05:23:00 +00:00
|
|
|
(Note, for the
|
|
|
|
.B DB_BTREE
|
|
|
|
access method, the returned key is not necessarily an
|
2004-11-03 13:51:07 +00:00
|
|
|
exact match for the specified key.
|
|
|
|
The returned key is the smallest key greater than or equal to the specified
|
|
|
|
key, permitting partial key matches and range searches.)
|
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_FIRST
|
2004-11-03 13:51:07 +00:00
|
|
|
The first key/data pair of the database is returned, and the cursor
|
|
|
|
is set or initialized to reference it.
|
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_LAST
|
2004-11-03 13:51:07 +00:00
|
|
|
The last key/data pair of the database is returned, and the cursor
|
|
|
|
is set or initialized to reference it.
|
2007-12-14 05:23:00 +00:00
|
|
|
(Applicable only to the
|
|
|
|
.B DB_BTREE
|
|
|
|
and
|
|
|
|
.B DB_RECNO
|
|
|
|
access methods.)
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_NEXT
|
2004-11-03 13:51:07 +00:00
|
|
|
Retrieve the key/data pair immediately after the cursor.
|
2007-12-14 05:23:00 +00:00
|
|
|
If the cursor is not yet set, this is the same as the
|
|
|
|
.B R_FIRST
|
|
|
|
flag.
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_PREV
|
2004-11-03 13:51:07 +00:00
|
|
|
Retrieve the key/data pair immediately before the cursor.
|
2007-12-14 05:23:00 +00:00
|
|
|
If the cursor is not yet set, this is the same as the
|
|
|
|
.B R_LAST
|
|
|
|
flag.
|
|
|
|
(Applicable only to the
|
|
|
|
.B DB_BTREE
|
|
|
|
and
|
|
|
|
.B DB_RECNO
|
|
|
|
access methods.)
|
2004-11-03 13:51:07 +00:00
|
|
|
.RE
|
|
|
|
.IP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_LAST
|
|
|
|
and
|
|
|
|
.B R_PREV
|
|
|
|
are available only for the
|
|
|
|
.B DB_BTREE
|
|
|
|
and
|
|
|
|
.B DB_RECNO
|
2004-11-03 13:51:07 +00:00
|
|
|
access methods because they each imply that the keys have an inherent
|
|
|
|
order which does not change.
|
|
|
|
.IP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I seq
|
2004-11-03 13:51:07 +00:00
|
|
|
routines return \-1 on error (setting
|
|
|
|
.IR errno ),
|
|
|
|
0 on success and 1 if there are no key/data pairs less than or greater
|
|
|
|
than the specified or current key.
|
2007-12-14 05:23:00 +00:00
|
|
|
If the
|
|
|
|
.B DB_RECNO
|
|
|
|
access method is being used, and if the database file
|
2004-11-03 13:51:07 +00:00
|
|
|
is a character special file and no complete key/data pairs are currently
|
|
|
|
available, the
|
|
|
|
.I seq
|
|
|
|
routines return 2.
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I sync
|
2004-11-03 13:51:07 +00:00
|
|
|
A pointer to a routine to flush any cached information to disk.
|
|
|
|
If the database is in memory only, the
|
|
|
|
.I sync
|
|
|
|
routine has no effect and will always succeed.
|
|
|
|
.IP
|
|
|
|
The flag value may be set to the following value:
|
|
|
|
.RS
|
|
|
|
.TP
|
2007-12-14 05:23:00 +00:00
|
|
|
.B R_RECNOSYNC
|
|
|
|
If the
|
|
|
|
.B DB_RECNO
|
|
|
|
access method is being used, this flag causes
|
2004-11-03 13:51:07 +00:00
|
|
|
the sync routine to apply to the btree file which underlies the
|
|
|
|
recno file, not the recno file itself.
|
|
|
|
(See the
|
|
|
|
.I bfname
|
|
|
|
field of the
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR recno (3)
|
2004-11-03 13:51:07 +00:00
|
|
|
manual page for more information.)
|
|
|
|
.RE
|
|
|
|
.IP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I sync
|
2004-11-03 13:51:07 +00:00
|
|
|
routines return \-1 on error (setting
|
|
|
|
.IR errno )
|
|
|
|
and 0 on success.
|
intro.1, time.1, _syscall.2, accept.2, capget.2, clone.2, execve.2, fcntl.2, intro.2, ioctl_list.2, ioprio_set.2, kill.2, mlock.2, nanosleep.2, perf_event_open.2, select.2, stat.2, times.2, ustat.2, vfork.2, wait.2, cfree.3, dbopen.3, dlopen.3, fenv.3, fmtmsg.3, gamma.3, getaddrinfo.3, gethostbyname.3, getnameinfo.3, getspnam.3, login.3, printf.3, regex.3, stdio.3, sysconf.3, termios.3, ttyslot.3, undocumented.3, wordexp.3, console_codes.4, initrd.4, mouse.4, random.4, st.4, tty_ioctl.4, wavelan.4, charmap.5, dir_colors.5, hosts.5, termcap.5, armscii-8.7, boot.7, bootparam.7, capabilities.7, charsets.7, ddp.7, futex.7, glob.7, ipv6.7, iso_8859-1.7, iso_8859-10.7, iso_8859-11.7, iso_8859-13.7, iso_8859-14.7, iso_8859-15.7, iso_8859-16.7, iso_8859-2.7, iso_8859-3.7, iso_8859-4.7, iso_8859-5.7, iso_8859-6.7, iso_8859-7.7, iso_8859-8.7, iso_8859-9.7, koi8-r.7, koi8-u.7, man.7, numa.7, path_resolution.7, pipe.7, posixoptions.7, pthreads.7, pty.7, rtnetlink.7, signal.7, time.7, udp.7, udplite.7, unicode.7, uri.7, utf-8.7: G;lobal fix: remove unneeded double quotes in .SS headings
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-02-24 18:02:18 +00:00
|
|
|
.SS Key/data pairs
|
2004-11-03 13:51:07 +00:00
|
|
|
Access to all file types is based on key/data pairs.
|
|
|
|
Both keys and data are represented by the following data structure:
|
2007-12-19 06:57:44 +00:00
|
|
|
.in +4n
|
2007-12-14 05:23:00 +00:00
|
|
|
.nf
|
|
|
|
|
2004-11-03 13:51:07 +00:00
|
|
|
typedef struct {
|
2007-12-14 05:23:00 +00:00
|
|
|
void *data;
|
|
|
|
size_t size;
|
2004-11-03 13:51:07 +00:00
|
|
|
} DBT;
|
2007-12-14 05:23:00 +00:00
|
|
|
.fi
|
|
|
|
.in
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
2007-12-14 05:23:00 +00:00
|
|
|
The elements of the
|
|
|
|
.I DBT
|
|
|
|
structure are defined as follows:
|
2004-11-03 13:51:07 +00:00
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I data
|
2004-11-03 13:51:07 +00:00
|
|
|
A pointer to a byte string.
|
|
|
|
.TP
|
2007-12-29 06:47:34 +00:00
|
|
|
.I size
|
2004-11-03 13:51:07 +00:00
|
|
|
The length of the byte string.
|
|
|
|
.PP
|
|
|
|
Key and data byte strings may reference strings of essentially unlimited
|
|
|
|
length although any two of them must fit into available memory at the same
|
|
|
|
time.
|
|
|
|
It should be noted that the access methods provide no guarantees about
|
|
|
|
byte string alignment.
|
|
|
|
.SH ERRORS
|
|
|
|
The
|
2005-11-02 11:10:24 +00:00
|
|
|
.BR dbopen ()
|
2004-11-03 13:51:07 +00:00
|
|
|
routine may fail and set
|
|
|
|
.I errno
|
|
|
|
for any of the errors specified for the library routines
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR open (2)
|
2004-11-03 13:51:07 +00:00
|
|
|
and
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR malloc (3)
|
2004-11-03 13:51:07 +00:00
|
|
|
or the following:
|
|
|
|
.TP
|
2007-12-09 14:19:06 +00:00
|
|
|
.B EFTYPE
|
2004-11-03 13:51:07 +00:00
|
|
|
A file is incorrectly formatted.
|
|
|
|
.TP
|
2007-12-09 14:19:06 +00:00
|
|
|
.B EINVAL
|
2012-05-06 19:29:14 +00:00
|
|
|
A parameter has been specified (hash function, pad byte, etc.) that is
|
2004-11-03 13:51:07 +00:00
|
|
|
incompatible with the current file specification or which is not
|
|
|
|
meaningful for the function (for example, use of the cursor without
|
|
|
|
prior initialization) or there is a mismatch between the version
|
|
|
|
number of file and the software.
|
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.I close
|
|
|
|
routines may fail and set
|
|
|
|
.I errno
|
|
|
|
for any of the errors specified for the library routines
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR close (2),
|
|
|
|
.BR read (2),
|
|
|
|
.BR write (2),
|
|
|
|
.BR free (3),
|
2004-11-03 13:51:07 +00:00
|
|
|
or
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR fsync (2).
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.IR del ,
|
|
|
|
.IR get ,
|
fcntl.2, msgget.2, ptrace.2, request_key.2, shmget.2, sigaction.2, syscalls.2, dbopen.3, euidaccess.3, getgrnam.3, getpwnam.3, strfmon.3, strtol.3, strtoul.3, cciss.4, hpsa.4, mouse.4, termcap.5, charsets.7, iso_8859-16.7, iso_8859-2.7, koi8-r.7, unicode.7, utf-8.7: Use Oxford comma
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2014-02-05 15:09:11 +00:00
|
|
|
.IR put ,
|
2004-11-03 13:51:07 +00:00
|
|
|
and
|
|
|
|
.I seq
|
|
|
|
routines may fail and set
|
|
|
|
.I errno
|
|
|
|
for any of the errors specified for the library routines
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR read (2),
|
|
|
|
.BR write (2),
|
|
|
|
.BR free (3)
|
2004-11-03 13:51:07 +00:00
|
|
|
or
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR malloc (3).
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.I fd
|
|
|
|
routines will fail and set
|
|
|
|
.I errno
|
2007-12-14 05:23:00 +00:00
|
|
|
to
|
|
|
|
.B ENOENT
|
|
|
|
for in memory databases.
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
|
|
|
The
|
|
|
|
.I sync
|
|
|
|
routines may fail and set
|
|
|
|
.I errno
|
|
|
|
for any of the errors specified for the library routine
|
2005-11-02 11:34:24 +00:00
|
|
|
.BR fsync (2).
|
2004-11-03 13:51:07 +00:00
|
|
|
.SH BUGS
|
2007-12-14 05:23:00 +00:00
|
|
|
The typedef
|
|
|
|
.I DBT
|
2007-12-16 14:08:46 +00:00
|
|
|
is a mnemonic for "data base thang", and was used
|
2006-05-29 01:20:08 +00:00
|
|
|
because no-one could think of a reasonable name that wasn't already used.
|
2004-11-03 13:51:07 +00:00
|
|
|
.PP
|
|
|
|
The file descriptor interface is a kludge and will be deleted in a
|
|
|
|
future version of the interface.
|
|
|
|
.PP
|
|
|
|
None of the access methods provide any form of concurrent access,
|
|
|
|
locking, or transactions.
|
getent.1, intro.1, time.1, _exit.2, _syscall.2, accept.2, access.2, acct.2, adjtimex.2, alarm.2, alloc_hugepages.2, arch_prctl.2, bdflush.2, bind.2, brk.2, cacheflush.2, capget.2, chdir.2, chmod.2, chown.2, chroot.2, clock_getres.2, clock_nanosleep.2, clone.2, close.2, connect.2, create_module.2, delete_module.2, dup.2, epoll_create.2, epoll_ctl.2, epoll_wait.2, eventfd.2, execve.2, exit_group.2, faccessat.2, fchmodat.2, fchownat.2, fcntl.2, flock.2, fork.2, fstatat.2, fsync.2, futex.2, futimesat.2, get_kernel_syms.2, get_robust_list.2, get_thread_area.2, getcpu.2, getdents.2, getdomainname.2, getgid.2, getgroups.2, gethostname.2, getitimer.2, getpagesize.2, getpeername.2, getpid.2, getpriority.2, getresuid.2, getrlimit.2, getrusage.2, getsid.2, getsockname.2, getsockopt.2, gettid.2, gettimeofday.2, getuid.2, getunwind.2, getxattr.2, idle.2, init_module.2, inotify_add_watch.2, inotify_init.2, inotify_rm_watch.2, intro.2, io_cancel.2, io_destroy.2, io_getevents.2, io_setup.2, io_submit.2, ioctl.2, ioctl_list.2, ioperm.2, iopl.2, ioprio_set.2, ipc.2, kcmp.2, kill.2, killpg.2, link.2, linkat.2, listen.2, listxattr.2, llseek.2, lookup_dcookie.2, lseek.2, madvise.2, migrate_pages.2, mincore.2, mkdir.2, mkdirat.2, mknod.2, mknodat.2, mlock.2, mmap.2, mmap2.2, modify_ldt.2, mount.2, move_pages.2, mprotect.2, mq_getsetattr.2, mremap.2, msgctl.2, msgget.2, msgop.2, msync.2, nanosleep.2, nfsservctl.2, nice.2, open.2, openat.2, outb.2, pause.2, pciconfig_read.2, perf_event_open.2, perfmonctl.2, personality.2, pipe.2, pivot_root.2, poll.2, posix_fadvise.2, prctl.2, pread.2, process_vm_readv.2, ptrace.2, query_module.2, quotactl.2, read.2, readahead.2, readdir.2, readlink.2, readlinkat.2, readv.2, reboot.2, recv.2, remap_file_pages.2, removexattr.2, rename.2, renameat.2, rmdir.2, rt_sigqueueinfo.2, sched_get_priority_max.2, sched_rr_get_interval.2, sched_setaffinity.2, sched_setparam.2, sched_setscheduler.2, sched_yield.2, select.2, semctl.2, semget.2, semop.2, send.2, sendfile.2, set_thread_area.2, set_tid_address.2, seteuid.2, setfsgid.2, setfsuid.2, setgid.2, setpgid.2, setresuid.2, setreuid.2, setsid.2, setuid.2, setup.2, setxattr.2, shmctl.2, shmget.2, shmop.2, shutdown.2, sigaction.2, sigaltstack.2, signal.2, signalfd.2, sigpending.2, sigprocmask.2, sigreturn.2, sigsuspend.2, sigwaitinfo.2, socket.2, socketcall.2, socketpair.2, splice.2, stat.2, statfs.2, stime.2, swapon.2, symlink.2, symlinkat.2, sync.2, sync_file_range.2, sysctl.2, sysfs.2, sysinfo.2, syslog.2, tee.2, time.2, timerfd_create.2, times.2, tkill.2, truncate.2, umask.2, umount.2, uname.2, unimplemented.2, unlink.2, unlinkat.2, uselib.2, ustat.2, utime.2, utimensat.2, vfork.2, vhangup.2, vm86.2, vmsplice.2, wait.2, wait4.2, write.2, CPU_SET.3, INFINITY.3, MB_CUR_MAX.3, MB_LEN_MAX.3, __setfpucw.3, a64l.3, abort.3, abs.3, acos.3, acosh.3, addseverity.3, adjtime.3, aio_cancel.3, aio_error.3, aio_fsync.3, aio_read.3, aio_return.3, aio_suspend.3, aio_write.3, alloca.3, argz_add.3, asin.3, asinh.3, asprintf.3, assert.3, assert_perror.3, atan.3, atan2.3, atanh.3, atexit.3, atof.3, atoi.3, backtrace.3, basename.3, bcmp.3, bcopy.3, bindresvport.3, bsd_signal.3, bsearch.3, bstring.3, btowc.3, btree.3, byteorder.3, bzero.3, cabs.3, cacos.3, cacosh.3, canonicalize_file_name.3, carg.3, casin.3, casinh.3, catan.3, catanh.3, catgets.3, catopen.3, cbrt.3, ccos.3, ccosh.3, ceil.3, cerf.3, cexp.3, cexp2.3, cfree.3, cimag.3, clearenv.3, clock.3, clock_getcpuclockid.3, clog.3, clog10.3, clog2.3, closedir.3, cmsg.3, confstr.3, conj.3, copysign.3, cos.3, cosh.3, cpow.3, cproj.3, creal.3, crypt.3, csin.3, csinh.3, csqrt.3, ctan.3, ctanh.3, ctermid.3, ctime.3, daemon.3, dbopen.3, des_crypt.3, difftime.3, dirfd.3, div.3, dl_iterate_phdr.3, dlopen.3, dprintf.3, drand48.3, drand48_r.3, dysize.3, ecvt.3, ecvt_r.3, encrypt.3, end.3, endian.3, envz_add.3, erf.3, erfc.3, err.3, errno.3, error.3, ether_aton.3, euidaccess.3, exec.3, exit.3, exp.3, exp10.3, exp2.3, expm1.3, fabs.3, fclose.3, fcloseall.3, fdim.3, fenv.3, ferror.3, fexecve.3, fflush.3, ffs.3, fgetgrent.3, fgetpwent.3, fgetwc.3, fgetws.3, finite.3, flockfile.3, floor.3, fma.3, fmax.3, fmemopen.3, fmin.3, fmod.3, fmtmsg.3, fnmatch.3, fopen.3, fpathconf.3, fpclassify.3, fpurge.3, fputwc.3, fputws.3, fread.3, frexp.3, fseek.3, fseeko.3, ftime.3, ftok.3, fts.3, ftw.3, futimes.3, fwide.3, gamma.3, gcvt.3, getaddrinfo.3, getaddrinfo_a.3, getauxval.3, getcontext.3, getcwd.3, getdate.3, getdirentries.3, getdtablesize.3, getenv.3, getfsent.3, getgrent.3, getgrent_r.3, getgrnam.3, getgrouplist.3, gethostbyname.3, gethostid.3, getipnodebyname.3, getline.3, getloadavg.3, getlogin.3, getmntent.3, getnameinfo.3, getnetent.3, getnetent_r.3, getopt.3, getpass.3, getprotoent.3, getprotoent_r.3, getpt.3, getpw.3, getpwent.3, getpwent_r.3, getpwnam.3, getrpcent.3, getrpcent_r.3, getrpcport.3, gets.3, getservent.3, getservent_r.3, getspnam.3, getttyent.3, getumask.3, getusershell.3, getutent.3, getw.3, getwchar.3, glob.3, grantpt.3, gsignal.3, hash.3, hsearch.3, hypot.3, iconv.3, iconv_close.3, iconv_open.3, ilogb.3, index.3, inet.3, inet_ntop.3, inet_pton.3, infnan.3, initgroups.3, insque.3, intro.3, isalpha.3, isatty.3, isgreater.3, iswalnum.3, iswalpha.3, iswblank.3, iswcntrl.3, iswctype.3, iswdigit.3, iswgraph.3, iswlower.3, iswprint.3, iswpunct.3, iswspace.3, iswupper.3, iswxdigit.3, j0.3, key_setsecret.3, ldexp.3, lgamma.3, lio_listio.3, localeconv.3, lockf.3, log.3, log10.3, log1p.3, log2.3, logb.3, login.3, longjmp.3, lrint.3, lround.3, lsearch.3, lseek64.3, makecontext.3, makedev.3, malloc.3, malloc_hook.3, mblen.3, mbrlen.3, mbrtowc.3, mbsinit.3, mbsnrtowcs.3, mbsrtowcs.3, mbstowcs.3, mbtowc.3, memccpy.3, memchr.3, memcmp.3, memcpy.3, memfrob.3, memmem.3, memmove.3, mempcpy.3, memset.3, mkdtemp.3, mkfifo.3, mkfifoat.3, mkstemp.3, mktemp.3, modf.3, mpool.3, mq_close.3, mq_getattr.3, mq_notify.3, mq_open.3, mq_receive.3, mq_send.3, mq_unlink.3, mtrace.3, nan.3, netlink.3, nextafter.3, nl_langinfo.3, offsetof.3, on_exit.3, opendir.3, openpty.3, perror.3, popen.3, posix_fallocate.3, posix_memalign.3, posix_openpt.3, pow.3, pow10.3, printf.3, profil.3, program_invocation_name.3, psignal.3, pthread_kill_other_threads_np.3, ptsname.3, putenv.3, putgrent.3, putpwent.3, puts.3, putwchar.3, qecvt.3, qsort.3, queue.3, raise.3, rand.3, random.3, random_r.3, rcmd.3, re_comp.3, readdir.3, realpath.3, recno.3, regex.3, remainder.3, remove.3, remquo.3, resolver.3, rewinddir.3, rexec.3, rint.3, round.3, rpc.3, rpmatch.3, rtime.3, rtnetlink.3, scalb.3, scalbln.3, scandir.3, scandirat.3, scanf.3, seekdir.3, sem_close.3, sem_destroy.3, sem_getvalue.3, sem_init.3, sem_open.3, sem_post.3, sem_unlink.3, sem_wait.3, setaliasent.3, setbuf.3, setenv.3, setjmp.3, setlocale.3, setlogmask.3, setnetgrent.3, shm_open.3, siginterrupt.3, signbit.3, significand.3, sigpause.3, sigqueue.3, sigset.3, sigsetops.3, sigvec.3, sin.3, sincos.3, sinh.3, sleep.3, sockatmark.3, sqrt.3, statvfs.3, stdarg.3, stdin.3, stdio.3, stdio_ext.3, stpcpy.3, stpncpy.3, strcasecmp.3, strcat.3, strchr.3, strcmp.3, strcoll.3, strcpy.3, strdup.3, strerror.3, strfmon.3, strfry.3, strftime.3, string.3, strlen.3, strnlen.3, strpbrk.3, strptime.3, strsep.3, strsignal.3, strspn.3, strstr.3, strtod.3, strtoimax.3, strtok.3, strtol.3, strtoul.3, strverscmp.3, strxfrm.3, swab.3, sysconf.3, syslog.3, system.3, sysv_signal.3, tan.3, tanh.3, tcgetpgrp.3, tcgetsid.3, telldir.3, tempnam.3, termios.3, tgamma.3, timegm.3, timeradd.3, tmpfile.3, tmpnam.3, toascii.3, toupper.3, towctrans.3, towlower.3, towupper.3, trunc.3, tsearch.3, ttyname.3, ttyslot.3, tzset.3, ualarm.3, ulimit.3, ungetwc.3, unlocked_stdio.3, unlockpt.3, updwtmp.3, usleep.3, wcpcpy.3, wcpncpy.3, wcrtomb.3, wcscasecmp.3, wcscat.3, wcschr.3, wcscmp.3, wcscpy.3, wcscspn.3, wcsdup.3, wcslen.3, wcsncasecmp.3, wcsncat.3, wcsncmp.3, wcsncpy.3, wcsnlen.3, wcsnrtombs.3, wcspbrk.3, wcsrchr.3, wcsrtombs.3, wcsspn.3, wcsstr.3, wcstoimax.3, wcstok.3, wcstombs.3, wcswidth.3, wctob.3, wctomb.3, wctrans.3, wctype.3, wcwidth.3, wmemchr.3, wmemcmp.3, wmemcpy.3, wmemmove.3, wmemset.3, wordexp.3, wprintf.3, xcrypt.3, xdr.3, y0.3, cciss.4, console.4, console_codes.4, console_ioctl.4, dsp56k.4, fd.4, full.4, hd.4, hpsa.4, initrd.4, intro.4, lp.4, mem.4, mouse.4, null.4, pts.4, ram.4, random.4, rtc.4, sk98lin.4, st.4, tty.4, ttyS.4, tty_ioctl.4, vcs.4, wavelan.4, acct.5, charmap.5, dir_colors.5, filesystems.5, ftpusers.5, group.5, host.conf.5, hosts.5, hosts.equiv.5, intro.5, issue.5, locale.5, motd.5, networks.5, nologin.5, nscd.conf.5, passwd.5, proc.5, protocols.5, resolv.conf.5, rpc.5, securetty.5, services.5, shells.5, termcap.5, ttytype.5, utmp.5, armscii-8.7, arp.7, ascii.7, bootparam.7, capabilities.7, charsets.7, complex.7, cp1251.7, credentials.7, ddp.7, environ.7, epoll.7, fifo.7, futex.7, glob.7, hier.7, icmp.7, inotify.7, intro.7, ip.7, ipv6.7, iso_8859-1.7, iso_8859-10.7, iso_8859-11.7, iso_8859-13.7, iso_8859-14.7, iso_8859-15.7, iso_8859-16.7, iso_8859-2.7, iso_8859-3.7, iso_8859-4.7, iso_8859-5.7, iso_8859-6.7, iso_8859-7.7, iso_8859-8.7, iso_8859-9.7, koi8-r.7, koi8-u.7, locale.7, mailaddr.7, man.7, mq_overview.7, netdevice.7, netlink.7, numa.7, packet.7, path_resolution.7, pipe.7, posixoptions.7, pthreads.7, pty.7, raw.7, regex.7, rtld-audit.7, rtnetlink.7, sem_overview.7, shm_overview.7, sigevent.7, signal.7, socket.7, standards.7, suffixes.7, svipc.7, tcp.7, termio.7, time.7, udp.7, udplite.7, unicode.7, unix.7, uri.7, utf-8.7, x25.7, nscd.8, sync.8, tzselect.8, zdump.8, zic.8: Global fix: remove unneeded double quotes in .SH headings
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2013-02-24 18:01:36 +00:00
|
|
|
.SH SEE ALSO
|
2007-05-16 18:25:50 +00:00
|
|
|
.BR btree (3),
|
|
|
|
.BR hash (3),
|
|
|
|
.BR mpool (3),
|
|
|
|
.BR recno (3)
|
arch_prctl.2, fcntl.2, flock.2, get_robust_list.2, getpriority.2, ioprio_set.2, migrate_pages.2, mmap.2, mremap.2, msync.2, sched_get_priority_max.2, sched_rr_get_interval.2, sched_setparam.2, sched_setscheduler.2, sched_yield.2, select.2, socket.2, subpage_prot.2, unshare.2, btree.3, dbopen.3, dl_iterate_phdr.3, dlopen.3, getnameinfo.3, hash.3, lockf.3, netlink.3, recno.3, rpc.3, xdr.3, cciss.4, console_ioctl.4, hpsa.4, initrd.4, msr.4, rtc.4, st.4, hosts.5, services.5, tzfile.5, aio.7, arp.7, capabilities.7, cpuset.7, feature_test_macros.7, futex.7, inotify.7, ip.7, ipv6.7, iso_8859-16.7, iso_8859-2.7, koi8-r.7, math_error.7, netlink.7, packet.7, pthreads.7, raw.7, spufs.7, udplite.7, uri.7, x25.7: Global fix: Various consistency fixes for SEE ALSO
Coauthored-by: Michael Kerrisk <mtk.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2012-09-24 07:53:22 +00:00
|
|
|
|
2007-05-16 18:25:50 +00:00
|
|
|
.IR "LIBTP: Portable, Modular Transactions for UNIX" ,
|
|
|
|
Margo Seltzer, Michael Olson, USENIX proceedings, Winter 1992.
|