rsync

package
v1.1.13 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 18, 2023 License: Apache-2.0 Imports: 5 Imported by: 2

Documentation

Index

Constants

View Source
const (
	RsyncMagicHeaderLength = 8
	RSYNC                  = "rsync"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type RSYNCPlugin

type RSYNCPlugin struct{}

func (*RSYNCPlugin) Name

func (p *RSYNCPlugin) Name() string

func (*RSYNCPlugin) PortPriority

func (p *RSYNCPlugin) PortPriority(port uint16) bool

func (*RSYNCPlugin) Priority

func (p *RSYNCPlugin) Priority() int

func (*RSYNCPlugin) Run

func (p *RSYNCPlugin) Run(conn net.Conn, timeout time.Duration, target plugins.Target) (*plugins.Service, error)

Run

rsync is a file synchronization protocol that can run over a number of protocols. Once
a communication stream is set up between the sender and receiver processes, the protocol is the same, regardless
of whether that stream is a unix pipe, an SSH connection, or a raw TCP socket. This program detects the
presence of an rsync daemon, which detects incoming connections and forks to use a raw TCP socket. The
rsync daemon uses no transport encryption.

The rsync protocol is not standardized, but all implementations use a magic header "@RSYNCD:" during synchronization.

This program was tested with docker run -p 873:873 vimagick/rsyncd
The default port for rsyncd is 873

func (*RSYNCPlugin) Type

func (p *RSYNCPlugin) Type() plugins.Protocol

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL