internal void dump(SSH2DataWriter writer) { writer.Write(flags); if ((flags & SSH_FILEXFER_ATTR_SIZE) != 0) { writer.WriteLong(size); } if ((flags & SSH_FILEXFER_ATTR_UIDGID) != 0) { writer.Write(uid); writer.Write(gid); } if ((flags & SSH_FILEXFER_ATTR_PERMISSIONS) != 0) { writer.Write(permissions); } if ((flags & SSH_FILEXFER_ATTR_ACMODTIME) != 0) { writer.Write(atime); } if ((flags & SSH_FILEXFER_ATTR_ACMODTIME) != 0) { writer.Write(mtime); } if ((flags & SSH_FILEXFER_ATTR_EXTENDED) != 0) { int count = extended.Length / 2; if (count > 0) { for (int i = 0; i < count; i++) { writer.Write(extended[i * 2].GetBytes()); writer.Write(extended[i * 2 + 1].GetBytes()); } } } }