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
указатель на мандатный уровень целостности пользователя ### functionfreemicgrent_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"