+func GetIpAddress() (string, error) {
+ ifname := os.Getenv("INTERFACE_NAME")
+ itf, err := net.InterfaceByName(ifname)
+ if err != nil {
+ return "<nil>", fmt.Errorf("Interface (%s) %w", ifname, err)
+ }
+ item, err := itf.Addrs()
+ if err != nil {
+ return "<nil>", fmt.Errorf("Interface (%s) %w", ifname, err)
+ }
+ for _, addr := range item {
+ switch v := addr.(type) {
+ case *net.IPNet:
+ if !v.IP.IsLinkLocalUnicast() {
+ return v.IP.String(), nil
+ }
+ }
+ }
+ return "<nil>", fmt.Errorf("Interface (%s) couldn't find ip", ifname)
+}
+
+type RunParams struct {
+ SdlCheck bool
+ DisableAlarmClient bool
+}
+
+func RunWithRunParams(c MessageConsumer, params RunParams) {
+
+ if params.DisableAlarmClient {
+ disableAlarmClient = true
+ } else {
+ disableAlarmClient = false
+ }
+