internal ZfsSymLink(Zpl zpl, ZfsDirectory parent, string name, DNode dn, SaAttributes attr) : base(zpl, parent, name, dn, attr) { var bytes = attr.Get(zpl_attr_t.ZPL_SYMLINK); PointsTo = Encoding.ASCII.GetString(bytes.Array, bytes.Offset, bytes.Count); }
internal ZfsItem(Zpl zpl, ZfsDirectory parent, string name, DNode dn, SaAttributes attrs) { this.mZpl = zpl; this.Name = name; this.Parent = parent; this.mDn = dn; if (mDn.Type != DmuType) { throw new NotSupportedException(); } mMode = attrs.Get <long>(zpl_attr_t.ZPL_MODE); CTIME = GetDateTime(attrs, zpl_attr_t.ZPL_CTIME); MTIME = GetDateTime(attrs, zpl_attr_t.ZPL_MTIME); ATIME = GetDateTime(attrs, zpl_attr_t.ZPL_ATIME); }
internal ZfsDirectory(Zpl zpl, ZfsDirectory parent, string name, DNode dn, SaAttributes attr) : base(zpl, parent, name, dn, attr) { }
internal ZfsFile(Zpl zpl, ZfsDirectory parent, string name, DNode dn, SaAttributes attr) : base(zpl, parent, name, dn, attr) { Length = attr.Get <long>(zpl_attr_t.ZPL_SIZE); }