Deleted Added
full compact
ext2_dinode.h (243652) ext2_dinode.h (244475)
1/*-
2 * Copyright (c) 2009 Aditya Sarawgi
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

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

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
1/*-
2 * Copyright (c) 2009 Aditya Sarawgi
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

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

18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 * SUCH DAMAGE.
25 *
26 * $FreeBSD: head/sys/fs/ext2fs/ext2_dinode.h 243652 2012-11-28 15:48:32Z pfg $
26 * $FreeBSD: head/sys/fs/ext2fs/ext2_dinode.h 244475 2012-12-20 02:22:36Z pfg $
27 */
28
29#ifndef _FS_EXT2FS_EXT2_DINODE_H_
30#define _FS_EXT2FS_EXT2_DINODE_H_
31
32#define e2di_size_high e2di_dacl
33
34/*

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

55#define EXT2_SECRM 0x00000001 /* Secure deletion */
56#define EXT2_UNRM 0x00000002 /* Undelete */
57#define EXT2_COMPR 0x00000004 /* Compress file */
58#define EXT2_SYNC 0x00000008 /* Synchronous updates */
59#define EXT2_IMMUTABLE 0x00000010 /* Immutable file */
60#define EXT2_APPEND 0x00000020 /* writes to file may only append */
61#define EXT2_NODUMP 0x00000040 /* do not dump file */
62#define EXT2_NOATIME 0x00000080 /* do not update atime */
27 */
28
29#ifndef _FS_EXT2FS_EXT2_DINODE_H_
30#define _FS_EXT2FS_EXT2_DINODE_H_
31
32#define e2di_size_high e2di_dacl
33
34/*

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

55#define EXT2_SECRM 0x00000001 /* Secure deletion */
56#define EXT2_UNRM 0x00000002 /* Undelete */
57#define EXT2_COMPR 0x00000004 /* Compress file */
58#define EXT2_SYNC 0x00000008 /* Synchronous updates */
59#define EXT2_IMMUTABLE 0x00000010 /* Immutable file */
60#define EXT2_APPEND 0x00000020 /* writes to file may only append */
61#define EXT2_NODUMP 0x00000040 /* do not dump file */
62#define EXT2_NOATIME 0x00000080 /* do not update atime */
63#define EXT2_INDEX 0x00001000 /* hash-indexed directory */
64#define EXT2_IMAGIC 0x00002000 /* AFS directory */
65#define EXT2_JOURNAL_DATA 0x00004000 /* file data should be journaled */
66#define EXT2_NOTAIL 0x00008000 /* file tail should not be merged */
67#define EXT2_DIRSYNC 0x00010000 /* dirsync behaviour */
68#define EXT2_TOPDIR 0x00020000 /* Top of directory hierarchies*/
69#define EXT2_HUGE_FILE 0x00040000 /* Set to each huge file */
70#define EXT2_EXTENTS 0x00080000 /* Inode uses extents */
71#define EXT2_EOFBLOCKS 0x00400000 /* Blocks allocated beyond EOF */
72
63
64#define EXT4_INDEX 0x00001000 /* hash-indexed directory */
65#define EXT4_IMAGIC 0x00002000 /* AFS directory */
66#define EXT4_JOURNAL_DATA 0x00004000 /* file data should be journaled */
67#define EXT4_NOTAIL 0x00008000 /* file tail should not be merged */
68#define EXT4_DIRSYNC 0x00010000 /* dirsync behaviour */
69#define EXT4_TOPDIR 0x00020000 /* Top of directory hierarchies*/
70#define EXT4_HUGE_FILE 0x00040000 /* Set to each huge file */
71#define EXT4_EXTENTS 0x00080000 /* Inode uses extents */
72#define EXT4_EOFBLOCKS 0x00400000 /* Blocks allocated beyond EOF */
73
73/*
74 * Definitions for nanosecond timestamps.
75 * Ext3 inode versioning, 2006-12-13.
76 */
77#define EXT3_EPOCH_BITS 2
78#define EXT3_EPOCH_MASK ((1 << EXT3_EPOCH_BITS) - 1)
79#define EXT3_NSEC_MASK (~0UL << EXT3_EPOCH_BITS)
80
74/*
75 * Definitions for nanosecond timestamps.
76 * Ext3 inode versioning, 2006-12-13.
77 */
78#define EXT3_EPOCH_BITS 2
79#define EXT3_EPOCH_MASK ((1 << EXT3_EPOCH_BITS) - 1)
80#define EXT3_NSEC_MASK (~0UL << EXT3_EPOCH_BITS)
81
81#define E2DI_HAS_XTIME(ip) (EXT2_INODE_SIZE((ip)->i_e2fs) > \
82 E2FS_REV0_INODE_SIZE)
82#define E2DI_HAS_XTIME(ip) (EXT2_HAS_RO_COMPAT_FEATURE(ip->i_e2fs, EXT2F_ROCOMPAT_EXTRA_ISIZE))
83
84/*
85 * Structure of an inode on the disk
86 */
87struct ext2fs_dinode {
88 uint16_t e2di_mode; /* 0: IFMT, permissions; see below. */
89 uint16_t e2di_uid; /* 2: Owner UID */
90 uint32_t e2di_size; /* 4: Size (in bytes) */

--- 31 unchanged lines hidden ---
83
84/*
85 * Structure of an inode on the disk
86 */
87struct ext2fs_dinode {
88 uint16_t e2di_mode; /* 0: IFMT, permissions; see below. */
89 uint16_t e2di_uid; /* 2: Owner UID */
90 uint32_t e2di_size; /* 4: Size (in bytes) */

--- 31 unchanged lines hidden ---