include/parsec/mic_db.h#

Macros#

Type

Name

define

SECURITY “security”

Structures and Types Documentation#

struct mic_group#

Мандатный уровень целостности группы

Variables:

  • mic_t il мандатный уровень целостности

  • char * name название группы

typedef mic_han_t#

typedef struct __mic_han_t* mic_han_t;

struct mic_user#

Мандатный уровень целостности пользователя

Variables:

  • mic_t il мандатный уровень целостности

  • char * name имя пользователя

Functions Documentation#

function closemicdb_r#

Закрытие базы данных для пользователей. Функция аналогична вызову close() для файлов.

int closemicdb_r (
    mic_han_t han
)

Parameters:

  • han указатель на дескриптор базы данных для пользователей

Returns:

0 в случае успеха

function closemicgrdb_r#

Закрытие базы данных для группы. Функция аналогична вызову close() для файлов.

int closemicgrdb_r (
    mic_han_t han
)

Parameters:

  • han указатель на дескриптор базы данных для групп

Returns:

0 в случае успеха

function compose_mic#

Формирование текстового представления мандатного уровня целостности пользователя. Выделение памяти под буфер происходит в динамической памяти.

char * compose_mic (
    const struct mic_user *mu
)

Parameters:

  • mu указатель на мандатный уровень целостности пользователя

Returns:

указатель на буфер, содержащий текстовое представление, в случае успеха, иначе NULL

function endmicent#

Очистка служебных структур, используемые в процессе последовательного перебора записей базы данных для пользователей. Необходимо использовать в связке с функциями setmicent и endmicent. Аналогична endmicent_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для пользователей.

void endmicent (
    void
)

Returns:

0 в случае успеха

function endmicent_r#

Очистка служебных структур, используемые в процессе последовательного перебора записей базы данных для пользователей. Необходимо использовать в связке с функциями setmicent_r и getmicent_r.

int endmicent_r (
    mic_han_t han
)

Parameters:

  • han указатель на дескриптор базы данных для пользователей

Returns:

0 в случае успеха

function endmicgrent#

Очистка служебных структур, используемые в процессе последовательного перебора записей базы данных для групп. Необходимо использовать в связке с функциями setmicgrent и getmicgrent. Аналогична endmicgrent_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для групп.

void endmicgrent (
    void
)

Returns:

0 в случае успеха

function endmicgrent_r#

Очистка служебных структур, используемые в процессе последовательного перебора записей базы данных для групп. Необходимо использовать в связке с функциями setmicgrent_r и getmicgrent_r.

int endmicgrent_r (
    mic_han_t han
)

Parameters:

  • han указатель на дескриптор базы данных для групп

Returns:

0 в случае успеха

function fgetmicent#

Cчитывание записи из локального конфигаруционного файла для пользователей по текущему указателю и перевод указателя на следующую запись. Функция существует ради совместимости с более ранними версиями библиотеки, а также ради возможности вести локальные, не системные списки пользователей. Память для мандатного уровня целостности выделяется в динамической области памяти. Аналогична fgetmicent_r.

struct mic_user * fgetmicent (
    FILE *f
)

Parameters:

  • fd указатель на дескриптор локального конфигаруционного файла

Returns:

указатель на мандатный уровень целостности пользователя или NULL в случае достижения конца базы данных или ошибки

function fgetmicent_r#

Cчитывание записи из локального конфигаруционного файла для пользователей по текущему указателю и перевод указателя на следующую запись. Функция существует ради совместимости с более ранними версиями библиотеки, а также ради возможности вести локальные, не системные списки пользователей. Память для мандатного уровня целостности выделяется в динамической области памяти.

struct mic_user * fgetmicent_r (
    FILE *fd
)

Parameters:

  • fd указатель на дескриптор локального конфигаруционного файла

Returns:

указатель на мандатный уровень целостности пользователя или NULL в случае достижения конца базы данных или ошибки

function fgetmicgrent#

Cчитывание записи из локального конфигаруционного файла для групп по текущему указателю и перевод указателя на следующую запись. Функция существует ради совместимости с более ранними версиями библиотеки, а также ради возможности вести локальные, не системные списки групп. Память для мандатного уровня целостности выделяется в динамической области памяти. Аналогична fgetmicgrent_r.

struct mic_group * fgetmicgrent (
    FILE *f
)

Parameters:

  • fd указатель на дескриптор локального конфигаруционного файла

Returns:

указатель на мандатный уровень целостности группы или NULL в случае достижения конца базы данных или ошибки

function fgetmicgrent_r#

Cчитывание записи из локального конфигаруционного файла для групп по текущему указателю и перевод указателя на следующую запись. Функция существует ради совместимости с более ранними версиями библиотеки, а также ради возможности вести локальные, не системные списки групп. Память для мандатного уровня целостности выделяется в динамической области памяти.

struct mic_group * fgetmicgrent_r (
    FILE *fd
)

Parameters:

  • fd указатель на дескриптор локального конфигаруционного файла

Returns:

указатель на мандатный уровень целостности группы или NULL в случае достижения конца базы данных или ошибки

function fputmicent#

Добавление записи локального конфигаруционного файла для пользователей, указанного в поле name структуры мандатного уровня целостности пользователя. Функция существует ради совместимости с более ранними версиями библиотеки, а также ради возможности вести локальные, не системные списки пользователей. Аналогична fputmicent_r.

void fputmicent (
    FILE *f,
    const struct mic_user *mu
)

Parameters:

  • fd указатель на дескриптор локального конфигаруционного файла

  • mu указатель на мандатный уровень целостности пользователя

Returns:

количество записанных байт в случае успеха

function fputmicent_r#

Добавление записи локального конфигаруционного файла для пользователей, указанного в поле name структуры мандатного уровня целостности пользователя. Функция существует ради совместимости с более ранними версиями библиотеки, а также ради возможности вести локальные, не системные списки пользователей.

int fputmicent_r (
    FILE *fd,
    const struct mic_user *mu
)

Parameters:

  • fd указатель на дескриптор локального конфигаруционного файла

  • mu указатель на мандатный уровень целостности пользователя

Returns:

количество записанных байт в случае успеха

function fputmicgrent#

Добавление записи локального конфигаруционного файла для группы, указанного в поле name структуры мандатного уровня целостности группы. Функция существует ради совместимости с более ранними версиями библиотеки, а также ради возможности вести локальные, не системные списки групп. Аналогична fputmicgrent_r.

void fputmicgrent (
    FILE *f,
    const struct mic_group *mg
)

Parameters:

  • fd указатель на дескриптор локального конфигаруционного файла

  • mg указатель на мандатный уровень целостности группы

Returns:

количество записанных байт в случае успеха

function fputmicgrent_r#

Добавление записи локального конфигаруционного файла для группы, указанного в поле name структуры мандатного уровня целостности группы. Функция существует ради совместимости с более ранними версиями библиотеки, а также ради возможности вести локальные, не системные списки групп.

int fputmicgrent_r (
    FILE *fd,
    const struct mic_group *mg
)

Parameters:

  • fd указатель на дескриптор локального конфигаруционного файла

  • mg указатель на мандатный уровень целостности группы

Returns:

количество записанных байт в случае успеха

function freemicent_r#

Освобождение памяти, выделенной под мандатный уровень целостности пользователя.

void freemicent_r (
    struct mic_user *res
)

Parameters:

  • res указатель на мандатный уровень целостности пользователя ### function freemicgrent_r

Освобождение памяти, выделенной под мандатный уровень целостности группы.

void freemicgrent_r (
    struct mic_group *res
)

Parameters:

  • res указатель на мандатный уровень целостности группы

function getmicent#

Cчитывание записи из базы данных для пользователей по текущему указателю и перевод указателя на следующую запись. Необходимо использовать в связке с функциями setmicent и endmicent. Память для мандатного уровня целостности выделяется в динамической области памяти. Аналогична getmicent_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для пользователей.

struct mic_user * getmicent (
    void
)

Returns:

указатель на мандатный уровень целостности пользователя или NULL в случае достижения конца базы данных или ошибки

function getmicent_r#

Cчитывание записи из базы данных для пользователей по текущему указателю и перевод указателя на следующую запись. Необходимо использовать в связке с функциями setmicent_r и endmicent_r. Память для мандатного уровня целостности выделяется в динамической области памяти.

struct mic_user * getmicent_r (
    mic_han_t han
)

Parameters:

  • han указатель на дескриптор базы данных для пользователей

Returns:

указатель на мандатный уровень целостности пользователя или NULL в случае достижения конца базы данных или ошибки

function getmicgrent#

Cчитывание записи из базы данных для групп по текущему указателю и перевод указателя на следующую запись. Необходимо использовать в связке с функциями setmicgrent и endmicgrent. Память для мандатного уровня целостности выделяется в динамической области памяти. Аналогична getmicgrent_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для групп.

struct mic_group * getmicgrent (
    void
)

Returns:

указатель на мандатный уровень целостности группы или NULL в случае достижения конца базы данных или ошибки

function getmicgrent_r#

Cчитывание записи из базы данных для групп по текущему указателю и перевод указателя на следующую запись. Необходимо использовать в связке с функциями setmicgrent_r и endmicgrent_r. Память для мандатного уровня целостности выделяется в динамической области памяти.

struct mic_group * getmicgrent_r (
    mic_han_t han
)

Parameters:

  • han указатель на дескриптор базы данных для групп

Returns:

указатель на мандатный уровень целостности группы или NULL в случае достижения конца базы данных или ошибки

function getmicgrgid#

Cчитывание записи из базы данных для групп по идентификатору группы. Память для мандатного уровня целостности выделяется в динамической области памяти. Аналогична getmicgrgid_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для групп.

struct mic_group * getmicgrgid (
    gid_t gid
)

Parameters:

  • gid идентификатору группы

Returns:

указатель на мандатный уровень целостности группы в случае успеха, иначе NULL

function getmicgrgid_r#

Cчитывание записи из базы данных для групп по идентификатору группы. Память для мандатного уровня целостности выделяется в динамической области памяти.

struct mic_group * getmicgrgid_r (
    mic_han_t han,
    gid_t gid
)

Parameters:

  • han указатель на дескриптор базы данных для групп

  • gid идентификатору группы

Returns:

указатель на мандатный уровень целостности группы в случае успеха, иначе NULL

function getmicgrnam#

Cчитывание записи из базы данных для групп по названию группы. Память для мандатного уровня целостности выделяется в динамической области памяти. Аналогична getmicgrnam_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для групп.

struct mic_group * getmicgrnam (
    const char *name
)

Parameters:

  • name указатель на буффер, содержащий название группы

Returns:

указатель на мандатный уровень целостности группы в случае успеха, иначе NULL

function getmicgrnam_r#

Cчитывание записи из базы данных для групп по названию группы. Память для мандатного уровня целостности выделяется в динамической области памяти.

struct mic_group * getmicgrnam_r (
    mic_han_t han,
    const char *name
)

Parameters:

  • han указатель на дескриптор базы данных для групп

  • name указатель на буффер, содержащий название группы

Returns:

указатель на мандатный уровень целостности группы в случае успеха, иначе NULL

function getmicnam#

Cчитывание записи из базы данных для пользователей по имени пользователя. Память для мандатного уровня целостности выделяется в динамической области памяти. Аналогична getmicnam_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для пользователей.

struct mic_user * getmicnam (
    const char *name
)

Parameters:

  • name указатель на буффер, содержащий имя пользователя

Returns:

указатель на мандатный уровень целостности пользователя в случае успеха, иначе NULL

function getmicnam_r#

Cчитывание записи из базы данных для пользователей по имени пользователя. Память для мандатного уровня целостности выделяется в динамической области памяти.

struct mic_user * getmicnam_r (
    mic_han_t han,
    const char *name
)

Parameters:

  • han указатель на дескриптор базы данных для пользователей

  • name указатель на буффер, содержащий имя пользователя

Returns:

указатель на мандатный уровень целостности пользователя в случае успеха, иначе NULL

function getmicuid#

Cчитывание записи из базы данных для пользователей по идентификатору пользователя. Память для мандатного уровня целостности выделяется в динамической области памяти. Аналогична getmicuid_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для пользователей.

struct mic_user * getmicuid (
    uid_t uid
)

Parameters:

  • uid идентификатору пользователя

Returns:

указатель на мандатный уровень целостности пользователя в случае успеха, иначе NULL

function getmicuid_r#

Cчитывание записи из базы данных для пользователей по идентификатору пользователя. Память для мандатного уровня целостности выделяется в динамической области памяти.

struct mic_user * getmicuid_r (
    mic_han_t han,
    uid_t uid
)

Parameters:

  • han указатель на дескриптор базы данных для пользователей

  • uid идентификатору пользователя

Returns:

указатель на мандатный уровень целостности пользователя в случае успеха, иначе NULL

function openmicdb_r#

Открытие и создание дескриптора mic_han_t базы данных для пользователей. Функция аналогична вызову open() для файлов.

mic_han_t openmicdb_r (
    void
)

Returns:

указатель на дескриптор базы данных для групп в случае успеха, иначе NULL

function openmicgrdb_r#

Открытие и создание дескриптора mic_han_t базы данных для групп. Функция аналогична вызову open() для файлов.

mic_han_t openmicgrdb_r (
    void
)

Returns:

указатель на дескриптор базы данных для групп в случае успеха, иначе NULL

function parse_mic#

Получение мандатного уровня целостности пользователя из текстового представления. Из буфера извлекается одна (первая) запись мандатного уровня целостности пользователя. Выделение памяти под имя пользователя происходит в динамической памяти.

struct mic_user * parse_mic (
    const char *buff,
    struct mic_user *mu
)

Parameters:

  • buff указатель на буфер, содержащий текстовое представление мандатного уровня целостности пользователя

  • mu указатель на мандатный уровень целостности пользователя, куда будет записан результат

Returns:

переданный указатель на мандатный уровень целостности пользователя, в случае успеха, иначе NULL

function putmicent#

Добавление/модифицирование записи базы данных для пользователей, указанного в поле name структуры мандатного уровня целостности пользователя. Аналогична putmicent_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для пользователей.

int putmicent (
    const struct mic_user *mu
)

Parameters:

  • mu указатель на мандатный уровень целостности пользователя

Returns:

количество записанных байт в случае успеха

function putmicent_r#

Добавление/модифицирование записи базы данных для пользователей, указанного в поле name структуры мандатного уровня целостности пользователя.

int putmicent_r (
    mic_han_t han,
    const struct mic_user *mu
)

Parameters:

  • han указатель на дескриптор базы данных для пользователей

  • mu указатель на мандатный уровень целостности пользователя

Returns:

количество записанных байт в случае успеха

function putmicgrent#

Добавление/модифицирование записи базы данных для группы, указанной в поле name структуры мандатного уровня целостности группы. Аналогична putmicgrent_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для групп.

int putmicgrent (
    const struct mic_group *mg
)

Parameters:

  • mg указатель на мандатный уровень целостности группы

Returns:

количество записанных байт в случае успеха

function putmicgrent_r#

Добавление/модифицирование записи базы данных для группы, указанной в поле name структуры мандатного уровня целостности группы.

int putmicgrent_r (
    mic_han_t han,
    const struct mic_group *mg
)

Parameters:

  • han указатель на дескриптор базы данных для групп

  • mg указатель на мандатный уровень целостности группы

Returns:

количество записанных байт в случае успеха

function rmmicgrnam#

Удаление записи, содержащую мандатный уровень целостности, из базы данных для групп по названию группы. Аналогична rmmicgrnam_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для групп.

int rmmicgrnam (
    const char *name
)

Parameters:

  • name указатель на буффер, содержащий название группы

Returns:

0 в случае успеха

function rmmicgrnam_r#

Удаление записи, содержащую мандатный уровень целостности, из базы данных для групп по названию группы.

int rmmicgrnam_r (
    mic_han_t han,
    const char *name
)

Parameters:

  • han указатель на дескриптор базы данных для групп

  • name указатель на буффер, содержащий название группы

Returns:

0 в случае успеха

function rmmicnam#

Удаление записи, содержащую мандатный уровень целостности, из базы данных для пользователей по имени пользователя. Аналогична rmmicnam_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для пользователей.

int rmmicnam (
    const char *name
)

Parameters:

  • name указатель на буффер, содержащий имя пользователя

Returns:

0 в случае успеха

function rmmicnam_r#

Удаление записи, содержащую мандатный уровень целостности, из базы данных для пользователей по имени пользователя.

int rmmicnam_r (
    mic_han_t han,
    const char *name
)

Parameters:

  • han указатель на дескриптор базы данных для пользователей

  • name указатель на буффер, содержащий имя пользователя

Returns:

0 в случае успеха

function setmicent#

Cоздание необходимых служебных структур и установка текущего указателя в начало базы данных для пользователей. Необходимо использовать в связке с функциями getmicent и endmicent. Аналогична setmicent_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для пользователей.

int setmicent (
    void
)

Returns:

0 в случае успеха

function setmicent_r#

Cоздание необходимых служебных структур и установка текущего указателя в начало базы данных для пользователей. Необходимо использовать в связке с функциями getmicent_r и endmicent_r.

int setmicent_r (
    mic_han_t han
)

Parameters:

  • han указатель на дескриптор базы данных для пользователей

Returns:

0 в случае успеха

function setmicgrent#

Cоздание необходимых служебных структур и установка текущего указателя в начало базы данных для групп. Необходимо использовать в связке с функциями getmicgrent и endmicgrent. Аналогична setmicgrent_r с тем отличием, что все действия происходят через общий глобальный дескриптор базы данных для групп.

int setmicgrent (
    void
)

Returns:

0 в случае успеха

function setmicgrent_r#

Cоздание необходимых служебных структур и установка текущего указателя в начало базы данных для групп. Необходимо использовать в связке с функциями getmicgrent_r и endmicgrent_r.

int setmicgrent_r (
    mic_han_t han
)

Parameters:

  • han указатель на дескриптор базы данных для групп

Returns:

0 в случае успеха

Macros Documentation#

define SECURITY#

#define SECURITY "security"