Man page - getpw(3)

Packages contains this manual

Available languages:

en fr es pl ja ru ro de

Manual

getpw

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

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

getpw - восстанавливает строку пароля

БИБЛИОТЕКА

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

ОБЗОР

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

[[deprecated]] int getpw(uid_t uid , char * buf );

ОПИСАНИЕ

Функция getpw () заново создаёт в буфере строку пароля для пользователя с ID uid в буфере buf . Возвращаемый буфер содержит строку в формате

name:passwd:uid:gid:gecos:dir:shell

Структура passwd определена в <pwd.h> таким образом:

struct passwd {
char *pw_name; /* имя пользователя */
char *pw_passwd; /* пароль пользователя */
uid_t pw_uid; /* идентификатор пользователя */
gid_t pw_gid; /* идентификатор группы */
char *pw_gecos; /* информация о пользователе */
char *pw_dir; /* домашний каталог */
char *pw_shell; /* программная оболочка */
};

Подробней о полях этой структуры смотрите в passwd (5).

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

При успешном выполнении getpw () возвращается 0; при ошибке возвращается -1, а в errno содержится код ошибки.

Если uid не найден в базе данных паролей, то getpw () возвращает -1, присваивает errno значение 0 и buf не изменяется.

ОШИБКИ

0 или ENOENT

Отсутствует пользователь с соответствующим uid .

EINVAL

Значение buf равно NULL.

ENOMEM

Недостаточно памяти для структуры passwd .

ФАЙЛЫ

/etc/passwd

файл, содержащий базу паролей

АТРИБУТЫ

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

Image grohtml-623588-1.png

СТАНДАРТЫ

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

ИСТОРИЯ

SVr2.

ОШИБКИ

Функция getpw () является в каком-то смысле опасной, так как может переполнить предоставляемый ей буфер buf . Она заменена на getpwuid (3).

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

endpwent (3), fgetpwent (3), getpwent (3), getpwnam (3), getpwuid (3), putpwent (3), setpwent (3), passwd (5)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, 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 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

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