Documentation ¶
Overview ¶
Package openssh implements the openssh secsh-filexfer extensions as described in https://github.com/openssh/openssh-portable/blob/master/PROTOCOL
Index ¶
- Constants
- func ExtensionFStatVFS() *sshfx.ExtensionPair
- func ExtensionFSync() *sshfx.ExtensionPair
- func ExtensionHardlink() *sshfx.ExtensionPair
- func ExtensionPOSIXRename() *sshfx.ExtensionPair
- func ExtensionStatVFS() *sshfx.ExtensionPair
- func RegisterExtensionFStatVFS()
- func RegisterExtensionFSync()
- func RegisterExtensionHardlink()
- func RegisterExtensionPOSIXRename()
- func RegisterExtensionStatVFS()
- type FStatVFSExtendedPacket
- func (ep *FStatVFSExtendedPacket) MarshalBinary() ([]byte, error)
- func (ep *FStatVFSExtendedPacket) MarshalInto(buf *sshfx.Buffer)
- func (ep *FStatVFSExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
- func (ep *FStatVFSExtendedPacket) Type() sshfx.PacketType
- func (ep *FStatVFSExtendedPacket) UnmarshalBinary(data []byte) (err error)
- func (ep *FStatVFSExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
- type FSyncExtendedPacket
- func (ep *FSyncExtendedPacket) MarshalBinary() ([]byte, error)
- func (ep *FSyncExtendedPacket) MarshalInto(buf *sshfx.Buffer)
- func (ep *FSyncExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
- func (ep *FSyncExtendedPacket) Type() sshfx.PacketType
- func (ep *FSyncExtendedPacket) UnmarshalBinary(data []byte) (err error)
- func (ep *FSyncExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
- type HardlinkExtendedPacket
- func (ep *HardlinkExtendedPacket) MarshalBinary() ([]byte, error)
- func (ep *HardlinkExtendedPacket) MarshalInto(buf *sshfx.Buffer)
- func (ep *HardlinkExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
- func (ep *HardlinkExtendedPacket) Type() sshfx.PacketType
- func (ep *HardlinkExtendedPacket) UnmarshalBinary(data []byte) (err error)
- func (ep *HardlinkExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
- type POSIXRenameExtendedPacket
- func (ep *POSIXRenameExtendedPacket) MarshalBinary() ([]byte, error)
- func (ep *POSIXRenameExtendedPacket) MarshalInto(buf *sshfx.Buffer)
- func (ep *POSIXRenameExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
- func (ep *POSIXRenameExtendedPacket) Type() sshfx.PacketType
- func (ep *POSIXRenameExtendedPacket) UnmarshalBinary(data []byte) (err error)
- func (ep *POSIXRenameExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
- type StatVFSExtendedPacket
- func (ep *StatVFSExtendedPacket) MarshalBinary() ([]byte, error)
- func (ep *StatVFSExtendedPacket) MarshalInto(buf *sshfx.Buffer)
- func (ep *StatVFSExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
- func (ep *StatVFSExtendedPacket) Type() sshfx.PacketType
- func (ep *StatVFSExtendedPacket) UnmarshalBinary(data []byte) (err error)
- func (ep *StatVFSExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
- type StatVFSExtendedReplyPacket
- func (ep *StatVFSExtendedReplyPacket) MarshalBinary() ([]byte, error)
- func (ep *StatVFSExtendedReplyPacket) MarshalInto(buf *sshfx.Buffer)
- func (ep *StatVFSExtendedReplyPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
- func (ep *StatVFSExtendedReplyPacket) Type() sshfx.PacketType
- func (ep *StatVFSExtendedReplyPacket) UnmarshalBinary(data []byte) (err error)
- func (ep *StatVFSExtendedReplyPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
- func (ep *StatVFSExtendedReplyPacket) UnmarshalPacketBody(buf *sshfx.Buffer) (err error)
Constants ¶
const ( MountFlagsReadOnly = 0x1 // SSH_FXE_STATVFS_ST_RDONLY MountFlagsNoSUID = 0x2 // SSH_FXE_STATVFS_ST_NOSUID )
The values for the MountFlags field. https://github.com/openssh/openssh-portable/blob/master/PROTOCOL
Variables ¶
This section is empty.
Functions ¶
func ExtensionFStatVFS ¶
func ExtensionFStatVFS() *sshfx.ExtensionPair
ExtensionFStatVFS returns an ExtensionPair suitable to append into an sshfx.InitPacket or sshfx.VersionPacket.
func ExtensionFSync ¶
func ExtensionFSync() *sshfx.ExtensionPair
ExtensionFSync returns an ExtensionPair suitable to append into an sshfx.InitPacket or sshfx.VersionPacket.
func ExtensionHardlink ¶
func ExtensionHardlink() *sshfx.ExtensionPair
ExtensionHardlink returns an ExtensionPair suitable to append into an sshfx.InitPacket or sshfx.VersionPacket.
func ExtensionPOSIXRename ¶
func ExtensionPOSIXRename() *sshfx.ExtensionPair
ExtensionPOSIXRename returns an ExtensionPair suitable to append into an sshfx.InitPacket or sshfx.VersionPacket.
func ExtensionStatVFS ¶
func ExtensionStatVFS() *sshfx.ExtensionPair
ExtensionStatVFS returns an ExtensionPair suitable to append into an sshfx.InitPacket or sshfx.VersionPacket.
func RegisterExtensionFStatVFS ¶
func RegisterExtensionFStatVFS()
RegisterExtensionFStatVFS registers the "fstatvfs@openssh.com" extended packet with the encoding/ssh/filexfer package.
func RegisterExtensionFSync ¶
func RegisterExtensionFSync()
RegisterExtensionFSync registers the "fsync@openssh.com" extended packet with the encoding/ssh/filexfer package.
func RegisterExtensionHardlink ¶
func RegisterExtensionHardlink()
RegisterExtensionHardlink registers the "hardlink@openssh.com" extended packet with the encoding/ssh/filexfer package.
func RegisterExtensionPOSIXRename ¶
func RegisterExtensionPOSIXRename()
RegisterExtensionPOSIXRename registers the "posix-rename@openssh.com" extended packet with the encoding/ssh/filexfer package.
func RegisterExtensionStatVFS ¶
func RegisterExtensionStatVFS()
RegisterExtensionStatVFS registers the "statvfs@openssh.com" extended packet with the encoding/ssh/filexfer package.
Types ¶
type FStatVFSExtendedPacket ¶
type FStatVFSExtendedPacket struct {
Path string
}
FStatVFSExtendedPacket defines the fstatvfs@openssh.com extend packet.
func (*FStatVFSExtendedPacket) MarshalBinary ¶
func (ep *FStatVFSExtendedPacket) MarshalBinary() ([]byte, error)
MarshalBinary encodes ep into the binary encoding of the statvfs@openssh.com extended packet-specific data.
NOTE: This _only_ encodes the packet-specific data, it does not encode the full extended packet.
func (*FStatVFSExtendedPacket) MarshalInto ¶
func (ep *FStatVFSExtendedPacket) MarshalInto(buf *sshfx.Buffer)
MarshalInto encodes ep into the binary encoding of the statvfs@openssh.com extended packet-specific data.
func (*FStatVFSExtendedPacket) MarshalPacket ¶
func (ep *FStatVFSExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
MarshalPacket returns ep as a two-part binary encoding of the full extended packet.
func (*FStatVFSExtendedPacket) Type ¶
func (ep *FStatVFSExtendedPacket) Type() sshfx.PacketType
Type returns the SSH_FXP_EXTENDED packet type.
func (*FStatVFSExtendedPacket) UnmarshalBinary ¶
func (ep *FStatVFSExtendedPacket) UnmarshalBinary(data []byte) (err error)
UnmarshalBinary decodes the statvfs@openssh.com extended packet-specific data into ep.
func (*FStatVFSExtendedPacket) UnmarshalFrom ¶
func (ep *FStatVFSExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
UnmarshalFrom decodes the statvfs@openssh.com extended packet-specific data into ep.
type FSyncExtendedPacket ¶
type FSyncExtendedPacket struct {
Handle string
}
FSyncExtendedPacket defines the fsync@openssh.com extend packet.
func (*FSyncExtendedPacket) MarshalBinary ¶
func (ep *FSyncExtendedPacket) MarshalBinary() ([]byte, error)
MarshalBinary encodes ep into the binary encoding of the fsync@openssh.com extended packet-specific data.
NOTE: This _only_ encodes the packet-specific data, it does not encode the full extended packet.
func (*FSyncExtendedPacket) MarshalInto ¶
func (ep *FSyncExtendedPacket) MarshalInto(buf *sshfx.Buffer)
MarshalInto encodes ep into the binary encoding of the fsync@openssh.com extended packet-specific data.
func (*FSyncExtendedPacket) MarshalPacket ¶
func (ep *FSyncExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
MarshalPacket returns ep as a two-part binary encoding of the full extended packet.
func (*FSyncExtendedPacket) Type ¶
func (ep *FSyncExtendedPacket) Type() sshfx.PacketType
Type returns the SSH_FXP_EXTENDED packet type.
func (*FSyncExtendedPacket) UnmarshalBinary ¶
func (ep *FSyncExtendedPacket) UnmarshalBinary(data []byte) (err error)
UnmarshalBinary decodes the fsync@openssh.com extended packet-specific data into ep.
func (*FSyncExtendedPacket) UnmarshalFrom ¶
func (ep *FSyncExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
UnmarshalFrom decodes the fsync@openssh.com extended packet-specific data from buf.
type HardlinkExtendedPacket ¶
HardlinkExtendedPacket defines the hardlink@openssh.com extend packet.
func (*HardlinkExtendedPacket) MarshalBinary ¶
func (ep *HardlinkExtendedPacket) MarshalBinary() ([]byte, error)
MarshalBinary encodes ep into the binary encoding of the hardlink@openssh.com extended packet-specific data.
NOTE: This _only_ encodes the packet-specific data, it does not encode the full extended packet.
func (*HardlinkExtendedPacket) MarshalInto ¶
func (ep *HardlinkExtendedPacket) MarshalInto(buf *sshfx.Buffer)
MarshalInto encodes ep into the binary encoding of the hardlink@openssh.com extended packet-specific data.
func (*HardlinkExtendedPacket) MarshalPacket ¶
func (ep *HardlinkExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
MarshalPacket returns ep as a two-part binary encoding of the full extended packet.
func (*HardlinkExtendedPacket) Type ¶
func (ep *HardlinkExtendedPacket) Type() sshfx.PacketType
Type returns the SSH_FXP_EXTENDED packet type.
func (*HardlinkExtendedPacket) UnmarshalBinary ¶
func (ep *HardlinkExtendedPacket) UnmarshalBinary(data []byte) (err error)
UnmarshalBinary decodes the hardlink@openssh.com extended packet-specific data into ep.
func (*HardlinkExtendedPacket) UnmarshalFrom ¶
func (ep *HardlinkExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
UnmarshalFrom decodes the hardlink@openssh.com extended packet-specific data from buf.
type POSIXRenameExtendedPacket ¶
POSIXRenameExtendedPacket defines the posix-rename@openssh.com extend packet.
func (*POSIXRenameExtendedPacket) MarshalBinary ¶
func (ep *POSIXRenameExtendedPacket) MarshalBinary() ([]byte, error)
MarshalBinary encodes ep into the binary encoding of the hardlink@openssh.com extended packet-specific data.
NOTE: This _only_ encodes the packet-specific data, it does not encode the full extended packet.
func (*POSIXRenameExtendedPacket) MarshalInto ¶
func (ep *POSIXRenameExtendedPacket) MarshalInto(buf *sshfx.Buffer)
MarshalInto encodes ep into the binary encoding of the hardlink@openssh.com extended packet-specific data.
func (*POSIXRenameExtendedPacket) MarshalPacket ¶
func (ep *POSIXRenameExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
MarshalPacket returns ep as a two-part binary encoding of the full extended packet.
func (*POSIXRenameExtendedPacket) Type ¶
func (ep *POSIXRenameExtendedPacket) Type() sshfx.PacketType
Type returns the SSH_FXP_EXTENDED packet type.
func (*POSIXRenameExtendedPacket) UnmarshalBinary ¶
func (ep *POSIXRenameExtendedPacket) UnmarshalBinary(data []byte) (err error)
UnmarshalBinary decodes the hardlink@openssh.com extended packet-specific data into ep.
func (*POSIXRenameExtendedPacket) UnmarshalFrom ¶
func (ep *POSIXRenameExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
UnmarshalFrom decodes the hardlink@openssh.com extended packet-specific data from buf.
type StatVFSExtendedPacket ¶
type StatVFSExtendedPacket struct {
Path string
}
StatVFSExtendedPacket defines the statvfs@openssh.com extend packet.
func (*StatVFSExtendedPacket) MarshalBinary ¶
func (ep *StatVFSExtendedPacket) MarshalBinary() ([]byte, error)
MarshalBinary encodes ep into the binary encoding of the statvfs@openssh.com extended packet-specific data.
NOTE: This _only_ encodes the packet-specific data, it does not encode the full extended packet.
func (*StatVFSExtendedPacket) MarshalInto ¶
func (ep *StatVFSExtendedPacket) MarshalInto(buf *sshfx.Buffer)
MarshalInto encodes ep into the binary encoding of the statvfs@openssh.com extended packet-specific data.
func (*StatVFSExtendedPacket) MarshalPacket ¶
func (ep *StatVFSExtendedPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
MarshalPacket returns ep as a two-part binary encoding of the full extended packet.
func (*StatVFSExtendedPacket) Type ¶
func (ep *StatVFSExtendedPacket) Type() sshfx.PacketType
Type returns the SSH_FXP_EXTENDED packet type.
func (*StatVFSExtendedPacket) UnmarshalBinary ¶
func (ep *StatVFSExtendedPacket) UnmarshalBinary(data []byte) (err error)
UnmarshalBinary decodes the statvfs@openssh.com extended packet-specific data into ep.
func (*StatVFSExtendedPacket) UnmarshalFrom ¶
func (ep *StatVFSExtendedPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
UnmarshalFrom decodes the statvfs@openssh.com extended packet-specific data into ep.
type StatVFSExtendedReplyPacket ¶
type StatVFSExtendedReplyPacket struct { BlockSize uint64 /* f_bsize: file system block size */ FragmentSize uint64 /* f_frsize: fundamental fs block size / fagment size */ Blocks uint64 /* f_blocks: number of blocks (unit f_frsize) */ BlocksFree uint64 /* f_bfree: free blocks in filesystem */ BlocksAvail uint64 /* f_bavail: free blocks for non-root */ Files uint64 /* f_files: total file inodes */ FilesFree uint64 /* f_ffree: free file inodes */ FilesAvail uint64 /* f_favail: free file inodes for to non-root */ FilesystemID uint64 /* f_fsid: file system id */ MountFlags uint64 /* f_flag: bit mask of mount flag values */ MaxNameLength uint64 /* f_namemax: maximum filename length */ }
StatVFSExtendedReplyPacket defines the extended reply packet for statvfs@openssh.com and fstatvfs@openssh.com requests.
func (*StatVFSExtendedReplyPacket) MarshalBinary ¶
func (ep *StatVFSExtendedReplyPacket) MarshalBinary() ([]byte, error)
MarshalBinary encodes ep into the binary encoding of the (f)statvfs@openssh.com extended reply packet-specific data.
NOTE: This _only_ encodes the packet-specific data, it does not encode the full extended reply packet.
func (*StatVFSExtendedReplyPacket) MarshalInto ¶
func (ep *StatVFSExtendedReplyPacket) MarshalInto(buf *sshfx.Buffer)
MarshalInto encodes ep into the binary encoding of the (f)statvfs@openssh.com extended reply packet-specific data.
func (*StatVFSExtendedReplyPacket) MarshalPacket ¶
func (ep *StatVFSExtendedReplyPacket) MarshalPacket(reqid uint32, b []byte) (header, payload []byte, err error)
MarshalPacket returns ep as a two-part binary encoding of the full extended reply packet.
func (*StatVFSExtendedReplyPacket) Type ¶
func (ep *StatVFSExtendedReplyPacket) Type() sshfx.PacketType
Type returns the SSH_FXP_EXTENDED_REPLY packet type.
func (*StatVFSExtendedReplyPacket) UnmarshalBinary ¶
func (ep *StatVFSExtendedReplyPacket) UnmarshalBinary(data []byte) (err error)
UnmarshalBinary decodes the fstatvfs@openssh.com extended reply packet-specific data into ep.
func (*StatVFSExtendedReplyPacket) UnmarshalFrom ¶
func (ep *StatVFSExtendedReplyPacket) UnmarshalFrom(buf *sshfx.Buffer) (err error)
UnmarshalFrom decodes the fstatvfs@openssh.com extended reply packet-specific data into ep.
func (*StatVFSExtendedReplyPacket) UnmarshalPacketBody ¶
func (ep *StatVFSExtendedReplyPacket) UnmarshalPacketBody(buf *sshfx.Buffer) (err error)
UnmarshalPacketBody returns ep as a two-part binary encoding of the full extended reply packet.