internal static SftpATTRS getATTR(Buffer buf) { SftpATTRS attr = new SftpATTRS(); attr.Flags = buf.ReadInt(); if ((attr.Flags & SSH_FILEXFER_ATTR_SIZE) != 0) { attr._Size = buf.ReadLong(); } if ((attr.Flags & SSH_FILEXFER_ATTR_UIDGID) != 0) { attr.uid = buf.ReadInt(); attr.gid = buf.ReadInt(); } if ((attr.Flags & SSH_FILEXFER_ATTR_PERMISSIONS) != 0) { attr._Permissions = (PermissionFlags)buf.ReadInt(); } if ((attr.Flags & SSH_FILEXFER_ATTR_ACMODTIME) != 0) { attr.AccessTime = buf.ReadInt(); } if ((attr.Flags & SSH_FILEXFER_ATTR_ACMODTIME) != 0) { attr.ModificationTime = buf.ReadInt(); } if ((attr.Flags & SSH_FILEXFER_ATTR_EXTENDED) != 0) { int count = buf.ReadInt(); if (count > 0) { attr.extended = new String[count * 2]; for (int i = 0; i < count; i++) { attr.extended[i * 2] = Util.getString(buf.ReadString()); attr.extended[i * 2 + 1] = Util.getString(buf.ReadString()); } } } return(attr); }
internal static SftpATTRS getATTR(Buffer buf) { SftpATTRS attr = new SftpATTRS(); attr.Flags = buf.ReadInt(); if ((attr.Flags & SSH_FILEXFER_ATTR_SIZE) != 0) { attr._Size = buf.ReadLong(); } if ((attr.Flags & SSH_FILEXFER_ATTR_UIDGID) != 0) { attr.uid = buf.ReadInt(); attr.gid = buf.ReadInt(); } if ((attr.Flags & SSH_FILEXFER_ATTR_PERMISSIONS) != 0) { attr._Permissions = (PermissionFlags)buf.ReadInt(); } if ((attr.Flags & SSH_FILEXFER_ATTR_ACMODTIME) != 0) { attr.AccessTime = buf.ReadInt(); } if ((attr.Flags & SSH_FILEXFER_ATTR_ACMODTIME) != 0) { attr.ModificationTime = buf.ReadInt(); } if ((attr.Flags & SSH_FILEXFER_ATTR_EXTENDED) != 0) { int count = buf.ReadInt(); if (count > 0) { attr.extended = new String[count * 2]; for (int i = 0; i < count; i++) { attr.extended[i * 2] = Util.getString(buf.ReadString()); attr.extended[i * 2 + 1] = Util.getString(buf.ReadString()); } } } return attr; }