summaryrefslogtreecommitdiffstats
path: root/usr.sbin/burncd/burncd.c
diff options
context:
space:
mode:
authordelphij <delphij@FreeBSD.org>2009-12-21 19:27:52 +0000
committerdelphij <delphij@FreeBSD.org>2009-12-21 19:27:52 +0000
commitfdf85ee3e500bc4c682b7a6c7fc0126cd005406e (patch)
treee47a6d6e5f14d4540d4a8d8575c0e40b7c2cabef /usr.sbin/burncd/burncd.c
parent10746e90df819a24ca4124a5bdb2d7b6f20cfcc9 (diff)
downloadFreeBSD-src-fdf85ee3e500bc4c682b7a6c7fc0126cd005406e.zip
FreeBSD-src-fdf85ee3e500bc4c682b7a6c7fc0126cd005406e.tar.gz
Add support of using environment variable BURNCD_SPEED to specify
recodring speed. PR: bin/140530 Submitted by: Alexander Best <alexbestms wwu.de> MFC after: 1 month
Diffstat (limited to 'usr.sbin/burncd/burncd.c')
-rw-r--r--usr.sbin/burncd/burncd.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/usr.sbin/burncd/burncd.c b/usr.sbin/burncd/burncd.c
index c4d1648..2931cf8 100644
--- a/usr.sbin/burncd/burncd.c
+++ b/usr.sbin/burncd/burncd.c
@@ -80,11 +80,13 @@ main(int argc, char **argv)
int dao = 0, eject = 0, fixate = 0, list = 0, multi = 0, preemp = 0;
int nogap = 0, speed = 4 * 177, test_write = 0, force = 0;
int block_size = 0, block_type = 0, cdopen = 0, dvdrw = 0;
- const char *dev;
+ const char *dev, *env_speed;
if ((dev = getenv("CDROM")) == NULL)
dev = "/dev/acd0";
+ env_speed = getenv("BURNCD_SPEED");
+
while ((ch = getopt(argc, argv, "def:Flmnpqs:tv")) != -1) {
switch (ch) {
case 'd':
@@ -124,12 +126,7 @@ main(int argc, char **argv)
break;
case 's':
- if (strcasecmp("max", optarg) == 0)
- speed = CDR_MAX_SPEED;
- else
- speed = atoi(optarg) * 177;
- if (speed <= 0)
- errx(EX_USAGE, "Invalid speed: %s", optarg);
+ env_speed = optarg;
break;
case 't':
@@ -147,6 +144,15 @@ main(int argc, char **argv)
argc -= optind;
argv += optind;
+ if (env_speed == NULL)
+ ;
+ else if (strcasecmp("max", env_speed) == 0)
+ speed = CDR_MAX_SPEED;
+ else
+ speed = atoi(env_speed) * 177;
+ if (speed <= 0)
+ errx(EX_USAGE, "Invalid speed: %s", optarg);
+
if (argc == 0)
usage();
OpenPOWER on IntegriCloud