diff --git a/.changelog/22120.txt b/.changelog/22120.txt new file mode 100644 index 000000000000..e3eb4e23be61 --- /dev/null +++ b/.changelog/22120.txt @@ -0,0 +1,3 @@ +```release-note:bug +Fixed logging error while building for OpenBSD OS [[GH-22120](https://github.com/hashicorp/consul/pull/22120)] +``` diff --git a/logging/logfile_bsd.go b/logging/logfile_bsd.go index 21e579424563..6f767214d0dd 100644 --- a/logging/logfile_bsd.go +++ b/logging/logfile_bsd.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: BUSL-1.1 -//go:build darwin || freebsd || netbsd || openbsd +//go:build freebsd || netbsd || openbsd package logging diff --git a/logging/logfile_darwin.go b/logging/logfile_darwin.go new file mode 100644 index 000000000000..fc4a185f13d8 --- /dev/null +++ b/logging/logfile_darwin.go @@ -0,0 +1,19 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: BUSL-1.1 + +//go:build darwin + +package logging + +import ( + "os" + "syscall" + "time" +) + +func (l *LogFile) createTime(stat os.FileInfo) time.Time { + stat_t := stat.Sys().(*syscall.Stat_t) + createTime := stat_t.Ctimespec + // Sec and Nsec are int32 in 32-bit architectures. + return time.Unix(int64(createTime.Sec), int64(createTime.Nsec)) //nolint:unconvert +} diff --git a/logging/logfile_linux.go b/logging/logfile_linux.go index 1e8f19b1da72..d841539e0d78 100644 --- a/logging/logfile_linux.go +++ b/logging/logfile_linux.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: BUSL-1.1 -//go:build dragonfly || linux +//go:build dragonfly || linux || darwin package logging