6: def self.get_dmi_table()
7: case Facter.value(:kernel)
8: when 'Linux', 'GNU/kFreeBSD'
9: return nil unless FileTest.exists?("/usr/sbin/dmidecode")
10:
11: output=%x{/usr/sbin/dmidecode 2>/dev/null}
12: when 'FreeBSD'
13: return nil unless FileTest.exists?("/usr/local/sbin/dmidecode")
14:
15: output=%x{/usr/local/sbin/dmidecode 2>/dev/null}
16: when 'NetBSD'
17: return nil unless FileTest.exists?("/usr/pkg/sbin/dmidecode")
18:
19: output=%x{/usr/pkg/sbin/dmidecode 2>/dev/null}
20: when 'SunOS'
21: return nil unless FileTest.exists?("/usr/sbin/smbios")
22:
23: output=%x{/usr/sbin/smbios 2>/dev/null}
24: else
25: output=nil
26: end
27: return output
28: end