 f4814901af
			
		
	
	
		f4814901af
		
	
	
	
	
		
			
			This patch moves more includes (most of them, to tell the truth) to common/include directory. This completes the list of includes needed to compile current trunk with the new libc (but to do that you need more patches in queue). This patch also contains some modification (for compilation with new headers) to the common includes under __NBSD_LIBC, the define used in mk script to specialize compilation with new includes.
		
			
				
	
	
		
			138 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			138 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef __MINIX_VFSIF_H
 | |
| #define __MINIX_VFSIF_H
 | |
| 
 | |
| #include <sys/types.h>
 | |
| #include <limits.h>
 | |
| 
 | |
| /* VFS/FS request fields */
 | |
| #define REQ_ACTIME		m9_l2
 | |
| #define REQ_COUNT		m9_l2
 | |
| #define REQ_DEV			m9_l5
 | |
| #define REQ_DEV2		m9_l1
 | |
| #define REQ_DIR_INO   		m9_l3
 | |
| #define REQ_DRIVER_E		m9_l2
 | |
| #define REQ_FLAGS		m9_s3
 | |
| #define REQ_GID			m9_s1
 | |
| #define REQ_GRANT		m9_l2
 | |
| #define REQ_GRANT2		m9_l1 
 | |
| #define REQ_GRANT3		m9_l3
 | |
| #define REQ_INODE_NR		m9_l1
 | |
| #define REQ_MEM_SIZE		m9_l5
 | |
| #define REQ_MODE		m9_s3
 | |
| #define REQ_MODTIME		m9_l3
 | |
| #define REQ_NBYTES		m9_l5
 | |
| #define REQ_PATH_LEN		m9_s2
 | |
| #define REQ_PATH_SIZE		m9_l5
 | |
| #define REQ_REN_GRANT_NEW	m9_l1
 | |
| #define REQ_REN_GRANT_OLD	m9_l2
 | |
| #define REQ_REN_LEN_NEW		m9_s2
 | |
| #define REQ_REN_LEN_OLD		m9_s1
 | |
| #define REQ_REN_NEW_DIR		m9_l4
 | |
| #define REQ_REN_OLD_DIR		m9_l3
 | |
| #define REQ_ROOT_INO		m9_l4
 | |
| #define REQ_SEEK_POS_HI		m9_l3
 | |
| #define REQ_SEEK_POS_LO		m9_l4
 | |
| #define REQ_TRC_END_HI		m9_l4
 | |
| #define REQ_TRC_END_LO		m9_l5
 | |
| #define REQ_TRC_START_HI	m9_l2
 | |
| #define REQ_TRC_START_LO	m9_l3
 | |
| #define REQ_UCRED_SIZE		m9_s4 
 | |
| #define REQ_UID			m9_s4
 | |
| 
 | |
| 
 | |
| /* VFS/FS reply fields */
 | |
| #define RES_DEV			m9_l4
 | |
| #define RES_GID			m9_s1
 | |
| #define RES_INODE_NR		m9_l1
 | |
| #define RES_FILE_SIZE_HI	m9_l2
 | |
| #define RES_FILE_SIZE_LO	m9_l3
 | |
| #define RES_MODE		m9_s2
 | |
| #define RES_NBYTES		m9_l5
 | |
| #define RES_OFFSET		m9_s2
 | |
| #define RES_SEEK_POS_HI		m9_l3
 | |
| #define RES_SEEK_POS_LO		m9_l4
 | |
| #define RES_SYMLOOP		m9_s3
 | |
| #define RES_UID			m9_s4
 | |
| 
 | |
| /* VFS/FS flags */
 | |
| #define REQ_RDONLY		001
 | |
| #define REQ_ISROOT		002
 | |
| #define PATH_NOFLAGS		000
 | |
| #define PATH_RET_SYMLINK	010	/* Return a symlink object (i.e.
 | |
| 					 * do not continue with the contents
 | |
| 					 * of the symlink if it is the last
 | |
| 					 * component in a path). */
 | |
| #define PATH_GET_UCRED		020	/* Request provides a grant ID in m9_l1
 | |
| 					 * and struct ucred size in m9_s4 (as
 | |
| 					 * opposed to a REQ_UID). */
 | |
| 
 | |
| /* VFS/FS error messages */
 | |
| #define EENTERMOUNT              (-301)
 | |
| #define ELEAVEMOUNT              (-302)
 | |
| #define ESYMLINK                 (-303)
 | |
| 
 | |
| /* VFS/FS types */
 | |
| 
 | |
| /* User credential structure */
 | |
| typedef struct {
 | |
| 	uid_t vu_uid;
 | |
| 	gid_t vu_gid;
 | |
| 	int vu_ngroups;
 | |
| 	gid_t vu_sgroups[NGROUPS_MAX];
 | |
| } vfs_ucred_t;
 | |
| 
 | |
| /* Request numbers */
 | |
| #define REQ_GETNODE	(VFS_BASE + 1)	/* Should be removed */
 | |
| #define REQ_PUTNODE	(VFS_BASE + 2)
 | |
| #define REQ_SLINK	(VFS_BASE + 3)
 | |
| #define REQ_FTRUNC	(VFS_BASE + 4)
 | |
| #define REQ_CHOWN	(VFS_BASE + 5)
 | |
| #define REQ_CHMOD	(VFS_BASE + 6)
 | |
| #define REQ_INHIBREAD	(VFS_BASE + 7)
 | |
| #define REQ_STAT	(VFS_BASE + 8)
 | |
| #define REQ_UTIME	(VFS_BASE + 9)
 | |
| #define REQ_FSTATFS	(VFS_BASE + 10)
 | |
| #define REQ_BREAD	(VFS_BASE + 11)
 | |
| #define REQ_BWRITE	(VFS_BASE + 12)
 | |
| #define REQ_UNLINK	(VFS_BASE + 13)
 | |
| #define REQ_RMDIR	(VFS_BASE + 14)
 | |
| #define REQ_UNMOUNT	(VFS_BASE + 15)
 | |
| #define REQ_SYNC	(VFS_BASE + 16)
 | |
| #define REQ_NEW_DRIVER	(VFS_BASE + 17)
 | |
| #define REQ_FLUSH	(VFS_BASE + 18)
 | |
| #define REQ_READ	(VFS_BASE + 19)
 | |
| #define REQ_WRITE	(VFS_BASE + 20)
 | |
| #define REQ_MKNOD	(VFS_BASE + 21)
 | |
| #define REQ_MKDIR	(VFS_BASE + 22)
 | |
| #define REQ_CREATE	(VFS_BASE + 23)
 | |
| #define REQ_LINK	(VFS_BASE + 24)
 | |
| #define REQ_RENAME	(VFS_BASE + 25)
 | |
| #define REQ_LOOKUP	(VFS_BASE + 26)
 | |
| #define REQ_MOUNTPOINT  (VFS_BASE + 27)
 | |
| #define REQ_READSUPER	(VFS_BASE + 28) 
 | |
| #define REQ_NEWNODE	(VFS_BASE + 29)
 | |
| #define REQ_RDLINK	(VFS_BASE + 30)
 | |
| #define REQ_GETDENTS	(VFS_BASE + 31)
 | |
| #define REQ_STATVFS		(VFS_BASE + 32)
 | |
| 
 | |
| #define NREQS                   33
 | |
| 
 | |
| #define IS_VFS_RQ(type) (((type) & ~0xff) == VFS_BASE)
 | |
| 
 | |
| #define PFS_BASE		(VFS_BASE + 100)
 | |
| 
 | |
| #define PFS_REQ_CHECK_PERMS	(PFS_BASE + 1)
 | |
| #define PFS_REQ_VERIFY_FD	(PFS_BASE + 2)
 | |
| #define PFS_REQ_SET_FILP	(PFS_BASE + 3)
 | |
| #define PFS_REQ_COPY_FILP	(PFS_BASE + 4)
 | |
| #define PFS_REQ_PUT_FILP	(PFS_BASE + 5)
 | |
| #define PFS_REQ_CANCEL_FD	(PFS_BASE + 6)
 | |
| 
 | |
| #define PFS_NREQS		7
 | |
| 
 | |
| #define IS_PFS_VFS_RQ(type)	(type >= PFS_BASE && \
 | |
| 					type < (PFS_BASE + PFS_NREQS))
 | |
| 
 | |
| #endif
 | |
| 
 |