91 references to FieldLengths
System.Formats.Tar (91)
System\Formats\Tar\FieldLocations.cs (30)
12
internal const ushort Mode =
FieldLengths
.Name;
13
internal const ushort Uid = Mode +
FieldLengths
.Mode;
14
internal const ushort Gid = Uid +
FieldLengths
.Uid;
15
internal const ushort Size = Gid +
FieldLengths
.Gid;
16
internal const ushort MTime = Size +
FieldLengths
.Size;
17
internal const ushort Checksum = MTime +
FieldLengths
.MTime;
18
internal const ushort TypeFlag = Checksum +
FieldLengths
.Checksum;
19
internal const ushort LinkName = TypeFlag +
FieldLengths
.TypeFlag;
23
internal const ushort Magic = LinkName +
FieldLengths
.LinkName;
24
internal const ushort Version = Magic +
FieldLengths
.Magic;
25
internal const ushort UName = Version +
FieldLengths
.Version;
26
internal const ushort GName = UName +
FieldLengths
.UName;
27
internal const ushort DevMajor = GName +
FieldLengths
.GName;
28
internal const ushort DevMinor = DevMajor +
FieldLengths
.DevMajor;
32
internal const ushort Prefix = DevMinor +
FieldLengths
.DevMinor;
36
internal const ushort ATime = DevMinor +
FieldLengths
.DevMinor;
37
internal const ushort CTime = ATime +
FieldLengths
.ATime;
38
internal const ushort Offset = CTime +
FieldLengths
.CTime;
39
internal const ushort LongNames = Offset +
FieldLengths
.Offset;
40
internal const ushort Unused = LongNames +
FieldLengths
.LongNames;
41
internal const ushort Sparse = Unused +
FieldLengths
.Unused;
42
internal const ushort IsExtended = Sparse +
FieldLengths
.Sparse;
43
internal const ushort RealSize = IsExtended +
FieldLengths
.IsExtended;
45
internal const ushort GnuUnused = CTime +
FieldLengths
.CTime;
49
internal const ushort V7Padding = LinkName +
FieldLengths
.LinkName;
50
internal const ushort PosixPadding = Prefix +
FieldLengths
.Prefix;
51
internal const ushort GnuPadding = RealSize +
FieldLengths
.RealSize;
53
internal const ushort V7Data = V7Padding +
FieldLengths
.V7Padding;
54
internal const ushort PosixData = PosixPadding +
FieldLengths
.PosixPadding;
55
internal const ushort GnuData = GnuPadding +
FieldLengths
.GnuPadding;
System\Formats\Tar\TarHeader.Read.cs (17)
367
ReadOnlySpan<byte> spanChecksum = buffer.Slice(FieldLocations.Checksum,
FieldLengths
.Checksum);
379
long size = TarHelpers.ParseNumeric<long>(buffer.Slice(FieldLocations.Size,
FieldLengths
.Size));
387
name: TarHelpers.GetTrimmedUtf8String(buffer.Slice(FieldLocations.Name,
FieldLengths
.Name)),
388
mode: TarHelpers.ParseNumeric<int>(buffer.Slice(FieldLocations.Mode,
FieldLengths
.Mode)),
389
mTime: TarHelpers.GetDateTimeOffsetFromSecondsSinceEpoch(TarHelpers.ParseNumeric<long>(buffer.Slice(FieldLocations.MTime,
FieldLengths
.MTime))),
394
_uid = TarHelpers.ParseNumeric<int>(buffer.Slice(FieldLocations.Uid,
FieldLengths
.Uid)),
395
_gid = TarHelpers.ParseNumeric<int>(buffer.Slice(FieldLocations.Gid,
FieldLengths
.Gid)),
396
_linkName = TarHelpers.GetTrimmedUtf8String(buffer.Slice(FieldLocations.LinkName,
FieldLengths
.LinkName))
431
ReadOnlySpan<byte> magic = buffer.Slice(FieldLocations.Magic,
FieldLengths
.Magic);
470
ReadOnlySpan<byte> version = buffer.Slice(FieldLocations.Version,
FieldLengths
.Version);
520
_uName = TarHelpers.GetTrimmedUtf8String(buffer.Slice(FieldLocations.UName,
FieldLengths
.UName));
521
_gName = TarHelpers.GetTrimmedUtf8String(buffer.Slice(FieldLocations.GName,
FieldLengths
.GName));
528
_devMajor = TarHelpers.ParseNumeric<int>(buffer.Slice(FieldLocations.DevMajor,
FieldLengths
.DevMajor));
531
_devMinor = TarHelpers.ParseNumeric<int>(buffer.Slice(FieldLocations.DevMinor,
FieldLengths
.DevMinor));
540
long aTime = TarHelpers.ParseNumeric<long>(buffer.Slice(FieldLocations.ATime,
FieldLengths
.ATime));
543
long cTime = TarHelpers.ParseNumeric<long>(buffer.Slice(FieldLocations.CTime,
FieldLengths
.CTime));
553
_prefix = TarHelpers.GetTrimmedUtf8String(buffer.Slice(FieldLocations.Prefix,
FieldLengths
.Prefix));
System\Formats\Tar\TarHeader.Write.cs (44)
365
if (_linkName != null && Encoding.UTF8.GetByteCount(_linkName) >
FieldLengths
.LinkName)
374
if (Encoding.UTF8.GetByteCount(_name) >
FieldLengths
.Name)
401
if (_linkName != null && Encoding.UTF8.GetByteCount(_linkName) >
FieldLengths
.LinkName)
410
if (Encoding.UTF8.GetByteCount(_name) >
FieldLengths
.Name)
527
if (encodedLength >
FieldLengths
.Name)
534
int utf16NameTruncatedLength = GetUtf16TruncatedTextLength(name,
FieldLengths
.Name);
538
return WriteAsUtf8String(name, buffer.Slice(FieldLocations.Name,
FieldLengths
.Name));
548
const int MaxPathName =
FieldLengths
.Prefix + 1 +
FieldLengths
.Name;
560
if (pathNameBytes.Length <=
FieldLengths
.Name)
562
return WriteLeftAlignedBytesAndGetChecksum(pathNameBytes, buffer.Slice(FieldLocations.Name,
FieldLengths
.Name));
582
while (prefix.Length - name.Length >
FieldLengths
.Prefix)
594
if (prefix.Length <=
FieldLengths
.Prefix && name.Length <=
FieldLengths
.Name)
598
int checksum = WriteLeftAlignedBytesAndGetChecksum(prefix, buffer.Slice(FieldLocations.Prefix,
FieldLengths
.Prefix));
599
checksum += WriteLeftAlignedBytesAndGetChecksum(name, buffer.Slice(FieldLocations.Name,
FieldLengths
.Name));
619
checksum += FormatNumeric(_mode, buffer.Slice(FieldLocations.Mode,
FieldLengths
.Mode));
624
checksum += FormatNumeric(_uid, buffer.Slice(FieldLocations.Uid,
FieldLengths
.Uid));
629
checksum += FormatNumeric(_gid, buffer.Slice(FieldLocations.Gid,
FieldLengths
.Gid));
634
checksum += FormatNumeric(_size, buffer.Slice(FieldLocations.Size,
FieldLengths
.Size));
637
checksum += WriteAsTimestamp(_mTime, buffer.Slice(FieldLocations.MTime,
FieldLengths
.MTime));
647
if (GetUtf8TextLength(linkName) >
FieldLengths
.LinkName)
654
int truncatedLength = GetUtf16TruncatedTextLength(linkName,
FieldLengths
.LinkName);
658
checksum += WriteAsUtf8String(linkName, buffer.Slice(FieldLocations.LinkName,
FieldLengths
.LinkName));
683
int checksum = WriteLeftAlignedBytesAndGetChecksum(UstarMagicBytes, buffer.Slice(FieldLocations.Magic,
FieldLengths
.Magic));
684
checksum += WriteLeftAlignedBytesAndGetChecksum(UstarVersionBytes, buffer.Slice(FieldLocations.Version,
FieldLengths
.Version));
691
int checksum = WriteLeftAlignedBytesAndGetChecksum(GnuMagicBytes, buffer.Slice(FieldLocations.Magic,
FieldLengths
.Magic));
692
checksum += WriteLeftAlignedBytesAndGetChecksum(GnuVersionBytes, buffer.Slice(FieldLocations.Version,
FieldLengths
.Version));
705
if (GetUtf8TextLength(uName) >
FieldLengths
.UName)
712
int truncatedLength = GetUtf16TruncatedTextLength(uName,
FieldLengths
.UName);
716
checksum += WriteAsUtf8String(uName, buffer.Slice(FieldLocations.UName,
FieldLengths
.UName));
723
if (GetUtf8TextLength(gName) >
FieldLengths
.GName)
730
int truncatedLength = GetUtf16TruncatedTextLength(gName,
FieldLengths
.GName);
734
checksum += WriteAsUtf8String(gName, buffer.Slice(FieldLocations.GName,
FieldLengths
.GName));
739
checksum += FormatNumeric(_devMajor, buffer.Slice(FieldLocations.DevMajor,
FieldLengths
.DevMajor));
744
checksum += FormatNumeric(_devMinor, buffer.Slice(FieldLocations.DevMinor,
FieldLengths
.DevMinor));
753
int checksum = WriteAsTimestamp(_aTime, buffer.Slice(FieldLocations.ATime,
FieldLengths
.ATime));
754
checksum += WriteAsTimestamp(_cTime, buffer.Slice(FieldLocations.CTime,
FieldLengths
.CTime));
758
checksum += WriteLeftAlignedBytesAndGetChecksum(_gnuUnusedBytes, buffer.Slice(FieldLocations.GnuUnused,
FieldLengths
.AllGnuUnused));
913
TryAddStringField(ExtendedAttributes, PaxEaGName, _gName,
FieldLengths
.GName);
914
TryAddStringField(ExtendedAttributes, PaxEaUName, _uName,
FieldLengths
.UName);
990
Span<byte> converted = stackalloc byte[
FieldLengths
.Checksum];
994
Span<byte> destination = buffer.Slice(FieldLocations.Checksum,
FieldLengths
.Checksum);
1178
return result.Length >=
FieldLengths
.Name ?