Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / openbios / fs / grubfs / disk_inode_ffs.h
diff --git a/qemu/roms/openbios/fs/grubfs/disk_inode_ffs.h b/qemu/roms/openbios/fs/grubfs/disk_inode_ffs.h
new file mode 100644 (file)
index 0000000..3a2cfc6
--- /dev/null
@@ -0,0 +1,101 @@
+/*
+ * Mach Operating System
+ * Copyright (c) 1991,1990 Carnegie Mellon University
+ * All Rights Reserved.
+ *
+ * Permission to use, copy, modify and distribute this software and its
+ * documentation is hereby granted, provided that both the copyright
+ * notice and this permission notice appear in all copies of the
+ * software, derivative works or modified versions, and any portions
+ * thereof, and that both notices appear in supporting documentation.
+ *
+ * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
+ * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
+ * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
+ *
+ * Carnegie Mellon requests users of this software to return to
+ *
+ *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
+ *  School of Computer Science
+ *  Carnegie Mellon University
+ *  Pittsburgh PA 15213-3890
+ *
+ * any improvements or extensions that they make and grant Carnegie Mellon
+ * the rights to redistribute these changes.
+ */
+/*
+ * Copyright (c) 1982, 1989 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms are permitted
+ * provided that the above copyright notice and this paragraph are
+ * duplicated in all such forms and that any documentation,
+ * advertising materials, and other materials related to such
+ * distribution and use acknowledge that the software was developed
+ * by the University of California, Berkeley.  The name of the
+ * University may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ *     @(#)inode.h     7.5 (Berkeley) 7/3/89
+ */
+
+#ifndef        _BOOT_UFS_DISK_INODE_FFS_H_
+#define        _BOOT_UFS_DISK_INODE_FFS_H_
+
+#define        NDADDR  FFS_NDADDR
+#define        NIADDR  FFS_NIADDR
+
+#define        MAX_FASTLINK_SIZE       FFS_MAX_FASTLINK_SIZE
+
+#define        IC_FASTLINK     0x0001  /* Symbolic link in inode */
+
+#define        i_mode          ic_mode
+#define        i_nlink         ic_nlink
+#define        i_uid           ic_uid
+#define        i_gid           ic_gid
+#if    defined(BYTE_MSF) && BYTE_MSF
+#define        i_size          ic_size.val[1]
+#else /* BYTE_LSF */
+#define        i_size          ic_size.val[0]
+#endif
+#define        i_db            ic_db
+#define        i_ib            ic_ib
+#define        i_atime         ic_atime
+#define        i_mtime         ic_mtime
+#define        i_ctime         ic_ctime
+#define i_blocks       ic_blocks
+#define        i_rdev          ic_db[0]
+#define        i_symlink       ic_symlink
+#define i_flags                ic_flags
+#define i_gen          ic_gen
+
+/* modes */
+#define        IFMT    0xf000          /* type of file */
+#define        IFCHR   0x2000          /* character special */
+#define        IFDIR   0x4000          /* directory */
+#define        IFBLK   0x6000          /* block special */
+#define        IFREG   0x8000          /* regular */
+#define        IFLNK   0xa000          /* symbolic link */
+#define        IFSOCK  0xc000          /* socket */
+
+
+#define        ISUID           0x0800  /* set user id on execution */
+#define        ISGID           0x0400  /* set group id on execution */
+#define        ISVTX           0x0200  /* save swapped text even after use */
+#define        IREAD           0x0100  /* read, write, execute permissions */
+#define        IWRITE          0x0080
+#define        IEXEC           0x0040
+
+#ifdef EEK
+#define f_fs           u.ffs.ffs_fs
+#define i_ic           u.ffs.ffs_ic
+#define f_nindir       u.ffs.ffs_nindir
+#define f_blk          u.ffs.ffs_blk
+#define f_blksize      u.ffs.ffs_blksize
+#define f_blkno                u.ffs.ffs_blkno
+#endif /* EEK */
+
+#endif /* _BOOT_UFS_DISK_INODE_FFS_H_ */