92 lines
1.5 KiB
Perl
92 lines
1.5 KiB
Perl
package Sigar;
|
|
|
|
use 5.003;
|
|
use strict;
|
|
use vars qw($VERSION @ISA);
|
|
|
|
$VERSION = '0.01';
|
|
|
|
eval {
|
|
require XSLoader;
|
|
};
|
|
|
|
if ($@) {
|
|
#$] < 5.6
|
|
require DynaLoader;
|
|
@ISA = qw(DynaLoader);
|
|
__PACKAGE__->bootstrap($VERSION);
|
|
}
|
|
else {
|
|
XSLoader::load(__PACKAGE__, $VERSION);
|
|
}
|
|
|
|
sub NULL_HWADDR() { "00:00:00:00:00:00" }
|
|
|
|
sub IFF_UP() { 0x1 }
|
|
|
|
sub IFF_BROADCAST() { 0x2 }
|
|
|
|
sub IFF_DEBUG() { 0x4 }
|
|
|
|
sub IFF_LOOPBACK() { 0x8 }
|
|
|
|
sub IFF_POINTOPOINT() { 0x10 }
|
|
|
|
sub IFF_NOTRAILERS() { 0x20 }
|
|
|
|
sub IFF_RUNNING() { 0x40 }
|
|
|
|
sub IFF_NOARP() { 0x80 }
|
|
|
|
sub IFF_PROMISC() { 0x100 }
|
|
|
|
sub IFF_ALLMULTI() { 0x200 }
|
|
|
|
sub IFF_MULTICAST() { 0x800 }
|
|
|
|
sub net_interface_flags_string {
|
|
my($flags) = @_;
|
|
my $retval = "";
|
|
|
|
if ($flags == 0) {
|
|
$retval .= "[NO FLAGS] ";
|
|
}
|
|
if ($flags & IFF_UP) {
|
|
$retval .= "UP ";
|
|
}
|
|
if ($flags & IFF_BROADCAST) {
|
|
$retval .= "BROADCAST ";
|
|
}
|
|
if ($flags & IFF_DEBUG) {
|
|
$retval .= "DEBUG ";
|
|
}
|
|
if ($flags & IFF_LOOPBACK) {
|
|
$retval .= "LOOPBACK ";
|
|
}
|
|
if ($flags & IFF_POINTOPOINT) {
|
|
$retval .= "POINTOPOINT ";
|
|
}
|
|
if ($flags & IFF_NOTRAILERS) {
|
|
$retval .= "NOTRAILERS ";
|
|
}
|
|
if ($flags & IFF_RUNNING) {
|
|
$retval .= "RUNNING ";
|
|
}
|
|
if ($flags & IFF_NOARP) {
|
|
$retval .= "NOARP ";
|
|
}
|
|
if ($flags & IFF_PROMISC) {
|
|
$retval .= "PROMISC ";
|
|
}
|
|
if ($flags & IFF_ALLMULTI) {
|
|
$retval .= "ALLMULTI ";
|
|
}
|
|
if ($flags & IFF_MULTICAST) {
|
|
$retval .= "MULTICAST ";
|
|
}
|
|
|
|
return $retval;
|
|
}
|
|
1;
|
|
__END__
|