Deleted Added
full compact
ext2_vnops.c (228583) ext2_vnops.c (232703)
1/*-
2 * modified for EXT2FS support in Lites 1.1
3 *
4 * Aug 1995, Godmar Back (gback@cs.utah.edu)
5 * University of Utah, Department of Computer Science
6 */
7/*-
8 * Copyright (c) 1982, 1986, 1989, 1993

--- 25 unchanged lines hidden (view full) ---

34 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
36 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
37 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
38 * SUCH DAMAGE.
39 *
40 * @(#)ufs_vnops.c 8.7 (Berkeley) 2/3/94
41 * @(#)ufs_vnops.c 8.27 (Berkeley) 5/27/95
1/*-
2 * modified for EXT2FS support in Lites 1.1
3 *
4 * Aug 1995, Godmar Back (gback@cs.utah.edu)
5 * University of Utah, Department of Computer Science
6 */
7/*-
8 * Copyright (c) 1982, 1986, 1989, 1993

--- 25 unchanged lines hidden (view full) ---

34 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
36 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
37 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
38 * SUCH DAMAGE.
39 *
40 * @(#)ufs_vnops.c 8.7 (Berkeley) 2/3/94
41 * @(#)ufs_vnops.c 8.27 (Berkeley) 5/27/95
42 * $FreeBSD: head/sys/fs/ext2fs/ext2_vnops.c 228583 2011-12-16 15:47:43Z pfg $
42 * $FreeBSD: head/sys/fs/ext2fs/ext2_vnops.c 232703 2012-03-08 21:06:05Z pfg $
43 */
44
45#include "opt_suiddir.h"
46
47#include <sys/param.h>
48#include <sys/systm.h>
49#include <sys/kernel.h>
50#include <sys/fcntl.h>

--- 304 unchanged lines hidden (view full) ---

355 vap->va_fileid = ip->i_number;
356 vap->va_mode = ip->i_mode & ~IFMT;
357 vap->va_nlink = ip->i_nlink;
358 vap->va_uid = ip->i_uid;
359 vap->va_gid = ip->i_gid;
360 vap->va_rdev = ip->i_rdev;
361 vap->va_size = ip->i_size;
362 vap->va_atime.tv_sec = ip->i_atime;
43 */
44
45#include "opt_suiddir.h"
46
47#include <sys/param.h>
48#include <sys/systm.h>
49#include <sys/kernel.h>
50#include <sys/fcntl.h>

--- 304 unchanged lines hidden (view full) ---

355 vap->va_fileid = ip->i_number;
356 vap->va_mode = ip->i_mode & ~IFMT;
357 vap->va_nlink = ip->i_nlink;
358 vap->va_uid = ip->i_uid;
359 vap->va_gid = ip->i_gid;
360 vap->va_rdev = ip->i_rdev;
361 vap->va_size = ip->i_size;
362 vap->va_atime.tv_sec = ip->i_atime;
363 vap->va_atime.tv_nsec = ip->i_atimensec;
363 vap->va_atime.tv_nsec = E2DI_HAS_XTIME(ip) ? ip->i_atimensec : 0;
364 vap->va_mtime.tv_sec = ip->i_mtime;
364 vap->va_mtime.tv_sec = ip->i_mtime;
365 vap->va_mtime.tv_nsec = ip->i_mtimensec;
365 vap->va_mtime.tv_nsec = E2DI_HAS_XTIME(ip) ? ip->i_mtimensec : 0;
366 vap->va_ctime.tv_sec = ip->i_ctime;
366 vap->va_ctime.tv_sec = ip->i_ctime;
367 vap->va_ctime.tv_nsec = ip->i_ctimensec;
367 vap->va_ctime.tv_nsec = E2DI_HAS_XTIME(ip) ? ip->i_ctimensec : 0;
368 if E2DI_HAS_XTIME(ip) {
369 vap->va_birthtime.tv_sec = ip->i_birthtime;
370 vap->va_birthtime.tv_nsec = ip->i_birthnsec;
371 }
368 vap->va_flags = ip->i_flags;
369 vap->va_gen = ip->i_gen;
370 vap->va_blocksize = vp->v_mount->mnt_stat.f_iosize;
371 vap->va_bytes = dbtob((u_quad_t)ip->i_blocks);
372 vap->va_type = IFTOVT(ip->i_mode);
373 vap->va_filerev = ip->i_modrev;
374 return (0);
375}

--- 120 unchanged lines hidden (view full) ---

496 if (vap->va_atime.tv_sec != VNOVAL) {
497 ip->i_atime = vap->va_atime.tv_sec;
498 ip->i_atimensec = vap->va_atime.tv_nsec;
499 }
500 if (vap->va_mtime.tv_sec != VNOVAL) {
501 ip->i_mtime = vap->va_mtime.tv_sec;
502 ip->i_mtimensec = vap->va_mtime.tv_nsec;
503 }
372 vap->va_flags = ip->i_flags;
373 vap->va_gen = ip->i_gen;
374 vap->va_blocksize = vp->v_mount->mnt_stat.f_iosize;
375 vap->va_bytes = dbtob((u_quad_t)ip->i_blocks);
376 vap->va_type = IFTOVT(ip->i_mode);
377 vap->va_filerev = ip->i_modrev;
378 return (0);
379}

--- 120 unchanged lines hidden (view full) ---

500 if (vap->va_atime.tv_sec != VNOVAL) {
501 ip->i_atime = vap->va_atime.tv_sec;
502 ip->i_atimensec = vap->va_atime.tv_nsec;
503 }
504 if (vap->va_mtime.tv_sec != VNOVAL) {
505 ip->i_mtime = vap->va_mtime.tv_sec;
506 ip->i_mtimensec = vap->va_mtime.tv_nsec;
507 }
508 ip->i_birthtime = vap->va_birthtime.tv_sec;
509 ip->i_birthnsec = vap->va_birthtime.tv_nsec;
504 error = ext2_update(vp, 0);
505 if (error)
506 return (error);
507 }
508 error = 0;
509 if (vap->va_mode != (mode_t)VNOVAL) {
510 if (vp->v_mount->mnt_flag & MNT_RDONLY)
511 return (EROFS);

--- 1493 unchanged lines hidden ---
510 error = ext2_update(vp, 0);
511 if (error)
512 return (error);
513 }
514 error = 0;
515 if (vap->va_mode != (mode_t)VNOVAL) {
516 if (vp->v_mount->mnt_flag & MNT_RDONLY)
517 return (EROFS);

--- 1493 unchanged lines hidden ---