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