summaryrefslogtreecommitdiffstats
path: root/sbin
diff options
context:
space:
mode:
authorcharnier <charnier@FreeBSD.org>1998-01-12 07:57:57 +0000
committercharnier <charnier@FreeBSD.org>1998-01-12 07:57:57 +0000
commit7946b36f3e9299df5086b267097962dfdd21ecfb (patch)
treeeca5fc1494037ab9014b6782199ab6ee4cbbe365 /sbin
parent2d1d8fdfde3c18028cad68948bd05951add90163 (diff)
downloadFreeBSD-src-7946b36f3e9299df5086b267097962dfdd21ecfb.zip
FreeBSD-src-7946b36f3e9299df5086b267097962dfdd21ecfb.tar.gz
Use err(3). Change exit(-1), and make exit values equal to 1 when errors.
Remove unused #includes.
Diffstat (limited to 'sbin')
-rw-r--r--sbin/scsi/scsi.c136
1 files changed, 52 insertions, 84 deletions
diff --git a/sbin/scsi/scsi.c b/sbin/scsi/scsi.c
index fdbb901..23329f1 100644
--- a/sbin/scsi/scsi.c
+++ b/sbin/scsi/scsi.c
@@ -38,21 +38,22 @@
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
- *
- * $Id: scsi.c,v 1.15 1997/03/29 03:33:04 imp Exp $
*/
-#include <stdio.h>
+#ifndef lint
+static const char rcsid[] =
+ "$Id$";
+#endif /* not lint */
+
+#include <ctype.h>
+#include <err.h>
+#include <errno.h>
+#include <scsi.h>
#include <string.h>
#include <stdlib.h>
-#include <unistd.h>
-#include <errno.h>
-#include <sys/scsiio.h>
#include <sys/file.h>
-#include <scsi.h>
-#include <ctype.h>
#include <signal.h>
-#include <err.h>
+#include <unistd.h>
int fd;
int debuglevel;
@@ -329,8 +330,7 @@ do_cmd(int fd, char *fmt, int argc, char **argv)
}
if (amount == -1)
{
- perror("read");
- exit(errno);
+ err(1, "read");
}
else if (amount == 0)
{
@@ -375,8 +375,7 @@ do_cmd(int fd, char *fmt, int argc, char **argv)
}
if (amount < 0)
{
- perror("write");
- exit(errno);
+ err(1, "write");
}
else if (amount == 0)
fprintf(stderr, "Warning: wrote only %d bytes out of %d.\n",
@@ -396,13 +395,11 @@ static void
freeze_ioctl(int fd, int op, void *data)
{
if (ioctl(fd, SCIOCFREEZE, 0) == -1) {
- if (errno == ENODEV) {
- fprintf(stderr,
- "Your kernel must be configured with option SCSI_FREEZE.\n");
- }
+ if (errno == ENODEV)
+ errx(1,
+ "your kernel must be configured with option SCSI_FREEZE");
else
- perror("SCIOCFREEZE");
- exit(errno);
+ err(1, "ioctl [SCIOCFREEZE]");
}
}
@@ -457,7 +454,7 @@ void mode_sense(int fd, u_char *data, int len, int pc, int page)
if (SCSIREQ_ERROR(scsireq))
{
scsi_debug(stderr, 0, scsireq);
- exit(-1);
+ exit(1);
}
free(scsireq);
@@ -480,7 +477,7 @@ void mode_select(int fd, u_char *data, int len, int perm)
if (SCSIREQ_ERROR(scsireq))
{
scsi_debug(stderr, 0, scsireq);
- exit(-1);
+ exit(1);
}
free(scsireq);
@@ -542,16 +539,14 @@ static char *mode_lookup(int page)
found = 1;
skipwhite(modes);
- if (getc(modes) != START_ENTRY) {
- fprintf(stderr, "Expected %c.\n", START_ENTRY);
- exit(-1);
- }
+ if (getc(modes) != START_ENTRY)
+ errx(1, "expected %c", START_ENTRY);
match = 1;
while (match != 0) {
c = getc(modes);
if (c == EOF) {
- fprintf(stderr, "Expected %c.\n", END_ENTRY);
+ warnx("expected %c", END_ENTRY);
}
if (c == START_ENTRY) {
@@ -563,10 +558,8 @@ static char *mode_lookup(int page)
break;
}
if (found && c != '\n') {
- if (next >= sizeof(fmt)) {
- fprintf(stderr, "Stupid program: Buffer overflow.\n");
- exit(ENOMEM);
- }
+ if (next >= sizeof(fmt))
+ errx(1, "buffer overflow");
fmt[next++] = (u_char)c;
}
@@ -614,9 +607,9 @@ edit_done(void)
if (opened)
{
if (fclose(edit_file))
- perror(edit_name);
+ warn("%s", edit_name);
if (unlink(edit_name))
- perror(edit_name);
+ warn("%s", edit_name);
}
}
@@ -624,14 +617,10 @@ static void
edit_init(void)
{
edit_rewind();
- if (tmpnam(edit_name) == 0) {
- perror("tmpnam failed");
- exit(errno);
- }
- if ( (edit_file = fopen(edit_name, "w")) == 0) {
- perror(edit_name);
- exit(errno);
- }
+ if (tmpnam(edit_name) == 0)
+ errx(1, "tmpnam failed");
+ if ((edit_file = fopen(edit_name, "w")) == 0)
+ err(1, "%s", edit_name);
edit_opened = 1;
atexit(edit_done);
@@ -640,15 +629,12 @@ edit_init(void)
static void
edit_check(void *hook, int letter, void *arg, int count, char *name)
{
- if (letter != 'i' && letter != 'b') {
- fprintf(stderr, "Can't edit format %c.\n", letter);
- exit(-1);
- }
+ if (letter != 'i' && letter != 'b')
+ errx(1, "can't edit format %c", letter);
+
+ if (editind >= sizeof(editinfo) / sizeof(editinfo[0]))
+ errx(1, "edit table overflow");
- if (editind >= sizeof(editinfo) / sizeof(editinfo[0])) {
- fprintf(stderr, "edit table overflow\n");
- exit(ENOMEM);
- }
editinfo[editind].can_edit = ((int)arg != 0);
editind++;
}
@@ -656,10 +642,8 @@ edit_check(void *hook, int letter, void *arg, int count, char *name)
static void
edit_defaults(void *hook, int letter, void *arg, int count, char *name)
{
- if (letter != 'i' && letter != 'b') {
- fprintf(stderr, "Can't edit format %c.\n", letter);
- exit(-1);
- }
+ if (letter != 'i' && letter != 'b')
+ errx(1, "can't edit format %c", letter);
editinfo[editind].default_value = ((int)arg);
editind++;
@@ -669,10 +653,8 @@ static void
edit_report(void *hook, int letter, void *arg, int count, char *name)
{
if (editinfo[editind].can_edit) {
- if (letter != 'i' && letter != 'b') {
- fprintf(stderr, "Can't report format %c.\n", letter);
- exit(-1);
- }
+ if (letter != 'i' && letter != 'b')
+ errx(1, "can't report format %c", letter);
fprintf(edit_file, "%s: %d\n", name, (int)arg);
}
@@ -687,18 +669,13 @@ edit_get(void *hook, char *name)
if (editinfo[editind].can_edit) {
char line[80];
- if (fgets(line, sizeof(line), edit_file) == 0) {
- perror("fgets");
- exit(errno);
- }
+ if (fgets(line, sizeof(line), edit_file) == 0)
+ err(1, "fgets");
line[strlen(line) - 1] = 0;
- if (strncmp(name, line, strlen(name)) != 0) {
- fprintf(stderr, "Expected \"%s\" and read \"%s\"\n",
- name, line);
- exit(-1);
- }
+ if (strncmp(name, line, strlen(name)) != 0)
+ errx(1, "expected \"%s\" and read \"%s\"", name, line);
arg = strtoul(line + strlen(name) + 2, 0, 0);
}
@@ -722,10 +699,8 @@ edit_edit(void)
system(system_line);
free(system_line);
- if ( (edit_file = fopen(edit_name, "r")) == 0) {
- perror(edit_name);
- exit(errno);
- }
+ if ((edit_file = fopen(edit_name, "r")) == 0)
+ err(1, "%s", edit_name);
}
static void
@@ -759,16 +734,12 @@ mode_edit(int fd, int page, int edit, int argc, char *argv[])
}
if (edit) {
- if (!fmt) {
- fprintf(stderr, "Sorry: can't edit without a format.\n");
- exit(-1);
- }
+ if (!fmt)
+ errx(1, "can't edit without a format");
- if (pagectl != 0 && pagectl != 3) {
- fprintf(stderr,
-"It only makes sense to edit page 0 (current) or page 3 (saved values)\n");
- exit(-1);
- }
+ if (pagectl != 0 && pagectl != 3)
+ errx(1,
+"it only makes sense to edit page 0 (current) or page 3 (saved values)");
verbose = 1;
@@ -929,18 +900,15 @@ void main(int argc, char **argv)
scaddr.lun = lun;
if (ioctl(fd,SCIOCREPROBE,&scaddr) == -1)
- perror("ioctl");
+ warn("ioctl [SCIOCREPROBE]");
} else if(debugflag) {
if (ioctl(fd,SCIOCDEBUG,&debuglevel) == -1)
- {
- perror("ioctl [SCIODEBUG]");
- exit(1);
- }
+ err(1, "ioctl [SCIODEBUG]");
} else if (commandflag) {
char *fmt;
if (argc < 1) {
- fprintf(stderr, "Need the command format string.\n");
+ warnx("need the command format string");
usage();
}
OpenPOWER on IntegriCloud