Nothing to see here, move along
at main 54 lines 1.4 kB view raw
1#[derive(Debug, Clone, Copy, PartialEq, Eq)] 2pub enum FsError { 3 Io(u16), 4 CacheFull, 5 FreemapExhausted, 6 InvalidBlock, 7 CorruptSuperblock, 8 CorruptNode, 9 ReservedExhausted, 10 NotFound, 11 RingFull, 12 PoolExhausted, 13 TreeFull, 14 DuplicateKey, 15 KeyNotFound, 16 DecompressError, 17 DirectoryNotEmpty, 18 NameTooLong, 19 SymlinkDepthExceeded, 20 NotADirectory, 21 NotAFile, 22 IsADirectory, 23 FileExists, 24 InvalidName, 25 PathTooDeep, 26 IntegrityFailure, 27 InsufficientRights, 28 StaleGeneration, 29 HandleTableFull, 30 InvalidHandle, 31 DoubleFree, 32} 33 34impl From<crate::cap::CapError> for FsError { 35 fn from(e: crate::cap::CapError) -> Self { 36 match e { 37 crate::cap::CapError::InsufficientRights => FsError::InsufficientRights, 38 crate::cap::CapError::StaleGeneration => FsError::StaleGeneration, 39 crate::cap::CapError::InvalidHandle => FsError::InvalidHandle, 40 crate::cap::CapError::HandleTableFull => FsError::HandleTableFull, 41 crate::cap::CapError::NotADirectory => FsError::NotADirectory, 42 crate::cap::CapError::PathTooDeep => FsError::PathTooDeep, 43 } 44 } 45} 46 47#[derive(Debug, Clone, Copy, PartialEq, Eq)] 48pub enum IntegrityError { 49 CrcMismatch { block_num: u64 }, 50 HashMismatch { block_num: u64 }, 51 TreeCorrupt, 52 KeyNotInTree, 53 Io(FsError), 54}