Magellan Linux

Contents of /trunk/mkinitrd-magellan/busybox/libbb/ask_confirmation.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 532 - (show annotations) (download)
Sat Sep 1 22:45:15 2007 UTC (16 years, 9 months ago) by niro
File MIME type: text/plain
File size: 751 byte(s)
-import if magellan mkinitrd; it is a fork of redhats mkinitrd-5.0.8 with all magellan patches and features; deprecates magellan-src/mkinitrd

1 /* vi: set sw=4 ts=4: */
2 /*
3 * bb_ask_confirmation implementation for busybox
4 *
5 * Copyright (C) 2003 Manuel Novoa III <mjn3@codepoet.org>
6 *
7 * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
8 */
9
10 /* Read a line from stdin. If the first non-whitespace char is 'y' or 'Y',
11 * return 1. Otherwise return 0.
12 */
13
14 #include <stdio.h>
15 #include <ctype.h>
16 #include "libbb.h"
17
18 int bb_ask_confirmation(void)
19 {
20 int retval = 0;
21 int first = 1;
22 int c;
23
24 while (((c = getchar()) != EOF) && (c != '\n')) {
25 /* Make sure we get the actual function call for isspace,
26 * as speed is not critical here. */
27 if (first && !(isspace)(c)) {
28 --first;
29 if ((c == 'y') || (c == 'Y')) {
30 ++retval;
31 }
32 }
33 }
34
35 return retval;
36 }