/*
NNCP -- Node to Node copy, utilities for store-and-forward data exchange
-Copyright (C) 2016-2018 Sergey Matveev <stargrave@stargrave.org>
+Copyright (C) 2016-2019 Sergey Matveev <stargrave@stargrave.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
type CallYAML struct {
Cron string
- Nice *int `yaml:"nice,omitempty"`
+ Nice *string `yaml:"nice,omitempty"`
Xx string `yaml:"xx,omitempty"`
RxRate *int `yaml:"rxrate,omitempty"`
TxRate *int `yaml:"txrate,omitempty"`
nice := uint8(255)
if callYml.Nice != nil {
- if *callYml.Nice < 1 || *callYml.Nice > 255 {
- return nil, errors.New("Nice must be between 1 and 255")
+ nice, err = NicenessParse(*callYml.Nice)
+ if err != nil {
+ return nil, err
}
- nice = uint8(*callYml.Nice)
}
var xx TRxTx
return nil, errors.New("xx field must be either \"rx\" or \"tx\"")
}
- rxRate := 0
- if callYml.RxRate != nil && *callYml.RxRate > 0 {
+ rxRate := defRxRate
+ if callYml.RxRate != nil {
rxRate = *callYml.RxRate
}
- txRate := 0
- if callYml.TxRate != nil && *callYml.TxRate > 0 {
+ txRate := defTxRate
+ if callYml.TxRate != nil {
txRate = *callYml.TxRate
}
func CfgParse(data []byte) (*Ctx, error) {
var err error
- if bytes.Compare(data[:8], MagicNNCPBv2[:]) == 0 {
+ if bytes.Compare(data[:8], MagicNNCPBv3[:]) == 0 {
os.Stderr.WriteString("Passphrase:")
password, err := terminal.ReadPassword(0)
if err != nil {