Ejemplo n.º 1
0
        public void WriteDirectoryEntry(string path, string username, string groupname, int mode, DateTime lastModificationTime)
        {
            if (string.IsNullOrEmpty(path))
            {
                throw new ArgumentNullException("path");
            }

            if (path[path.Length - 1] != '/')
            {
                path += '/';
            }

            var tarHeader = new UsTarHeader()
            {
                FileName = path,
                LastModification = lastModificationTime,
                SizeInBytes = 0,
                UserId = username.GetHashCode(),
                UserName = username,
                GroupId = groupname.GetHashCode(),
                GroupName = groupname,
                Mode = mode,
                EntryType = tar_cs.EntryType.Directory,
            };
            OutStream.Write(tarHeader.GetHeaderValue(), 0, tarHeader.HeaderSize);
        }
Ejemplo n.º 2
0
        public void WriteDirectoryEntry(string path, string username, string groupname, int mode, DateTime lastModificationTime)
        {
            if (string.IsNullOrEmpty(path))
            {
                throw new ArgumentNullException("path");
            }

            if (path[path.Length - 1] != '/')
            {
                path += '/';
            }

            var tarHeader = new UsTarHeader()
            {
                FileName         = path,
                LastModification = lastModificationTime,
                SizeInBytes      = 0,
                UserId           = username.GetHashCode(),
                UserName         = username,
                GroupId          = groupname.GetHashCode(),
                GroupName        = groupname,
                Mode             = mode,
                EntryType        = tar_cs.EntryType.Directory,
            };

            OutStream.Write(tarHeader.GetHeaderValue(), 0, tarHeader.HeaderSize);
        }
Ejemplo n.º 3
0
 protected virtual void WriteHeader(string name, DateTime lastModificationTime, long count, string userName, string groupName, int mode)
 {
     var tarHeader = new UsTarHeader()
     {
         FileName = name,
         LastModification = lastModificationTime,
         SizeInBytes = count,
         UserId = userName.GetHashCode(),
         UserName = userName,
         GroupId = groupName.GetHashCode(),
         GroupName = groupName,
         Mode = mode
     };
     OutStream.Write(tarHeader.GetHeaderValue(), 0, tarHeader.HeaderSize);
 }
Ejemplo n.º 4
0
 protected override void WriteHeader(string name, DateTime lastModificationTime, long count, int userId, int groupId, int mode, EntryType entryType)
 {
     var tarHeader = new UsTarHeader()
     {
         FileName = name,
         LastModification = lastModificationTime,
         SizeInBytes = count,
         UserId = userId,
         UserName = Convert.ToString(userId,8),
         GroupId = groupId,
         GroupName = Convert.ToString(groupId,8),
         Mode = mode,
         EntryType = entryType
     };
     OutStream.Write(tarHeader.GetHeaderValue(), 0, tarHeader.HeaderSize);
 }
Ejemplo n.º 5
0
 private void WriteHardLink(string name, DateTime lastModificationTime, string linkName, string userName, string groupName, int mode)
 {
     var tarHeader = new UsTarHeader()
     {
         FileName = name,
         LastModification = lastModificationTime,
         SizeInBytes = 0,
         UserId = userName.GetHashCode(),
         UserName = userName,
         GroupId = groupName.GetHashCode(),
         GroupName = groupName,
         Mode = mode,
         EntryType = tar_cs.EntryType.HardLink,
         LinkName = linkName,
     };
     OutStream.Write(tarHeader.GetHeaderValue(), 0, tarHeader.HeaderSize);
 }
Ejemplo n.º 6
0
        private void WriteHardLink(string name, DateTime lastModificationTime, string linkName, string userName, string groupName, int mode)
        {
            var tarHeader = new UsTarHeader()
            {
                FileName         = name,
                LastModification = lastModificationTime,
                SizeInBytes      = 0,
                UserId           = userName.GetHashCode(),
                UserName         = userName,
                GroupId          = groupName.GetHashCode(),
                GroupName        = groupName,
                Mode             = mode,
                EntryType        = tar_cs.EntryType.HardLink,
                LinkName         = linkName,
            };

            OutStream.Write(tarHeader.GetHeaderValue(), 0, tarHeader.HeaderSize);
        }
Ejemplo n.º 7
0
 /// <summary>
 /// Constructs TarReader object to read data from `tarredData` stream
 /// </summary>
 /// <param name="tarredData">A stream to read tar archive from</param>
 public TarReader(Stream tarredData)
 {
     inStream = tarredData;
     header = new UsTarHeader();
 }
Ejemplo n.º 8
0
 protected virtual void WriteHeader(string name, DateTime lastModificationTime, long count, string userName, string groupName, int mode)
 {
     var tarHeader = new UsTarHeader(name, mode, count, lastModificationTime);
     var header = tarHeader.GetHeaderValue();
     OutStream.Write(header, 0, header.Length);
 }