fuzz_printf and fuzz_conversation can be stubs.
This commit is contained in:
@@ -125,62 +125,13 @@ static int
|
|||||||
fuzz_conversation(int num_msgs, const struct sudo_conv_message msgs[],
|
fuzz_conversation(int num_msgs, const struct sudo_conv_message msgs[],
|
||||||
struct sudo_conv_reply replies[], struct sudo_conv_callback *callback)
|
struct sudo_conv_reply replies[], struct sudo_conv_callback *callback)
|
||||||
{
|
{
|
||||||
int n;
|
|
||||||
|
|
||||||
for (n = 0; n < num_msgs; n++) {
|
|
||||||
const struct sudo_conv_message *msg = &msgs[n];
|
|
||||||
FILE *fp = stdout;
|
|
||||||
|
|
||||||
switch (msg->msg_type & 0xff) {
|
|
||||||
case SUDO_CONV_PROMPT_ECHO_ON:
|
|
||||||
case SUDO_CONV_PROMPT_MASK:
|
|
||||||
case SUDO_CONV_PROMPT_ECHO_OFF:
|
|
||||||
/* input not supported */
|
|
||||||
return -1;
|
|
||||||
case SUDO_CONV_ERROR_MSG:
|
|
||||||
fp = stderr;
|
|
||||||
FALLTHROUGH;
|
|
||||||
case SUDO_CONV_INFO_MSG:
|
|
||||||
if (msg->msg != NULL) {
|
|
||||||
size_t len = strlen(msg->msg);
|
|
||||||
|
|
||||||
if (len == 0)
|
|
||||||
break;
|
|
||||||
|
|
||||||
if (fwrite(msg->msg, 1, len, fp) == 0 || fputc('\n', fp) == EOF)
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
fuzz_printf(int msg_type, const char *fmt, ...)
|
fuzz_printf(int msg_type, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
FILE *fp = stdout;
|
return 0;
|
||||||
va_list ap;
|
|
||||||
int len;
|
|
||||||
|
|
||||||
switch (msg_type & 0xff) {
|
|
||||||
case SUDO_CONV_ERROR_MSG:
|
|
||||||
fp = stderr;
|
|
||||||
FALLTHROUGH;
|
|
||||||
case SUDO_CONV_INFO_MSG:
|
|
||||||
va_start(ap, fmt);
|
|
||||||
len = vfprintf(fp, fmt, ap);
|
|
||||||
va_end(ap);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
len = -1;
|
|
||||||
errno = EINVAL;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
return len;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
Reference in New Issue
Block a user