getpass()

Запросить и прочитать пароль

Прототип:

#include <unistd.h>
char * getpass( const char *prompt );

Аргументы:

prompt
Строка, которую требуется отобразить для запроса пароля.

Библиотека:

libc

Описание:

Функция getpass() может использоваться для запроса пароля. Она открывает текущий терминал, выводит соответствующий prompt, подавляет вывод, считывает до 32 символов в статический буфер, и возобновляет вывод. Данная функция добавляет нулевой символ в конец строки, но игнорирует дополнительные символы и символ новой строки.

Возвращаемое значение:

Указатель на статический буфер.

Классификация:

Legacy Unix

Точка остановки потока
Да
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Нет

Предостережения:

Данная функция оставляет свой результат во внутреннем статическом буфере и возвращает указатель на него. Последующие вызовы getpass() изменяют содержимое этого же буфера. Вызывающий процесс должен обнулить пароль как можно скорее, чтобы пароль в открытом виде не оставался видимым в адресном пространстве процесса.

Тематические ссылки:

crypt()




Предыдущий раздел: Описание API системной библиотеки