.B #include <linux/kexec.h>
.PP
.BI "long kexec_load(unsigned long " entry ", unsigned long " nr_segments ","
-.BI " struct kexec_segment *" segments \
-", unsigned long " flags ");"
-.PP
+.BI " struct kexec_segment *" segments ,
+.BI " unsigned long " flags ");"
.BI "long kexec_file_load(int " kernel_fd ", int " initrd_fd ","
-.BI " unsigned long " cmdline_len \
+.BI " unsigned long " cmdline_len \
", const char *" cmdline ","
-.BI " unsigned long " flags ");"
+.BI " unsigned long " flags ");"
.fi
.PP
.IR Note :
.SH SYNOPSIS
.nf
.BI "int rt_sigqueueinfo(pid_t " tgid ", int " sig ", siginfo_t *" info );
-.PP
-.BI "int rt_tgsigqueueinfo(pid_t " tgid ", pid_t " tid ", int " sig ,
-.BI " siginfo_t *" info );
+.BI "int rt_tgsigqueueinfo(pid_t " tgid ", pid_t " tid ", int " sig \
+", siginfo_t *" info );
.fi
.PP
.IR Note :
.SH NAME
sgetmask, ssetmask \- manipulation of signal mask (obsolete)
.SH SYNOPSIS
+.nf
.B "long sgetmask(void);"
-.PP
.BI "long ssetmask(long " newmask );
+.fi
.PP
.IR Note :
There are no glibc wrappers for these system calls; see NOTES.
subpage_prot \- define a subpage protection for an address range
.SH SYNOPSIS
.nf
-.BI "int subpage_prot(unsigned long " addr ", unsigned long " len ,
-.BI " uint32_t *" map );
+.BI "int subpage_prot(unsigned long " addr ", unsigned long " len \
+", uint32_t *" map );
.fi
.PP
.IR Note :
.SH NAME
vm86old, vm86 \- enter virtual 8086 mode
.SH SYNOPSIS
+.nf
.B #include <sys/vm86.h>
.PP
.BI "int vm86old(struct vm86_struct *" info );
-.PP
.BI "int vm86(unsigned long " fn ", struct vm86plus_struct *" v86 );
+.fi
.SH DESCRIPTION
The system call
.BR vm86 ()
.PP
.BI "CIRCLEQ_FOREACH(struct TYPE *" var ", CIRCLEQ_HEAD *" head ,
.BI " CIRCLEQ_ENTRY " NAME ");"
-.PP
.BI "CIRCLEQ_FOREACH_REVERSE(struct TYPE *" var ", CIRCLEQ_HEAD *" head ","
.BI " CIRCLEQ_ENTRY " NAME ");"
.PP
.B CIRCLEQ_HEAD(HEADNAME, TYPE);
-.PP
.BI "CIRCLEQ_HEAD CIRCLEQ_HEAD_INITIALIZER(CIRCLEQ_HEAD " head ");"
-.PP
.BI "void CIRCLEQ_INIT(CIRCLEQ_HEAD *" head ");"
.PP
.BI "void CIRCLEQ_INSERT_AFTER(CIRCLEQ_HEAD *" head ", struct TYPE *" listelm ,
.BI " struct TYPE *" elm ", CIRCLEQ_ENTRY " NAME ");"
-.PP
.BI "void CIRCLEQ_INSERT_BEFORE(CIRCLEQ_HEAD *" head ", struct TYPE *" listelm ,
.BI " struct TYPE *" elm ", CIRCLEQ_ENTRY " NAME ");"
.PP
.BI "void CIRCLEQ_INSERT_HEAD(CIRCLEQ_HEAD *" head ", struct TYPE *" elm ","
.BI " CIRCLEQ_ENTRY " NAME ");"
-.PP
.BI "void CIRCLEQ_INSERT_TAIL(CIRCLEQ_HEAD *" head ", struct TYPE *" elm ","
.BI " CIRCLEQ_ENTRY " NAME ");"
.PP
.PP
.BI "void CIRCLEQ_LOOP_NEXT(CIRCLEQ_HEAD *" head ", struct TYPE *" elm ","
.BI " CIRCLEQ_ENTRY " NAME ");"
-.PP
.BI "void CIRCLEQ_LOOP_PREV(CIRCLEQ_HEAD *" head ", struct TYPE *" elm ","
.BI " CIRCLEQ_ENTRY " NAME ");"
.PP
.BI "struct TYPE *CIRCLEQ_NEXT(struct TYPE *" elm ", CIRCLEQ_ENTRY " NAME ");"
-.PP
.BI "struct TYPE *CIRCLEQ_PREV(struct TYPE *" elm ", CIRCLEQ_ENTRY " NAME ");"
.PP
.BI "void CIRCLEQ_REMOVE(CIRCLEQ_HEAD *" head ", struct TYPE *" elm ,
.PP
.BI "int ecb_crypt(char *" key ", char *" data ", unsigned int " datalen ,
.BI " unsigned int " mode );
-.PP
.BI "int cbc_crypt(char *" key ", char *" data ", unsigned int " datalen ,
.BI " unsigned int " mode ", char *" ivec );
.PP
.BI " struct drand48_data *" buffer ", long *" result ");"
.PP
.BI "int srand48_r(long int " seedval ", struct drand48_data *" buffer ");"
-.BI "int seed48_r(unsigned short " seed16v[3] ","
-.BI " struct drand48_data *" buffer ");"
-.BI "int lcong48_r(unsigned short " param[7] ","
-.BI " struct drand48_data *" buffer ");"
+.BI "int seed48_r(unsigned short " seed16v[3] ", struct drand48_data *" buffer ");"
+.BI "int lcong48_r(unsigned short " param[7] ", struct drand48_data *" buffer ");"
.fi
.PP
.RS -4
.B #include <error.h>
.PP
.BI "void error(int " status ", int " errnum ", const char *" format ", ...);"
-.PP
.BI "void error_at_line(int " status ", int " errnum ", const char *" filename ,
.BI " unsigned int " linenum ", const char *" format ", ...);"
.PP
.BI "extern unsigned int " error_message_count ;
-.PP
.BI "extern int " error_one_per_line ;
.PP
-.BI "extern void (*" error_print_progname ") (void);"
+.BI "extern void (*" error_print_progname ")(void);"
.fi
.SH DESCRIPTION
.BR error ()
.B #include <netinet/ether.h>
.PP
.BI "char *ether_ntoa(const struct ether_addr *" addr );
-.PP
.BI "struct ether_addr *ether_aton(const char *" asc );
.PP
.BI "int ether_ntohost(char *" hostname ", const struct ether_addr *" addr );
-.PP
.BI "int ether_hostton(const char *" hostname ", struct ether_addr *" addr );
.PP
.BI "int ether_line(const char *" line ", struct ether_addr *" addr ,
.B extern char **environ;
.PP
.BI "int execl(const char *" pathname ", const char *" arg ", ..."
-.B " /* (char *) NULL */);"
+.B " /*, (char *) NULL */);"
.BI "int execlp(const char *" file ", const char *" arg ", ..."
-.B " /* (char *) NULL */);"
+.B " /*, (char *) NULL */);"
.BI "int execle(const char *" pathname ", const char *" arg ", ..."
.BI " /*, (char *) NULL, char *const " envp "[] */);"
.BI "int execv(const char *" pathname ", char *const " argv "[]);"
.BI "int execvp(const char *" file ", char *const " argv "[]);"
-.BI "int execvpe(const char *" file ", char *const " argv "[],"
-.BI " char *const " envp "[]);"
+.BI "int execvpe(const char *" file ", char *const " argv \
+"[], char *const " envp "[]);"
.fi
.PP
.RS -4
.B #include <stdio.h>
.PP
.BI "int fseeko(FILE *" stream ", off_t " offset ", int " whence );
-.PP
.BI "off_t ftello(FILE *" stream );
.fi
.PP
.B #include <ftw.h>
.PP
.BI "int nftw(const char *" dirpath ,
-.BI " int (*" fn ") (const char *" fpath ", const struct stat *" sb ,
-.BI " int " typeflag ", struct FTW *" ftwbuf ),
+.BI " int (*" fn ")(const char *" fpath ", const struct stat *" sb ,
+.BI " int " typeflag ", struct FTW *" ftwbuf ),
.BI " int " nopenfd ", int " flags );
.PP
.B #include <ftw.h>
.PP
.BI "int ftw(const char *" dirpath ,
-.BI " int (*" fn ") (const char *" fpath ", const struct stat *" sb ,
-.BI " int " typeflag ),
+.BI " int (*" fn ")(const char *" fpath ", const struct stat *" sb ,
+.BI " int " typeflag ),
.BI " int " nopenfd );
.fi
.PP
.B #include <glob.h>
.PP
.BI "int glob(const char *" pattern ", int " flags ,
-.BI " int (*" errfunc ") (const char *" epath ", int " eerrno ),
+.BI " int (*" errfunc ")(const char *" epath ", int " eerrno ),
.BI " glob_t *" pglob );
.BI "void globfree(glob_t *" pglob );
.fi
.BI "struct TYPE *LIST_FIRST(LIST_HEAD *" head ");"
.PP
.BI "LIST_FOREACH(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ");"
-.\".PP
.\".BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ");"
-.\".PP
.\".BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ", struct TYPE *" temp_var ");"
-.\".PP
.\".BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ", struct TYPE *" temp_var ");"
.PP
.B LIST_HEAD(HEADNAME, TYPE);
-.PP
.BI "LIST_HEAD LIST_HEAD_INITIALIZER(LIST_HEAD " head ");"
-.PP
.BI "void LIST_INIT(LIST_HEAD *" head ");"
.PP
.BI "void LIST_INSERT_AFTER(struct TYPE *" listelm ", struct TYPE *" elm ","
.BI " LIST_ENTRY " NAME ");"
-.PP
.BI "void LIST_INSERT_BEFORE(struct TYPE *" listelm ", struct TYPE *" elm ","
.BI " LIST_ENTRY " NAME ");"
-.PP
.BI "void LIST_INSERT_HEAD(LIST_HEAD *" head ", struct TYPE *" elm ","
.BI " LIST_ENTRY " NAME ");"
.PP
.BI "struct TYPE *LIST_NEXT(struct TYPE *" elm ", LIST_ENTRY " NAME ");"
-.\".PP
.\".BI "struct TYPE *LIST_PREV(struct TYPE *" elm ", LIST_HEAD *" head ", struct TYPE, LIST_ENTRY " NAME ");"
.PP
.BI "void LIST_REMOVE(struct TYPE *" elm ", LIST_ENTRY " NAME ");"
-.\".PP
.\".BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 ", struct TYPE, LIST_ENTRY " NAME ");"
.fi
.SH DESCRIPTION
.B #include <search.h>
.PP
.BI "void *lfind(const void *" key ", const void *" base ", size_t *" nmemb ,
-.BI " size_t " size ", int(*" compar ")(const void *, const void *));"
+.BI " size_t " size ", int(*" compar ")(const void *, const void *));"
.BI "void *lsearch(const void *" key ", void *" base ", size_t *" nmemb ,
-.BI " size_t " size ", int(*" compar ")(const void *, const void *));"
+.BI " size_t " size ", int(*" compar ")(const void *, const void *));"
.fi
.SH DESCRIPTION
.BR lfind ()
.B #include <pthread.h>
.PP
.BI "int pthread_create(pthread_t *" thread ", const pthread_attr_t *" attr ,
-.BI " void *(*" start_routine ") (void *), void *" arg );
+.BI " void *(*" start_routine ")(void *), void *" arg );
.fi
.PP
Compile and link with \fI\-pthread\fP.
.SH SYNOPSIS
.nf
.B #include <sys/types.h>
-.PP
.B #include <dirent.h>
.PP
.BI "void rewinddir(DIR *" dirp );
.EX
.BI "typedef int " bool_t ;
.PP
-.BI "typedef bool_t (*" xdrproc_t ") (XDR *, void *, ...);"
+.BI "typedef bool_t (*" xdrproc_t ")(XDR *, void *, ...);"
.PP
-.BI "typedef bool_t (*" resultproc_t ") (caddr_t " resp ,
+.BI "typedef bool_t (*" resultproc_t ")(caddr_t " resp ,
.BI " struct sockaddr_in *" raddr );
.EE
.RE
.IP
.in +4n
.EX
-\fBCLGET_SERVER_ADDR\fP \fIstruct sockaddr_in \fP // get server\(aqs address
+\fBCLGET_SERVER_ADDR\fP \fIstruct sockaddr_in\fP
+ // get server\(aqs address
.EE
.in
.IP
.SH NAME
rtnetlink \- macros to manipulate rtnetlink messages
.SH SYNOPSIS
+.nf
.B #include <asm/types.h>
-.br
.B #include <linux/netlink.h>
-.br
.B #include <linux/rtnetlink.h>
-.br
.B #include <sys/socket.h>
.PP
.BI "rtnetlink_socket = socket(AF_NETLINK, int " socket_type \
.BI "int RTA_OK(struct rtattr *" rta ", int " rtabuflen );
.PP
.BI "void *RTA_DATA(struct rtattr *" rta );
-.PP
.BI "unsigned int RTA_PAYLOAD(struct rtattr *" rta );
.PP
.BI "struct rtattr *RTA_NEXT(struct rtattr *" rta \
", unsigned int " rtabuflen );
.PP
.BI "unsigned int RTA_LENGTH(unsigned int " length );
-.PP
.BI "unsigned int RTA_SPACE(unsigned int "length );
+.fi
.SH DESCRIPTION
All
.BR rtnetlink (7)
.B #include <dirent.h>
.PP
.BI "int scandir(const char *" dirp ", struct dirent ***" namelist ,
-.RS
-.BI "int (*" filter ")(const struct dirent *),"
-.BI "int (*" compar ")(const struct dirent **, const struct dirent **));"
-.RE
+.BI " int (*" filter ")(const struct dirent *),"
+.BI " int (*" compar ")(const struct dirent **, const struct dirent **));"
.PP
.BI "int alphasort(const struct dirent **" a ", const struct dirent **" b );
-.PP
.BI "int versionsort(const struct dirent **" a ", const struct dirent **" b );
.PP
.BR "#include <fcntl.h>" " /* Definition of AT_* constants */"
.B #include <dirent.h>
.PP
-.BI "int scandirat(int " dirfd ", const char *" dirp ","
-.BI "struct dirent ***" namelist ,
+.BI "int scandirat(int " dirfd ", const char *" dirp ", struct dirent ***" namelist ,
.RS
.BI "int (*" filter ")(const struct dirent *),"
.BI "int (*" compar ")(const struct dirent **, const struct dirent **));"
.PP
.B "struct aliasent *getaliasent(void);"
.BI "int getaliasent_r(struct aliasent *" result ","
-.BI " char *" buffer ", size_t " buflen ", struct aliasent **" res );
+.BI " char *" buffer ", size_t " buflen \
+", struct aliasent **" res );
.PP
.BI "struct aliasent *getaliasbyname(const char *" name );
.BI "int getaliasbyname_r(const char *" name ", struct aliasent *" result ,
-.BI " char *" buffer ", size_t " buflen ", struct aliasent **" res );
+.BI " char *" buffer ", size_t " buflen \
+", struct aliasent **" res );
.fi
.SH DESCRIPTION
One of the databases available with the Name Service Switch (NSS)
.SH NAME
shm_open, shm_unlink \- create/open or unlink POSIX shared memory objects
.SH SYNOPSIS
+.nf
.B #include <sys/mman.h>
-.br
.BR "#include <sys/stat.h>" " /* For mode constants */"
-.br
.BR "#include <fcntl.h>" " /* For O_* constants */"
.PP
.BI "int shm_open(const char *" name ", int " oflag ", mode_t " mode );
-.PP
.BI "int shm_unlink(const char *" name );
+.fi
.PP
Link with \fI\-lrt\fP.
.SH DESCRIPTION
.SH NAME
sigset, sighold, sigrelse, sigignore \- System V signal API
.SH SYNOPSIS
+.nf
.B #include <signal.h>
.PP
.B typedef void (*sighandler_t)(int);
.BI "sighandler_t sigset(int " sig ", sighandler_t " disp );
.PP
.BI "int sighold(int " sig );
-.PP
.BI "int sigrelse(int " sig );
-.PP
.BI "int sigignore(int " sig );
+.fi
.PP
.RS -4
Feature Test Macro Requirements for glibc (see
.BI "struct TYPE *SLIST_FIRST(SLIST_HEAD *" head ");"
.PP
.BI "SLIST_FOREACH(struct TYPE *" var ", SLIST_HEAD *" head ", SLIST_ENTRY " NAME ");"
-.\".PP
.\".BI "SLIST_FOREACH_FROM(struct TYPE *" var ", SLIST_HEAD *" head ", SLIST_ENTRY " NAME ");"
-.\".PP
.\".BI "SLIST_FOREACH_FROM_SAFE(struct TYPE *" var ", SLIST_HEAD *" head ", SLIST_ENTRY " NAME ", struct TYPE *" temp_var ");"
-.\".PP
.\".BI "SLIST_FOREACH_SAFE(struct TYPE *" var ", SLIST_HEAD *" head ", SLIST_ENTRY " NAME ", struct TYPE *" temp_var ");"
.PP
.B SLIST_HEAD(HEADNAME, TYPE);
-.PP
.BI "SLIST_HEAD SLIST_HEAD_INITIALIZER(SLIST_HEAD " head ");"
-.PP
.BI "void SLIST_INIT(SLIST_HEAD *" head ");"
.PP
.BI "void SLIST_INSERT_AFTER(struct TYPE *" listelm ", struct TYPE *" elm ","
.BI " SLIST_ENTRY " NAME ");"
-.PP
.BI "void SLIST_INSERT_HEAD(SLIST_HEAD *" head ", struct TYPE *" elm ","
.BI " SLIST_ENTRY " NAME ");"
.PP
.BI "struct TYPE *SLIST_NEXT(struct TYPE *" elm ", SLIST_ENTRY " NAME ");"
.PP
.BI "void SLIST_REMOVE(SLIST_HEAD *" head ", struct TYPE *" elm ", SLIST_ENTRY " NAME ");"
-.\".PP
.\".BI "void SLIST_REMOVE_AFTER(struct TYPE *" elm ", SLIST_ENTRY " NAME ");"
-.PP
.BI "void SLIST_REMOVE_HEAD(SLIST_HEAD *" head ", SLIST_ENTRY " NAME ");"
.\".PP
.\".BI "void SLIST_SWAP(SLIST_HEAD *" head1 ", SLIST_HEAD *" head2 ", SLIST_ENTRY " NAME ");"
.BI "struct TYPE *STAILQ_FIRST(STAILQ_HEAD *" head ");"
.PP
.BI "STAILQ_FOREACH(struct TYPE *" var ", STAILQ_HEAD *" head ", STAILQ_ENTRY " NAME ");"
-.\" .PP
.\" .BI "STAILQ_FOREACH_FROM(struct TYPE *" var ", STAILQ_HEAD *" head ", STAILQ_ENTRY " NAME ");"
-.\" .PP
.\" .BI "STAILQ_FOREACH_FROM_SAFE(struct TYPE *" var ", STAILQ_HEAD *" head ", STAILQ_ENTRY " NAME ", struct TYPE *" temp_var ");"
-.\" .PP
.\" .BI "STAILQ_FOREACH_SAFE(struct TYPE *" var ", STAILQ_HEAD *" head ", STAILQ_ENTRY " NAME ", struct TYPE *" temp_var ");"
.PP
.B STAILQ_HEAD(HEADNAME, TYPE);
-.PP
.BI "STAILQ_HEAD STAILQ_HEAD_INITIALIZER(STAILQ_HEAD " head ");"
-.PP
.BI "void STAILQ_INIT(STAILQ_HEAD *" head ");"
.PP
.BI "void STAILQ_INSERT_AFTER(STAILQ_HEAD *" head ", struct TYPE *" listelm ","
.BI " struct TYPE *" elm ", STAILQ_ENTRY " NAME ");"
-.PP
.BI "void STAILQ_INSERT_HEAD(STAILQ_HEAD *" head ", struct TYPE *" elm ","
.BI " STAILQ_ENTRY " NAME ");"
-.PP
.BI "void STAILQ_INSERT_TAIL(STAILQ_HEAD *" head ", struct TYPE *" elm ","
.BI " STAILQ_ENTRY " NAME ");"
.\" .PP
.PP
.BI "void STAILQ_REMOVE(STAILQ_HEAD *" head ", struct TYPE *" elm ", TYPE,"
.BI " STAILQ_ENTRY " NAME ");"
-.\" .PP
.\" .BI "void STAILQ_REMOVE_AFTER(STAILQ_HEAD *" head ", struct TYPE *" elm ","
.\" .BI " STAILQ_ENTRY " NAME ");"
-.PP
.BI "void STAILQ_REMOVE_HEAD(STAILQ_HEAD *" head ", STAILQ_ENTRY " NAME ");"
-.\" .PP
.\" .BI "void STAILQ_SWAP(STAILQ_HEAD *" head1 ", STAILQ_HEAD *" head2 ","
.\" .BI " STAILQ_ENTRY " NAME ");"
.fi
.BI "char *strstr(const char *" haystack ", const char *" needle );
.PP
.BR "#define _GNU_SOURCE" " /* See feature_test_macros(7) */"
-.PP
.B #include <string.h>
.PP
.BI "char *strcasestr(const char *" haystack ", const char *" needle );
.BI "struct TYPE *TAILQ_FIRST(TAILQ_HEAD *" head ");"
.PP
.BI "TAILQ_FOREACH(struct TYPE *" var ", TAILQ_HEAD *" head ", TAILQ_ENTRY " NAME ");"
-.\" .PP
.\" .BI "TAILQ_FOREACH_FROM(struct TYPE *" var ", TAILQ_HEAD *" head ", TAILQ_ENTRY " NAME ");"
-.\" .PP
.\" .BI "TAILQ_FOREACH_FROM_SAFE(struct TYPE *" var ", TAILQ_HEAD *" head ", TAILQ_ENTRY " NAME ", struct TYPE *" temp_var ");"
-.PP
.BI "TAILQ_FOREACH_REVERSE(struct TYPE *" var ", TAILQ_HEAD *" head ", HEADNAME,"
.BI " TAILQ_ENTRY " NAME ");"
.\" .PP
.\" .BI "TAILQ_FOREACH_REVERSE_FROM(struct TYPE *" var ", TAILQ_HEAD *" head ", HEADNAME, TAILQ_ENTRY " NAME ");"
-.\" .PP
.\" .BI "TAILQ_FOREACH_REVERSE_FROM_SAFE(struct TYPE *" var ", TAILQ_HEAD *" head ", HEADNAME, TAILQ_ENTRY " NAME ", struct TYPE *" temp_var ");"
-.\" .PP
.\" .BI "TAILQ_FOREACH_REVERSE_SAFE(struct TYPE *" var ", TAILQ_HEAD *" head ", HEADNAME, TAILQ_ENTRY " NAME ", TYPE *" temp_var ");"
-.\" .PP
.\" .BI "TAILQ_FOREACH_SAFE(struct TYPE *" var ", TAILQ_HEAD *" head ", TAILQ_ENTRY " NAME ", struct TYPE *" temp_var ");"
.PP
.B TAILQ_HEAD(HEADNAME, TYPE);
-.PP
.BI "TAILQ_HEAD TAILQ_HEAD_INITIALIZER(TAILQ_HEAD " head ");"
-.PP
.BI "void TAILQ_INIT(TAILQ_HEAD *" head ");"
.PP
.BI "void TAILQ_INSERT_AFTER(TAILQ_HEAD *" head ", struct TYPE *" listelm ","
.BI " struct TYPE *" elm ", TAILQ_ENTRY " NAME ");"
-.PP
.BI "void TAILQ_INSERT_BEFORE(struct TYPE *" listelm ", struct TYPE *" elm ","
.BI " TAILQ_ENTRY " NAME ");"
.PP
.BI "void TAILQ_INSERT_HEAD(TAILQ_HEAD *" head ", struct TYPE *" elm ","
.BI " TAILQ_ENTRY " NAME ");"
-.PP
.BI "void TAILQ_INSERT_TAIL(TAILQ_HEAD *" head ", struct TYPE *" elm ","
.BI " TAILQ_ENTRY " NAME ");"
.PP
.BI "struct TYPE *TAILQ_LAST(TAILQ_HEAD *" head ", HEADNAME);"
-.PP
.BI "struct TYPE *TAILQ_NEXT(struct TYPE *" elm ", TAILQ_ENTRY " NAME ");"
-.PP
.BI "struct TYPE *TAILQ_PREV(struct TYPE *" elm ", HEADNAME, TAILQ_ENTRY " NAME ");"
-.PP
-.BI "void TAILQ_REMOVE(TAILQ_HEAD *" head ", struct TYPE *" elm ", TAILQ_ENTRY " NAME ");"
+.BI "void TAILQ_REMOVE(TAILQ_HEAD *" head ", struct TYPE *" elm ,
+.BI " TAILQ_ENTRY " NAME ");"
.\" .PP
.\" .BI "void TAILQ_SWAP(TAILQ_HEAD *" head1 ", TAILQ_HEAD *" head2 ", TYPE, TAILQ_ENTRY " NAME ");"
.fi
.BI " const struct termios *" termios_p );
.PP
.BI "int tcsendbreak(int " fd ", int " duration );
-.PP
.BI "int tcdrain(int " fd );
-.PP
.BI "int tcflush(int " fd ", int " queue_selector );
-.PP
.BI "int tcflow(int " fd ", int " action );
.PP
.BI "void cfmakeraw(struct termios *" termios_p );
.B #include <time.h>
.PP
.BI "time_t timelocal(struct tm *" tm );
-.PP
.BI "time_t timegm(struct tm *" tm );
.PP
.fi
.BI "int ferror_unlocked(FILE *" stream );
.BI "int fileno_unlocked(FILE *" stream );
.BI "int fflush_unlocked(FILE *" stream );
+.PP
.BI "int fgetc_unlocked(FILE *" stream );
.BI "int fputc_unlocked(int " c ", FILE *" stream );
+.PP
.BI "size_t fread_unlocked(void *" ptr ", size_t " size ", size_t " n ,
.BI " FILE *" stream );
.BI "size_t fwrite_unlocked(const void *" ptr ", size_t " size ", size_t " n ,
.BI "wint_t getwc_unlocked(FILE *" stream );
.B "wint_t getwchar_unlocked(void);"
.BI "wint_t fgetwc_unlocked(FILE *" stream );
+.PP
.BI "wint_t fputwc_unlocked(wchar_t " wc ", FILE *" stream );
.BI "wint_t putwc_unlocked(wchar_t " wc ", FILE *" stream );
.BI "wint_t putwchar_unlocked(wchar_t " wc );
+.PP
.BI "wchar_t *fgetws_unlocked(wchar_t *" ws ", int " n ", FILE *" stream );
.BI "int fputws_unlocked(const wchar_t *" ws ", FILE *" stream );
.fi
.EX
.BI "typedef int " bool_t ;
.PP
-.BI "typedef bool_t (*" xdrproc_t ") (XDR *, void *,...);"
+.BI "typedef bool_t (*" xdrproc_t ")(XDR *, void *,...);"
.EE
.RE
.PP
.nf
.BI "void xdrrec_create(XDR *" xdrs ", unsigned int " sendsize ,
.BI " unsigned int " recvsize ", char *" handle ,
-.BI " int (*" readit ") (char *, char *, int),"
-.BI " int (*" writeit ") (char *, char *, int));"
+.BI " int (*" readit ")(char *, char *, int),"
+.BI " int (*" writeit ")(char *, char *, int));"
.fi
.IP
This routine initializes the XDR stream object pointed to by
.B groff \-Tascii \-man
.I file
\&...
-.PP
+.br
.B groff \-Tps \-man
.I file
\&...
int sigev_signo; /* Notification signal */
union sigval sigev_value;
/* Data passed with notification */
- void (*sigev_notify_function) (union sigval);
+ void (*sigev_notify_function)(union sigval);
/* Function used for thread
notification (SIGEV_THREAD) */
void *sigev_notify_attributes;