Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys



Module Name:    src
Committed By:   yamt
Date:           Wed Sep 24 10:22:54 UTC 2003

Modified Files:
        src/sys/miscfs/genfs: genfs_node.h genfs_vnops.c
        src/sys/ufs/lfs: lfs_vnops.c

Log Message:
fix a bug of lfs.

genfs_getpages() can read in more blocks than it should due to faked filesize
of lfs_gop_size().  it's a security problem and it makes gcc3 "internal error"

to fix this,
- in genfs_getpages(), always calculate diskeof and memeof separately
  so that filesystems (in this case, lfs) can use different strategies
  for them.
- introduce GOP_SIZE_MEM flag and use it to request in-core filesize.
  (it was an intention of GOP_SIZE_READ,
  but after the above change _READ is not a straightforward name)

after this, no one uses GOP_SIZE_{READ,WRITE} anymore but leave them for now.


To generate a diff of this commit:
cvs rdiff -r1.4 -r1.5 src/sys/miscfs/genfs/genfs_node.h
cvs rdiff -r1.81 -r1.82 src/sys/miscfs/genfs/genfs_vnops.c
cvs rdiff -r1.117 -r1.118 src/sys/ufs/lfs/lfs_vnops.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index