strat: revise fs unsupported operation results, add overflow utils
This commit is contained in:
@@ -109,12 +109,12 @@ namespace ams::fssystem {
|
||||
|
||||
virtual Result Write(s64 offset, const void *buffer, size_t size) override {
|
||||
AMS_UNUSED(offset, buffer, size);
|
||||
R_THROW(fs::ResultUnsupportedOperationInAesCtrCounterExtendedStorageA());
|
||||
R_THROW(fs::ResultUnsupportedWriteForAesCtrCounterExtendedStorage());
|
||||
}
|
||||
|
||||
virtual Result SetSize(s64 size) override {
|
||||
AMS_UNUSED(size);
|
||||
R_THROW(fs::ResultUnsupportedOperationInAesCtrCounterExtendedStorageB());
|
||||
R_THROW(fs::ResultUnsupportedSetSizeForAesCtrCounterExtendedStorage());
|
||||
}
|
||||
private:
|
||||
Result Initialize(IAllocator *allocator, const void *key, size_t key_size, u32 secure_value, fs::SubStorage data_storage, fs::SubStorage table_storage);
|
||||
|
||||
@@ -110,7 +110,7 @@ namespace ams::fssystem {
|
||||
virtual Result Read(s64 offset, void *buffer, size_t size) override;
|
||||
virtual Result Write(s64 offset, const void *buffer, size_t size) override;
|
||||
|
||||
virtual Result SetSize(s64) override { R_THROW(fs::ResultUnsupportedOperationInBlockCacheBufferedStorageA()); }
|
||||
virtual Result SetSize(s64) override { R_THROW(fs::ResultUnsupportedSetSizeForBlockCacheBufferedStorage()); }
|
||||
virtual Result GetSize(s64 *out) override;
|
||||
|
||||
virtual Result Flush() override;
|
||||
|
||||
@@ -1424,7 +1424,7 @@ namespace ams::fssystem {
|
||||
R_TRY(m_core.QueryRange(dst, dst_size, offset, size));
|
||||
break;
|
||||
default:
|
||||
R_THROW(fs::ResultUnsupportedOperationInCompressedStorageB());
|
||||
R_THROW(fs::ResultUnsupportedOperateRangeForCompressedStorage());
|
||||
}
|
||||
|
||||
R_SUCCEED();
|
||||
@@ -1440,13 +1440,13 @@ namespace ams::fssystem {
|
||||
|
||||
virtual Result Write(s64 offset, const void *buffer, size_t size) override {
|
||||
AMS_UNUSED(offset, buffer, size);
|
||||
R_THROW(fs::ResultUnsupportedOperationInCompressedStorageA());
|
||||
R_THROW(fs::ResultUnsupportedWriteForCompressedStorage());
|
||||
}
|
||||
|
||||
virtual Result SetSize(s64 size) override {
|
||||
AMS_UNUSED(size);
|
||||
/* NOTE: Is Nintendo returning the wrong result here? */
|
||||
R_THROW(fs::ResultUnsupportedOperationInIndirectStorageB());
|
||||
R_THROW(fs::ResultUnsupportedSetSizeForIndirectStorage());
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -162,7 +162,7 @@ namespace ams::fssystem {
|
||||
virtual Result Read(s64 offset, void *buffer, size_t size) override;
|
||||
virtual Result Write(s64 offset, const void *buffer, size_t size) override;
|
||||
|
||||
virtual Result SetSize(s64 size) override { AMS_UNUSED(size); return fs::ResultUnsupportedOperationInHierarchicalIntegrityVerificationStorageA(); }
|
||||
virtual Result SetSize(s64 size) override { AMS_UNUSED(size); return fs::ResultUnsupportedSetSizeForHierarchicalIntegrityVerificationStorage(); }
|
||||
virtual Result GetSize(s64 *out) override;
|
||||
|
||||
virtual Result Flush() override;
|
||||
|
||||
@@ -147,12 +147,12 @@ namespace ams::fssystem {
|
||||
|
||||
virtual Result Write(s64 offset, const void *buffer, size_t size) override {
|
||||
AMS_UNUSED(offset, buffer, size);
|
||||
R_THROW(fs::ResultUnsupportedOperationInIndirectStorageA());
|
||||
R_THROW(fs::ResultUnsupportedWriteForIndirectStorage());
|
||||
}
|
||||
|
||||
virtual Result SetSize(s64 size) override {
|
||||
AMS_UNUSED(size);
|
||||
R_THROW(fs::ResultUnsupportedOperationInIndirectStorageB());
|
||||
R_THROW(fs::ResultUnsupportedSetSizeForIndirectStorage());
|
||||
}
|
||||
protected:
|
||||
BucketTree &GetEntryTable() { return m_table; }
|
||||
|
||||
@@ -48,7 +48,7 @@ namespace ams::fssystem {
|
||||
return m_integrity_storage.Write(offset, buffer, size);
|
||||
}
|
||||
|
||||
virtual Result SetSize(s64 size) override { AMS_UNUSED(size); return fs::ResultUnsupportedOperationInIntegrityRomFsStorageA(); }
|
||||
virtual Result SetSize(s64 size) override { AMS_UNUSED(size); return fs::ResultUnsupportedSetSizeForIntegrityRomFsStorage(); }
|
||||
|
||||
virtual Result GetSize(s64 *out) override {
|
||||
return m_integrity_storage.GetSize(out);
|
||||
|
||||
@@ -55,7 +55,7 @@ namespace ams::fssystem {
|
||||
virtual Result Read(s64 offset, void *buffer, size_t size) override;
|
||||
virtual Result Write(s64 offset, const void *buffer, size_t size) override;
|
||||
|
||||
virtual Result SetSize(s64 size) override { AMS_UNUSED(size); return fs::ResultUnsupportedOperationInIntegrityVerificationStorageA(); }
|
||||
virtual Result SetSize(s64 size) override { AMS_UNUSED(size); return fs::ResultUnsupportedSetSizeForIntegrityVerificationStorage(); }
|
||||
virtual Result GetSize(s64 *out) override;
|
||||
|
||||
virtual Result Flush() override;
|
||||
|
||||
@@ -56,12 +56,12 @@ namespace ams::fssystem {
|
||||
|
||||
virtual Result Write(s64 offset, const void *buffer, size_t size) override {
|
||||
AMS_UNUSED(offset, buffer, size);
|
||||
R_THROW(fs::ResultUnsupportedOperationInZeroStorageA());
|
||||
R_THROW(fs::ResultUnsupportedWriteForZeroStorage());
|
||||
}
|
||||
|
||||
virtual Result SetSize(s64 size) override {
|
||||
AMS_UNUSED(size);
|
||||
R_THROW(fs::ResultUnsupportedOperationInZeroStorageB());
|
||||
R_THROW(fs::ResultUnsupportedSetSizeForZeroStorage());
|
||||
}
|
||||
};
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user