theforeman/foreman · error · Net::Validations::Error
'#{mac}' is not a valid MAC address
Error message
'#{mac}' is not a valid MAC address What it means
Error "'#{mac}' is not a valid MAC address" thrown in theforeman/foreman.
Source
Thrown at app/lib/net/validations.rb:141
def self.normalize_mac(mac)
return unless mac.present?
m = mac.downcase
case m
when /\A[a-f0-9]{40}\z/
m.gsub(/(..)/) { |mh| mh + ":" }[/.{59}/]
when /\A[a-f0-9]{12}\z/
m.gsub(/(..)/) { |mh| mh + ":" }[/.{17}/]
when /\A([a-f0-9]{1,2}:){19}[a-f0-9]{1,2}\z/
m.split(":").map { |nibble| "%02x" % ("0x" + nibble) }.join(":")
when /\A([a-f0-9]{1,2}:){5}[a-f0-9]{1,2}\z/
m.split(":").map { |nibble| "%02x" % ("0x" + nibble) }.join(":")
when /\A([a-f0-9]{1,2}-){19}[a-f0-9]{1,2}\z/
m.split("-").map { |nibble| "%02x" % ("0x" + nibble) }.join(":")
when /\A([a-f0-9]{1,2}-){5}[a-f0-9]{1,2}\z/
m.split("-").map { |nibble| "%02x" % ("0x" + nibble) }.join(":")
else
raise Error, "'#{mac}' is not a valid MAC address"
end
end
def self.normalize_hostname(hostname)
hostname.downcase! if hostname.present?
hostname
end
end
end
View on GitHub (pinned to 6b05625475)
When it happens
Trigger: Thrown at app/lib/net/validations.rb:141 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of theforeman/foreman@6b05625475 (2026-08-23).
Data as JSON: /api/errors/775bd97d67c2884a.
Report an issue: GitHub.