📄 phile.h
字号:
#define S_ISUID 0004000 /* set user id on execution */#define S_ISGID 0002000 /* set group id on execution */#define S_ISVTX 0001000 /* save swapped text even after use */ #define S_IRWXU 0000700 /* rwx for owner */#define S_IRUSR 0000400 /* read permission for owner */#define S_IWUSR 0000200 /* write permission for owner */#define S_IXUSR 0000100 /* execute/search permission for owner */#define S_IRWXG 0000070 /* rwx for group */#define S_IRGRP 0000040 /* read permission for group */#define S_IWGRP 0000020 /* write permission for grougroup */#define S_IXGRP 0000010 /* execute/search permission for group */#define S_IRWXO 0000007 /* rwx for other */#define S_IROTH 0000004 /* read permission for other */#define S_IWOTH 0000002 /* write permission for other */#define S_IXOTH 0000001 /* execute/search permission for other */ /*---------------------------------------------------------------------*//* Possible values of struct statvfs member f_fstype *//*---------------------------------------------------------------------*/#define FSTYPE_PHILE 0 /* pHILE+ formatted volumes */#define FSTYPE_PCDOS 1 /* PC/DOS formatted volumes */#define FSTYPE_CDROM 2 /* ISO-9660 formatted volumes */#define FSTYPE_NFS 3 /* Client-side NFS "volumes" */#define NUM_FSTYPE 4 /* Count of file system types *//*---------------------------------------------------------------------*//* access_f(): test accessibility *//*---------------------------------------------------------------------*/#define R_OK 4 /* read permission */#define W_OK 2 /* write permission */#define X_OK 1 /* execute permission */#define F_OK 0 /* presence of file *//*---------------------------------------------------------------------*//* create_f() and make_dir() mode Definitions *//*---------------------------------------------------------------------*/#define S_IREAD 0000400 /* read permission, owner */#define S_IWRITE 0000200 /* write permission, owner */#define S_IEXEC 0000100 /* execute/search permission, owner */#define S_IRUSR 0000400 /* read permission, owner */#define S_IWUSR 0000200 /* write permission, owner */#define S_IXUSR 0000100 /* execute/search permission, owner */#define S_IRGRP 0000040 /* read permission, group */#define S_IWGRP 0000020 /* write permission, group */#define S_IXGRP 0000010 /* execute/search permission, group */#define S_IROTH 0000004 /* read permission, other */#define S_IWOTH 0000002 /* write permission, other */#define S_IXOTH 0000001 /* execute/search permission, other *//*---------------------------------------------------------------------*//* mount_vol() and pcmount_vol() sync_mode Definitions *//*---------------------------------------------------------------------*/#define SM_IMMED_WRITE 0#define SM_CONTROL_WRITE 1#define SM_DELAYED_WRITE 2/*---------------------------------------------------------------------*//* BUFFER_HEADER Structure b_flags Definitions *//*---------------------------------------------------------------------*/#define BT_UNKNOWN 0x00#define BT_DATA 0x01#define BT_CONTROL 0x02/*---------------------------------------------------------------------*//* MS-DOS Volume Type Definitions *//*---------------------------------------------------------------------*/#define DK_360 1#define DK_12 2#define DK_720 3#define DK_144 4#define DK_288 5/***********************************************************************//* pHILE+ Error Codes *//***********************************************************************//*---------------------------------------------------------------------*//* Fatal pHILE+ Error Codes *//*---------------------------------------------------------------------*/#define FAT_NORAM 0x2F01 /* Insufficient data area */#define FAT_PHCSUM 0x2F0E /* Check sum in pHILE+ *//*---------------------------------------------------------------------*//* General pHILE+ Error Codes *//*---------------------------------------------------------------------*/#define E_FUNC 0x2001 /* Invalid function number */#define E_FAIL 0x2002 /* pHILE+ failure */#define E_BADVOL 0x2003 /* Inconsistent structure on volume */#define E_VINITPAR 0x2005 /* Illegal parameters to init_vol() */#define E_MNTFULL 0x2006 /* Attempt to mount too many volumes */#define E_VALIEN 0x2007 /* Wrong volume format */#define E_MNTED 0x2008 /* Volume already mounted */#define E_MNTOPEN 0x2009 /* Cannot unmount - there are files open */#define E_DMOUNT 0x200A /* Volume not mounted */#define E_FNAME 0x200B /* Filename not found */#define E_IFN 0x200C /* Illegal pathname */#define E_NDD 0x200D /* No default directory */#define E_FORD 0x200E /* Directory file expected */#define E_ASIZE 0x200F /* Illegal expansion unit */#define E_NODE 0x2010 /* Null pathname */#define E_FEXIST 0x2011 /* File already exists */#define E_FLIST 0x2012 /* Too many files on volume */#define E_FOPEN 0x2013 /* Cannot remove an open file */#define E_DNE 0x2014 /* Directory not empty */#define E_RO 0x2015 /* Illegal on system or directory file */#define E_DIFDEV 0x2016 /* Operation must be on the same volume */#define E_NOTREE 0x2017 /* MOVE_F would destroy directory tree */#define E_OFULL 0x2018 /* Too many files open for task */#define E_NOFCB 0x2019 /* Too many files open in system */#define E_FIDBIG 0x201A /* Invalid FID, exceeds maximum */#define E_FIDOFF 0x201B /* Invalid FID, file closed */#define E_ININFULL 0x201C /* Index block full */#define E_VFULL 0x201D /* Volume full */#define E_BADPOS 0x201E /* Bad position to lseek */#define E_EOF 0x201F /* Seek past end of file */#define E_UNUSED 0x2020#define E_ILLDEV 0x2021 /* Illegal device (exceeded maximum) */#define E_LOCKED 0x2022 /* Data locked */#define E_BADFN 0x2023 /* Illegal or unused filename */#define E_FMODE 0x2024 /* Illegal synchronization mode */#define E_IDN 0x2025 /* Illegal device name *//*----------------------------------------------------------------------*//* Errors Returned PCDOS FS related activity *//*----------------------------------------------------------------------*/#define E_BADMS 0x2026 /* bad MS/DOS call */#define E_ILLMSTYP 0x2027 /* Illegal DOS disk type */#define E_MULMSDSK 0x2028 /* Format conflicts with mounted volumes */#define E_NMSVOL 0x2029 /* Cannot mount MS-DOS volume *//*----------------------------------------------------------------------*//* Errors Returned from FS Common activity (0x204?) *//*----------------------------------------------------------------------*/#define E_MAGIC 0x2040 /* unrecognized volume magic number */#define E_BUFSIZE 0x2041 /* buffers not available for block size */#define E_MEDIA 0x2042 /* change occured for removable media *//*----------------------------------------------------------------------*//* Errors Returned NFS related activity (0x205?) *//*----------------------------------------------------------------------*/#define E_BADNFS 0x2050 /* NFS volume - illegal operation */#define E_MAXLOOP 0x2051 /* Symbolic links nested too deeply */#define E_PERM 0x2053 /* Task does not have ownership */#define E_EIO 0x2054 /* Hard error happened at remote site */#define E_EACCES 0x2055 /* Task does not have access permisssions */#define E_EISDIR 0x2056 /* Illegal operation on a directory */#define E_EQUOT 0x2057 /* Quota exceeded */#define E_ESTALE 0x2058 /* Stale NFS file handle */#define E_XLINK 0x2059 /* Can't crose link */#define E_NAMETOOLONG 0x205A /* directory/file name too long *//*----------------------------------------------------------------------*//* Errors Returned CDFS related activity (0x206?) *//*----------------------------------------------------------------------*/#define E_BADCD 0x2060 /* Error for unsupported CDFS call */#define E_NCDVOL 0x2061 /* Not configured for CD-ROM volumes. */#define E_CDMVOL 0x2062 /* Can't support multi-volume CD_ROM. */#define E_CDBSIZE 0x2063 /* Volume not made with 2k block size. */#define E_CDFMT 0x2064 /* CD-ROM not ISO-9660 compliant. *//*----------------------------------------------------------------------*//* Set RPC to pHILE mapping (0x207?) *//*----------------------------------------------------------------------*/#define E_EAUTH 0x2070 /* RPC authorization is not available */#define E_ENFS 0x2071 /* NFS Error */#define E_ETIMEDOUT 0x2072 /* NFS call timed out */#define E_ENORPCCLNT 0x2073 /* No RPC clients available */#define E_ENOAUTHBLK 0x2074 /* No RPC auth blocks available *//*---------------------------------------------------------------------*//* verify_vol() Error Codes *//*---------------------------------------------------------------------*//*-------------------------------------------------------------------*/ /* ROOT BLOCK FAULTS *//*-------------------------------------------------------------------*/ #define VF_BMOFL 0x2101 /* Bitmap and FLIST overlap */#define VF_BMSIZ 0x2102 /* Bitmap wrong size */#define VF_FLSIZ 0x2103 /* FLIST wrong size */#define VF_BMOVL 0x2104 /* Bitmap overflows volume */#define VF_FLOVL 0x2105 /* FLIST overflows volume */#define VF_BMDA 0x2106 /* Bitmap overlaps data area */#define VF_FLDA 0x2107 /* FLIST overlaps data area */ /*-------------------------------------------------------------------*/ /* CONTROL STRUCTURE FAULTS. *//*-------------------------------------------------------------------*/ #define VF_BMEXT 0x2108 /* Bitmap extent map wrong */#define VF_FLEXT 0x2109 /* FLIST extent map wrong */#define VF_NDRFD 0x210A /* ROOT dir FD not marked as directory */#define VF_FDMU 0x210B /* FD in use by more than 1 file */#define VF_FDFRE 0x210C /* FD in use marked free */#define VF_FDUSE 0x210D /* Unused FD marked in use */ /*------------------------------------------------------------------*//* FILE DESCRIPTOR FAULTS *//*------------------------------------------------------------------*/#define VF_NSSFD 0x2110 /* Non-system file marked system in FD */#define VF_SNSFD 0x2111 /* System file marked non-system in FD */#define VF_PARFD 0x2112 /* Wrong parent FN in FD */#define VF_FCFD 0x2113 /* Wrong file count in directory FD */#define VF_SIZFD 0x2114 /* Physical size < logical size in FD */#define VF_ANXFD 0x2115 /* Extension unit = 0 in FD */ /*-------------------------------------------------------------------*/ /* EXTENT MAP FAULTS. *//*-------------------------------------------------------------------*/ #define VF_EXTFD 0x2118 /* Illegal extent in FD */#define VF_INFD 0x2119 /* Illegal indirect block in FD */#define VF_IXFD 0x211A /* Illegal index block in FD */#define VF_TBCFD 0x211B /* Wrong block count in FD */#define VF_LLBFD 0x211C /* Wrong LLB in FD */#define VF_LLBIN 0x211D /* Wrong LLB in FD indirect blk descriptor */#define VF_EXTIN 0x211E /* Illegal extent in indirect block */#define VF_INIX 0x211F /* Illegal indirect block in index block */#define VF_LLBIX 0x2120 /* Wrong LLB in indirect blk descriptor */#define VF_DBDA 0x2121 /* Directory block in data area */#define VF_INDA 0x2122 /* Indirect block in data area */#define VF_IXDA 0x2123 /* Index block in data area */ /*-------------------------------------------------------------------*/ /* DIRECTORY FAULTS *//*-------------------------------------------------------------------*/ #define VF_DFDIR 0x2124 /* Duplicate filename in directory */#define VF_IFDIR 0x2125 /* Illegal filename in directory */#define VF_FNDIR 0x2126 /* Illegal FN in directory */ /*-------------------------------------------------------------------*/ /* BITMAP/BLOCK FAULTS. *//*-------------------------------------------------------------------*/ #define VF_BKMU 0x2128 /* Block is multiply used */#define VF_BBUSE 0x2129 /* Bad BLOCK in use */#define VF_BKFRE 0x212A /* BLOCK in use is marked free */#define VF_BBFRE 0x212B /* Bad BLOCK is marked free */#define VF_BKUSE 0x212C /* Unused block marked in use */ /*-------------------------------------------------------------------*/ /* FATAL ERROR CODES. *//*-------------------------------------------------------------------*/ #define VF_INSUFF 0x2200 /* Work area too small */#define VF_MAXDEPTH 0x2201 /* Directory depth exceeds maximum */#define VF_ABORT 0x2202 /* Verify routine aborted by user */ /*---------------------------------------------------------------------*//* #endif for phile.h include *//*---------------------------------------------------------------------*/#endif#if defined(__cplusplus)}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -