READCONS(3)READCONS(3)

NAME
readcons – prompt console for input

SYNOPSIS
#include <u.h>
#include <libc.h>
char *readcons(char *prompt, char *def, int secret)

DESCRIPTION
Readcons prompts at the console for input. It returns a NUL-terminated buffer containing the input without a final newline. The buffer should be freed (and perhaps cleared first) when no longer needed.
If the user types an empty string (just a newline) and def is non-zero, then a copy of def is returned instead of the empty string.
If secret is non-zero, the input is not echoed to the screen.

EXAMPLE
A stripped-down version of netkey (see passwd(1)):
pass = readcons("password", nil, 1);
passtokey(key, pass);
memset(pass, 0, strlen(pass));
free(pass);
for(;;){
chal = readcons("challenge", nil, 0);
sprint(buf, "%d", strtol(chal, 0, 10));
free(chal);
netcrypt(key, buf);
print("response: %s0, buf);
}

SOURCE
/home/opt/plan9port/src/lib9/readcons.c

Space Glenda