diff --git a/net-mgmt/nsd_exporter/Makefile b/net-mgmt/nsd_exporter/Makefile index 6aa5fb82f916..7d510a7bfe55 100644 --- a/net-mgmt/nsd_exporter/Makefile +++ b/net-mgmt/nsd_exporter/Makefile @@ -1,40 +1,40 @@ PORTNAME= nsd_exporter PORTVERSION= 0.3.1 DISTVERSIONPREFIX= v -PORTREVISION= 21 +PORTREVISION= 22 CATEGORIES= net-mgmt MAINTAINER= zi@FreeBSD.org COMMENT= Prometheus exporter for nsd metrics WWW= https://github.com/optix2000/nsd_exporter LICENSE= BSD3CLAUSE USES= go USE_GITHUB= yes GH_ACCOUNT= optix2000 GH_TUPLE= \ beorn7:perks:v1.0.1:beorn7_perks/vendor/github.com/beorn7/perks \ cespare:xxhash:v2.1.1:cespare_xxhash_v2/vendor/github.com/cespare/xxhash/v2 \ go-yaml:yaml:v2.2.8:go_yaml_yaml/vendor/gopkg.in/yaml.v2 \ golang:protobuf:v1.3.2:golang_protobuf/vendor/github.com/golang/protobuf \ golang:sys:e047566fdf82:golang_sys/vendor/golang.org/x/sys \ matttproud:golang_protobuf_extensions:v1.0.1:matttproud_golang_protobuf_extensions/vendor/github.com/matttproud/golang_protobuf_extensions \ optix2000:go-nsdctl:v1.0.0:optix2000_go_nsdctl/vendor/github.com/optix2000/go-nsdctl \ prometheus:client_golang:v1.4.0:prometheus_client_golang/vendor/github.com/prometheus/client_golang \ prometheus:client_model:v0.2.0:prometheus_client_model/vendor/github.com/prometheus/client_model \ prometheus:common:v0.9.1:prometheus_common/vendor/github.com/prometheus/common \ prometheus:procfs:v0.0.8:prometheus_procfs/vendor/github.com/prometheus/procfs GO_PKGNAME= github.com/${GH_ACCOUNT}/${PORTNAME} PLIST_FILES= bin/nsd_exporter USE_RC_SUBR= nsd_exporter post-patch: ${REINPLACE_CMD} -e 's|"/etc|"${LOCALBASE}/etc|g' ${WRKSRC_optix2000_go_nsdctl}/nsdctl.go ${REINPLACE_CMD} -e 's|"/etc|"${LOCALBASE}/etc|g' ${WRKSRC}/nsd_exporter.go .include diff --git a/net-mgmt/nsd_exporter/files/patch-nsd__exporter.go b/net-mgmt/nsd_exporter/files/patch-nsd__exporter.go new file mode 100644 index 000000000000..7060f3be87e7 --- /dev/null +++ b/net-mgmt/nsd_exporter/files/patch-nsd__exporter.go @@ -0,0 +1,39 @@ +--- nsd_exporter.go.orig 2026-04-04 07:23:54 UTC ++++ nsd_exporter.go +@@ -26,6 +26,7 @@ var cert = flag.String("cert", "", "Client cert file l + var key = flag.String("key", "", "Client key file location. Mutually exclusive with -config-file.") + var ca = flag.String("ca", "", "Server CA file location. Mutually exclusive with -config-file.") + var nsdAddr = flag.String("nsd-address", "", "NSD or Unbound control socket address.") ++var skipTLSverify = flag.Bool("skipTLSverify", false, "Skip TLS Verification") + + // Prom stuff + var nsdToProm = strings.NewReplacer(".", "_") +@@ -199,8 +200,8 @@ func NewNSDCollector(nsdType string, hostString string + return collector, err + } + +-func NewNSDCollectorFromConfig(path string) (*NSDCollector, error) { +- client, err := nsdctl.NewClientFromConfig(path) ++func NewNSDCollectorFromConfig(path string, skipVerify bool) (*NSDCollector, error) { ++ client, err := nsdctl.NewClientFromConfig(path, skipVerify) + if err != nil { + return nil, err + } +@@ -233,7 +234,7 @@ func main() { + if *cert != "" || *key != "" || *ca != "" || *nsdAddr != "" { + if *cert != "" && *key != "" && *ca != "" && *nsdAddr != "" { + // Build from arguments +- nsdCollector, err = NewNSDCollector(*nsdType, *nsdAddr, *ca, *key, *cert, false) ++ nsdCollector, err = NewNSDCollector(*nsdType, *nsdAddr, *ca, *key, *cert, *skipTLSverify) + if err != nil { + log.Fatal(err) + } +@@ -242,7 +243,7 @@ func main() { + } + } else { + // Build from config +- nsdCollector, err = NewNSDCollectorFromConfig(*nsdConfig) ++ nsdCollector, err = NewNSDCollectorFromConfig(*nsdConfig, *skipTLSverify) + if err != nil { + log.Fatal(err) + } diff --git a/net-mgmt/nsd_exporter/files/patch-vendor_github.com_optix2000_go-nsdctl_nsdctl.go b/net-mgmt/nsd_exporter/files/patch-vendor_github.com_optix2000_go-nsdctl_nsdctl.go new file mode 100644 index 000000000000..e7d17b3148b2 --- /dev/null +++ b/net-mgmt/nsd_exporter/files/patch-vendor_github.com_optix2000_go-nsdctl_nsdctl.go @@ -0,0 +1,24 @@ +--- vendor/github.com/optix2000/go-nsdctl/nsdctl.go.orig 2026-04-04 07:20:36 UTC ++++ vendor/github.com/optix2000/go-nsdctl/nsdctl.go +@@ -116,7 +116,7 @@ type NSDClient struct { + } + + // NewClientFromConfig tries to autodetect and create a new NSDClient from an config file +-func NewClientFromConfig(configPath string) (*NSDClient, error) { ++func NewClientFromConfig(configPath string, skipTLSverify bool) (*NSDClient, error) { + filename := path.Base(configPath) + + var detectedType string +@@ -189,10 +189,10 @@ func NewClientFromConfig(configPath string) (*NSDClien + } + + if port != 0 { +- hostString = "127.0.0.1:" + string(port) ++ hostString = "127.0.0.1:" + strconv.FormatUint(uint64(port), 10) + } + +- return NewClient(detectedType, hostString, caFile, keyFile, certFile, false) ++ return NewClient(detectedType, hostString, caFile, keyFile, certFile, skipTLSverify) + } + + // NewClient creates a complete new NSDClient and returns any errors encountered