com.trilead.ssh2.sftp

## Class AttribBits

- java.lang.Object
- - com.trilead.ssh2.sftp.AttribBits

    public class AttribBits
    extends java.lang.Object

SFTP Attribute Bits for the "attrib-bits" and "attrib-bits-valid" fields of the SFTP ATTR data type.

Yes, these are the "attrib-bits", even though they have "_FLAGS_" in their name. Don't ask - I did not invent it.

"These fields, taken together, reflect various attributes of the file or directory, on the server. Bits not set in 'attrib-bits-valid' MUST be ignored in the 'attrib-bits' field. This allows both the server and the client to communicate only the bits it knows about without inadvertently twiddling bits they don't understand."

### Field Summary

Fields
`static int` `SSH_FILEXFER_ATTR_FLAGS_APPEND_ONLY` Opening the file without either the SSH_FXF_ACCESS_APPEND_DATA or the SSH_FXF_ACCESS_APPEND_DATA_ATOMIC flag (see section 8.1.1.3 of the SFTP standard draft) MUST result in an SSH_FX_INVALID_PARAMETER error.
`static int` `SSH_FILEXFER_ATTR_FLAGS_ARCHIVE` The file should be included in backup / archive operations.
`static int` `SSH_FILEXFER_ATTR_FLAGS_CASE_INSENSITIVE` This attribute applies only to directories.
`static int` `SSH_FILEXFER_ATTR_FLAGS_COMPRESSED` The file is stored on disk using file-system level transparent compression.
`static int` `SSH_FILEXFER_ATTR_FLAGS_ENCRYPTED` The file is stored on disk using file-system level transparent encryption.
`static int` `SSH_FILEXFER_ATTR_FLAGS_HIDDEN` File SHOULD NOT be shown to user unless specifically requested.
`static int` `SSH_FILEXFER_ATTR_FLAGS_IMMUTABLE` The file cannot be deleted or renamed, no hard link can be created to this file, and no data can be written to the file.
`static int` `SSH_FILEXFER_ATTR_FLAGS_READONLY` Advisory, read-only bit.
`static int` `SSH_FILEXFER_ATTR_FLAGS_SPARSE` The file is a sparse file; this means that file blocks that have not been explicitly written are not stored on disk.
`static int` `SSH_FILEXFER_ATTR_FLAGS_SYNC` When the file is modified, the changes are written synchronously to the disk.
`static int` `SSH_FILEXFER_ATTR_FLAGS_SYSTEM` The file is part of the operating system.
`static int` `SSH_FILEXFER_ATTR_FLAGS_TRANSLATION_ERR` The server MAY include this bit in a directory listing or realpath response.

### Constructor Summary

Constructors
Constructor and Description
`AttribBits()`

### Method Summary

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### SSH_FILEXFER_ATTR_FLAGS_READONLY

    public static final int SSH_FILEXFER_ATTR_FLAGS_READONLY

Advisory, read-only bit. This bit is not part of the access control information on the file, but is rather an advisory field indicating that the file should not be written.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_SYSTEM

    public static final int SSH_FILEXFER_ATTR_FLAGS_SYSTEM

The file is part of the operating system.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_HIDDEN

    public static final int SSH_FILEXFER_ATTR_FLAGS_HIDDEN

File SHOULD NOT be shown to user unless specifically requested. For example, most UNIX systems SHOULD set this bit if the filename begins with a 'period'. This bit may be read-only (see section 5.4 of the SFTP standard draft). Most UNIX systems will not allow this to be changed.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_CASE_INSENSITIVE

    public static final int SSH_FILEXFER_ATTR_FLAGS_CASE_INSENSITIVE

This attribute applies only to directories. This attribute is always read-only, and cannot be modified. This attribute means that files and directory names in this directory should be compared without regard to case.

It is recommended that where possible, the server's filesystem be allowed to do comparisons. For example, if a client wished to prompt a user before overwriting a file, it should not compare the new name with the previously retrieved list of names in the directory. Rather, it should first try to create the new file by specifying SSH_FXF_CREATE_NEW flag. Then, if this fails and returns SSH_FX_FILE_ALREADY_EXISTS, it should prompt the user and then retry the create specifying SSH_FXF_CREATE_TRUNCATE.

Unless otherwise specified, filenames are assumed to be case sensitive.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_ARCHIVE

    public static final int SSH_FILEXFER_ATTR_FLAGS_ARCHIVE

The file should be included in backup / archive operations.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_ENCRYPTED

    public static final int SSH_FILEXFER_ATTR_FLAGS_ENCRYPTED

The file is stored on disk using file-system level transparent encryption. This flag does not affect the file data on the wire (for either READ or WRITE requests.)

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_COMPRESSED

    public static final int SSH_FILEXFER_ATTR_FLAGS_COMPRESSED

The file is stored on disk using file-system level transparent compression. This flag does not affect the file data on the wire.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_SPARSE

    public static final int SSH_FILEXFER_ATTR_FLAGS_SPARSE

The file is a sparse file; this means that file blocks that have not been explicitly written are not stored on disk. For example, if a client writes a buffer at 10 M from the beginning of the file, the blocks between the previous EOF marker and the 10 M offset would not consume physical disk space.

Some servers may store all files as sparse files, in which case this bit will be unconditionally set. Other servers may not have a mechanism for determining if the file is sparse, and so the file MAY be stored sparse even if this flag is not set.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_APPEND_ONLY

    public static final int SSH_FILEXFER_ATTR_FLAGS_APPEND_ONLY

Opening the file without either the SSH_FXF_ACCESS_APPEND_DATA or the SSH_FXF_ACCESS_APPEND_DATA_ATOMIC flag (see section 8.1.1.3 of the SFTP standard draft) MUST result in an SSH_FX_INVALID_PARAMETER error.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_IMMUTABLE

    public static final int SSH_FILEXFER_ATTR_FLAGS_IMMUTABLE

The file cannot be deleted or renamed, no hard link can be created to this file, and no data can be written to the file.

This bit implies a stronger level of protection than SSH_FILEXFER_ATTR_FLAGS_READONLY, the file permission mask or ACLs. Typically even the superuser cannot write to immutable files, and only the superuser can set or remove the bit.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_SYNC

    public static final int SSH_FILEXFER_ATTR_FLAGS_SYNC

When the file is modified, the changes are written synchronously to the disk.

See Also:
  Constant Field Values

#### SSH_FILEXFER_ATTR_FLAGS_TRANSLATION_ERR

    public static final int SSH_FILEXFER_ATTR_FLAGS_TRANSLATION_ERR

The server MAY include this bit in a directory listing or realpath response. It indicates there was a failure in the translation to UTF-8. If this flag is included, the server SHOULD also include the UNTRANSLATED_NAME attribute.

See Also:
  Constant Field Values

### Constructor Detail

#### AttribBits

    public AttribBits()