isohybrid, mkdiskimage: don't use sysopen(), sysread()
authorH. Peter Anvin <hpa@zytor.com>
Mon, 8 Sep 2008 02:17:03 +0000 (19:17 -0700)
committerH. Peter Anvin <hpa@zytor.com>
Mon, 8 Sep 2008 02:17:03 +0000 (19:17 -0700)
Don't use sysopen() and sysread() when it doesn't make sense.
Especially avoid using sysread() -- sysopen() can be used with read();
the C fdopen() is implicit.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
utils/isohybrid.in
utils/mkdiskimage.in

index 5e3f785..1dcdf10 100644 (file)
@@ -31,8 +31,7 @@ sub get_random() {
     my $rfd, $rnd;
     my $rid;
 
-    if (sysopen($rfd, '/dev/urandom', O_RDONLY) &&
-       sysread($rfd, $rnd, 4) == 4) {
+    if (open($rfd, "< /dev/urandom\0") && read($rfd, $rnd, 4) == 4) {
        $rid = unpack("V", $rnd);
     }
 
index f66ad7c..1ce8b64 100644 (file)
@@ -44,8 +44,7 @@ sub get_random() {
     my $rfd, $rnd;
     my $rid;
 
-    if (sysopen($rfd, '/dev/urandom', O_RDONLY) &&
-       sysread($rfd, $rnd, 4) == 4) {
+    if (open($rfd, "< /dev/urandom\0") && read($rfd, $rnd, 4) == 4) {
        $rid = unpack("V", $rnd);
     }