]> Cypherpunks.ru repositories - nncp.git/blobdiff - src/cypherpunks.ru/nncp/cfg.go
Remote command execution
[nncp.git] / src / cypherpunks.ru / nncp / cfg.go
index 0a1b1d8a0a86d73874e221b8087f5d82ac4734c6..b75196175e429b89f7408789fd932077bafd8cfd 100644 (file)
@@ -1,6 +1,6 @@
 /*
 NNCP -- Node to Node copy, utilities for store-and-forward data exchange
-Copyright (C) 2016-2017 Sergey Matveev <stargrave@stargrave.org>
+Copyright (C) 2016-2018 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
@@ -48,14 +48,14 @@ type NodeYAML struct {
        Id          string
        ExchPub     string
        SignPub     string
-       NoisePub    *string    `noisepub,omitempty`
-       Sendmail    []string   `sendmail,omitempty`
-       Incoming    *string    `incoming,omitempty`
-       Freq        *string    `freq,omitempty`
-       FreqChunked *uint64    `freqchunked,omitempty`
-       FreqMinSize *uint64    `freqminsize,omitempty`
-       Via         []string   `via,omitempty`
-       Calls       []CallYAML `calls,omitempty`
+       NoisePub    *string             `noisepub,omitempty`
+       Exec        map[string][]string `exec,omitempty`
+       Incoming    *string             `incoming,omitempty`
+       Freq        *string             `freq,omitempty`
+       FreqChunked *uint64             `freqchunked,omitempty`
+       FreqMinSize *uint64             `freqminsize,omitempty`
+       Via         []string            `via,omitempty`
+       Calls       []CallYAML          `calls,omitempty`
 
        Addrs map[string]string `addrs,omitempty`
 
@@ -232,7 +232,7 @@ func NewNode(name string, yml NodeYAML) (*Node, error) {
                Id:             nodeId,
                ExchPub:        new([32]byte),
                SignPub:        ed25519.PublicKey(signPub),
-               Sendmail:       yml.Sendmail,
+               Exec:           yml.Exec,
                Incoming:       incoming,
                Freq:           freq,
                FreqChunked:    freqChunked,
@@ -339,7 +339,7 @@ func (nodeOur *NodeOur) ToYAML() string {
 
 func CfgParse(data []byte) (*Ctx, error) {
        var err error
-       if bytes.Compare(data[:8], MagicNNCPBv1[:]) == 0 {
+       if bytes.Compare(data[:8], MagicNNCPBv2[:]) == 0 {
                os.Stderr.WriteString("Passphrase:")
                password, err := terminal.ReadPassword(0)
                if err != nil {