This causes problems both when Linux code which reads
.I timeout
is ported to other operating systems, and when code is ported to Linux
-that reuses a struct timeval for multiple
+that reuses a \fIstruct timeval\fP for multiple
.BR select ()s
in a loop without reinitializing it.
Consider
.I aiocbp
that is used by this call is the
.I aio_sigevent
-field (a struct sigevent) that indicates the desired type of
+field (a \fIstruct sigevent\fP) that indicates the desired type of
asynchronous notification at completion.
All other fields are ignored.
.SH "RETURN VALUE"
.IR clk_id ,
and, if
.I res
-is non-NULL, stores it in the struct timespec pointed to by
+is non-NULL, stores it in the \fIstruct timespec\fP pointed to by
.IR res .
The resolution of clocks depends on the implementation and cannot be
configured by a particular process.
.I tm_mday
is interpreted as meaning the last day of the preceding month.
.LP
-The glibc version of struct tm has additional fields
+The glibc version of \fIstruct tm\fP has additional fields
.sp
.RS
.nf
.SH DESCRIPTION
These functions read from the file
.IR /etc/fstab .
-The struct fstab is defined by
+The \fIstruct fstab\fP is defined by
.LP
.nf
struct fstab {
.BR getfsfile (),
and
.BR getfsspec ()
-return a pointer to a struct fstab, while
+return a pointer to a \fIstruct fstab\fP, while
.BR setfsent ()
returns 1.
Upon failure or end-of-file, these functions return NULL and 0, respectively.
Several operating systems have them,
e.g., *BSD, SunOS, Digital Unix, AIX (which also has a
.BR getfstype ()).
-HP-UX has functions of the same names, that however use a struct checklist
-instead of a struct fstab, and calls these functions obsolete, superseded by
+HP-UX has functions of the same names,
+that however use a \fIstruct checklist\fP
+instead of a \fIstruct fstab\fP,
+and calls these functions obsolete, superseded by
.BR getmntent (3).
.SH NOTES
These functions are not thread-safe.
caller-provided buffers.
First of all there is the buffer
.I gbuf
-that can hold a struct group.
+that can hold a \fIstruct group\fP.
And next the buffer
.I buf
of size
.I buflen
that can hold additional strings.
-The result of these functions, the struct group read from the stream,
+The result of these functions, the \fIstruct group\fP read from the stream,
is stored in the provided buffer
.RI * gbuf ,
-and a pointer to this struct group is returned in
+and a pointer to this \fIstruct group\fP is returned in
.RI * gbufp .
.SH "RETURN VALUE"
On success, these functions return 0 and
.RI * gbufp
-is a pointer to the struct group.
+is a pointer to the \fIstruct group\fP.
On error, these functions return an error value and
.RI * gbufp
is NULL.
.BR getmntent_r ()
function is similar to
.BR getmntent (),
-but stores the struct mount in the provided
+but stores the \fIstruct mount\fP in the provided
.RI * mntbuf
and stores the strings pointed to by the entries in that struct
in the provided array
caller-provided buffers.
First of all there is the buffer
.I pwbuf
-that can hold a struct passwd.
+that can hold a \fIstruct passwd\fP.
And next the buffer
.I buf
of size
.I buflen
that can hold additional strings.
-The result of these functions, the struct passwd read from the stream,
+The result of these functions, the \fIstruct passwd\fP read from the stream,
is stored in the provided buffer
.RI * pwbuf ,
-and a pointer to this struct passwd is returned in
+and a pointer to this \fIstruct passwd\fP is returned in
.RI * pwbufp .
.SH "RETURN VALUE"
On success, these functions return 0 and
.RI * pwbufp
-is a pointer to the struct passwd.
+is a pointer to the \fIstruct passwd\fP.
On error, these functions return an error value and
.RI * pwbufp
is NULL.
.LP
The function
.BR login ()
-takes the supplied struct utmp
+takes the supplied \fIstruct utmp\fP,
.IR ut ,
and writes it to both utmp and wtmp file.
.LP
Then it tries to fill the field
.IR ut->ut_line .
It takes the first of stdin, stdout, stderr that is a tty, and
-stores the corresponding pathname minus a possible leading /dev/
+stores the corresponding pathname minus a possible leading \fI/dev/\fP
into this field, and then writes the struct to the utmp file.
On the other hand, if no tty name was found, this field is filled with "???"
and the struct is not written to the utmp file.
.BR putgrent ()
function is the counterpart for
.BR fgetgrent (3).
-The function writes the content of the provided struct group into the
+The function writes the content of the provided \fIstruct group\fP into the
file pointed to by
.IR fp .
The list of group members must be NULL terminated or NULL initialized.
.sp
-The struct group is defined as follows:
+The \fIstruct group\fP is defined as follows:
.sp
.in +0.5i
.nf
.BR who (1)
then do not make utmp world readable.
.PP
-Note that the utmp struct from libc5 has changed in libc6.
+Note that the \fIutmp\fP struct from libc5 has changed in libc6.
Because of this,
binaries using the old libc5 struct will corrupt
.IR /var/run/utmp " and/or " /var/log/wtmp .
processed only on the machine architecture where it was created.
.PP
Note that on platforms which can run both 32-bit and 64-bit applications
-(x86-64, ppc64, s390x, etc.), the sizes of the fields of a struct utmp
+(x86-64, ppc64, s390x, etc.), the sizes of the fields of a \fIutmp\fP struct
must be the same in 32-bit mode as in 64-bit mode.
This is achieved by changing the type of
.I ut_session