/usr/lib/perl5/Slurmdb.pm is in libslurmdb-perl 2.6.5-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 | package Slurmdb;
use 5.008;
use strict;
use warnings;
use Carp;
require Exporter;
use AutoLoader;
our @ISA = qw(Exporter);
# Items to export into callers namespace by default. Note: do not export
# names by default without a very good reason. Use EXPORT_OK instead.
# Do not simply export all your public functions/methods/constants.
# This allows declaration use Slurmdb ':all';
# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
# will save memory.
our %EXPORT_TAGS = ( 'all' => [ qw(
SLURMDB_ADD_ASSOC
SLURMDB_ADD_COORD
SLURMDB_ADD_QOS
SLURMDB_ADD_USER
SLURMDB_ADD_WCKEY
SLURMDB_ADMIN_NONE
SLURMDB_ADMIN_NOTSET
SLURMDB_ADMIN_OPERATOR
SLURMDB_ADMIN_SUPER_USER
SLURMDB_CLASSIFIED_FLAG
SLURMDB_CLASS_BASE
SLURMDB_CLASS_CAPABILITY
SLURMDB_CLASS_CAPACITY
SLURMDB_CLASS_CAPAPACITY
SLURMDB_CLASS_NONE
SLURMDB_EVENT_ALL
SLURMDB_EVENT_CLUSTER
SLURMDB_EVENT_NODE
SLURMDB_MODIFY_ASSOC
SLURMDB_MODIFY_QOS
SLURMDB_MODIFY_USER
SLURMDB_MODIFY_WCKEY
SLURMDB_PROBLEM_ACCT_NO_ASSOC
SLURMDB_PROBLEM_ACCT_NO_USERS
SLURMDB_PROBLEM_NOT_SET
SLURMDB_PROBLEM_USER_NO_ASSOC
SLURMDB_PROBLEM_USER_NO_UID
SLURMDB_PURGE_ARCHIVE
SLURMDB_PURGE_BASE
SLURMDB_PURGE_DAYS
SLURMDB_PURGE_FLAGS
SLURMDB_PURGE_HOURS
SLURMDB_PURGE_MONTHS
SLURMDB_REMOVE_ASSOC
SLURMDB_REMOVE_COORD
SLURMDB_REMOVE_QOS
SLURMDB_REMOVE_USER
SLURMDB_REMOVE_WCKEY
SLURMDB_REPORT_SORT_NAME
SLURMDB_REPORT_SORT_TIME
SLURMDB_REPORT_TIME_HOURS
SLURMDB_REPORT_TIME_HOURS_PER
SLURMDB_REPORT_TIME_MINS
SLURMDB_REPORT_TIME_MINS_PER
SLURMDB_REPORT_TIME_PERCENT
SLURMDB_REPORT_TIME_SECS
SLURMDB_REPORT_TIME_SECS_PER
SLURMDB_UPDATE_NOTSET
) ] );
our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
our @EXPORT = qw();
our $VERSION = '0.01';
sub AUTOLOAD {
# This AUTOLOAD is used to 'autoload' constants from the constant()
# XS function.
my $constname;
our $AUTOLOAD;
($constname = $AUTOLOAD) =~ s/.*:://;
croak "&Slurmdb::constant not defined" if $constname eq 'constant';
my ($error, $val) = constant($constname);
if ($error) { croak $error; }
{
no strict 'refs';
# Fixed between 5.005_53 and 5.005_61
#XXX if ($] >= 5.00561) {
#XXX *$AUTOLOAD = sub () { $val };
#XXX }
#XXX else {
*$AUTOLOAD = sub { $val };
#XXX }
}
goto &$AUTOLOAD;
}
#require XSLoader;
#XSLoader::load('Slurmdb', $VERSION);
# XSLoader will not work for SLURM because it does not honour dl_load_flags.
require DynaLoader;
push @ISA, 'DynaLoader';
bootstrap Slurmdb $VERSION;
sub dl_load_flags { if($^O eq 'aix') { 0x00 } else { 0x01 }}
# Preloaded methods go here.
# Autoload methods go after =cut, and are processed by the autosplit program.
1;
__END__
=head1 NAME
Slurmdb - Perl extension for slurmdb library
=head1 SYNOPSIS
use Slurmdb;
=head1 DESCRIPTION
A traditional Perl module that contains XSUBs of the SLURM Database API.
=head2 EXPORT
None by default.
=head2 Exportable constants
=head1 SEE ALSO
http://slurm.schedmd.com/accounting.html
=head1 AUTHOR
Don Lipari, <lt>lipari@llnl.gov<gt>
=head1 COPYRIGHT AND LICENSE
Copyright (C) 2010 Lawrence Livermore National Security.
Written by Don Lipari
CODE-OCEC-09-009. All rights reserved.
This file is part of SLURM, a resource management program. For
details, see <http://slurm.schedmd.com/>. Please also
read the included file: DISCLAIMER.
SLURM is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at
your option) any later version.
In addition, as a special exception, the copyright holders give
permission to link the code of portions of this program with the
OpenSSL library under certain conditions as described in each
individual source file, and distribute linked combinations including
the two. You must obey the GNU General Public License in all respects
for all of the code used other than OpenSSL. If you modify file(s)
with this exception, you may extend this exception to your version of
the file(s), but you are not obligated to do so. If you do not wish
to do so, delete this exception statement from your version. If you
delete this exception statement from all source files in the program,
then also delete it here.
SLURM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with SLURM; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
=cut
|