Man page - innetgr(3)

Packages contains this manual

Available languages:

en fr ja ru ro

Manual

setnetgrent

НАИМЕНОВАНИЕ
БИБЛИОТЕКА
ОБЗОР
ОПИСАНИЕ
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
ФАЙЛЫ
АТРИБУТЫ
ВЕРСИИ
СТАНДАРТЫ
ИСТОРИЯ
СМОТРИТЕ ТАКЖЕ
ПЕРЕВОД

НАИМЕНОВАНИЕ

setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - работа с элементами групп сетей

БИБЛИОТЕКА

Стандартная библиотека языка C ( libc , -lc )

ОБЗОР

#include <netdb.h>

int setnetgrent(const char * netgroup );
void endnetgrent(void);

int getnetgrent(char **restrict host ,
char **restrict
user , char **restrict domain );
int getnetgrent_r(char **restrict
host ,
char **restrict
user , char **restrict domain ,
char
buf [restrict . buflen ], size_t buflen );

int innetgr(const char * netgroup , const char * host ,
const char *
user , const char * domain );

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

setnetgrent (), endnetgrent (), getnetgrent (), getnetgrent_r (), innetgr ():
начиная с glibc 2.19:
_DEFAULT_SOURCE
в glibc 2.19 и старее:
_BSD_SOURCE || _SVID_SOURCE

ОПИСАНИЕ

Файл netgroup впервые появился в SunOS. База данных netgroup представляет собой список строк с тремя элементами ( hostname , username , domainname ) или с другими именами netgroup. Любой из элементов тройки может быть пустым, то есть совпадает с любым значением. Описываемые здесь функции предоставляют доступ к базам данных netgroup. В файле /etc/nsswitch.conf задаётся какая база данных будет использована при поиске.

Вызов setnetgrent () настраивает netgroup, которая будет использована при поиске в последующих вызовах getnetgrent (). Функция getnetgrent () выбирает следующий элемент netgroup и возвращает указатели в host , user , domain . Указатель null означает, что соответствующая запись совпадает с любой строкой. Значения указателей корректны до тех пор, пока не произойдёт других вызовов функций работы с netgroup. Чтобы избежать этой проблемы вы можете использовать функцию GNU getnetgrent_r (), которая хранит строки в переданной ей буфере. Чтобы освободить все выделенные буферы используйте endnetgrent ().

В большинстве случаев чаще всего проверяется присутствие тройки ( hostname , username , domainname ) в netgroup. Для этого можно использовать функцию innetgr () и не вызывать остальные три функции. Не забудьте, что указатель null — универсальный символ и совпадает с любой строкой. Функцию можно безопасно использовать в нитях.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении эти функции возвращают 1 и 0 при ошибке.

ФАЙЛЫ

/etc/netgroup
/etc/nsswitch.conf

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes (7).

Image grohtml-623969-1.png

В приведённой выше таблице netgrent в race:netgrent означает, что если в нескольких нитях программы одновременно используются функции setnetgrent (), getnetgrent_r (), innetgr (), getnetgrent () или endnetgrent (), то может возникнуть состязательность по данным.

ВЕРСИИ

В реализации BSD функция setnetgrent () возвращает void.

СТАНДАРТЫ

Отсутствуют.

ИСТОРИЯ

setnetgrent (), endnetgrent (), getnetgrent (), and innetgr () are available on most UNIX systems. getnetgrent_r () is not widely available on other systems.

СМОТРИТЕ ТАКЖЕ

sethostent (3), setprotoent (3), setservent (3)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Alexander Golubev <fatzer2@gmail.com>, Azamat Hackimov <azamat.hackimov@gmail.com>, Hotellook, Nikita <zxcvbnm3230@mail.ru>, Spiros Georgaras <sng@hellug.gr>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков .