Make the standard indent for code samples, shell session

logs, etc. to be ".in +4n".
This commit is contained in:
Michael Kerrisk 2007-12-19 06:57:44 +00:00
parent cfadad462c
commit 088a639be3
65 changed files with 226 additions and 226 deletions

View File

@ -43,11 +43,11 @@ as returned by
.TP
.B \-p
When in the POSIX locale, use the precise traditional format
.br
.in +5
.IP
.in +4n
"real %f\enuser %f\ensys %f\en"
.in -5
.br
.in
.IP
(with numbers in seconds)
where the number of decimals in the output for %f is unspecified
but is sufficient to express the clock tick accuracy, and at least one.
@ -85,25 +85,26 @@ using the \-f option or the
.B TIME
environment variable.
.LP
The default format string is
.br
.in +3
The default format string is:
.PP
.in +4n
%Uuser %Ssystem %Eelapsed %PCPU (%Xtext+%Ddata %Mmax)k
.br
%Iinputs+%Ooutputs (%Fmajor+%Rminor)pagefaults %Wswaps
.br
.in -3
.in
.LP
When the \-p option is given the (portable) output format
.br
.in +3
.PP
.in +4n
real %e
.br
user %U
.br
sys %S
.br
.in -3
.in
.PP
is used.
.SS "The format string"
The format is interpreted in the usual printf-like way.

View File

@ -49,7 +49,7 @@ executes the program pointed to by \fIfilename\fP.
\fIfilename\fP must be either a binary executable, or a script
starting with a line of the form:
.in +0.5i
.in +4n
.nf
\fB#!\fP \fIinterpreter \fP[optional-arg]
.fi
@ -64,7 +64,7 @@ Both \fIargv\fP and \fIenvp\fP must be terminated by a null pointer.
The argument vector and environment can be accessed by the
called program's main function, when it is defined as:
.in +0.5i
.in +4n
.nf
int main(int argc, char *argv[], char *envp[])
.fi
@ -243,7 +243,7 @@ closed across an
An interpreter script is a text file that has execute
permission enabled and whose first line is of the form:
.in +0.5i
.in +4n
.nf
\fB#!\fP \fIinterpreter \fP[optional-arg]
.fi
@ -261,7 +261,7 @@ specifies an interpreter script, then
.I interpreter
will be invoked with the following arguments:
.in +0.5i
.in +4n
.nf
\fIinterpreter\fP [optional-arg] \fIfilename\fP arg...
.fi
@ -496,9 +496,9 @@ call.
Since Unix V7 both are NULL.
.SH EXAMPLE
The following program is designed to execed by the second program below.
It just echoes its command-line one per line.
It just echoes its command-line one per line.
.in +0.5i
.in +4n
.nf
/* myecho.c */
@ -520,7 +520,7 @@ main(int argc, char *argv[])
This program can be used to exec the program named in its command-line
argument:
.in +0.5i
.in +4n
.nf
/* execve.c */
@ -549,7 +549,7 @@ main(int argc, char *argv[])
We can use the second program to exec the first as follows:
.in +0.5i
.in +4n
.nf
$ cc myecho.c -o myecho
$ cc execve.c -o execve
@ -566,7 +566,7 @@ To do this we create a script whose "interpreter" is our
.I myecho
program:
.in +0.5i
.in +4n
.nf
$ cat > script.sh
#! ./myecho script-arg
@ -577,7 +577,7 @@ $ chmod +x script.sh
We can then use our program to exec the script:
.in +0.5i
.in +4n
.nf
$ ./execve ./script.sh
argv[0]: ./myecho

View File

@ -175,7 +175,7 @@ The third argument
.I lock
is a pointer to a structure that has at least the following fields
(in unspecified order).
.in +2n
.in +4n
.nf
.sp
struct flock {
@ -191,7 +191,7 @@ struct flock {
...
};
.fi
.in -2n
.in
.P
The
.IR l_whence ", " l_start ", and " l_len

View File

@ -68,7 +68,7 @@ must equal the size of this structure.
The
.I user_desc
structure is defined in \fI<asm/ldt.h>\fP as:
.in +0.25i
.in +4n
.nf
struct user_desc {

View File

@ -147,7 +147,7 @@ through the allocated region modifying bytes.
An example of what we might see when running the program is the
following:
.in +0.5i
.in +4n
.nf
$ ./a.out
Start of region: 0x804c000

View File

@ -75,7 +75,7 @@ struct msqid_ds {
pid_t msg_lspid; /* PID of last msgsnd(2) */
pid_t msg_lrpid; /* PID of last msgrcv(2) */
};
.in -4n
.in
.fi
.PP
The
@ -95,7 +95,7 @@ struct ipc_perm {
unsigned short \fBmode\fP; /* Permissions */
unsigned short seq; /* Sequence number */
};
.in -4n
.in
.fi
.PP
Valid values for
@ -162,7 +162,7 @@ if the
.B _GNU_SOURCE
feature test macro is defined:
.nf
.in +2n
.in +4n
struct msginfo {
int msgpool; /* Size in bytes of buffer pool used
@ -182,7 +182,7 @@ struct msginfo {
/* Max. # of segments; unused */
};
.in -2n
.in
.fi
The
.IR msgmni ,

View File

@ -59,7 +59,7 @@ The set of file descriptors to be monitored is specified in the
argument, which is an array of
.I nfds
structures of the following form:
.in +0.5i
.in +4n
.nf
struct pollfd {
@ -221,7 +221,7 @@ argument specifies an upper limit on the amount of time that
.BR ppoll ()
will block.
This argument is a pointer to a structure of the following form:
.in +0.5i
.in +4n
.nf
struct timespec {

View File

@ -63,7 +63,7 @@ The
.I dirent
structure is declared as follows:
.PP
.in +0.25i
.in +4n
.nf
struct dirent {
long d_ino; /* inode number */

View File

@ -68,14 +68,14 @@ defined in
as:
.PP
.br
.in +0.25in
.in +4n
.nf
struct iovec {
void *iov_base; /* Starting address */
size_t iov_len; /* Number of bytes to transfer */
};
.fi
.in 0.25in
.in
.PP
The
.BR readv ()
@ -200,7 +200,7 @@ library; the results will be undefined and probably not what you want.
The following code sample demonstrates the use of
.BR writev ():
.in +0.5i
.in +4n
.nf
char *str0 = "hello ";
char *str1 = "world\\n";

View File

@ -41,7 +41,7 @@ round-robin time quantum for the process identified by \fIpid\fP.
The \fItimespec\fP structure has the following form:
.in +0.5i
.in +4n
.nf
struct timespec {
time_t tv_sec; /* seconds */

View File

@ -354,7 +354,7 @@ mainline kernel
the realtime-preempt patches must be installed to achieve the best
realtime performance.
These patches are named:
.in +0.5i
.in +4n
.nf
patch-\fIkernelversion\fP-rt\fIpatchversion\fP

View File

@ -228,7 +228,7 @@ The time structures involved are defined in
.I <sys/time.h>
and look like
.in +0.5i
.in +4n
.nf
struct timeval {
long tv_sec; /* seconds */
@ -239,7 +239,7 @@ struct timeval {
and
.in +0.5i
.in +4n
.nf
struct timespec {
long tv_sec; /* seconds */
@ -363,7 +363,7 @@ structure are typed as
.IR <sys/time.h> .
The POSIX.1-2001 situation is
.in +0.5i
.in +4n
.nf
struct timeval {
time_t tv_sec; /* seconds */

View File

@ -204,7 +204,7 @@ to
return immediately.
The structure \fIstruct timeval\fP is defined as:
.IP
.in +0.5i
.in +4n
.nf
struct timeval {
time_t tv_sec; /* seconds */
@ -217,7 +217,7 @@ struct timeval {
This argument has the same meaning as \fIutimeout\fP but \fIstruct timespec\fP
has nanosecond precision as follows:
.IP
.in +0.5i
.in +4n
.nf
struct timespec {
long tv_sec; /* seconds */

View File

@ -73,7 +73,7 @@ union semun {
struct seminfo *__buf; /* Buffer for IPC_INFO
(Linux specific) */
};
.in -4n
.in
.fi
.PP
The
@ -88,7 +88,7 @@ struct semid_ds {
time_t sem_ctime; /* Last change time */
unsigned short sem_nsems; /* No. of semaphores in set */
};
.in -4n
.in
.fi
.PP
The
@ -108,7 +108,7 @@ struct ipc_perm {
unsigned short \fBmode\fP; /* Permissions */
unsigned short seq; /* Sequence number */
};
.in -4n
.in
.fi
.PP
Valid values for
@ -177,7 +177,7 @@ if the
.B _GNU_SOURCE
feature test macro is defined:
.nf
.in +2n
.in +4n
struct seminfo {
int semmap; /* # of entries in semaphore map;
@ -197,7 +197,7 @@ struct seminfo {
semaphore adjustment (SEM_UNDO) */
};
.in -2n
.in
.fi
The
.IR semmsl ,

View File

@ -77,7 +77,7 @@ struct shmid_ds {
...
};
.fi
.in -4n
.in
.PP
The
.I ipc_perm
@ -98,7 +98,7 @@ struct ipc_perm {
unsigned short seq; /* Sequence number */
};
.fi
.in -4n
.in
.PP
Valid values for
.I cmd
@ -165,7 +165,7 @@ if the
.B _GNU_SOURCE
feature test macro is defined:
.nf
.in +2n
.in +4n
struct shminfo {
unsigned long shmmax; /* Max. segment size */
@ -177,7 +177,7 @@ struct shminfo {
memory, system-wide */
};
.in -2n
.in
.fi
The
.IR shmmni ,
@ -201,7 +201,7 @@ if the
.B _GNU_SOURCE
feature test macro is defined:
.nf
.in +2n
.in +4n
struct shm_info {
int used_ids; /* # of currently existing
@ -215,7 +215,7 @@ struct shm_info {
unsigned long swap_attempts; /* Unused since Linux 2.4 */
unsigned long swap_successes; /* Unused since Linux 2.4 */
};
.in -2n
.in
.fi
.TP
.BR SHM_STAT " (Linux specific)"

View File

@ -53,14 +53,14 @@ The
argument is used to specify an accompanying item of data (either an integer
or a pointer value) to be sent with the signal, and has the following type:
.sp
.in +2n
.in +4n
.nf
union sigval {
int sival_int;
void *sival_ptr;
};
.fi
.in -2n
.in
If the receiving process has installed a handler for this signal using the
.B SA_SIGINFO
@ -130,7 +130,7 @@ Inside the glibc
wrapper, this argument,
.IR info ,
is initialized as follows:
.in +0.5i
.in +4n
.nf
info.si_signo = sig; // argument supplied to sigqueue()

View File

@ -76,14 +76,14 @@ which enables an upper bound to be placed on the time for which
the process is suspended.
This argument is of the following type:
.sp
.in +2n
.in +4n
.nf
struct timespec {
long tv_sec; /* seconds */
long tv_nsec; /* nanoseconds */
}
.fi
.in -2n
.in
.sp
If both fields of this structure are specified as 0, a poll is performed:
.BR sigtimedwait ()

View File

@ -44,7 +44,7 @@ For example, the hostname,
or the maximum number of open files.
The argument has the form
.PP
.in +0.25i
.in +4n
.nf
struct __sysctl_args {
int *name; /* integer vector describing variable */

View File

@ -54,7 +54,7 @@ The
is as defined in
.IR <sys/times.h> :
.sp
.in +0.5i
.in +4n
.nf
struct tms {
clock_t tms_utime; /* user time */

View File

@ -163,7 +163,7 @@ and
The following shell session shows what we might see when running the
program:
.nf
.in +0.25i
.in +4n
$ cc \-rdynamic prog.c \-o prog
$ ./prog 3

View File

@ -59,7 +59,7 @@ The btree access method specific data structure provided to
is defined in the
.I <db.h>
include file as follows:
.in +0.5i
.in +4n
.nf
typedef struct {

View File

@ -73,7 +73,7 @@ apparently as an analog to
.LP
If you need it while porting something, add
.sp
.in +5
.in +4n
#define cfree(p, n, s) free((p))
.in
.sp

View File

@ -129,7 +129,7 @@ The following code fragment determines the path where to find
the POSIX.2 system utilities:
.br
.nf
.in 10
.in +4n
char *pathbuf;
size_t n;
@ -139,6 +139,7 @@ pathbuf = malloc(n);
if (pathbuf == NULL)
abort();
confstr(_CS_PATH, pathbuf, n);
.in
.SH "SEE ALSO"
.BR sh (1),
.BR exec (3),

View File

@ -141,7 +141,7 @@ structure is defined in the
include file, and contains at
least the following fields:
.sp
.in +0.5i
.in +4n
.nf
typedef struct {
DBTYPE type;
@ -440,7 +440,7 @@ and 0 on success.
.SS "Key/Data Pairs"
Access to all file types is based on key/data pairs.
Both keys and data are represented by the following data structure:
.in +0.5i
.in +4n
.nf
typedef struct {

View File

@ -69,7 +69,7 @@ The
.I info
argument is a structure of the following type:
.in +0.25i
.in +4n
.nf
struct dl_phdr_info {
ElfW(Addr) dlpi_addr; /* Base address of object */
@ -120,7 +120,7 @@ The
field indicates the size of this array.
These program headers are structures of the following form:
.in +0.25i
.in +4n
.nf
typedef struct {

View File

@ -345,7 +345,7 @@ Information is stored in the
.I Dl_info
structure:
.sp
.in +0.5i
.in +4n
.nf
typedef struct {
const char *dli_fname; /* Filename of defining object */

View File

@ -116,7 +116,7 @@ functions do not return, but exit with the value of the argument
.IR eval .
.SH EXAMPLES
Display the current errno information string and exit:
.in +0.5i
.in +4n
.nf
if ((p = malloc(size)) == NULL)
@ -127,7 +127,7 @@ if ((fd = open(file_name, O_RDONLY, 0)) == \-1)
.in
.sp
Display an error message and exit:
.in +0.5i
.in +4n
.nf
if (tm.tm_hour < START_TIME)
@ -136,7 +136,7 @@ if (tm.tm_hour < START_TIME)
.in
.sp
Warn of an error:
.in +0.5i
.in +4n
.nf
if ((fd = open(raw_device, O_RDONLY, 0)) == \-1)

View File

@ -90,7 +90,7 @@ main(int argc, char *argv[])
.sp
This program produces results such as the following:
.sp
.in +5
.in +4n
$ ./a.out 2560
frexp(2560, &e) = 0.625: 0.625 * 2^12 = 2560
$ ./a.out \-4

View File

@ -101,7 +101,7 @@ The
.I FTSENT
structure contains at least the following fields, which are
described in greater detail below:
.in +0.5i
.in +4n
.nf
typedef struct _ftsent {

View File

@ -267,7 +267,7 @@ The fourth argument that
supplies when calling
\fIfn\fP()
is a structure of type \fIFTW\fP:
.in +0.5i
.in +4n
.nf
struct FTW {

View File

@ -60,7 +60,7 @@ In 4.3BSD the name was changed to
.BR lgamma (),
and the man page promises
.sp
.in +3
.in +4n
"At some time in the future the name gamma will be rehabilitated
and used for the Gamma function"
.in

View File

@ -42,7 +42,7 @@ These functions read from the file
.IR /etc/fstab .
The \fIstruct fstab\fP is defined by:
.LP
.in +0.5i
.in +4n
.nf
struct fstab {
char *fs_spec; /* block device name */

View File

@ -118,7 +118,7 @@ the POSIX version of functions like
Other systems use prototype
.sp
.nf
.in +4
.in +4n
struct group *
getgrent_r(struct group *grp, char *buf, int buflen);
.in
@ -127,7 +127,7 @@ getgrent_r(struct group *grp, char *buf, int buflen);
or, better,
.sp
.nf
.in +4
.in +4n
int
getgrent_r(struct group *grp, char *buf, int buflen,
FILE **gr_fp);

View File

@ -182,7 +182,7 @@ In order to assist the programmer in choosing reasonable sizes
for the supplied buffers,
.I <netdb.h>
defines the constants
.in +0.5i
.in +4n
.nf
#define NI_MAXHOST 1025
@ -203,7 +203,7 @@ for a given socket address.
Note that there is no hardcoded reference to
a particular address family.
.in +0.5i
.in +4n
.nf
struct sockaddr *sa; /* input */
char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];
@ -217,7 +217,7 @@ if (getnameinfo(sa, sa\->sa_len, hbuf, sizeof(hbuf), sbuf,
The following version checks if the socket address has a
reverse address mapping.
.in +0.5i
.in +4n
.nf
struct sockaddr *sa; /* input */
char hbuf[NI_MAXHOST];

View File

@ -192,7 +192,7 @@ is a pointer to the first element of an array of
declared in
.I <getopt.h>
as
.in +0.5i
.in +4n
.nf
.sp
struct option {

View File

@ -119,7 +119,7 @@ the POSIX version of functions like
Other systems use prototype
.sp
.nf
.in +4
.in +4n
struct passwd *
getpwent_r(struct passwd *pwd, char *buf, int buflen);
.in
@ -128,7 +128,7 @@ getpwent_r(struct passwd *pwd, char *buf, int buflen);
or, better,
.sp
.nf
.in +4
.in +4n
int
getpwent_r(struct passwd *pwd, char *buf, int buflen,
FILE **pw_fp);

View File

@ -44,7 +44,7 @@ If the file is already open, the next entry.
The
.I ttyent
structure has the form:
.in +0.5i
.in +4n
.nf
struct ttyent {

View File

@ -73,14 +73,15 @@ and includes the following elements defined by POSIX.2 (more may be
present as an extension):
.PP
.br
.in +4n
.nf
.in 10
typedef struct {
size_t gl_pathc; /* Count of paths matched so far */
char **gl_pathv; /* List of matched pathnames. */
size_t gl_offs; /* Slots to reserve in \fIgl_pathv\fP. */
} glob_t;
.fi
.in
.PP
Results are stored in dynamically allocated storage.
.PP
@ -308,6 +309,7 @@ glob("../*.c", GLOB_DOOFFS | GLOB_APPEND, NULL, &globbuf);
globbuf.gl_pathv[0] = "ls";
globbuf.gl_pathv[1] = "\-l";
execvp("ls", &globbuf.gl_pathv[0]);
.in
.fi
.SH "SEE ALSO"
.BR ls (1),

View File

@ -58,7 +58,7 @@ The access method specific data structure provided to
is defined in the
.I <db.h>
include file as follows:
.in +0.5i
.in +4n
.nf
typedef struct {

View File

@ -62,9 +62,9 @@ and the raw system call
Prototype:
.nf
.sp
.in +5n
.in +4n
.BI "off_t lseek(int " fd ", off_t " offset ", int " whence );
.in -5n
.in
.fi
.sp
.BR lseek (2)
@ -74,9 +74,9 @@ This is a 32-bit signed type on 32-bit architectures, unless one
compiles with
.nf
.sp
.in +5n
.in +4n
#define _FILE_OFFSET_BITS 64
.in -5n
.in
.sp
.fi
in which case it is a 64-bit signed type.
@ -84,9 +84,9 @@ in which case it is a 64-bit signed type.
Prototype:
.nf
.sp
.in +5n
.in +4n
.BI "off64_t lseek64(int " fd ", off64_t " offset ", int " whence );
.in -5n
.in
.fi
.sp
The library routine
@ -99,9 +99,9 @@ Its prototype (and the type
is available only when one compiles with
.nf
.sp
.in +5n
.in +4n
#define _LARGEFILE64_SOURCE
.in -5n
.in
.sp
.fi
The function
@ -113,9 +113,9 @@ is available since glibc 2.1, and is defined to be an alias for
Prototype:
.nf
.sp
.in +5n
.in +4n
.BI "loff_t llseek(int " fd ", loff_t " offset ", int " whence );
.in -5n
.in
.fi
.sp
The type
@ -135,9 +135,9 @@ When users complained about data loss caused by a miscompilation of
.BR e2fsck (8),
glibc 2.1.3 added the link-time warning
.sp
.in +5n
.in +4n
"the \`llseek\' function may be dangerous; use \`lseek64\' instead."
.in -5b
.in
.sp
This makes this function unusable if one desires a warning-free
compilation.
@ -146,10 +146,10 @@ All the above functions are implemented in terms of this system call.
The prototype is:
.nf
.sp
.in +5n
.in +4n
.BI "int _llseek(int " fd ", off_t " offset_hi ", off_t " offset_lo ,
.BI "loff_t *" result ", int " whence );
.in -5n
.BI " loff_t *" result ", int " whence );
.in
.fi
.sp
For more details, see

View File

@ -232,7 +232,7 @@ In case Linux is employed under circumstances where it would be
less desirable to suddenly lose some randomly picked processes,
and moreover the kernel version is sufficiently recent,
one can switch off this overcommitting behavior using a command like:
.in +0.5i
.in +4n
.nf
# echo 2 > /proc/sys/vm/overcommit_memory

View File

@ -31,13 +31,10 @@ memmem \- locate a substring
.SH SYNOPSIS
.nf
.B #define _GNU_SOURCE
.br
.B #include <string.h>
.sp
.BI "void *memmem(const void *" haystack ", size_t " haystacklen ,
.in +\w'void *memmem('u
.BI "const void *" needle ", size_t " needlelen );
.in
.BI " const void *" needle ", size_t " needlelen );
.fi
.SH DESCRIPTION
The

View File

@ -37,9 +37,7 @@ qsort \- sorts an array
.B #include <stdlib.h>
.sp
.BI "void qsort(void *" base ", size_t " nmemb ", size_t " size ,
.in +\w'void qsort('u
.BI "int(*" compar ")(const void *, const void *));"
.in
.BI " int(*" compar ")(const void *, const void *));"
.fi
.SH DESCRIPTION
The

View File

@ -171,7 +171,7 @@ at the head of the list.
A
.I LIST_HEAD
structure is declared as follows:
.in +0.5i
.in +4n
.nf
LIST_HEAD(HEADNAME, TYPE) head;
@ -184,7 +184,7 @@ is the name of the structure to be defined, and
.I TYPE
is the type of the elements to be linked into the list.
A pointer to the head of the list can later be declared as:
.in +0.5i
.in +4n
.nf
struct HEADNAME *headp;
@ -262,11 +262,12 @@ at the head of the tail queue, or at the end of the tail queue.
A
.I TAILQ_HEAD
structure is declared as follows:
.in +0.5i
.in +4n
.nf
TAILQ_HEAD(HEADNAME, TYPE) head;
.fi
.in
.PP
where
.IR "HEADNAME"
@ -274,7 +275,7 @@ is the name of the structure to be defined, and
.IR "TYPE"
is the type of the elements to be linked into the tail queue.
A pointer to the head of the tail queue can later be declared as:
.in +0.5i
.in +4n
.nf
struct HEADNAME *headp;
@ -362,7 +363,7 @@ of the queue.
A
.I CIRCLEQ_HEAD
structure is declared as follows:
.in +0.5i
.in +4n
.nf
CIRCLEQ_HEAD(HEADNAME, TYPE) head;
@ -375,7 +376,7 @@ is the name of the structure to be defined, and
.IR "TYPE"
is the type of the elements to be linked into the circular queue.
A pointer to the head of the circular queue can later be declared as:
.in +0.5i
.in +4n
.nf
struct HEADNAME *headp;

View File

@ -66,7 +66,7 @@ is defined in the
.I <db.h>
include file as follows:
.PP
.in +0.5i
.in +4n
.nf
typedef struct {
u_long flags;

View File

@ -71,7 +71,7 @@ The
.I "struct aliasent"
is defined in
.IR <aliases.h> :
.in +0.5i
.in +4n
.nf
struct aliasent {
@ -81,6 +81,7 @@ struct aliasent {
int alias_local;
};
.fi
.in
.SH "RETURN VALUE"
The functions
.BR getaliasent_r ()

View File

@ -7,23 +7,21 @@
setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr \-
handle network group entries
.SH SYNOPSIS
.nf
.B #include <netdb.h>
.sp
.BI "int setnetgrent(const char *" netgroup );
.br
.B "void endnetgrent(void);"
.br
.BI "int getnetgrent(char **" host ", char **" user ", char **" domain );
.sp
.BI "int getnetgrent_r(char **" host ", char **" user ","
.in +18
.BI "char **" domain ", char *" buf ", int " buflen );
.in -18
.sp
.BI " char **" domain ", char *" buf ", int " buflen );
.BI "int innetgr(const char *" netgroup ", const char *" host ","
.in +12
.BI "const char *" user ", const char *" domain );
.in -12
.BI " const char *" user ", const char *" domain );
.fi
.sp
.in -4n
Feature Test Macro Requirements for glibc (see

View File

@ -35,9 +35,9 @@ function returns the mantissa of
scaled to the range [1,2).
It is equivalent to
.sp
.in +8
.in +4n
scalb(x, (double) \-ilogb(x))
.in -8
.in
.PP
This function exists mainly for use in certain standardized tests
for IEEE 754 conformance.

View File

@ -84,7 +84,7 @@ cannot be changed.
The
.I sigvec
structure has the following form:
.in +0.5i
.in +4n
.nf
struct sigvec {

View File

@ -225,7 +225,7 @@ A backward compatible version can be found in the include file
.IR <varargs.h> .
.PP
The historic setup is:
.in +0.5i
.in +4n
.nf
#include <varargs.h>

View File

@ -55,7 +55,7 @@ For example, this program uses
.BR stpcpy ()
to concatenate \fBfoo\fP and
\fBbar\fP to produce \fBfoobar\fP, which it then prints.
.in +0.5i
.in +4n
.nf
#include <string.h>

View File

@ -70,7 +70,7 @@ Therefore, the size of \fIdest\fP must be at least
A simple implementation of
.BR strncat ()
might be:
.in +0.25i
.in +4n
.nf
char*

View File

@ -71,7 +71,7 @@ with null bytes.
A simple implementation of
.BR strncpy ()
might be:
.in +0.25i
.in +4n
.nf
char*
@ -112,7 +112,7 @@ characters of \fIsrc\fP,
produces an unterminated string in \fIdest\fP.
Programmers often prevent this mistake by forcing termination
as follows:
.in +0.25i
.in +4n
.nf
strncpy(buf, str, n);

View File

@ -53,13 +53,14 @@ structures, defined in
.I <sys/time.h>
as:
.sp
.in +0.5i
.in +4n
.nf
struct timeval {
time_t tv_sec; /* seconds */
suseconds_t tv_usec; /* microseconds */
};
.fi
.in
.PP
.BR timeradd ()
adds the time values in

View File

@ -118,7 +118,7 @@ A POSIX draft proposed to use a function
defined by
.sp
.nf
.in +5
.in +4n
char *
tmpnam_r(char *s)
{

View File

@ -125,7 +125,7 @@ requests are defined on file descriptors connected to RTC devices:
Returns this RTC's time in the following structure:
.PP
.RS
.in +0.5i
.in +4n
.nf
struct rtc_time {
int tm_sec;
@ -253,7 +253,7 @@ Some RTCs support a more powerful alarm interface, using these ioctls
to read or write the RTC's alarm time (respectively) with this structure:
.PP
.RS
.in +0.5i
.in +4n
.nf
struct rtc_wkalrm {
unsigned char enabled;

View File

@ -244,7 +244,7 @@ The driver returns an
.B EIO
error if the drive rejects an operation.
.PP
.in +0.5i
.in +4n
.nf
/* Structure for MTIOCTOP \- mag tape op command: */
struct mtop {
@ -620,7 +620,7 @@ Enables immediate mode (i.e., don't wait for the command to finish) for some
commands (e.g., rewind).
.PP
An example:
.in +0.5i
.in +4n
.nf
struct mtop mt_cmd;
@ -681,7 +681,7 @@ the masked sense data byte.
This request takes an argument of type
.IR "(struct mtget *)" .
.PP
.in +0.5i
.in +4n
.nf
/* structure for MTIOCGET \- mag tape get status command */
struct mtget {
@ -813,7 +813,7 @@ command (device-specific address)
or a Tandberg-compatible SCSI-1 drive (Tandberg, Archive
Viper, Wangtek, ... ).
.PP
.in +0.5i
.in +4n
.nf
/* structure for MTIOCPOS \- mag tape get position command */
struct mtpos {

View File

@ -93,7 +93,7 @@ stands for
.I uint32_t
or
.IR uint64_t ):
.in +0.5i
.in +4n
.nf
ElfN_Addr Unsigned program address, uintN_t
@ -134,7 +134,7 @@ The ELF header is described by the type
.I Elf32_Ehdr
or
.IR Elf64_Ehdr :
.in +0.5i
.in +4n
.nf
#define EI_NIDENT 16
@ -618,7 +618,7 @@ The ELF program header is described by the type
or
.I Elf64_Phdr
depending on the architecture:
.in +0.5i
.in +4n
.nf
typedef struct {
@ -633,7 +633,7 @@ typedef struct {
} Elf32_Phdr;
.fi
.in
.in +0.5i
.in +4n
.nf
typedef struct {
@ -867,7 +867,7 @@ reserved indices.
.RE
.PP
The section header has the following structure:
.in +0.5i
.in +4n
.nf
typedef struct {
@ -884,7 +884,7 @@ typedef struct {
} Elf32_Shdr;
.fi
.in
.in +0.5i
.in +4n
.nf
typedef struct {
@ -1425,7 +1425,7 @@ An object file's symbol table holds information needed to locate and
relocate a program's symbolic definitions and references.
A symbol table
index is a subscript into this array.
.in +0.5i
.in +4n
.nf
typedef struct {
@ -1438,7 +1438,7 @@ typedef struct {
} Elf32_Sym;
.fi
.in
.in +0.5i
.in +4n
.nf
typedef struct {
@ -1607,7 +1607,7 @@ program image.
Relocation entries are these data.
.sp
Relocation structures that do not need an addend:
.in +0.5i
.in +4n
.nf
typedef struct {
@ -1616,7 +1616,7 @@ typedef struct {
} Elf32_Rel;
.fi
.in
.in +0.5i
.in +4n
.nf
typedef struct {
@ -1627,7 +1627,7 @@ typedef struct {
.in
.sp
Relocation structures that need an addend:
.in +0.5i
.in +4n
.nf
typedef struct {
@ -1637,7 +1637,7 @@ typedef struct {
} Elf32_Rela;
.fi
.in
.in +0.5i
.in +4n
.nf
typedef struct {
@ -1681,7 +1681,7 @@ The .dynamic section contains a series of structures that hold relevant
dynamic linking information.
The d_tag member controls the interpretation
of d_un.
.in +0.5i
.in +4n
.nf
typedef struct {
@ -1694,7 +1694,7 @@ typedef struct {
extern Elf32_Dyn _DYNAMIC[];
.fi
.in
.in +0.5i
.in +4n
.nf
typedef struct {

View File

@ -113,9 +113,9 @@ Up to 10 pairs may
be specified.
E.g.,
.br
.in +2
.in +4n
sortlist 130.155.160.0/255.255.240.0 130.155.0.0
.in -2
.in
.br
.TP
\fBoptions\fP

View File

@ -50,7 +50,7 @@ writable to any user.
The file is a sequence of entries with the following structure declared
in the include file (note that this is only one of several definitions
around; details depend on the version of libc):
.in +3
.in +4n
.nf
.sp
.ta 3i
@ -207,16 +207,16 @@ This allows data files and shared memory to be shared between
32-bit and 64-bit applications.
Since \fIut_tv\fP may not be the same as \fIstruct timeval\fP,
then instead of the call:
.RS
.in +4n
.nf
.sp
.ta 3i
gettimeofday((struct timeval *) &ut.ut_tv, NULL);
.fi
.RE
.in
the following method of setting this field is recommended:
.RS
.in +4n
.nf
.sp
.ta 3i
@ -227,7 +227,7 @@ gettimeofday(&tv, NULL);
ut.ut_tv.tv_sec = tv.tv_sec;
ut.ut_tv.tv_usec = tv.tv_usec;
.fi
.RE
.in
.SH FILES
/var/run/utmp
.br

View File

@ -434,7 +434,7 @@ During an
.BR execve (2),
the kernel calculates the new capabilities of
the process using the following algorithm:
.in +4
.in +4n
.nf
P'(permitted) = (P(inheritable) & F(inheritable)) |
@ -445,7 +445,7 @@ P'(effective) = P'(permitted) & F(effective)
P'(inheritable) = P(inheritable) [i.e., unchanged]
.fi
.in -4
.in
where:
.IP P 10
denotes the value of a thread capability set before the

View File

@ -149,55 +149,55 @@ Values about local numeric formatting is made available in a
returned by the
.BR localeconv (3)
function, which has the following declaration:
.in +0.25i
.in +2n
.nf
struct lconv {
/* Numeric (non-monetary) information */
/* Numeric (non-monetary) information */
char *decimal_point; /* Radix character */
char *thousands_sep; /* Separator for digit groups to left
of radix character */
char *grouping; /* Each element is the number of digits in a
group; elements with higher indices are
further left. An element with value CHAR_MAX
means that no further grouping is done. An
element with value 0 means that the previous
element is used for all groups further left. */
/* Remaining fields are for monetary information */
char *int_curr_symbol; /* First three chars are a currency symbol
from ISO 4217. Fourth char is the
separator. Fifth char is '\0'. */
char *currency_symbol; /* Local currency symbol */
char *mon_decimal_point; /* Radix character */
char *mon_thousands_sep; /* Like \fIthousands_sep\fP above */
char *mon_grouping; /* Like \fIgrouping\fP above */
char *positive_sign; /* Sign for positive values */
char *negative_sign; /* Sign for negative values */
char int_frac_digits; /* Int'l fractional digits */
char frac_digits; /* Local fractional digits */
char p_cs_precedes; /* 1 if currency_symbol precedes a
positive value, 0 if succeeds */
char p_sep_by_space; /* 1 if a space separates currency_symbol
from a positive value */
char n_cs_precedes; /* 1 if currency_symbol precedes a
negative value, 0 if succeeds */
char n_sep_by_space; /* 1 if a space separates currency_symbol
from a negative value */
/* Positive and negative sign positions:
0 Parentheses surround the quantity and currency_symbol.
1 The sign string precedes the quantity and currency_symbol.
2 The sign string succeeds the quantity and currency_symbol.
3 The sign string immediately precedes the currency_symbol.
4 The sign string immediately succeeds the currency_symbol. */
char p_sign_posn;
char n_sign_posn;
char *decimal_point; /* Radix character */
char *thousands_sep; /* Separator for digit groups to left
of radix character */
char *grouping; /* Each element is the number of digits in a
group; elements with higher indices are
further left. An element with value CHAR_MAX
means that no further grouping is done. An
element with value 0 means that the previous
element is used for all groups further left. */
/* Remaining fields are for monetary information */
char *int_curr_symbol; /* First three chars are a currency symbol
from ISO 4217. Fourth char is the
separator. Fifth char is '\0'. */
char *currency_symbol; /* Local currency symbol */
char *mon_decimal_point; /* Radix character */
char *mon_thousands_sep; /* Like \fIthousands_sep\fP above */
char *mon_grouping; /* Like \fIgrouping\fP above */
char *positive_sign; /* Sign for positive values */
char *negative_sign; /* Sign for negative values */
char int_frac_digits; /* Int'l fractional digits */
char frac_digits; /* Local fractional digits */
char p_cs_precedes; /* 1 if currency_symbol precedes a
positive value, 0 if succeeds */
char p_sep_by_space; /* 1 if a space separates currency_symbol
from a positive value */
char n_cs_precedes; /* 1 if currency_symbol precedes a
negative value, 0 if succeeds */
char n_sep_by_space; /* 1 if a space separates currency_symbol
from a negative value */
/* Positive and negative sign positions:
0 Parentheses surround the quantity and currency_symbol.
1 The sign string precedes the quantity and currency_symbol.
2 The sign string succeeds the quantity and currency_symbol.
3 The sign string immediately precedes the currency_symbol.
4 The sign string immediately succeeds the currency_symbol. */
char p_sign_posn;
char n_sign_posn;
};
.fi
.in +0.25i
.in
.SH "CONFORMING TO"
POSIX.1-2001.

View File

@ -301,22 +301,22 @@ Since glibc 2.3.2, the
command can be used to determine
the system's threading implementation, for example:
.nf
.in +4
.in +4n
bash$ getconf GNU_LIBPTHREAD_VERSION
NPTL 2.3.4
.in -4
.in
.fi
.PP
With older glibc versions, a command such as the following should
be sufficient to determine the default threading implementation:
.nf
.in +4
.in +4n
bash$ $( ldd /bin/ls | grep libc.so | awk '{print $3}' ) | \\
egrep \-i 'threads|ntpl'
Native POSIX Threads Library by Ulrich Drepper et al
.in -4
.in
.fi
.SS "Selecting the Threading Implementation: LD_ASSUME_KERNEL"
On systems with a glibc that supports both LinuxThreads and NPTL
@ -334,12 +334,12 @@ of LinuxThreads.
in LinuxThreads.)
For example:
.nf
.in +4
.in +4n
bash$ $( LD_ASSUME_KERNEL=2.2.5 ldd /bin/ls | grep libc.so | \\
awk '{print $3}' ) | egrep \-i 'threads|ntpl'
linuxthreads-0.10 by Xavier Leroy
.in -4
.in
.fi
.SH "SEE ALSO"
.BR clone (2),

View File

@ -555,7 +555,7 @@ The
file contains the contents of the SPU MFC DMA queue, represented as the
following structure:
.in +0.5i
.in +4n
.nf
struct spu_dma_info {
uint64_t dma_info_type;
@ -574,7 +574,7 @@ The
.I mfc_cq_sr
structure is defined as:
.in +0.5i
.in +4n
.nf
struct mfc_cq_sr {
uint64_t mfc_cq_data0_RW;
@ -591,7 +591,7 @@ file contains similar information, but describes the proxy DMA queue
(i.e., DMAs initiated by entities outside the SPU) instead.
The file is in the following format:
.in +0.25i
.in +4n
.nf
struct spu_proxydma_info {
uint64_t proxydma_info_type;
@ -640,7 +640,7 @@ The following operations are supported:
Writes to this file need to be in the format of a MFC DMA command,
defined as follows:
.in +0.5i
.in +4n
.nf
struct mfc_dma_command {
int32_t pad; /* reserved */

View File

@ -54,7 +54,7 @@ The
structure, defined by the
.I <sys/ipc.h>
system header file, includes the following members:
.in +0.5i
.in +4n
.nf
struct ipc_perm {
@ -133,7 +133,7 @@ and has an associated data structure of type
defined in
.IR <sys/msg.h> ,
containing the following members:
.in +0.5i
.in +4n
.nf
struct msqid_ds {
@ -194,7 +194,7 @@ and has an associated data structure of type
defined in
.IR <sys/sem.h> ,
containing the following members:
.in +0.5i
.in +4n
.nf
struct semid_ds {
@ -233,7 +233,7 @@ to
A semaphore is a data structure of type
.I "struct sem"
containing the following members:
.in +0.5i
.in +4n
.nf
struct sem {
@ -269,7 +269,7 @@ and has an associated data structure of type
defined in
.IR <sys/shm.h> ,
containing the following members:
.in +0.5i
.in +4n
.nf
struct shmid_ds {