From 960c6b621cad5de2c2ed2263cc7a810f8048e727 Mon Sep 17 00:00:00 2001 From: Austin Archer Date: Mon, 25 Nov 2024 00:41:33 -0800 Subject: [PATCH] fixed bug ignoring proxy status on record creation --- cmd/cf.go | 3 ++- cmd/loop.go | 14 ++++---------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/cmd/cf.go b/cmd/cf.go index d27a375..46053ba 100644 --- a/cmd/cf.go +++ b/cmd/cf.go @@ -53,6 +53,7 @@ func checkAndUpdate( Name: domain.Hostname, Content: address, Type: recordType, + Proxied: domain.Proxied, }) if err != nil { return err @@ -70,7 +71,7 @@ func checkAndUpdate( ctxTimeout, cancel = context.WithTimeout(ctx, timeout) defer cancel() - if record.Content == address { + if record.Content == address && (record.Proxied == nil || domain.Proxied == nil || (*record.Proxied == *domain.Proxied)) { log.Info(). Str("id", record.ID). Str("hostname", record.Name). diff --git a/cmd/loop.go b/cmd/loop.go index ad277d7..802dde9 100644 --- a/cmd/loop.go +++ b/cmd/loop.go @@ -23,12 +23,9 @@ func loop(ctx context.Context, api *cloudflare.API, cfg *config.Config) { }() if cfg.IPv4 { - ipv4, err := GetPublicIPv4() - if err != nil { + if ipv4, err := GetPublicIPv4(); err != nil { log.Panic().Err(err).Msg("failed to get public ipv4") - } - - if ipv4 != currentIPv4 { + } else if ipv4 != currentIPv4 { currentIPv4 = ipv4 log.Info().Msgf("updated ipv4 address: %s", ipv4) } @@ -45,12 +42,9 @@ func loop(ctx context.Context, api *cloudflare.API, cfg *config.Config) { } if cfg.IPv6 { - ipv6, err := GetPublicIPv6() - if err != nil { + if ipv6, err := GetPublicIPv6(); err != nil { log.Panic().Err(err).Msg("failed to get public ipv6") - } - - if ipv6 != currentIPv6 { + } else if ipv6 != currentIPv6 { currentIPv6 = ipv6 log.Info().Msgf("updated ipv6 address: %s", ipv6) }