CFEngine: getting mac addresses on BSD systems
  2013-04-18

It is now possible to retrieve mac addresses under BSD operating systems. (merged into master branch, not yet released)

As far as I know, at least FreeBSD, NetBSD and OpenBSD don’t implement the SIOCGIFHWADDR ioctl, so a getifaddrs() fallback was needed.

Before, only mac_unknown hard class was reported:

# cf-promises -v|hcgrep mac
mac_unknown

Now:

# /cf-promises/cf-promises -v|hcgrep mac
mac_08_00_d5_84_88_00

Of course, sys.hardware_addresses and [sys.hardware_macinterface_name] variables are populated.

what is hcgrep?