determine stdin automatically

This commit is contained in:
Zack Scholl 2018-04-14 01:29:39 -07:00
parent 3701240b10
commit 22d7a1d42d
2 changed files with 7 additions and 2 deletions

View File

@ -68,9 +68,14 @@ func NewConnection(config *AppConfig) (*Connection, error) {
c.UseStdout = config.UseStdout
c.Yes = config.Yes
c.rate = config.Rate
stat, _ := os.Stdin.Stat()
if (stat.Mode() & os.ModeCharDevice) == 0 {
config.File = "stdin"
}
if len(config.File) > 0 {
if config.File == "stdin" {
f, err := ioutil.TempFile(os.TempDir(), "croc-stdin-")
f, err := ioutil.TempFile(".", "croc-stdin-")
if err != nil {
return c, err
}

View File

@ -22,7 +22,7 @@ type AppConfig struct {
UseStdout bool `yaml:"stdout" flagName:"stdout" flagSName:"o" flagDescribe:"Use stdout" default:"false"`
Yes bool `yaml:"yes" flagName:"yes" flagSName:"y" flagDescribe:"Automatically accept file" default:"false"`
Server string `yaml:"server" flagName:"server" flagSName:"l" flagDescribe:"Address of relay server" default:"cowyo.com"`
File string `yaml:"send" flagName:"send" flagSName:"s" flagDescribe:"File to send (\"stdin\" to read from stdin)" default:""`
File string `yaml:"send" flagName:"send" flagSName:"s" flagDescribe:"File to send default:""`
Path string `yaml:"save" flagName:"save" flagSName:"p" flagDescribe:"Path to save to" default:""`
Code string `yaml:"code" flagName:"code" flagSName:"c" flagDescribe:"Use your own code phrase" default:""`
Rate int `yaml:"rate" flagName:"rate" flagSName:"R" flagDescribe:"Throttle down to speed in kbps" default:"1000000"`