comparison simtool/smserase.c @ 57:10030acba82f

fc-simtool *-erase-range commands: allow "end" keyword for the last record to be erased
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 13 Feb 2021 20:28:44 +0000
parents 2714d379edc2
children
comparison
equal deleted inserted replaced
56:d4b5a6e547ca 57:10030acba82f
93 if (startrec < 1 || startrec > curfile_record_count) { 93 if (startrec < 1 || startrec > curfile_record_count) {
94 fprintf(stderr, 94 fprintf(stderr,
95 "error: specified starting record number is invalid\n"); 95 "error: specified starting record number is invalid\n");
96 return(-1); 96 return(-1);
97 } 97 }
98 endrec = strtoul(argv[2], 0, 0); 98 if (!strcmp(argv[2], "end"))
99 if (endrec < 1 || endrec > curfile_record_count) { 99 endrec = curfile_record_count;
100 fprintf(stderr, 100 else {
101 endrec = strtoul(argv[2], 0, 0);
102 if (endrec < 1 || endrec > curfile_record_count) {
103 fprintf(stderr,
101 "error: specified final record number is invalid\n"); 104 "error: specified final record number is invalid\n");
102 return(-1); 105 return(-1);
103 } 106 }
104 if (startrec > endrec) { 107 if (startrec > endrec) {
105 fprintf(stderr, "error: reverse record range specified\n"); 108 fprintf(stderr,
106 return(-1); 109 "error: reverse record range specified\n");
110 return(-1);
111 }
107 } 112 }
108 memset(record, 0xFF, SMS_RECORD_LEN); 113 memset(record, 0xFF, SMS_RECORD_LEN);
109 record[0] = 0; 114 record[0] = 0;
110 for (recno = startrec; recno <= endrec; recno++) { 115 for (recno = startrec; recno <= endrec; recno++) {
111 rc = update_rec_op(recno, 0x04, record, SMS_RECORD_LEN); 116 rc = update_rec_op(recno, 0x04, record, SMS_RECORD_LEN);