Skip to content

Commit

Permalink
respondd nodeinfo software (now compareable to mesh-announce)
Browse files Browse the repository at this point in the history
  • Loading branch information
genofire committed Apr 11, 2019
1 parent dc0fdbd commit f7fa5a0
Showing 1 changed file with 29 additions and 0 deletions.
29 changes: 29 additions & 0 deletions respond/daemon/nodeinfo.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,14 @@ package respondd

import (
"fmt"
"io/ioutil"
"net"
"os"
"os/exec"
"runtime"
"strings"

"github.com/bdlm/log"

"github.com/FreifunkBremen/yanic/data"
)
Expand All @@ -27,6 +32,30 @@ func (d *Daemon) updateNodeinfo(iface string, resp *data.ResponseData) {

resp.Nodeinfo.Hardware.Nproc = runtime.NumCPU()

if out, err := exec.Command("lsb_release", "-sri").Output(); err == nil {
f := strings.Fields(string(out))
if len(f) == 2 {
resp.Nodeinfo.Software.Firmware.Base = f[0]
resp.Nodeinfo.Software.Firmware.Release = f[1]
}
} else {
log.Errorf("not able to run lsb_release: %s", err)
}

if out, err := exec.Command("fastd", "-v").Output(); err == nil {
resp.Nodeinfo.Software.Fastd.Enabled = true

f := strings.Fields(string(out))
if len(f) >= 2 {
resp.Nodeinfo.Software.Fastd.Version = f[1]
}
} else {
log.Infof("not able to run fastd: %s", err)
}
if v, err := ioutil.ReadFile("/sys/module/batman_adv/version"); err == nil {
resp.Nodeinfo.Software.BatmanAdv.Version = trim(string(v))
}

if resp.Nodeinfo.Network.Mac == "" {
resp.Nodeinfo.Network.Mac = fmt.Sprintf("%s:%s:%s:%s:%s:%s", nodeID[0:2], nodeID[2:4], nodeID[4:6], nodeID[6:8], nodeID[8:10], nodeID[10:12])
}
Expand Down

0 comments on commit f7fa5a0

Please sign in to comment.