public static void NameTarHeader(ICSharpCode.SharpZipLib.Tar.TarHeader header, string name) { if (header == null) { throw new ArgumentNullException("header"); } if (name == null) { throw new ArgumentNullException("name"); } bool flag = name.EndsWith("/"); header.Name = name; header.Mode = flag ? 0x3eb : 0x81c0; header.UserId = 0; header.GroupId = 0; header.Size = 0L; header.ModTime = DateTime.UtcNow; header.TypeFlag = flag ? ((byte)0x35) : ((byte)0x30); header.LinkName = string.Empty; header.UserName = string.Empty; header.GroupName = string.Empty; header.DevMajor = 0; header.DevMinor = 0; }
public TarEntry(ICSharpCode.SharpZipLib.Tar.TarHeader header) { if (header == null) { throw new ArgumentNullException("header"); } this.header = (ICSharpCode.SharpZipLib.Tar.TarHeader)header.Clone(); }
public void NameTarHeader(ICSharpCode.SharpZipLib.Tar.TarHeader hdr, string name) { bool flag = name.EndsWith("/"); hdr.Name = name; hdr.Mode = flag ? 0x3eb : 0x81c0; hdr.UserId = 0; hdr.GroupId = 0; hdr.Size = 0L; hdr.ModTime = DateTime.UtcNow; hdr.TypeFlag = flag ? ((byte)0x35) : ((byte)0x30); hdr.LinkName = string.Empty; hdr.UserName = string.Empty; hdr.GroupName = string.Empty; hdr.DevMajor = 0; hdr.DevMinor = 0; }
static bool IsTar(PreprocessingStepParams fileInfo, IStreamHeader header) { var tarHeader = new ICSharpCode.SharpZipLib.Tar.TarHeader { Magic = "xxxxx" }; try { tarHeader.ParseBuffer(header.Header); } catch (Exception) { return(false); } return(tarHeader.IsChecksumValid || tarHeader.Magic?.Contains(ICSharpCode.SharpZipLib.Tar.TarHeader.TMAGIC) == true); }
public void GetFileTarHeader(ICSharpCode.SharpZipLib.Tar.TarHeader header, string file) { if (header == null) { throw new ArgumentNullException("header"); } if (file == null) { throw new ArgumentNullException("file"); } this.file = file; string str = file; if (str.IndexOf(Environment.CurrentDirectory) == 0) { str = str.Substring(Environment.CurrentDirectory.Length); } str = str.Replace(Path.DirectorySeparatorChar, '/'); while (str.StartsWith("/")) { str = str.Substring(1); } header.LinkName = string.Empty; header.Name = str; if (Directory.Exists(file)) { header.Mode = 0x3eb; header.TypeFlag = 0x35; if ((header.Name.Length == 0) || (header.Name[header.Name.Length - 1] != '/')) { header.Name = header.Name + "/"; } header.Size = 0L; } else { header.Mode = 0x81c0; header.TypeFlag = 0x30; header.Size = new FileInfo(file.Replace('/', Path.DirectorySeparatorChar)).Length; } header.ModTime = System.IO.File.GetLastWriteTime(file.Replace('/', Path.DirectorySeparatorChar)).ToUniversalTime(); header.DevMajor = 0; header.DevMinor = 0; }
public TarEntry(ICSharpCode.SharpZipLib.Tar.TarHeader header) { this.file = null; this.header = header; }
private void Initialize() { this.file = null; this.header = new ICSharpCode.SharpZipLib.Tar.TarHeader(); }
public TarEntry(byte[] headerBuffer) { this.header = new ICSharpCode.SharpZipLib.Tar.TarHeader(); this.header.ParseBuffer(headerBuffer); }
private TarEntry() { this.header = new ICSharpCode.SharpZipLib.Tar.TarHeader(); }