libc/winsup/cygwin/posix.sgml

99 lines
3.1 KiB
Plaintext

<sect1 id="std-posix">
<title>Compatibility with POSIX.1</title>
<para>The following functions are compatible with POSIX.1:</para>
<sect2><title>Process Primitives (Section 3) </title><para>
fork, execl, execle, execlp, execv, execve, execvp, wait, waitpid,
_exit, kill, sigemptyset, sigfillset, sigaddset, sigdelset,
sigismember, sigaction, pthread_sigmask, sigprocmask, sigpending,
sigsuspend, alarm, pause, sleep, pthread_kill, pthread_sigmask
</para></sect2>
<sect2><title>Process Environment (Section 4) </title><para>
getpid, getppid, getuid, geteuid, getgid, getegid, setuid, setgid,
getgroups, getlogin, getpgrp, setsid, setpgid, uname, time, times,
getenv, ctermid, ttyname, isatty, sysconf
</para></sect2>
<sect2><title>Files and Directories (Section 5) </title><para>
opendir, readdir, rewinddir, closedir, chdir, getcwd, open, creat,
umask, link, mkdir, unlink, rmdir, rename, stat, fstat, access, chmod,
fchmod, chown, utime, ftruncate, pathconf, fpathconf
</para></sect2>
<sect2><title>Input and Output Primitives (Section 6) </title><para>
pipe, dup, dup2, close, read, write, fcntl, lseek, fsync
</para></sect2>
<sect2><title>Device- and Class-Specific Functions (Section 7) </title><para>
cfgetispeed, cfgetospeed, cfsetispeed, cfsetospeed, tcdrain, tcflow,
tcflush, tcgetattr, tcgetpgrp, tcsendbreak, tcsetattr, tcsetpgrp
</para></sect2>
<sect2><title>Language-Specific Services for the C Programming Language (Section 8) </title><para>
abort, exit, fclose, fdopen, fflush, fgetc, fgets, fileno, fopen,
fprintf, fputc, fputs, fread, freopen, fscanf, fseek, ftell, fwrite,
getc, getchar, gets, perror, printf, putc, putchar, puts, remove,
rewind, scanf, setlocale, siglongjmp, sigsetjmp, tmpfile, tmpnam,
tzset
</para></sect2>
<sect2><title>System Databases (Section 9) </title><para>
getgrgid, getgrnam, getpwnam, getpwuid
</para></sect2>
<sect2><title>Synchronization (Section 11) </title><para>
sem_init, sem_destroy, sem_wait, sem_trywait, sem_post,
pthread_mutex_init, pthread_mutex_destroy, pthread_mutex_lock,
pthread_mutex_trylock, pthread_mutex_unlock
</para></sect2>
<sect2><title>Memory Management (Section 12) </title><para>
mmap, mprotect, msync, munmap
</para></sect2>
<sect2><title>Thread Management (Section 16) </title><para>
pthread_attr_init, pthread_attr_destroy, pthread_attr_setstacksize,
pthread_attr_getstacksize, pthread_create, pthread_exit, pthread_self,
pthread_equal
</para></sect2>
<sect2><title>Thread-Specific Data Functions (Section 17) </title><para>
pthread_key_create, pthread_setspecific, pthread_getspecific,
pthread_key_delete
</para></sect2>
<sect2><title>Implementation Details</title>
<para><function>setuid</function> and <function>setgid</function>
always return ENOSYS.</para>
<para><function>link</function> will copy the file if it can't
implement a true symbolic link. Currently, symbolic links work, if at
all, only under Windows NT.</para>
<para><function>chown</function> always returns zero.</para>
<para><function>fcntl</function> doesn't support F_GETLK - it returns
-1 and sets errno to ENOSYS.</para>
<para><function>lseek</function> only works properly on binary
files.</para>
</sect2>
</sect1>