Igor Anić
7d3a31872e
tar: improve diagnostic reporting
Using Python testtar file (mentioned in #14310) to test diagnostic
reporting.
Added computing checksum by using both unsigned and signed header bytes
values.
Added skipping gnu exteneded sparse headers while reporting unsupported
header in diagnostic.
Note on testing:
wget https://github.com/python/cpython/raw/3.11/Lib/test/testtar.tar -O
/tmp/testtar.tar
```
test "Python testtar.tar file" {
const file_name = "testtar.tar";
var file = try std.fs.cwd().openFile("/tmp/" ++ file_name, .{});
defer file.close();
var diag = Options.Diagnostics{ .allocator = std.testing.allocator };
defer diag.deinit();
var iter = iterator(file.reader(), &diag);
while (try iter.next()) |f| {
std.debug.print("supported: {} {s} {d}\n", .{ f.kind, f.name, f.size });
try f.skip();
}
for (diag.errors.items) |e| {
switch (e) {
.unsupported_file_type => |u| {
std.debug.print("unsupported: {} {s}\n", .{ u.file_type, u.file_name });
},
else => unreachable,
}
}
}
```
2024-01-13 19:37:33 -07:00
..
2024-01-04 17:41:30 +02:00
2024-01-12 16:25:55 -08:00
2023-09-19 09:37:31 -07:00
2023-12-20 13:17:15 +02:00
2024-01-08 11:53:06 -07:00
2023-09-19 09:37:53 -07:00
2023-09-19 09:37:31 -07:00
2023-09-19 09:37:31 -07:00
2024-01-13 19:37:33 -07:00
2024-01-10 01:00:37 -07:00
2024-01-10 17:11:26 -08:00
2023-07-31 03:49:21 -04:00
2023-11-10 13:12:10 -07:00
2023-11-01 19:47:15 +01:00
2024-01-03 02:52:25 -05:00