static int all_good;
static int dev_specified;
-static char config_file[MAX_PATH_LEN] = SYSCONFDIR "/scsi_id.config";
+static char config_file[MAX_PATH_LEN] = "/etc/scsi_id.config";
static enum page_code default_page_code;
static int sg_version = 4;
static int use_stderr;
break;
}
}
- util_strscpy(to, len, type);
+ strscpy(to, len, type);
}
/*
int c;
int retval = 0;
- dbg(udev, "vendor='%s'; model='%s'\n", vendor, model);
- fd = fopen(config_file, "r");
+ fd = fopen(config_file, "re");
if (fd == NULL) {
- dbg(udev, "can't open %s\n", config_file);
if (errno == ENOENT) {
return 1;
} else {
- err(udev, "can't open %s: %s\n", config_file, strerror(errno));
+ log_error("can't open %s: %s\n", config_file, strerror(errno));
return -1;
}
}
buffer = malloc(MAX_BUFFER_LEN);
if (!buffer) {
fclose(fd);
- err(udev, "can't allocate memory\n");
- return -1;
+ return log_oom();
}
*newargv = NULL;
break;
lineno++;
if (buf[strlen(buffer) - 1] != '\n') {
- err(udev, "Config file line %d too long\n", lineno);
+ log_error("Config file line %d too long\n", lineno);
break;
}
if (*buf == '#')
continue;
- dbg(udev, "lineno %d: '%s'\n", lineno, buf);
str1 = strsep(&buf, "=");
if (str1 && strcasecmp(str1, "VENDOR") == 0) {
str1 = get_value(&buf);
if (!str1) {
- retval = -1;
+ retval = log_oom();
break;
}
vendor_in = str1;
if (str1 && strcasecmp(str1, "MODEL") == 0) {
str1 = get_value(&buf);
if (!str1) {
- retval = -1;
+ retval = log_oom();
break;
}
model_in = str1;
if (str1 && strcasecmp(str1, "OPTIONS") == 0) {
str1 = get_value(&buf);
if (!str1) {
- retval = -1;
+ retval = log_oom();
break;
}
options_in = str1;
}
- dbg(udev, "config file line %d:\n"
- " vendor '%s'; model '%s'; options '%s'\n",
- lineno, vendor_in, model_in, options_in);
+
/*
* Only allow: [vendor=foo[,model=bar]]options=stuff
*/
if (!options_in || (!vendor_in && model_in)) {
- err(udev, "Error parsing config file line %d '%s'\n", lineno, buffer);
+ log_error("Error parsing config file line %d '%s'\n", lineno, buffer);
retval = -1;
break;
}
if (vendor == NULL) {
- if (vendor_in == NULL) {
- dbg(udev, "matched global option\n");
+ if (vendor_in == NULL)
break;
- }
} else if ((vendor_in && strncmp(vendor, vendor_in,
strlen(vendor_in)) == 0) &&
(!model_in || (strncmp(model, model_in,
* give a partial match (that is FOO
* matches FOOBAR).
*/
- dbg(udev, "matched vendor/model\n");
break;
- } else {
- dbg(udev, "no match\n");
}
}
c = argc_count(buffer) + 2;
*newargv = calloc(c, sizeof(**newargv));
if (!*newargv) {
- err(udev, "can't allocate memory\n");
- retval = -1;
+ retval = log_oom();
} else {
*argc = c;
c = 0;
if (option == -1)
break;
- if (optarg)
- dbg(udev, "option '%c' arg '%s'\n", option, optarg);
- else
- dbg(udev, "option '%c'\n", option);
-
switch (option) {
case 'b':
all_good = 0;
case 'd':
dev_specified = 1;
- util_strscpy(maj_min_dev, MAX_PATH_LEN, optarg);
+ strscpy(maj_min_dev, MAX_PATH_LEN, optarg);
break;
case 'e':
break;
case 'f':
- util_strscpy(config_file, MAX_PATH_LEN, optarg);
+ strscpy(config_file, MAX_PATH_LEN, optarg);
break;
case 'g':
} else if (strcmp(optarg, "pre-spc3-83") == 0) {
default_page_code = PAGE_83_PRE_SPC3;
} else {
- err(udev, "Unknown page code '%s'\n", optarg);
+ log_error("Unknown page code '%s'\n", optarg);
return -1;
}
break;
case 's':
sg_version = atoi(optarg);
if (sg_version < 3 || sg_version > 4) {
- err(udev, "Unknown SG version '%s'\n", optarg);
+ log_error("Unknown SG version '%s'\n", optarg);
return -1;
}
break;
}
if (optind < argc && !dev_specified) {
dev_specified = 1;
- util_strscpy(maj_min_dev, MAX_PATH_LEN, argv[optind]);
+ strscpy(maj_min_dev, MAX_PATH_LEN, argv[optind]);
}
return 0;
}
if (option == -1)
break;
- if (optarg)
- dbg(udev, "option '%c' arg '%s'\n", option, optarg);
- else
- dbg(udev, "option '%c'\n", option);
-
switch (option) {
case 'b':
*good_bad = 0;
} else if (strcmp(optarg, "pre-spc3-83") == 0) {
*page_code = PAGE_83_PRE_SPC3;
} else {
- err(udev, "Unknown page code '%s'\n", optarg);
+ log_error("Unknown page code '%s'\n", optarg);
retval = -1;
}
break;
default:
- err(udev, "Unknown or bad option '%c' (0x%x)\n", option, option);
+ log_error("Unknown or bad option '%c' (0x%x)\n", option, option);
retval = -1;
break;
}
/* get per device (vendor + model) options from the config file */
per_dev_options(udev, &dev_scsi, &good_dev, &page_code);
- dbg(udev, "per dev options: good %d; page code 0x%x\n", good_dev, page_code);
if (!good_dev) {
retval = 1;
goto out;
if (udev == NULL)
goto exit;
- udev_log_init("scsi_id");
+ log_open();
udev_set_log_fn(udev, log_fn);
/*
exit(1);
if (!dev_specified) {
- err(udev, "no device specified\n");
+ log_error("no device specified\n");
retval = 1;
goto exit;
}
exit:
udev_unref(udev);
- udev_log_close();
+ log_close();
return retval;
}