/*
NNCP -- Node to Node copy
-Copyright (C) 2016-2017 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
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
+the Free Software Foundation, version 3 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
"File request from %s:%s to %s: %s",
nodeS, sds["src"], sds["dst"], rem,
)
- case "mail":
+ case "exec":
msg = fmt.Sprintf(
- "Mail to %s@%s (%s): %s",
- nodeS, strings.Replace(sds["dst"], " ", ",", -1), size, rem,
+ "Exec to %s@%s (%s): %s",
+ nodeS, sds["dst"], size, rem,
)
case "trns":
msg = fmt.Sprintf(
}
case "rx":
switch sds["type"] {
- case "mail":
+ case "exec":
msg = fmt.Sprintf(
- "Got mail from %s to %s (%s)",
- nodeS, strings.Replace(sds["dst"], " ", ",", -1), size,
+ "Got exec from %s to %s (%s)",
+ nodeS, sds["dst"], size,
)
case "file":
msg = fmt.Sprintf("Got file %s (%s) from %s", sds["dst"], size, nodeS)
}
if err, exists := sds["err"]; exists {
msg += ": " + err
+ } else {
+ msg += " " + rem
}
- case "daemon":
- msg = fmt.Sprintf("Daemon listening on %s", sds["bind"])
+ case "nncp-bundle":
+ switch sds["xx"] {
+ case "rx":
+ msg = "Bundle transfer, received from"
+ case "tx":
+ msg = "Bundle transfer, sent to"
+ default:
+ return s
+ }
+ if nodeS != "" {
+ msg += " node " + nodeS
+ }
+ msg += " " + sds["pkt"]
+ if size != "" {
+ msg += fmt.Sprintf(" (%s)", size)
+ }
+ if err, exists := sds["err"]; exists {
+ msg += ": " + err
+ }
+ case "nncp-rm":
+ msg += "removing " + sds["file"]
case "call-start":
msg = fmt.Sprintf("Connected to %s", nodeS)
case "call-finish":
humanize.IBytes(uint64(rx)), humanize.IBytes(uint64(rxs)),
humanize.IBytes(uint64(tx)), humanize.IBytes(uint64(txs)),
)
+ case "sp-info":
+ nice, err := NicenessParse(sds["nice"])
+ if err != nil {
+ return s
+ }
+ msg = fmt.Sprintf(
+ "Packet %s (%s) (nice %s)",
+ sds["hash"],
+ size,
+ NicenessFmt(nice),
+ )
+ offsetParsed, err := strconv.ParseUint(sds["offset"], 10, 64)
+ if err != nil {
+ return s
+ }
+ sizeParsed, err := strconv.ParseUint(sds["size"], 10, 64)
+ if err != nil {
+ return s
+ }
+ msg += fmt.Sprintf(": %d%%", 100*offsetParsed/sizeParsed)
+ if len(rem) > 0 {
+ msg += ": " + rem
+ }
case "sp-infos":
switch sds["xx"] {
case "rx":
return s
}
msg += fmt.Sprintf("%s packets, %s", sds["pkts"], size)
+ case "sp-process":
+ msg = fmt.Sprintf("%s has %s (%s): %s", nodeS, sds["hash"], size, rem)
case "sp-file":
switch sds["xx"] {
case "rx":
default:
return s
}
+ case "nncp-reass":
+ chunkNum, exists := sds["chunk"]
+ if exists {
+ msg = fmt.Sprintf(
+ "Reassembling chunked file \"%s\" (chunk %s): %s",
+ sds["path"],
+ chunkNum,
+ rem,
+ )
+ } else {
+ msg = fmt.Sprintf(
+ "Reassembling chunked file \"%s\": %s",
+ sds["path"],
+ rem,
+ )
+ }
+ if err, exists := sds["err"]; exists {
+ msg += ": " + err
+ }
+ case "lockdir":
+ msg = fmt.Sprintf("Acquire lock for %s: %s", sds["path"], sds["err"])
default:
return s
}