Correct error check for lseek as kernel memory is a negative binary value.
authorMiriam Amos Nihart <miriam@ucbvax.Berkeley.EDU>
Wed, 14 Aug 1985 09:20:25 +0000 (01:20 -0800)
committerMiriam Amos Nihart <miriam@ucbvax.Berkeley.EDU>
Wed, 14 Aug 1985 09:20:25 +0000 (01:20 -0800)
SCCS-vsn: usr.sbin/sendmail/src/conf.c 5.5

usr/src/usr.sbin/sendmail/src/conf.c

index 9300338..6e04333 100644 (file)
@@ -9,7 +9,7 @@
 */
 
 #ifndef lint
 */
 
 #ifndef lint
-static char    SccsId[] = "@(#)conf.c  5.4 (Berkeley) %G%";
+static char    SccsId[] = "@(#)conf.c  5.5 (Berkeley) %G%";
 #endif not lint
 
 # include <pwd.h>
 #endif not lint
 
 # include <pwd.h>
@@ -531,7 +531,7 @@ getla()
 
        if (kmem < 0)
        {
 
        if (kmem < 0)
        {
-               kmem = open("/dev/kmem", 0);
+               kmem = open("/dev/kmem", 0, 0);
                if (kmem < 0)
                        return (-1);
                (void) ioctl(kmem, (int) FIOCLEX, (char *) 0);
                if (kmem < 0)
                        return (-1);
                (void) ioctl(kmem, (int) FIOCLEX, (char *) 0);
@@ -539,7 +539,7 @@ getla()
                if (Nl[0].n_type == 0)
                        return (-1);
        }
                if (Nl[0].n_type == 0)
                        return (-1);
        }
-       if (lseek(kmem, (off_t) Nl[X_AVENRUN].n_value, 0) < 0 ||
+       if (lseek(kmem, (off_t) Nl[X_AVENRUN].n_value, 0) == -1 ||
            read(kmem, (char *) avenrun, sizeof(avenrun)) < sizeof(avenrun))
        {
                /* thank you Ian */
            read(kmem, (char *) avenrun, sizeof(avenrun)) < sizeof(avenrun))
        {
                /* thank you Ian */