/* | |
util.c - helper functions | |
Copyright (C) 2006 Jean Delvare <khali@linux-fr.org> | |
This program is free software; you can redistribute it and/or modify | |
it under the terms of the GNU General Public License as published by | |
the Free Software Foundation; either version 2 of the License, or | |
(at your option) any later version. | |
*/ | |
#include <stdio.h> | |
#include "util.h" | |
/* Return 1 if we should continue, 0 if we should abort */ | |
int user_ack(int def) | |
{ | |
char s[2]; | |
int ret; | |
if (!fgets(s, 2, stdin)) | |
return 0; /* Nack by default */ | |
switch (s[0]) { | |
case 'y': | |
case 'Y': | |
ret = 1; | |
break; | |
case 'n': | |
case 'N': | |
ret = 0; | |
break; | |
default: | |
ret = def; | |
} | |
/* Flush extra characters */ | |
while (s[0] != '\n') { | |
int c = fgetc(stdin); | |
if (c == EOF) { | |
ret = 0; | |
break; | |
} | |
s[0] = c; | |
} | |
return ret; | |
} | |