diff options
| author | Peter Wemm <peter@FreeBSD.org> | 2003-05-19 22:35:00 +0000 |
|---|---|---|
| committer | Peter Wemm <peter@FreeBSD.org> | 2003-05-19 22:35:00 +0000 |
| commit | 62d8fb93d0b842e9f259647ff42386875f37a0e2 (patch) | |
| tree | 7e2934cfab220969d3c196be6973b115649f0100 | |
| parent | 3830dc4629a13f3ecd4a70dcbc620d57c05d867c (diff) | |
Notes
| -rw-r--r-- | sys/nfsclient/nfs_vfsops.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/nfsclient/nfs_vfsops.c b/sys/nfsclient/nfs_vfsops.c index 8764b2b0677e..ec9334508d6c 100644 --- a/sys/nfsclient/nfs_vfsops.c +++ b/sys/nfsclient/nfs_vfsops.c @@ -277,15 +277,18 @@ nfs_statfs(struct mount *mp, struct statfs *sbp, struct thread *td) for (bsize = NFS_FABLKSIZE; ; bsize *= 2) { sbp->f_bsize = bsize; tquad = fxdr_hyper(&sfp->sf_tbytes); - if ((tquad / bsize) > LONG_MAX) + if (((long)(tquad / bsize) > LONG_MAX) || + ((long)(tquad / bsize) < LONG_MIN)) continue; sbp->f_blocks = tquad / bsize; tquad = fxdr_hyper(&sfp->sf_fbytes); - if ((tquad / bsize) > LONG_MAX) + if (((long)(tquad / bsize) > LONG_MAX) || + ((long)(tquad / bsize) < LONG_MIN)) continue; sbp->f_bfree = tquad / bsize; tquad = fxdr_hyper(&sfp->sf_abytes); - if ((tquad / bsize) > LONG_MAX) + if (((long)(tquad / bsize) > LONG_MAX) || + ((long)(tquad / bsize) < LONG_MIN)) continue; sbp->f_bavail = tquad / bsize; sbp->f_files = (fxdr_unsigned(int32_t, |
