Главная » (2) Системные вызовы ядра (функции языка Си)





ИМЯ


acct - включает или выключает учёт процессов



ОБЗОР


#include <unistd.h>

int acct(const char *filename);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

acct():
начиная с glibc 2.21:
_DEFAULT_SOURCE
в glibc 2.19 и 2.20:
_DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
до glibc 2.19, включительно:
_BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)



ОПИСАНИЕ


Системный вызов acct() включает или выключает учёт процессов. Если при вызове, в
качестве аргумента, указывается имя существующего файла, происходит включение
учёта, и при завершении процесса, в файл filename добавляются записи ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 452 | Добавил: Администратор | Дата: 17.11.2017 | Комментарии (0)





ИМЯ


access, faccessat - проверить права доступа пользователя к файлу



ОБЗОР


#include <unistd.h>

int access(const char *pathname, int mode);

#include <fcntl.h> /* определения констант of AT_* */
#include <unistd.h>

int faccessat(int dirfd, const char *pathname, int mode, int flags);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

faccessat():
Начиная с glibc 2.10:
_POSIX_C_SOURCE >= 200809L
До glibc 2.10:
_ATFILE_SOURCE



ОПИСАНИЕ


access проверяет, имеет ли вызвавший процесс права доступа к файлу pathname. Если
pathname является символьной ссылкой, то проверяются права доступа к файлу, на
ко ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 909 | Добавил: Администратор | Дата: 17.11.2017 | Комментарии (0)





ИМЯ


accept, accept4 - принять соединение на сокете



ОБЗОР


#include <sys/types.h> /* См. ЗАМЕЧАНИЯ */
#include <sys/socket.h>

int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);

#define _GNU_SOURCE /* Смотрите feature_test_macros(7) */
#include <sys/socket.h>

int accept4(int sockfd, struct sockaddr *addr,
socklen_t *addrlen, int flags);



ОПИСАНИЕ


Системный вызов accept() используется с сокетами, ориентированными на установление
соединения (SOCK_STREAM, SOCK_SEQPACKET). Она извлекает первый запрос на
соединение из очереди ожидающих соединений прослушивающего сокета, sockfd, создаёт
новый подключенный сокет и и возвращает новый файловый деск ... Читать дальше »

Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 433 | Добавил: Администратор | Дата: 17.11.2017 | Комментарии (0)

НАЗВАНИЕ
chroot - изменить корневой каталог
ОБЗОР
#include

int chroot(const char *path);
ОПИСАНИЕ
chroot изменяет корневой каталог на тот, что задан аргументом path. Этот каталог будет использоваться для имен файлов, начинающихся со /. Корневой каталог наследуется всеми потомками текущего процесса.

Только суперпользователь может изменять корневой каталог.

Заметьте, что этот системный вызов не изменяет текущий рабочий каталог, поэтому . может находиться вне дерева каталогов, начинающегося со /. В частности, суперпользователь может выбраться из-под chroot тюрьмы с помощью mkdir foo; chroot foo; cd ...
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
В случае успеха возвращается ноль. При ошибке возвращается -1, а errno устанавливается должным образом.


ОШИБКИ

В зависимости от файловой системы могут появляться другие ошибки. Стандартные ошибки таковы:

EPERM
Фактический UID не равен нулю.
EFAULT
path указывает за пр ... Читать дальше »
Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 498 | Добавил: Администратор | Дата: 15.11.2017 | Комментарии (0)

ИМЯ
link - создать новое имя файла
ОБЗОР
#include

int link(const char *oldpath, const char *newpath);
ОПИСАНИЕ
link создает новую ссылку (также известную как "жесткая" ссылка) на существующий файл.

Если newpath существует, он не будет перезаписан.

Это новое имя может использоваться точно так же, как и старое, для любых операций; оба имени ссылаются на один и тот же файл (то есть имеют те же права доступа и владельца) и невозможно сказать, какое имя было "настоящим".


ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
В случае успеха возвращается ноль. При ошибке возвращается -1, а errno устанавливается должным образом.


ОШИБКИ

EXDEV
oldpath и newpath находятся на разных файловых системах.
EPERM
Файловая система, содержащая oldpath и newpath, не поддерживает жесткие ссылки.
EFAULT
oldpath или newpath указывают за пределы доступного адресного пространства.
EACCES
Запись в каталог, содержащий new ... Читать дальше »
Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 591 | Добавил: Администратор | Дата: 15.11.2017 | Комментарии (0)

НАЗВАНИЕ
mknod - создает специальный или обычный файл
СИНТАКСИС

#include
#include
#include
#include

int mknod(const char *pathname, mode_t mode, dev_t dev);


ОПИСАНИЕ
Системный вызов mknod создат запись inode в файловой системе (обычный файл, файл устройства или именованый канал) с именем pathname, с атрибутами, определяемыми параметрами mode и dev.

Параметр mode задает как права доступа, так и тип создаваемой записи. В этом параметре содержится битовая комбинация (используя побитовое логическое сложение OR) одного из нижеперечисленных типов файлов и прав доступа для нового узла. Права доступа изменяются, при этом значение umask процесса используется обычным способом: права доступа становятся равны (mode & ~umask). Тип файла должен быть S_IFREG, S_IFCHR, S_IFBLK, S_IFIFO or S_IFSOCK для определения обычного файла (он будет создан пустым), особого символьного файла, особого блочного файла ... Читать дальше »
Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 468 | Добавил: Администратор | Дата: 15.11.2017 | Комментарии (0)

НАЗВАНИЕ
rmdir - удаляет каталог
ИСПОЛЬЗОВАНИЕ
#include

int rmdir(const char *pathname);
ОПИСАНИЕ
rmdir удаляет каталог, который должен быть пустым.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
В случае успеха возвращается ноль. При ошибке возвращается -1, а errno устанавливается должным образом.


ОШИБКИ

EPERM
Файловая система, содержащая pathname, не поддерживает удаление каталогов.
EFAULT
pathname указывает за пределы доступного адресного пространства.
EACCES
Доступ на запись в каталоге, содержащем pathname, не разрешен для текущего эффективного идентификатора пользователя, или же один из каталогов в pathname не разрешает поиск (выполнение).
EPERM
В правах доступа к каталогу, содержащему pathname, включен бит "липкости" (S_ISVTX), а эффективный идентификатор пользователя не совпадает ни с владельцем удаляемого файла, ни с владельцем каталога, который его содержит, или же pathname является каталогом.
E ... Читать дальше »
Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 456 | Добавил: Администратор | Дата: 13.11.2017 | Комментарии (0)

« 1 2 ... 57 58 59 60 »