diff options
| author | Jeff Carr <[email protected]> | 2025-03-10 05:46:37 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-03-10 07:59:25 -0500 |
| commit | 2e10a2a0d96da83838dfab34015595b05dcc9058 (patch) | |
| tree | 567cc0e04ef9ae1ef9331074174703bf98de757e /config.go | |
| parent | 8fda4d7c870e36772f1ea0a62179e6e661131b21 (diff) | |
make an event log
Diffstat (limited to 'config.go')
| -rw-r--r-- | config.go | 40 |
1 files changed, 40 insertions, 0 deletions
@@ -60,6 +60,46 @@ func ConfigLoad() *Portmaps { return p } +func EventLoad() *Events { + pb := new(Events) + var fullname string + base, _ := filepath.Split(argv.Config) + fullname = filepath.Join(base, "events.pb") + + var data []byte + var err error + if data, err = loadFile(fullname); err != nil { + log.Warn("event file failed to load", err) + // something went wrong loading the file + return pb + } + + if data == nil { + return pb + } + if err = pb.Unmarshal(data); err != nil { + log.Warn("unmarshal failed on config file", err) + return pb + } + + log.Log(INFO, "gus.EventLoad() has", pb.Len(), "port mappings") + return pb +} + +func (e *Events) Save() { + var fullname string + base, _ := filepath.Split(argv.Config) + fullname = filepath.Join(base, "events.pb") + + data, err := e.Marshal() + if err != nil { + log.Info("proto.Marshal() failed", err) + return + } + log.Info("proto.Marshal() worked len", len(data)) + configWrite(fullname, data) +} + func loadFile(fullname string) ([]byte, error) { data, err := os.ReadFile(fullname) if errors.Is(err, os.ErrNotExist) { |
