8000 GitHub - cdfmlr/gofer: Gofer (GOfer Files Express Receiver) is a file transporter written in Golang.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

cdfmlr/gofer

Repository files navigation

Gofer

Gofer (GOfer Files Express Receiver) is a file transporter written in Golang.

It's now just a toy, do not take it seriously. You are expected to use something like scp or, better, rsync in the real world.

Build

You should build it by yourself, to get an unique set of TLS certificates (to protect the security of file transporting).

$ sh static/certs/generate_cert.sh
$ go build -o gofer.out ./cmd/main.go

Usage

gofer <send|recv> [-f=FILE] [-m=MESSAGE [-i INFO]] <-s|-c>=ADDRESS
 send: send things
 recv: receive things.
  -bigfile BiG_FILE
    	path of BiG_FILE to send (Only for <gofer send>)
  -c ADDRESS
    	run as a client, connect to a server at given ADDRESS
  -f FILE
    	path of FILE to send (Only for <gofer send>)
  -i INFO
    	INFO of message to send. (use with <gofer send -m>)
  -m MESSAGE
    	MESSAGE to send. (Only for <gofer send>)
  -s ADDRESS
    	start a server at given ADDRESS

Example

Sender as server

  • send message
tty01 $ gofer send -m Hello -i World -s 0.0.0.0:2333
tty02 $ gofer recv -c <IPv4|IPv6>:2333
  • send simple file
tty01 $ gofer send -f <FILE> -s 0.0.0.0:2333
tty02 $ gofer recv -c <IP>:2333

Receiver as server

tty01 $ gofer recv -s 0.0.0.0:2333
tty02 $ gofer send -m Hello -i World -c <IP>:2333
tty02 $ gofer send -f <FILE> -c <IP>:2333

Big File

sender $ gofer send -bigfile <FILE> -c <HOST>:2333
recver $ gofer recv -s :2333

Implement

UML of Gofer

License

Licensed under the MIT License.

Copyright 2020 CDFMLR. All rights reserved.

About

Gofer (GOfer Files Express Receiver) is a file transporter written in Golang.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0