Changeset 4256

Show
Ignore:
Timestamp:
12/09/06 20:20:00 (6 years ago)
Author:
khali
Message:

prog/dump/*: More robust user input handling.

Location:
lm-sensors/trunk
Files:
2 added
7 modified

Legend:

Unmodified
Added
Removed
  • lm-sensors/trunk/CHANGES

    r4252 r4256  
    1919  Program i2cdetect: Make the output clearer 
    2020  Program py-smbus: New! Python i2c-dev bindings (prog/py-smbus) 
     21  Programs dump/*: More robust handling of user inputs 
    2122  Program sensord: Add pc87247 support (fans only) 
    2223                   Add vt1211 support (#2150) 
     
    3334                          Add Intel ICH9 detection 
    3435                          Add Maxim MAX6648/MAX6692 detection 
     36 
    3537 
    36382.10.1 (20060924) 
  • lm-sensors/trunk/prog/dump/Module.mk

    r3108 r4256  
    3131                   $(MODULE_DIR)/i2cget 
    3232PROGDUMPSOURCES := $(MODULE_DIR)/i2cdump.c $(MODULE_DIR)/i2cset.c \ 
    33                    $(MODULE_DIR)/i2cget.c $(MODULE_DIR)/i2cbusses.c 
     33                   $(MODULE_DIR)/i2cget.c $(MODULE_DIR)/i2cbusses.c \ 
     34                   $(MODULE_DIR)/util.c 
    3435PROGDUMPBININSTALL := $(MODULE_DIR)/i2cdump $(MODULE_DIR)/i2cset \ 
    3536                      $(MODULE_DIR)/i2cget 
     
    5455user :: all-prog-dump 
    5556 
    56 $(MODULE_DIR)/i2cdump: $(MODULE_DIR)/i2cdump.ro $(MODULE_DIR)/i2cbusses.ro 
     57$(MODULE_DIR)/i2cdump: $(MODULE_DIR)/i2cdump.ro $(MODULE_DIR)/i2cbusses.ro $(MODULE_DIR)/util.ro 
    5758        $(CC) $(EXLDFLAGS) -o $@ $^ 
    5859 
    59 $(MODULE_DIR)/i2cset: $(MODULE_DIR)/i2cset.ro $(MODULE_DIR)/i2cbusses.ro 
     60$(MODULE_DIR)/i2cset: $(MODULE_DIR)/i2cset.ro $(MODULE_DIR)/i2cbusses.ro $(MODULE_DIR)/util.ro 
    6061        $(CC) $(EXLDFLAGS) -o $@ $^ 
    6162 
    62 $(MODULE_DIR)/i2cget: $(MODULE_DIR)/i2cget.ro $(MODULE_DIR)/i2cbusses.ro 
     63$(MODULE_DIR)/i2cget: $(MODULE_DIR)/i2cget.ro $(MODULE_DIR)/i2cbusses.ro $(MODULE_DIR)/util.ro 
    6364        $(CC) $(EXLDFLAGS) -o $@ $^ 
    6465 
    65 $(MODULE_DIR)/isadump: $(MODULE_DIR)/isadump.ro $(MODULE_DIR)/superio.ro 
     66$(MODULE_DIR)/isadump: $(MODULE_DIR)/isadump.ro $(MODULE_DIR)/superio.ro $(MODULE_DIR)/util.ro 
     67        $(CC) $(EXLDFLAGS) -o $@ $^ 
     68 
     69$(MODULE_DIR)/isaset: $(MODULE_DIR)/isaset.ro $(MODULE_DIR)/util.ro 
    6670        $(CC) $(EXLDFLAGS) -o $@ $^ 
    6771 
  • lm-sensors/trunk/prog/dump/i2cdump.c

    r4230 r4256  
    2525#include <stdlib.h> 
    2626#include <unistd.h> 
     27#include "util.h" 
    2728#include "i2cbusses.h" 
    2829#include "i2c-dev.h" 
     
    255256 
    256257        if (!yes) { 
    257                 char s[2]; 
    258  
    259258                fprintf(stderr, "WARNING! This program can confuse your I2C " 
    260259                        "bus, cause data loss and worse!\n"); 
     
    282281                fprintf(stderr, "Continue? [Y/n] "); 
    283282                fflush(stderr); 
    284                 if (!fgets(s, 2, stdin) 
    285                  || (s[0] != '\n' && s[0] != 'y' && s[0] != 'Y')) { 
     283                if (!user_ack(1)) { 
    286284                        fprintf(stderr, "Aborting on user request.\n"); 
    287285                        exit(0); 
  • lm-sensors/trunk/prog/dump/i2cget.c

    r4230 r4256  
    2828#include <stdlib.h> 
    2929#include <unistd.h> 
     30#include "util.h" 
    3031#include "i2cbusses.h" 
    3132#include "i2c-dev.h" 
     
    117118int confirm(const char *filename, int address, int size, int daddress, int pec) 
    118119{ 
    119         char s[2]; 
    120120        int dont = 0; 
    121121 
     
    157157        fprintf(stderr, "Continue? [%s] ", dont ? "y/N" : "Y/n"); 
    158158        fflush(stderr); 
    159         if (!fgets(s, 2, stdin) 
    160          || ((s[0] != '\n' || dont) && s[0] != 'y' && s[0] != 'Y')) { 
     159        if (!user_ack(!dont)) { 
    161160                fprintf(stderr, "Aborting on user request.\n"); 
    162161                return 0; 
  • lm-sensors/trunk/prog/dump/i2cset.c

    r4230 r4256  
    2626#include <unistd.h> 
    2727#include "i2cbusses.h" 
     28#include "util.h" 
    2829#include "i2c-dev.h" 
    2930#include "version.h" 
     
    169170 
    170171        if (!yes) { 
    171                 char s[2]; 
    172172                int dont = 0; 
    173173 
     
    193193                fprintf(stderr, "Continue? [%s] ", dont ? "y/N" : "Y/n"); 
    194194                fflush(stderr); 
    195                 if (!fgets(s, 2, stdin) 
    196                  || ((s[0] != '\n' || dont) && s[0] != 'y' && s[0] != 'Y')) { 
     195                if (!user_ack(!dont)) { 
    197196                        fprintf(stderr, "Aborting on user request.\n"); 
    198197                        exit(0); 
     
    217216 
    218217                if (!yes) { 
    219                         char s[2]; 
    220                          
    221218                        fprintf(stderr, "Old value 0x%0*x, write mask " 
    222219                                "0x%0*x: Will write 0x%0*x to register " 
     
    229226                        fprintf(stderr, "Continue? [Y/n] "); 
    230227                        fflush(stderr); 
    231                         if (!fgets(s, 2, stdin) 
    232                          || (s[0] != '\n' && s[0] != 'y' && s[0] != 'Y')) { 
     228                        if (!user_ack(1)) { 
    233229                                fprintf(stderr, "Aborting on user request.\n"); 
    234230                                exit(0); 
  • lm-sensors/trunk/prog/dump/isadump.c

    r4151 r4256  
    3333#include <unistd.h> 
    3434#include <string.h> 
    35  
     35#include "util.h" 
    3636#include "superio.h" 
    3737 
     
    231231 
    232232        if (!yes) { 
    233                 char s[2]; 
    234  
    235233                fprintf(stderr, "WARNING! Running this program can cause " 
    236234                        "system crashes, data loss and worse!\n"); 
     
    249247                fprintf(stderr, "Continue? [Y/n] "); 
    250248                fflush(stderr); 
    251                 if (!fgets(s, 2, stdin) 
    252                  || (s[0] != '\n' && s[0] != 'y' && s[0] != 'Y')) { 
     249                if (!user_ack(1)) { 
    253250                        fprintf(stderr, "Aborting on user request.\n"); 
    254251                        exit(0); 
  • lm-sensors/trunk/prog/dump/isaset.c

    r4080 r4256  
    3030#include <unistd.h> 
    3131#include <string.h> 
     32#include "util.h" 
    3233 
    3334 
     
    162163 
    163164        if (!yes) { 
    164                 char s[2]; 
    165  
    166165                fprintf(stderr, "WARNING! Running this program can cause " 
    167166                        "system crashes, data loss and worse!\n"); 
     
    180179                fprintf(stderr, "Continue? [Y/n] "); 
    181180                fflush(stderr); 
    182                 if (!fgets(s, 2, stdin) 
    183                  || (s[0] != '\n' && s[0] != 'y' && s[0] != 'Y')) { 
     181                if (!user_ack(1)) { 
    184182                        fprintf(stderr, "Aborting on user request.\n"); 
    185183                        exit(0); 
     
    225223 
    226224                if (!yes) { 
    227                         char s[2]; 
    228                          
    229225                        fprintf(stderr, "Old value 0x%02x, write mask " 
    230226                                "0x%02x: Will write 0x%02x to %s " 
     
    235231                        fprintf(stderr, "Continue? [Y/n] "); 
    236232                        fflush(stderr); 
    237                         if (!fgets(s, 2, stdin) 
    238                          || (s[0] != '\n' && s[0] != 'y' && s[0] != 'Y')) { 
     233                        if (!user_ack(1)) { 
    239234                                fprintf(stderr, "Aborting on user request.\n"); 
    240235                                exit(0);