diff options
author | 2004-11-18 17:12:33 +0000 | |
---|---|---|
committer | 2004-11-18 17:12:33 +0000 | |
commit | 4b72b7be153f136490928ebbd79e74d1190a1b0f (patch) | |
tree | 472b4d24a763fab8641794db3c1bffb3b8ae4950 | |
parent | add an instance of struct capabilities to peer_conf, and inherit (diff) | |
download | wireguard-openbsd-4b72b7be153f136490928ebbd79e74d1190a1b0f.tar.xz wireguard-openbsd-4b72b7be153f136490928ebbd79e74d1190a1b0f.zip |
Better and simpler check for negative offset; from Christer Oberg
-rw-r--r-- | sys/miscfs/kernfs/kernfs_vnops.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/miscfs/kernfs/kernfs_vnops.c b/sys/miscfs/kernfs/kernfs_vnops.c index cc7cf3080fb..86a33926edf 100644 --- a/sys/miscfs/kernfs/kernfs_vnops.c +++ b/sys/miscfs/kernfs/kernfs_vnops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kernfs_vnops.c,v 1.41 2004/09/01 21:06:17 millert Exp $ */ +/* $OpenBSD: kernfs_vnops.c,v 1.42 2004/11/18 17:12:33 millert Exp $ */ /* $NetBSD: kernfs_vnops.c,v 1.43 1996/03/16 23:52:47 christos Exp $ */ /* @@ -696,6 +696,8 @@ kernfs_read(v) printf("kern_read %s\n", kt->kt_name); #endif + if (uio->uio_offset < 0) + return (EINVAL); off = uio->uio_offset; #if 0 while (buf = strbuf, @@ -705,8 +707,6 @@ kernfs_read(v) len = kernfs_xread(kt, off, &buf, sizeof(strbuf))) { if ((error = uiomove(buf, len, uio)) != 0) return (error); - if (off <= INT_MAX - len) - off += len; /* XXX - should use quad */ } return (0); } |