From blair at orcaware.com Thu Oct 2 13:47:09 2003 From: blair at orcaware.com (Blair Zajac) Date: Thu, 2 Oct 2003 13:47:09 -0700 Subject: [Orca-checkins] rev 253 - trunk/orca/lib/Orca Message-ID: <200310022047.h92Kl9bC029785@orcaware.com> Author: blair Date: Thu Oct 2 13:46:49 2003 New Revision: 253 Modified: trunk/orca/lib/Orca/HTMLFile.pm Log: * lib/Orca/HTMLFile.pm (DESTROY): Do not print a
after Orca's html_page_footer configuration parameter is printed into the output HTML file unless this parameter contains at least one non-whitespace character, otherwise the page looks odd with two
's. Modified: trunk/orca/lib/Orca/HTMLFile.pm ============================================================================== --- trunk/orca/lib/Orca/HTMLFile.pm (original) +++ trunk/orca/lib/Orca/HTMLFile.pm Thu Oct 2 13:46:49 2003 @@ -71,11 +71,12 @@ sub DESTROY { my $self = shift; + if ($self->[$i_bottom] =~ /\S/) { + print { $self->[I_FD] } $self->[$i_bottom], "\n
\n", $html_hr, "\n"; + } + print { $self->[I_FD] } <[$i_bottom] -
- $html_hr
From blair at orcaware.com Sat Oct 4 14:33:39 2003 From: blair at orcaware.com (Blair Zajac) Date: Sat, 4 Oct 2003 14:33:39 -0700 Subject: [Orca-checkins] rev 254 - in trunk/orca: lib/Orca orca Message-ID: <200310042133.h94LXcwQ014466@orcaware.com> Author: blair Date: Sat Oct 4 14:33:04 2003 New Revision: 254 Modified: trunk/orca/lib/Orca/Utils.pm trunk/orca/orca/orca.pl.in Log: Move utility functions from orca/orca.pl.in to lib/Orca/Utils.pm. * orca/orca.pl.in: Move &running_stats and rename it to &print_running_stats and move &capatialize ... * lib/Orca/Utils.pm: ... to here. Modified: trunk/orca/lib/Orca/Utils.pm ============================================================================== --- trunk/orca/lib/Orca/Utils.pm (original) +++ trunk/orca/lib/Orca/Utils.pm Sat Oct 4 14:33:04 2003 @@ -14,14 +14,25 @@ use Orca::SourceFileIDs qw(new_fids); use vars qw(@EXPORT_OK @ISA $VERSION); - at EXPORT_OK = qw(email_message - gcd name_to_fsname + at EXPORT_OK = qw(capatialize + email_message + gcd + name_to_fsname perl_glob + print_running_stats recursive_mkdir unique); @ISA = qw(Exporter); $VERSION = substr q$Revision: 0.01 $, 10; +# Take a string and capatialize only the first character of the +# string. +sub capatialize { + my $string = shift; + substr($string, 0, 1) = uc(substr($string, 0, 1)); + $string; +} + # Email the list of people a message. sub email_message { my ($people, $subject) = @_; @@ -188,6 +199,23 @@ return @_ ? @results : new_fids(@results); } +# Print a message on the statistics of this running process. Note the +# starting time of the script. +my $start_time = time; +sub print_running_stats { + my $ps_self = '@PS_SELF@'; + if ($ps_self) { + $ps_self =~ s/PID/$$/g; + system($ps_self); + } + + my $time_span = time - $start_time; + my $minutes = int($time_span/60); + my $seconds = $time_span - 60*$minutes; + + printf "Current running time is %d:%02d minutes.\n", $minutes, $seconds; +} + # Given a directory name, attempt to make all necessary directories. sub recursive_mkdir { my $dir = shift; Modified: trunk/orca/orca/orca.pl.in ============================================================================== --- trunk/orca/orca/orca.pl.in (original) +++ trunk/orca/orca/orca.pl.in Sat Oct 4 14:33:04 2003 @@ -58,14 +58,15 @@ use Orca::OldState qw($orca_old_state load_old_state save_old_state); -use Orca::Utils qw(name_to_fsname perl_glob unique); +use Orca::Utils qw(capatialize + name_to_fsname + perl_glob + print_running_stats + unique); use Orca::SourceFile; use Orca::SourceFileIDs qw(@sfile_fids); use Orca::HTMLFile qw($html_hr); -# Note the starting time of the script. -my $start_time = time; - # Remember the original working directory because it will be needed to # remove the locking directory. my $start_cwd = cwd; @@ -231,7 +232,7 @@ # Print the given message and any running statistics. if ($can_print) { - &running_stats; + &print_running_stats if $opt_verbose; print $message if $message; } @@ -371,7 +372,7 @@ } } - &running_stats; + &print_running_stats if $opt_verbose; # Because the amount of data loaded from the source data files can # be large, go through each subgroup of source files, load all of @@ -540,14 +541,6 @@ } } -# Take a string and capatialize only the first character of the -# string. -sub capatialize { - my $string = shift; - substr($string, 0, 1) = uc(substr($string, 0, 1)); - $string; -} - # Sort subgroup names depending upon the type of characters in the # group's name. sub sort_subgroup_names { @@ -1138,23 +1131,6 @@ return ($found_new_files, \%new_found_files, \@subgroup_fids); } -# Print a message on the statistics of this running process. -sub running_stats { - return unless $opt_verbose; - - my $ps_self = '@PS_SELF@'; - if ($ps_self) { - $ps_self =~ s/PID/$$/g; - system($ps_self); - } - - my $time_span = time - $start_time; - my $minutes = int($time_span/60); - my $seconds = $time_span - 60*$minutes; - - printf "Current running time is %d:%02d minutes.\n", $minutes, $seconds; -} - __END__ =pod From blair at orcaware.com Mon Oct 6 14:41:46 2003 From: blair at orcaware.com (Blair Zajac) Date: Mon, 6 Oct 2003 14:41:46 -0700 Subject: [Orca-checkins] rev 255 - in trunk/orca: . lib/Orca Message-ID: <200310062141.h96Lfkt8025012@orcaware.com> Author: blair Date: Mon Oct 6 14:41:25 2003 New Revision: 255 Modified: trunk/orca/configure.in trunk/orca/lib/Orca/Utils.pm Log: The previous revision broke Orca's ability to run 'ps' against its own PID, since @PS_SELF@ was moved from orca.pl.in which is processed by config.status, to lib/Orca/Utils.pm, which is not. Since nobody seems to use this output, remove it entirely. * configure.in: Do not determine how to run 'ps' on the system. Do not substitute @PS@ and @PS_SELF at . * lib/Orca/Utils.pm (print_running_stats): Do not run 'ps' any more. Modified: trunk/orca/configure.in ============================================================================== --- trunk/orca/configure.in (original) +++ trunk/orca/configure.in Mon Oct 6 14:41:25 2003 @@ -293,31 +293,6 @@ AC_PATH_PROG(POD2MAN, pod2man, :) AC_PATH_PROG(POD2TEXT, pod2text, :) -# Determine the correct ps command to use to find out about process -# information for itself. -AC_PATH_PROG(PS, ps) -case "$target" in - *-solaris*) - PS_SELF="$PS -p PID -o \'rss vsz pmem time user pid comm\'" - ;; - *-linux-*) - PS_SELF="$PS up PID" - ;; - *) - PS_SELF="$PS aux | grep PID" - AC_MSG_WARN([*** If you know a better PS command than]) - AC_MSG_WARN([*** '$PS_SELF']) - AC_MSG_WARN([*** to get process information for your host,]) - AC_MSG_WARN([*** please email the command and the output from]) - AC_MSG_WARN([*** ./config/config.guess to]) - AC_MSG_WARN([*** orca-dev at orcaware.com]) - ;; -esac -if test "$PS_SELF"; then - AC_MSG_CHECKING([for ps command]) - AC_MSG_RESULT($PS_SELF) - AC_SUBST(PS_SELF) -fi AC_PATH_PROG(SE, se,,$PATH:/opt/RICHPse/bin) AC_PATH_PROG(UNAME, uname, uname) AC_PATH_PROG(UNCOMPRESS, uncompress) Modified: trunk/orca/lib/Orca/Utils.pm ============================================================================== --- trunk/orca/lib/Orca/Utils.pm (original) +++ trunk/orca/lib/Orca/Utils.pm Mon Oct 6 14:41:25 2003 @@ -203,12 +203,6 @@ # starting time of the script. my $start_time = time; sub print_running_stats { - my $ps_self = '@PS_SELF@'; - if ($ps_self) { - $ps_self =~ s/PID/$$/g; - system($ps_self); - } - my $time_span = time - $start_time; my $minutes = int($time_span/60); my $seconds = $time_span - 60*$minutes; From blair at orcaware.com Mon Oct 6 15:11:43 2003 From: blair at orcaware.com (Blair Zajac) Date: Mon, 6 Oct 2003 15:11:43 -0700 Subject: [Orca-checkins] rev 256 - in trunk/orca: . packages/Digest-MD5-2.27 packages/Digest-MD5-2.29 packages/Digest-MD5-2.29/t Message-ID: <200310062211.h96MBhDe028320@orcaware.com> Author: blair Date: Mon Oct 6 15:10:33 2003 New Revision: 256 Added: trunk/orca/packages/Digest-MD5-2.29/ - copied from rev 255, trunk/orca/packages/Digest-MD5-2.27/ Removed: trunk/orca/packages/Digest-MD5-2.27/ Modified: trunk/orca/INSTALL trunk/orca/configure.in trunk/orca/packages/Digest-MD5-2.29/Changes trunk/orca/packages/Digest-MD5-2.29/MD5.pm trunk/orca/packages/Digest-MD5-2.29/t/files.t Log: Upgrade Digest::MD5 from 2.27 to 2.29 and require the new version for Orca. * INSTALL: Update all references to Digest::MD5's version number from 2.27 to 2.29. * configure.in: Bump Digest::MD5's version number to 2.29. * packages/Digest-MD5-2.29: Renamed from packages/Digest-MD5-2.27. Directory contents updated from Digest-MD5-2.29.tar.gz. Modified: trunk/orca/INSTALL ============================================================================== --- trunk/orca/INSTALL (original) +++ trunk/orca/INSTALL Mon Oct 6 15:10:33 2003 @@ -173,7 +173,7 @@ Data::Dumper >= 2.101 >= 2.101 2.101 Date::Parse Not required by Orca 2.24 Devel::DProf Not required by Orca 19990108 - Digest::MD5 >= 2.27 >= 2.27 2.27 + Digest::MD5 >= 2.29 >= 2.29 2.29 Math::IntervalSearch >= 1.05 >= 1.05 1.05 RRDs >= 1.000451 >= 1.0.45 1.0.45 Storable >= 2.07 >= 2.07 2.07 @@ -227,10 +227,10 @@ Digest::MD5 - http://www.perl.com/CPAN/authors/id/G/GA/GAAS/Digest-MD5-2.27.tar.gz + http://www.perl.com/CPAN/authors/id/G/GA/GAAS/Digest-MD5-2.29.tar.gz - % gunzip -c Digest-MD5-2.27.tar.gz | tar xvf - - % cd Digest-MD5-2.27 + % gunzip -c Digest-MD5-2.29.tar.gz | tar xvf - + % cd Digest-MD5-2.29 % perl Makefile.PL % make % make test Modified: trunk/orca/configure.in ============================================================================== --- trunk/orca/configure.in (original) +++ trunk/orca/configure.in Mon Oct 6 15:10:33 2003 @@ -33,8 +33,8 @@ DATE_PARSE_VER=2.24 DEVEL_DPROF_DIR=DProf-19990108 DEVEL_DPROF_VER=19990108 -DIGEST_MD5_DIR=Digest-MD5-2.27 -DIGEST_MD5_VER=2.27 +DIGEST_MD5_DIR=Digest-MD5-2.29 +DIGEST_MD5_VER=2.29 MATH_INTERVALSEARCH_DIR=Math-Interpolate-1.05 MATH_INTERVALSEARCH_VER=1.05 RRDTOOL_DIR=rrdtool-1.0.45 Modified: trunk/orca/packages/Digest-MD5-2.29/Changes ============================================================================== --- trunk/orca/packages/Digest-MD5-2.27/Changes (original) +++ trunk/orca/packages/Digest-MD5-2.29/Changes Mon Oct 6 15:10:33 2003 @@ -1,3 +1,19 @@ +2003-10-06 Gisle Aas + + Release 2.29 + + Another try. Forgot to update the test checksums. + + + +2003-10-06 Gisle Aas + + Release 2.28 + + Fix minor documentation typo. + + + 2003-08-04 Gisle Aas Release 2.27 @@ -131,7 +147,7 @@ Release 2.16 Sync up with the bleadperl version: - - use SvPVbyte() if avaiable + - use SvPVbyte() if available - fixes to make the code 'gcc -Wall'-clean @@ -140,7 +156,7 @@ Release 2.15 - Avoid exit() in Makefile.PL and bleedperls redefinition of printf + Avoid exit() in Makefile.PL and bleadperl redefinition of printf in the alignment test program. Patch by Doug MacEachern . @@ -157,7 +173,7 @@ Document the missing padding for the base64 digests. If both XS bootstrap and locating Digest::Perl::MD5 fails - reraise the original XS bootstrap exception. + re-raise the original XS bootstrap exception. @@ -400,7 +416,7 @@ $md5->digest will automatically reset now. Digest::HMAC methods add() and addfile() did not return the - corret object. + correct object. Added Digest.pm loading module. I am not sure this is a good idea. @@ -543,7 +559,7 @@ routines is limited to (2^32 - 1) bytes -- that's 4 gigabytes. I'm sorry if that's a real problem for you ... -And finally, a minor complilation warning (unsigned char * used with +And finally, a minor compilation warning (unsigned char * used with function having char * prototype) has also been eliminated. *** 96/04/09 Version 1.6 @@ -565,7 +581,7 @@ *** 96/03/12 Version 1.5.2 Minor fixes from Christopher J Madsen to provide -support for building on OS/2 (and to work arround a perl -w bug). +support for building on OS/2 (and to work around a perl -w bug). Remove warning about possible difference between add('foo', 'bar') and add('foobar'). This is not true (it may have been true in the earliest Modified: trunk/orca/packages/Digest-MD5-2.29/MD5.pm ============================================================================== --- trunk/orca/packages/Digest-MD5-2.27/MD5.pm (original) +++ trunk/orca/packages/Digest-MD5-2.29/MD5.pm Mon Oct 6 15:10:33 2003 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION @ISA @EXPORT_OK); -$VERSION = '2.27'; # $Date: 2003/08/05 06:08:10 $ +$VERSION = '2.29'; # $Date: 2003/10/06 17:32:18 $ require Exporter; *import = \&Exporter::import; @@ -104,7 +104,7 @@ Note that the base64 encoded string returned is not padded to be a multiple of 4 bytes long. If you want interoperability with other base64 encoded md5 digests you might want to append the redundant -string redundant "==" to the result. +string "==" to the result. =back @@ -247,7 +247,7 @@ close(FILE); print $md5->b64digest, " $file\n"; -Or we can use the builtin addfile method for more efficient reading of +Or we can use the addfile method for more efficient reading of the file: use Digest::MD5; Modified: trunk/orca/packages/Digest-MD5-2.29/t/files.t ============================================================================== --- trunk/orca/packages/Digest-MD5-2.27/t/files.t (original) +++ trunk/orca/packages/Digest-MD5-2.29/t/files.t Mon Oct 6 15:10:33 2003 @@ -20,26 +20,26 @@ my $EXPECT; if (ord "A" == 193) { # EBCDIC $EXPECT = < Author: blair Revision: 197 Property Name: svn:log New Property Value: * lib/SE/3.2.1, lib/SE/3.3: New directories to hold new orca_p_vmstat_class.se files. * lib/SE/3.2.1/orca_p_vmstat_class.se, * lib/SE/3.3/orca_p_vmstat_class.se: New files which contain definitions of new metrics. These files are modifications of the p_vmstat_class.se file that comes with SE 3.2.1 and SE 3.3. Rich Pettit asked that the modifications to these files be included as part of Orca as he won't be including them with SE. * data_gatherers/orcallator/start_orcallator.sh.in: Modified to determine installed SE version which is used to include the correct version of orca_p_vmstat_class.se file. Modified to make sure either SE 3.2.1 or SE 3.3 is found. If neither version is found, an error is displayed and the script exists. * data_gatherers/orcallator/orcallator.cfg.in: Modified to graph new metrics. * data_gatherers/orcallator/orcallator.se: Modified to collect new metrics. * lib/Makefile.in: Modified to properly create new lib/SE/3.2.1 and lib/SE/3.3 directories and copy orca_p_vmstat_class.se files during installation. * The modifications above allow for the collection and graphing of the following metrics: pgrec/s - page reclaims (include pageout) pgfrec/s - page reclaims from free list pgin/s - pageins pages_in/s - pages paged in pgout/s - pageouts pages_out/s - pages paged out dfree/s - pages freed by daemon or auto min_fault/s - minor page faults (pvm.hat_fault + pvm.as_fault) maj_fault/s - major page faults prot_fault/s - protection faults cow_fault/s - copy-on-write faults zfod/s - zero-fill-on-demand faults interrupts/s - interrupts including clock intrthreads/s - interrupts as threads (below clock) system_calls/s context_switches/s invol_switches/s - involuntary context switches traps/s forks/s vforks/s execs/s namei/s - pathname lookups ufsiget/s - ufs_iget() calls ufsdirblk/s - directory blocks read ufsinopage/s - inodes taken with no attached pages From blair at orcaware.com Mon Oct 6 18:59:17 2003 From: blair at orcaware.com (Blair Zajac) Date: Mon, 6 Oct 2003 18:59:17 -0700 Subject: [Orca-checkins] rev 257 - in trunk/orca: data_gatherers/orcallator lib lib/SE/3.3.1 Message-ID: <200310070159.h971xHCM032047@orcaware.com> Author: blair Date: Mon Oct 6 18:58:58 2003 New Revision: 257 Added: trunk/orca/lib/SE/3.3.1/ - copied from rev 256, trunk/orca/lib/SE/3.3/ Modified: trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in trunk/orca/lib/Makefile.in Log: Add support for SE 3.3.1. * lib/Makefile.in (install): Instead of listing the same commands with minor path modifications to install lib/SE/3.2.1/* and lib/SE/3.3/*, use a for loop. * lib/SE/3.3.1: Copied from lib/SE/3.3. The live_rules.se from SE 3.3.1 contains new code to workaround the floating point rounding issue where pvm.idle_time is too large, causing the sum pvm.user_time + pvm.system_time + pvm.wait_time + pvm.idle_time to be larger than 100, which results in Orca either ignoring or not plotting the data due to data_max and plot_max being set to 100 in data_gatherers/orcallator/orcallator.cfg.in. However, this new code has a bug where instead of subtracting a positive value, it subtracts a negative value, making pvm.idle_time larger and more likely to exceed 100. So for now, use the Orca's 3.3 live_rules.se for 3.3.1 * data_gatherers/orcallator/start_orcallator.sh.in: Move the code to check for a versions of SE (which uses $SE) after the $SE variable is checked to see if it is set and points to an executable program. Now check if the version is either 3.2.1 or matches 3.[3-9]*. Modified: trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in ============================================================================== --- trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in (original) +++ trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in Mon Oct 6 18:58:58 2003 @@ -13,12 +13,6 @@ UNAME=@UNAME@ RAW_ORCALLATOR_DIR=@VAR_DIR@/orcallator SE=@SE@ -SE_VERSION=`$SE -version | nawk '{print $4}'` -if [ "$SE_VERSION" != "3.2.1" -a "$SE_VERSION" != "3.3" ]; then - echo "SE version MUST be 3.3 or 3.2.1 .. please upgrade SE." - echo "See http://www.setoolkit.com for more information." - exit 1 -fi # WEB_LOG contains the location of the web server log file that # orcallator.se should read. @@ -65,6 +59,16 @@ exit 1 fi +SE_VERSION=`$SE -version | $AWK '{print $4}'` +case "$SE_VERSION" in + 3.2.1|3.[3-9]*) + ;; + *) echo "SE version MUST be 3.2.1 or greater. Please upgrade SE." + echo "See http://www.setoolkit.com for more information." + exit 1 + ;; +esac + # Get the hostname without the fully qualified part; that is, trim off # anything past the first `.'. uname=`$UNAME -n | $CUT -d. -f1` Modified: trunk/orca/lib/Makefile.in ============================================================================== --- trunk/orca/lib/Makefile.in (original) +++ trunk/orca/lib/Makefile.in Mon Oct 6 18:58:58 2003 @@ -30,6 +30,7 @@ $(MKDIR) $(libdir)/Orca $(MKDIR) $(libdir)/SE/3.2.1 $(MKDIR) $(libdir)/SE/3.3 + $(MKDIR) $(libdir)/SE/3.3.1 @for f in Orca/*.pm; do \ echo $(INSTALL) -m 0644 $$f $(libdir)/Orca; \ $(INSTALL) -m 0644 $$f $(libdir)/Orca; \ @@ -41,13 +42,13 @@ $(INSTALL) -m 0644 $$f $(libdir)/Orca/Config; \ done; \ fi - @for f in SE/3.2.1/*; do \ - echo $(INSTALL) -m 0644 $$f $(libdir)/SE/3.2.1; \ - $(INSTALL) -m 0644 $$f $(libdir)/SE/3.2.1; \ - done - @for f in SE/3.3/*; do \ - echo $(INSTALL) -m 0644 $$f $(libdir)/SE/3.3; \ - $(INSTALL) -m 0644 $$f $(libdir)/SE/3.3; \ + @for d in SE/*; do \ + test ! -d $$d && continue; \ + for f in $$d/*; do \ + test ! -f $$f && continue; \ + echo $(INSTALL) -m 0644 $$f $(libdir)/$$d; \ + $(INSTALL) -m 0644 $$f $(libdir)/$$d; \ + done \ done clean: From blair at orcaware.com Mon Oct 6 20:40:13 2003 From: blair at orcaware.com (Blair Zajac) Date: Mon, 6 Oct 2003 20:40:13 -0700 Subject: [Orca-checkins] rev 258 - trunk/orca/data_gatherers/orca_services Message-ID: <200310070340.h973eDfv002123@orcaware.com> Author: blair Date: Mon Oct 6 20:39:52 2003 New Revision: 258 Modified: trunk/orca/data_gatherers/orca_services/orca_services_running.pl.in Log: * data_gatherers/orca_services/orca_services_running.pl.in: Correctly refer to orca_services, not percoservices.se. Whitespace fix. Modified: trunk/orca/data_gatherers/orca_services/orca_services_running.pl.in ============================================================================== --- trunk/orca/data_gatherers/orca_services/orca_services_running.pl.in (original) +++ trunk/orca/data_gatherers/orca_services/orca_services_running.pl.in Mon Oct 6 20:39:52 2003 @@ -7,7 +7,7 @@ use POSIX qw(strftime); # Set this to the list of directories that contain the output from -# percoservices.se. +# orca_services.pl. my @stats_dirs = ('@VAR_DIR@/orca_services'); foreach my $stats_dir (@stats_dirs) { @@ -31,9 +31,9 @@ next; } my $age = (-M $file)*(24*60); - if ( $age > 8) { - $file= sprintf "%35s", $file; - $age = sprintf "%8.2f", $age; + if ($age > 8) { + $file = sprintf "%35s", $file; + $age = sprintf "%8.2f", $age; warn "$0: $file is $age minutes old.\n"; next; } From blair at orcaware.com Mon Oct 6 21:11:15 2003 From: blair at orcaware.com (Blair Zajac) Date: Mon, 6 Oct 2003 21:11:15 -0700 Subject: [Orca-checkins] rev 259 - in trunk/orca: . contrib/rotate_orca_graphs data_gatherers/orca_services data_gatherers/orcallator Message-ID: <200310070411.h974BFm2002693@orcaware.com> Author: blair Date: Mon Oct 6 21:11:01 2003 New Revision: 259 Modified: trunk/orca/configure.in trunk/orca/contrib/rotate_orca_graphs/rotate_orca_graphs.sh.in trunk/orca/data_gatherers/orca_services/start_orca_services.sh.in trunk/orca/data_gatherers/orca_services/stop_orca_services.sh.in trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in trunk/orca/data_gatherers/orcallator/stop_orcallator.sh.in Log: Scripts that use program locations determined by configure now check if configure did find a required program. This is to prevent the script from failing in the middle of its work. * configure.in: No longer set set CUT to cut, EXPR to expr or UNAME to uname if the respective program path cannot be found. This lets scripts know if a required program wasn't found on the system. * contrib/rotate_orca_graphs/rotate_orca_graphs.sh.in (variable_is_set_or_exit): New utility function checks if the specified variable has non-zero string length or exits the program otherwise. (main): Check that ARCHIVE_DIR exists and is a directory. Use variable_is_set_or_exit to check that HTML_DIR and TAR are set. * data_gatherers/orcallator/stop_orcallator.sh.in (variable_is_set_or_exit): New utility function. (main): Use variable_is_set_or_exit to check that AWK is set. * data_gatherers/orcallator/start_orcallator.sh.in (variable_is_set_or_exit): New utility function. (main): Use variable_is_set_or_exit to check that AWK, COMPRESSOR, CUT, EXPR, and UNAME are set. * data_gatherers/orca_services/start_orca_services.sh.in (variable_is_set_or_exit): New utility function. (main): Use variable_is_set_or_exit to check that AWK, CUT and UNAME are set. * data_gatherers/orca_services/stop_orca_services.sh.in (variable_is_set_or_exit): New utility function. (main): Use variable_is_set_or_exit to check that AWK is set. Modified: trunk/orca/configure.in ============================================================================== --- trunk/orca/configure.in (original) +++ trunk/orca/configure.in Mon Oct 6 21:11:01 2003 @@ -272,8 +272,8 @@ AC_PATH_PROG(BUNZIP2, bunzip2) AC_PATH_PROG(CHKCONFIG, chkconfig) AC_PATH_PROG(COMPRESS, compress) -AC_PATH_PROG(CUT, cut, cut) -AC_PATH_PROG(EXPR, expr, expr) +AC_PATH_PROG(CUT, cut) +AC_PATH_PROG(EXPR, expr) AC_PATH_PROGS(TAR,gtar gnutar tar) AC_PATH_PROG(GZIP, gzip) AC_PATH_PROG(GUNZIP, gunzip) @@ -293,8 +293,8 @@ AC_PATH_PROG(POD2MAN, pod2man, :) AC_PATH_PROG(POD2TEXT, pod2text, :) -AC_PATH_PROG(SE, se,,$PATH:/opt/RICHPse/bin) -AC_PATH_PROG(UNAME, uname, uname) +AC_PATH_PROG(SE, se, , $PATH:/opt/RICHPse/bin) +AC_PATH_PROG(UNAME, uname) AC_PATH_PROG(UNCOMPRESS, uncompress) # Determine the correct flags to compress files depending upon the compress Modified: trunk/orca/contrib/rotate_orca_graphs/rotate_orca_graphs.sh.in ============================================================================== --- trunk/orca/contrib/rotate_orca_graphs/rotate_orca_graphs.sh.in (original) +++ trunk/orca/contrib/rotate_orca_graphs/rotate_orca_graphs.sh.in Mon Oct 6 21:11:01 2003 @@ -12,26 +12,49 @@ # Set this directory to archive the daily plots in. ARCHIVE_DIR= -DATE=`date +%Y-%m-%d` HTML_DIR=@HTML_DIR@ TAR=@TAR@ +# This utility function checks if the specified variable has non-zero +# string length or exits the program otherwise. This is used to make +# sure that all required substitutions performed by 'configure' set +# the variable. +variable_is_set_or_exit() +{ + eval value="\$$1" + if test -z "$value"; then + echo "$0: configure did not set \$$1, please edit $0 and set it." 1>&2 + exit 1 + fi +} + if test -z "$ARCHIVE_DIR"; then - echo "$0: please edit $0 to set ARCHIVE_DIR" 1>&2 + echo "$0: please edit $0 to set ARCHIVE_DIR." 1>&2 + exit 1 +fi + +if test ! -d "$ARCHIVE_DIR"; then + echo "$0: $ARCHIVE_DIR does not exist or is not a directory." 1>&2 exit 1 fi +variable_is_set_or_exit HTML_DIR +variable_is_set_or_exit TAR + # Make sure that the Orca and archive HTML directories are not the # same. -cd $ARCHIVE_DIR -dir2=`pwd` cd $HTML_DIR dir1=`pwd` +cd $ARCHIVE_DIR +dir2=`pwd` if test "$dir1" = "$dir2"; then - echo "$0: HTML_DIR $dir1 and ARCHIVE_DIR $dir2 are the same directory" 1>&2 + echo "$0: HTML_DIR $dir1 and ARCHIVE_DIR $dir2 are the same directory." 1>&2 exit 1 fi +DATE=`date +%Y-%m-%d` + +# Use /bin/test instead of test which supports the -e test. if /bin/test ! -e $ARCHIVE_DIR/$DATE; then mkdir $ARCHIVE_DIR/$DATE || exit 1 fi Modified: trunk/orca/data_gatherers/orca_services/start_orca_services.sh.in ============================================================================== --- trunk/orca/data_gatherers/orca_services/start_orca_services.sh.in (original) +++ trunk/orca/data_gatherers/orca_services/start_orca_services.sh.in Mon Oct 6 21:11:01 2003 @@ -3,16 +3,34 @@ # This script runs orca_services with the proper options for your # site. -# Define program locations that will be needed. prefix=@prefix@ exec_prefix=@exec_prefix@ libexecdir=@libexecdir@ sysconfdir=@sysconfdir@ + +# Define program and directory locations that will be needed. AWK=@AWK@ CUT=@CUT@ UNAME=@UNAME@ RAW_ORCA_SERVICES_DIR=@VAR_DIR@/orca_services +# This utility function checks if the specified variable has non-zero +# string length or exits the program otherwise. This is used to make +# sure that all required substitutions performed by 'configure' set +# the variable. +variable_is_set_or_exit() +{ + eval value="\$$1" + if test -z "$value"; then + echo "$0: configure did not set \$$1, please edit $0 and set it." 1>&2 + exit 1 + fi +} + +variable_is_set_or_exit AWK +variable_is_set_or_exit CUT +variable_is_set_or_exit UNAME + # Get the hostname without the fully qualified part; that is, trim off # anything past the first `.'. uname=`$UNAME -n | $CUT -d. -f1` Modified: trunk/orca/data_gatherers/orca_services/stop_orca_services.sh.in ============================================================================== --- trunk/orca/data_gatherers/orca_services/stop_orca_services.sh.in (original) +++ trunk/orca/data_gatherers/orca_services/stop_orca_services.sh.in Mon Oct 6 21:11:01 2003 @@ -2,6 +2,21 @@ AWK=@AWK@ +# This utility function checks if the specified variable has non-zero +# string length or exits the program otherwise. This is used to make +# sure that all required substitutions performed by 'configure' set +# the variable. +variable_is_set_or_exit() +{ + eval value="\$$1" + if test -z "$value"; then + echo "$0: configure did not set \$$1, please edit $0 and set it." 1>&2 + exit 1 + fi +} + +variable_is_set_or_exit AWK + # Kill any running orca_services. pids=`/usr/ucb/ps auxww | $AWK '/orca_services/ && !/awk/ {print $2}'` if test "$pids" != ""; then Modified: trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in ============================================================================== --- trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in (original) +++ trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in Mon Oct 6 21:11:01 2003 @@ -2,10 +2,11 @@ # This script runs orcallator.se with the proper options for your site. -# Define program locations that will be needed. prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ + +# Define program and directory locations that will be needed. AWK=@AWK@ COMPRESSOR="@COMPRESSOR@" CUT=@CUT@ @@ -40,7 +41,7 @@ #SE_PATCHES="$SE_PATCHES -DHME_PATCH" #SE_PATCHES="$SE_PATCHES -DHME_PATCH_IFSPEED" -# Check if the SE executable was found upon configure. +# Check if the SE executable was found from configure. if test -z "$SE"; then cat <&2 When you configured Orca the se executable was not found. If you @@ -59,6 +60,25 @@ exit 1 fi +# This utility function checks if the specified variable has non-zero +# string length or exits the program otherwise. This is used to make +# sure that all required substitutions performed by 'configure' set +# the variable. +variable_is_set_or_exit() +{ + eval value="\$$1" + if test -z "$value"; then + echo "$0: configure did not set \$$1, please edit $0 and set it." 1>&2 + exit 1 + fi +} + +variable_is_set_or_exit AWK +variable_is_set_or_exit COMPRESSOR +variable_is_set_or_exit CUT +variable_is_set_or_exit EXPR +variable_is_set_or_exit UNAME + SE_VERSION=`$SE -version | $AWK '{print $4}'` case "$SE_VERSION" in 3.2.1|3.[3-9]*) Modified: trunk/orca/data_gatherers/orcallator/stop_orcallator.sh.in ============================================================================== --- trunk/orca/data_gatherers/orcallator/stop_orcallator.sh.in (original) +++ trunk/orca/data_gatherers/orcallator/stop_orcallator.sh.in Mon Oct 6 21:11:01 2003 @@ -2,6 +2,21 @@ AWK=@AWK@ +# This utility function checks if the specified variable has non-zero +# string length or exits the program otherwise. This is used to make +# sure that all required substitutions performed by 'configure' set +# the variable. +variable_is_set_or_exit() +{ + eval value="\$$1" + if test -z "$value"; then + echo "$0: configure did not set \$$1, please edit $0 and set it." 1>&2 + exit 1 + fi +} + +variable_is_set_or_exit AWK + # Kill any running orcallators. pids=`/usr/ucb/ps auxww | $AWK '/orcallator.se/ && !/awk/ {print $2}'` if test "$pids" != ""; then From blair at orcaware.com Mon Oct 6 21:34:15 2003 From: blair at orcaware.com (Blair Zajac) Date: Mon, 6 Oct 2003 21:34:15 -0700 Subject: [Orca-checkins] rev 260 - in trunk/orca/data_gatherers: orca_services orcallator procallator Message-ID: <200310070434.h974YFXh002820@orcaware.com> Author: blair Date: Mon Oct 6 21:34:01 2003 New Revision: 260 Modified: trunk/orca/data_gatherers/orca_services/S99orca_services.sh.in trunk/orca/data_gatherers/orcallator/S99orcallator.sh.in trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in trunk/orca/data_gatherers/procallator/S99procallator.sh.in Log: * data_gatherers/procallator/S99procallator.sh.in, * data_gatherers/orcallator/S99orcallator.sh.in, * data_gatherers/orcallator/start_orcallator.sh.in, * data_gatherers/orca_services/S99orca_services.sh.in: Bourne shell whitespace and indentation consistently cleanup. Use two spaces for indentation. Format case statements consistently. Modified: trunk/orca/data_gatherers/orca_services/S99orca_services.sh.in ============================================================================== --- trunk/orca/data_gatherers/orca_services/S99orca_services.sh.in (original) +++ trunk/orca/data_gatherers/orca_services/S99orca_services.sh.in Mon Oct 6 21:34:01 2003 @@ -5,25 +5,25 @@ bindir=@bindir@ case "$1" in -'start') - if [ -x $bindir/start_orca_services ]; then - umask 022 - $bindir/start_orca_services - else - echo "$0: $bindir/start_orca_services does not exist or is not executable." - fi - ;; + start) + if [ -x $bindir/start_orca_services ]; then + umask 022 + $bindir/start_orca_services + else + echo "$0: $bindir/start_orca_services does not exist or is not executable." + fi + ;; -'stop') - if [ -x $bindir/stop_orca_services ]; then - $bindir/stop_orca_services - fi - ;; - -*) - echo "Usage: $0 { start | stop }" - exit 1 - ;; + stop) + if [ -x $bindir/stop_orca_services ]; then + $bindir/stop_orca_services + fi + ;; + *) + echo "usage: $0 {start|stop}" + exit 1 + ;; esac + exit 0 Modified: trunk/orca/data_gatherers/orcallator/S99orcallator.sh.in ============================================================================== --- trunk/orca/data_gatherers/orcallator/S99orcallator.sh.in (original) +++ trunk/orca/data_gatherers/orcallator/S99orcallator.sh.in Mon Oct 6 21:34:01 2003 @@ -8,25 +8,25 @@ stop_orcallator="$bindir/stop_orcallator" case "$1" in -'start') + start) if [ -x $start_orcallator ]; then - umask 022 - $start_orcallator + umask 022 + $start_orcallator else - echo "$0: $start_orcallator does not exist or is not executable." + echo "$0: $start_orcallator does not exist or is not executable." fi ;; -'stop') + stop) if [ -x $stop_orcallator ]; then - $stop_orcallator + $stop_orcallator fi ;; -*) - echo "Usage: $0 { start | stop }" + *) + echo "usage: $0 {start|stop}" exit 1 ;; - esac + exit 0 Modified: trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in ============================================================================== --- trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in (original) +++ trunk/orca/data_gatherers/orcallator/start_orcallator.sh.in Mon Oct 6 21:34:01 2003 @@ -82,11 +82,12 @@ SE_VERSION=`$SE -version | $AWK '{print $4}'` case "$SE_VERSION" in 3.2.1|3.[3-9]*) - ;; - *) echo "SE version MUST be 3.2.1 or greater. Please upgrade SE." - echo "See http://www.setoolkit.com for more information." - exit 1 - ;; + ;; + *) + echo "SE version MUST be 3.2.1 or greater. Please upgrade SE." + echo "See http://www.setoolkit.com for more information." + exit 1 + ;; esac # Get the hostname without the fully qualified part; that is, trim off Modified: trunk/orca/data_gatherers/procallator/S99procallator.sh.in ============================================================================== --- trunk/orca/data_gatherers/procallator/S99procallator.sh.in (original) +++ trunk/orca/data_gatherers/procallator/S99procallator.sh.in Mon Oct 6 21:34:01 2003 @@ -17,61 +17,60 @@ # Source function library. . /etc/init.d/functions -start () +start() { - echo -n $"Starting procallator: " - if [ -x $procallator ]; then - $procallator & - RETVAL=$? - PID=$! - if test $RETVAL -eq 0; then - success $"procallator startup" - touch /var/lock/subsys/procallator - echo $PID > /var/run/procallator.pid - else - failure $"procallator startup" - fi - echo + echo -n $"Starting procallator: " + if [ -x $procallator ]; then + $procallator & + RETVAL=$? + PID=$! + if test $RETVAL -eq 0; then + success $"procallator startup" + touch /var/lock/subsys/procallator + echo $PID > /var/run/procallator.pid else - failure "$0: $procallator does not exist or is not executable." + failure $"procallator startup" fi + echo + else + failure "$0: $procallator does not exist or is not executable." + fi } -stop () +stop() { - echo -n $"Stopping procallator: " - killproc $procallator - RETVAL=$? - echo - if test $RETVAL -eq 0; then - rm -f /var/lock/subsys/procallator /var/run/procallator.pid - fi + echo -n $"Stopping procallator: " + killproc $procallator + RETVAL=$? + echo + if test $RETVAL -eq 0; then + rm -f /var/lock/subsys/procallator /var/run/procallator.pid + fi } # See how we were called. case "$1" in - -start) + start) start ;; -stop) + stop) stop ;; -status) + status) status procallator ;; -restart) + restart) stop start ;; -*) - echo "Usage: $0 {start|stop|restart|status}" + *) + echo "usage: $0 {start|stop|restart|status}" exit 1 ;; - esac + exit $RETVAL From blair at orcaware.com Mon Oct 6 21:37:50 2003 From: blair at orcaware.com (Blair Zajac) Date: Mon, 6 Oct 2003 21:37:50 -0700 Subject: [Orca-checkins] rev 261 - trunk/orca/data_gatherers/orca_services Message-ID: <200310070437.h974boWe002893@orcaware.com> Author: blair Date: Mon Oct 6 21:37:34 2003 New Revision: 261 Modified: trunk/orca/data_gatherers/orca_services/orca_services.pl.in Log: * data_gatherers/orca_services/orca_services.pl.in: Use consistent capitalization for 'usage'. Modified: trunk/orca/data_gatherers/orca_services/orca_services.pl.in ============================================================================== --- trunk/orca/data_gatherers/orca_services/orca_services.pl.in (original) +++ trunk/orca/data_gatherers/orca_services/orca_services.pl.in Mon Oct 6 21:37:34 2003 @@ -379,7 +379,7 @@ # ---------------------------------------------------------------------------- sub usage { - die "Usage: $progname [options] + die "usage: $progname [options] ($progname uses the GNU extended POSIX option format) --pidfile=FILE write my PID here (default: $def_pid) From blair at orcaware.com Tue Oct 7 10:50:08 2003 From: blair at orcaware.com (Blair Zajac) Date: Tue, 7 Oct 2003 10:50:08 -0700 Subject: [Orca-checkins] rev 262 - trunk/orca Message-ID: <200310071750.h97Ho8E6013698@orcaware.com> Author: blair Date: Tue Oct 7 10:49:43 2003 New Revision: 262 Modified: trunk/orca/FAQ (contents, props changed) Log: * FAQ: Add two more questions regarding NFS vs rsync, rsh vs ssh, and how to set up ssh securely. Set 'svn:keywords' to 'HeadURL LastChangedBy LastChangedDate LastChangedRevision' and use them. Remove the manually maintained document version. Modified: trunk/orca/FAQ ============================================================================== --- trunk/orca/FAQ (original) +++ trunk/orca/FAQ Tue Oct 7 10:49:43 2003 @@ -3,7 +3,10 @@ Please email submissions to the FAQ to orca-users at orcaware.com. -Version: 1.13 Nov 7, 2002. +# $HeadURL$ +# $LastChangedDate$ +# $LastChangedBy$ +# $LastChangedRevision$ General ------- @@ -14,6 +17,11 @@ 1.3) Why are there random characters at the end of my HTML and GIF or PNG images names, i.e. o_host3_disk_runp_c0t6d0...disk_runp_c-4QyP2ziXlrwXj8eG_n_A.html? + 1.4) What should I use, NFS or rsync, to get my data from my clients + to the Orca server? Should I push my data to the server from + the clients or have my server pull my data? + 1.5) How should I set up ssh access securely without entering a + password everytime a process needs to contact a remote system? Warning Messages ---------------- @@ -118,6 +126,76 @@ filename, trim the filename down and insert the MD5 into the short filename, which will guarantee uniqueness. + 1.4) What should I use, NFS or rsync, to get my data from my clients + to the Orca server? Should I push my data to the server from + the clients or have my server pull my data? + + [Answer written by Sean O'Neill .] + + Yeah, NFS is a total pain for more reasons than just security. + + rsync is the way to go. By default, it uses ssh as it's + transport application vs. rsh. Don't use rsh for the obvious + reasons. + + But you need to really think about what this means in regards + to security. First, your security group is probably going to + be nervous about anything that allows for unattended + password-less access between servers. But you also need to + figure out if you want to PUSH or PULL your Orca data. + + If you have a Orca server that ssh's into the remote systems + and rsync's down the data (e.g. PULL), this one machine would + have ssh access to LOTS of other systems and would probably + make any security group very nervous about that machine. + + If you have the remote systems rsync their data to the Orca + server (e.g. PUSH), then you have lots of other machines with + ssh access to ONE system. This generally makes security a + /little/ less nervous. + + Some folks on the list have multiple Orca servers because of + the system resources required by Orca. Its a CPU/memory hog at + times. Also, pushing data into a box is generally an + asynchronous activity (from the Orca server's point of view) so + it will take in as many as the box will support. + + If the Orca server is PULLING data, you need some script to + keep track of what systems to pull data from, have logic to + make it less serial to get the data down faster, etc etc - + e.g. its more of a headache IMHO. + + 1.5) How should I set up ssh access securely without entering a + password everytime a process needs to contact a remote system? + + To get ssh working, use key authentication. One easy way to + use key authentication is to use the keychain tool at + + http://www.gentoo.org/proj/en/keychain.xml + + The first keychain article introduces the concepts behind + RSA/DSA key authentication and shows you how to set up + primitive (with passphrase) RSA/DSA authentication: + + http://www-106.ibm.com/developerworks/library/l-keyc.html + + The second article shows you how to use keychain to set up + secure, password-less ssh access in an extremely convenient + way. keychain also provides a clean, secure way for cron jobs + to take advantage of RSA/DSA keys without having to use + insecure unencrypted private keys. + + http://www-106.ibm.com/developerworks/linux/library/l-keyc2/ + + A third keychain article shows you how to use ssh-agent's + authentication forwarding mechanism. + + http://www-106.ibm.com/developerworks/linux/library/l-keyc3/ + + Even with these methods, when a system reboots, a person will + need to manually log into the system, su into the account, run + keychain and enter the passphrase to unlock the RSA/DSA keys. + Warning Messages ---------------- From blair at orcaware.com Tue Oct 7 20:54:44 2003 From: blair at orcaware.com (Blair Zajac) Date: Tue, 7 Oct 2003 20:54:44 -0700 Subject: [Orca-checkins] rev 263 - in trunk/orca/data_gatherers: orca_services orcallator procallator Message-ID: <200310080354.h983sixr024589@orcaware.com> Author: blair Date: Tue Oct 7 20:54:24 2003 New Revision: 263 Modified: trunk/orca/data_gatherers/orca_services/S99orca_services.sh.in trunk/orca/data_gatherers/orcallator/S99orcallator.sh.in trunk/orca/data_gatherers/procallator/S99procallator.sh.in Log: * data_gatherers/procallator/S99procallator.sh.in, * data_gatherers/orcallator/S99orcallator.sh.in, * data_gatherers/orca_services/S99orca_services.sh.in: Use "if test" instead of "if [" to be consistent across all scripts. Modified: trunk/orca/data_gatherers/orca_services/S99orca_services.sh.in ============================================================================== --- trunk/orca/data_gatherers/orca_services/S99orca_services.sh.in (original) +++ trunk/orca/data_gatherers/orca_services/S99orca_services.sh.in Tue Oct 7 20:54:24 2003 @@ -6,7 +6,7 @@ case "$1" in start) - if [ -x $bindir/start_orca_services ]; then + if test -x $bindir/start_orca_services; then umask 022 $bindir/start_orca_services else @@ -15,7 +15,7 @@ ;; stop) - if [ -x $bindir/stop_orca_services ]; then + if test -x $bindir/stop_orca_services; then $bindir/stop_orca_services fi ;; Modified: trunk/orca/data_gatherers/orcallator/S99orcallator.sh.in ============================================================================== --- trunk/orca/data_gatherers/orcallator/S99orcallator.sh.in (original) +++ trunk/orca/data_gatherers/orcallator/S99orcallator.sh.in Tue Oct 7 20:54:24 2003 @@ -9,7 +9,7 @@ case "$1" in start) - if [ -x $start_orcallator ]; then + if test -x $start_orcallator; then umask 022 $start_orcallator else @@ -18,7 +18,7 @@ ;; stop) - if [ -x $stop_orcallator ]; then + if test -x $stop_orcallator; then $stop_orcallator fi ;; Modified: trunk/orca/data_gatherers/procallator/S99procallator.sh.in ============================================================================== --- trunk/orca/data_gatherers/procallator/S99procallator.sh.in (original) +++ trunk/orca/data_gatherers/procallator/S99procallator.sh.in Tue Oct 7 20:54:24 2003 @@ -20,7 +20,7 @@ start() { echo -n $"Starting procallator: " - if [ -x $procallator ]; then + if test -x $procallator; then $procallator & RETVAL=$? PID=$! From blair at orcaware.com Thu Oct 9 10:45:24 2003 From: blair at orcaware.com (Blair Zajac) Date: Thu, 9 Oct 2003 10:45:24 -0700 Subject: [Orca-checkins] rev 264 - in trunk/orca: . packages/Digest-MD5-2.29 packages/Digest-MD5-2.30 packages/Digest-MD5-2.30/t Message-ID: <200310091745.h99HjOIM007485@orcaware.com> Author: blair Date: Thu Oct 9 10:45:03 2003 New Revision: 264 Added: trunk/orca/packages/Digest-MD5-2.30/ - copied from rev 263, trunk/orca/packages/Digest-MD5-2.29/ Removed: trunk/orca/packages/Digest-MD5-2.29/ Modified: trunk/orca/INSTALL trunk/orca/configure.in trunk/orca/packages/Digest-MD5-2.30/Changes trunk/orca/packages/Digest-MD5-2.30/MD5.pm trunk/orca/packages/Digest-MD5-2.30/Makefile.PL trunk/orca/packages/Digest-MD5-2.30/t/align.t trunk/orca/packages/Digest-MD5-2.30/t/files.t trunk/orca/packages/Digest-MD5-2.30/t/utf8.t Log: Upgrade Digest::MD5 from 2.29 to 2.30 and require the new version for Orca. * INSTALL: Update all references to Digest::MD5's version number from 2.29 to 2.30. * configure.in: Bump Digest::MD5's version number to 2.30. * packages/Digest-MD5-2.30: Renamed from packages/Digest-MD5-2.29. Directory contents updated from Digest-MD5-2.30.tar.gz. Modified: trunk/orca/INSTALL ============================================================================== --- trunk/orca/INSTALL (original) +++ trunk/orca/INSTALL Thu Oct 9 10:45:03 2003 @@ -173,7 +173,7 @@ Data::Dumper >= 2.101 >= 2.101 2.101 Date::Parse Not required by Orca 2.24 Devel::DProf Not required by Orca 19990108 - Digest::MD5 >= 2.29 >= 2.29 2.29 + Digest::MD5 >= 2.30 >= 2.30 2.30 Math::IntervalSearch >= 1.05 >= 1.05 1.05 RRDs >= 1.000451 >= 1.0.45 1.0.45 Storable >= 2.07 >= 2.07 2.07 @@ -227,10 +227,10 @@ Digest::MD5 - http://www.perl.com/CPAN/authors/id/G/GA/GAAS/Digest-MD5-2.29.tar.gz + http://www.perl.com/CPAN/authors/id/G/GA/GAAS/Digest-MD5-2.30.tar.gz - % gunzip -c Digest-MD5-2.29.tar.gz | tar xvf - - % cd Digest-MD5-2.29 + % gunzip -c Digest-MD5-2.30.tar.gz | tar xvf - + % cd Digest-MD5-2.30 % perl Makefile.PL % make % make test Modified: trunk/orca/configure.in ============================================================================== --- trunk/orca/configure.in (original) +++ trunk/orca/configure.in Thu Oct 9 10:45:03 2003 @@ -33,8 +33,8 @@ DATE_PARSE_VER=2.24 DEVEL_DPROF_DIR=DProf-19990108 DEVEL_DPROF_VER=19990108 -DIGEST_MD5_DIR=Digest-MD5-2.29 -DIGEST_MD5_VER=2.29 +DIGEST_MD5_DIR=Digest-MD5-2.30 +DIGEST_MD5_VER=2.30 MATH_INTERVALSEARCH_DIR=Math-Interpolate-1.05 MATH_INTERVALSEARCH_VER=1.05 RRDTOOL_DIR=rrdtool-1.0.45 Modified: trunk/orca/packages/Digest-MD5-2.30/Changes ============================================================================== --- trunk/orca/packages/Digest-MD5-2.29/Changes (original) +++ trunk/orca/packages/Digest-MD5-2.30/Changes Thu Oct 9 10:45:03 2003 @@ -1,3 +1,12 @@ +2003-10-09 Gisle Aas + + Release 2.30 + + Some tweaks to make the module build on perl-5.004 and + perl-5.005 again. + + + 2003-10-06 Gisle Aas Release 2.29 Modified: trunk/orca/packages/Digest-MD5-2.30/MD5.pm ============================================================================== --- trunk/orca/packages/Digest-MD5-2.29/MD5.pm (original) +++ trunk/orca/packages/Digest-MD5-2.30/MD5.pm Thu Oct 9 10:45:03 2003 @@ -3,7 +3,7 @@ use strict; use vars qw($VERSION @ISA @EXPORT_OK); -$VERSION = '2.29'; # $Date: 2003/10/06 17:32:18 $ +$VERSION = '2.30'; # $Date: 2003/10/09 09:26:59 $ require Exporter; *import = \&Exporter::import; Modified: trunk/orca/packages/Digest-MD5-2.30/Makefile.PL ============================================================================== --- trunk/orca/packages/Digest-MD5-2.29/Makefile.PL (original) +++ trunk/orca/packages/Digest-MD5-2.30/Makefile.PL Thu Oct 9 10:45:03 2003 @@ -1,4 +1,6 @@ -require 5.004; +#!perl -w + +BEGIN { require 5.004 } use strict; use Config qw(%Config); use ExtUtils::MakeMaker; @@ -20,6 +22,7 @@ WriteMakefile( 'NAME' => 'Digest::MD5', 'VERSION_FROM' => 'MD5.pm', + 'PREREQ_PM' => { 'File::Spec' => 0 }, @extra, 'dist' => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', }, ); @@ -98,18 +101,18 @@ EOT my $cc_cmd = "$Config{cc} $Config{ccflags} -I$Config{archlibexp}/CORE"; - my $exe = "u32align$Config{_exe}"; + my $exe = "u32align$Config{exe_ext}"; $cc_cmd .= " -o $exe"; my $rc; $rc = system("$cc_cmd $Config{ldflags} u32align.c $Config{libs}"); if ($rc) { print "Can't compile test program. Will ensure alignment to play safe.\n\n"; - unlink("u32align.c", $exe, "u32align$Config{_o}"); + unlink("u32align.c", $exe, "u32align$Config{obj_ext}"); return 0; } $rc = system("./$exe"); - unlink("u32align.c", $exe, "u32align$Config{_o}"); + unlink("u32align.c", $exe, "u32align$Config{obj_ext}"); return 1 unless $rc; Modified: trunk/orca/packages/Digest-MD5-2.30/t/align.t ============================================================================== --- trunk/orca/packages/Digest-MD5-2.29/t/align.t (original) +++ trunk/orca/packages/Digest-MD5-2.30/t/align.t Thu Oct 9 10:45:03 2003 @@ -13,7 +13,7 @@ use Digest::MD5 qw(md5_hex); my $str = "\100" x 20; -substr($str, 0, 1, ""); # chopping off first char makes the string unaligned +substr($str, 0, 1) = ""; # chopping off first char makes the string unaligned #use Devel::Peek; Dump($str); Modified: trunk/orca/packages/Digest-MD5-2.30/t/files.t ============================================================================== --- trunk/orca/packages/Digest-MD5-2.29/t/files.t (original) +++ trunk/orca/packages/Digest-MD5-2.30/t/files.t Thu Oct 9 10:45:03 2003 @@ -20,26 +20,26 @@ my $EXPECT; if (ord "A" == 193) { # EBCDIC $EXPECT = < Author: blair Date: Fri Oct 10 21:47:51 2003 New Revision: 265 Modified: trunk/orca/TODO Log: * TODO: Get consistent indentation. Modified: trunk/orca/TODO ============================================================================== --- trunk/orca/TODO (original) +++ trunk/orca/TODO Fri Oct 10 21:47:51 2003 @@ -1,11 +1,11 @@ From Hans-Werner Jouy: - Is it possilbe to use different config files with a "include - xxx.conf" in the main configuration? This makes sense when you use - different collectors (i.e. for different architectures), a change - in the collecting scripts then corresponds with the same include - files. In this way different maintainers can modify independly from - each other. + Is it possilbe to use different config files with a "include + xxx.conf" in the main configuration? This makes sense when you + use different collectors (i.e. for different architectures), a + change in the collecting scripts then corresponds with the same + include files. In this way different maintainers can modify + independly from each other. From Hans-Werner Jouy: From blair at orcaware.com Tue Oct 28 09:32:56 2003 From: blair at orcaware.com (Blair Zajac) Date: Tue, 28 Oct 2003 09:32:56 -0800 Subject: [Orca-checkins] rev 266 - in trunk/orca: . packages/Time-HiRes-1.51 packages/Time-HiRes-1.52 packages/Time-HiRes-1.52/t Message-ID: <200310281732.h9SHWuYL025051@orcaware.com> Author: blair Date: Tue Oct 28 09:32:18 2003 New Revision: 266 Added: trunk/orca/packages/Time-HiRes-1.52/ - copied from rev 265, trunk/orca/packages/Time-HiRes-1.51/ trunk/orca/packages/Time-HiRes-1.52/META.yml Removed: trunk/orca/packages/Time-HiRes-1.51/ Modified: trunk/orca/INSTALL trunk/orca/configure.in trunk/orca/packages/Time-HiRes-1.52/Changes trunk/orca/packages/Time-HiRes-1.52/HiRes.pm trunk/orca/packages/Time-HiRes-1.52/MANIFEST trunk/orca/packages/Time-HiRes-1.52/t/HiRes.t Log: Upgrade Time::HiRes from 1.51 to 1.52. * INSTALL (Determine which Perl modules need compiling and installing): Update all references to Time::HiRes's version number from 1.51 to 1.52. * configure.in: Bump Time::HiRes's version number to 1.52. * packages/Time-HiRes-1.52: Renamed from packages/Time-HiRes-1.51. Directory contents updated from Time-HiRes-1.52.tar.gz. Modified: trunk/orca/INSTALL ============================================================================== --- trunk/orca/INSTALL (original) +++ trunk/orca/INSTALL Tue Oct 28 09:32:18 2003 @@ -177,7 +177,7 @@ Math::IntervalSearch >= 1.05 >= 1.05 1.05 RRDs >= 1.000451 >= 1.0.45 1.0.45 Storable >= 2.07 >= 2.07 2.07 - Time::HiRes Not required by Orca 1.51 + Time::HiRes Not required by Orca 1.52 All seven of these modules are included with the Orca distribution in the packages directory. When you configure Orca in step 3), @@ -278,10 +278,10 @@ Time::HiRes - http://www.perl.com/CPAN/authors/id/J/JH/JHI/Time-HiRes-1.51.tar.gz + http://www.perl.com/CPAN/authors/id/J/JH/JHI/Time-HiRes-1.52.tar.gz - % gunzip -c Time-HiRes-1.51.tar.gz | tar xvf - - % cd Time-HiRes-1.51 + % gunzip -c Time-HiRes-1.52.tar.gz | tar xvf - + % cd Time-HiRes-1.52 % perl Makefile.PL % make % make test Modified: trunk/orca/configure.in ============================================================================== --- trunk/orca/configure.in (original) +++ trunk/orca/configure.in Tue Oct 28 09:32:18 2003 @@ -41,8 +41,8 @@ RRDTOOL_VER=1.000451 STORABLE_DIR=Storable-2.07 STORABLE_VER=2.07 -TIME_HIRES_DIR=Time-HiRes-1.51 -TIME_HIRES_VER=1.51 +TIME_HIRES_DIR=Time-HiRes-1.52 +TIME_HIRES_VER=1.52 AC_SUBST(COMPRESS_ZLIB_DIR) AC_SUBST(DATA_DUMPER_DIR) Modified: trunk/orca/packages/Time-HiRes-1.52/Changes ============================================================================== --- trunk/orca/packages/Time-HiRes-1.51/Changes (original) +++ trunk/orca/packages/Time-HiRes-1.52/Changes Tue Oct 28 09:32:18 2003 @@ -1,5 +1,10 @@ Revision history for Perl extension Time::HiRes. +1.52 + - In AIX (v?) with perl 5.6.1 the HiRes.t can hang after + the subtest 18. No known analysis nor fix, but added + an alarm (that requires fork() and alarm()) to the test. + 1.51 - doc tweaks from mjd (perl change #20456) - NCR MP-RAS hints file added (svr4.pl) (perl change #21249) Modified: trunk/orca/packages/Time-HiRes-1.52/HiRes.pm ============================================================================== --- trunk/orca/packages/Time-HiRes-1.51/HiRes.pm (original) +++ trunk/orca/packages/Time-HiRes-1.52/HiRes.pm Tue Oct 28 09:32:18 2003 @@ -15,7 +15,7 @@ d_usleep d_ualarm d_gettimeofday d_getitimer d_setitimer d_nanosleep); -$VERSION = '1.51'; +$VERSION = '1.52'; $XS_VERSION = $VERSION; $VERSION = eval $VERSION; Modified: trunk/orca/packages/Time-HiRes-1.52/MANIFEST ============================================================================== --- trunk/orca/packages/Time-HiRes-1.51/MANIFEST (original) +++ trunk/orca/packages/Time-HiRes-1.52/MANIFEST Tue Oct 28 09:32:18 2003 @@ -14,3 +14,4 @@ README Time::HiRes extension TODO Time::HiRes extension typemap Time::HiRes extension +META.yml Module meta-data (added by MakeMaker) Added: trunk/orca/packages/Time-HiRes-1.52/META.yml ============================================================================== --- (empty file) +++ trunk/orca/packages/Time-HiRes-1.52/META.yml Tue Oct 28 09:32:18 2003 @@ -0,0 +1,10 @@ +# http://module-build.sourceforge.net/META-spec.html +#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX# +name: Time-HiRes +version: 1.52 +version_from: HiRes.pm +installdirs: perl +requires: + +distribution_type: module +generated_by: ExtUtils::MakeMaker version 6.17 Modified: trunk/orca/packages/Time-HiRes-1.52/t/HiRes.t ============================================================================== --- trunk/orca/packages/Time-HiRes-1.51/t/HiRes.t (original) +++ trunk/orca/packages/Time-HiRes-1.52/t/HiRes.t Tue Oct 28 09:32:18 2003 @@ -30,6 +30,31 @@ use Config; +my $have_alarm = $Config{d_alarm}; +my $have_fork = $Config{d_fork}; +my $waitfor = 60; # 10 seconds is normal. +my $pid; + +if ($have_fork) { + print "# Testing process $$\n"; + print "# Starting the timer process\n"; + if (defined ($pid = fork())) { + if ($pid == 0) { # We are the kid, set up the timer. + print "# Timer process $$\n"; + sleep($waitfor); + warn "$0: Time's up!\n"; + print "# Terminating the testing process\n"; + kill('TERM', getppid()); + print "# Timer process exiting\n"; + exit(0); + } + } else { + warn "$0: fork failed: $!\n"; + } +} else { + print "# No timer process\n"; +} + my $xdefine = ''; if (open(XDEFINE, "xdefine")) { @@ -131,7 +156,7 @@ ok 11, $f > 0.4 && $f < 0.9, "slept $f instead of 0.5 secs."; } -if (!$have_ualarm || !$Config{d_alarm}) { +if (!$have_ualarm || !$have_alarm) { skip 12..13; } else { @@ -337,3 +362,9 @@ skip 24; skip 25; } + +if (defined $pid) { + print "# Terminating the timer process $pid\n"; + kill('TERM', $pid); # We are done, the timer can go. +} +