[patch] burncd: honour for envar SPEED

Giorgos Keramidas keramida at ceid.upatras.gr
Mon Nov 9 07:10:09 UTC 2009


On Mon, 09 Nov 2009 01:47:40 +0100 (CET), Alexander Best <alexbestms at math.uni-muenster.de> wrote:
> any thoughts on these small changes to burncd?
>
> Index: usr.sbin/burncd/burncd.c
> ===================================================================
> --- usr.sbin/burncd/burncd.c	(revision 199064)
> +++ usr.sbin/burncd/burncd.c	(working copy)
> @@ -78,13 +78,16 @@
>  {
>  	int arg, addr, ch, fd;
>  	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 nogap = 0, speed = 0, test_write = 0, force = 0;
>  	int block_size = 0, block_type = 0, cdopen = 0, dvdrw = 0;
>  	const char *dev;
>
>  	if ((dev = getenv("CDROM")) == NULL)
>  		dev = "/dev/acd0";
>
> +	if ((speed = getenv("SPEED")) == NULL)
> +		speed = 4 * 177;
> +
>  	while ((ch = getopt(argc, argv, "def:Flmnpqs:tv")) != -1) {
>  		switch (ch) {
>  		case 'd':

Hi Alexander,

The idea seems very good, but since the value of SPEED is user supplied
data, I would rather see a bit of validation code after getenv().  With
this version of the patch, burncd would happily accept and try to use
values that are quite absurd, i.e.:

    env SPEED=12234567890 burncd ...

It may also be sensible to do the translation from "human readable"
speed values and the multiplication with 177 _after_ the value has been
parsed from getenv(), so that e.g. one can write:

    env SPEED=4 burncd

and get behavior similar to the current default.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20091109/603693d6/attachment.pgp


More information about the freebsd-hackers mailing list