diff options
author | Colin Finck <colin@reactos.org> | 2021-07-21 21:16:12 +0300 |
---|---|---|
committer | Colin Finck <colin@reactos.org> | 2021-07-21 21:16:12 +0300 |
commit | b659b7861b19dde96819620c71bee883f23d3e13 (patch) | |
tree | 9e3a3347868e9c7355fe6cca1a4f62cbede4ae47 /Cargo.toml | |
parent | 9fa9dda7eede3ca5689e67ad6e7ca76398443603 (diff) |
Implement Update Sequence Array parsing and record fixups.
This is where things get dirty. As NTFS requires us to fix up records, we can't continue our previous design of avoiding dynamic allocations and reading everything on demand via `io::Read`.
Instead, we now read an entire record (usually not larger than 4 KiB), fix it up, and store it in a `Vec`.
This required changes almost everywhere.
It should be noted that many non-resident attributes are not part of a record, which is why structured values are now implemented differently depending on the attribute type.
On the plus side, many structures need less borrowing now, which makes them more comfortable to use.
I have also added missing sanity checks with precise errors where appropriate.
Diffstat (limited to 'Cargo.toml')
-rw-r--r-- | Cargo.toml | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -8,6 +8,7 @@ edition = "2018" [dependencies] binread = { version = "2.1.1", features = ["const_generics"], default-features = false } +byteorder = { version = "1.4.3", default-features = false } bitflags = "1.2.1" chrono = { version = "0.4.19", optional = true } displaydoc = { version = "0.2.1", default-features = false } @@ -16,4 +17,4 @@ memoffset = "0.6.4" [features] default = ["std"] -std = ["binread/std"] +std = ["binread/std", "byteorder/std"] |