1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
package Ocsinventory::Agent::Backend::OS::Linux::Archs::PowerPC::Various;
use strict;
sub check { 1 };
sub run {
my $params = shift;
my $common = $params->{common};
############ Motherboard
my $SystemManufacturer;
my $SystemModel;
my $SystemSerial;
my $BiosManufacturer;
my $BiosVersion;
my $BiosDate;
if (open SERIAL,"</proc/device-tree/serial-number") {
$SystemSerial = <SERIAL>;
$SystemSerial =~ s/[^\,^\.^\w^\ ]//g; # I remove some unprintable char
close SERIAL;
}
if (open MODEL,"</proc/device-tree/model") {
$SystemModel = <MODEL>;
$SystemModel =~ s/[^\,^\.^\w^\ ]//g;
close MODEL;
}
if (open COLOR,"</proc/device-tree/color-code") {
my $tmp = <COLOR>;
close COLOR;
my ($color) = unpack "h7" , $tmp;
$SystemModel = $SystemModel." color: $color" if $color;
}
if (open OPENBOOT,"</proc/device-tree/openprom/model") {
$BiosVersion = <OPENBOOT>;
$BiosVersion =~ s/[^\,^\.^\w^\ ]//g;
close OPENBOOT;
}
if (open COPYRIGHT,"</proc/device-tree/copyright") {
my $tmp = <COPYRIGHT>;
close COPYRIGHT;
if ($tmp =~ /Apple/) {
# What about the Apple clone?
$BiosManufacturer = "Apple Computer, Inc.";
$SystemManufacturer = "Apple Computer, Inc."
}
}
$common->setBios ({
SMANUFACTURER => $SystemManufacturer,
SMODEL => $SystemModel,
SSN => $SystemSerial,
BMANUFACTURER => $BiosManufacturer,
BVERSION => $BiosVersion,
BDATE => $BiosDate,
});
}
1;
|