1#!/usr/bin/env perl 2# 3########################################################################## 4# @(#) App::PFM::OS::Hpux 0.03 5# 6# Name: App::PFM::OS::Hpux 7# Version: 0.03 8# Author: Rene Uittenbogaard 9# Created: 2010-08-22 10# Date: 2010-08-26 11# 12 13########################################################################## 14 15=pod 16 17=head1 NAME 18 19App::PFM::OS::Hpux 20 21=head1 DESCRIPTION 22 23PFM OS class for access to HP-UX-specific OS commands. 24 25=head1 METHODS 26 27=over 28 29=cut 30 31########################################################################## 32# declarations 33 34package App::PFM::OS::Hpux; 35 36use base 'App::PFM::OS::Abstract'; 37 38use strict; 39use locale; 40 41use constant { 42 MINORBITS => 2 ** 24, 43 IFMTCHARS => ' pc?d?b?-nl?sDw?', # with whiteouts and network special 44}; 45 46########################################################################## 47# private subs 48 49########################################################################## 50# constructor, getters and setters 51 52########################################################################## 53# public subs 54 55=item df(string $path) 56 57HP-UX-specific method for requesting filesystem info. 58 59=cut 60 61sub df { 62 my ($self, $file) = @_; 63 my @lines = $self->backtick('bdf', $file); 64 return $self->_df_unwrap(@lines); 65} 66 67=item du(string $path) 68 69HP-UX-specific method for requesting file space usage info 70using du(1). 71 72=cut 73 74sub du { 75 my ($self, $file) = @_; 76 my $line = $self->backtick(qw{du -s}, $file); 77 $line =~ /(\d+)/; 78 $line = 512 * $1; 79 return $line; 80} 81 82=item aclget(string $path) 83 84Gets a file's Access Control List. 85 86=cut 87 88sub aclget { 89 my ($self, $path) = @_; 90 return $self->backtick('getacl', $path); 91} 92 93=item aclput(string $path, string $aclfilename) 94 95Sets a file's Access Control List from the data in a temporary file. 96 97=cut 98 99sub aclput { 100 my ($self, $path, $aclfilename) = @_; 101 return $self->system(qw{setacl -f}, $aclfilename, $path); 102} 103 104########################################################################## 105 106=back 107 108=head1 SEE ALSO 109 110pfm(1), App::PFM::OS(3pm), App::PFM::OS::Abstract(3pm). 111 112=cut 113 1141; 115 116# vim: set tabstop=4 shiftwidth=4: 117