[LON-CAPA-cvs] cvs: loncom / lond
foxr
lon-capa-cvs@mail.lon-capa.org
Tue, 21 Jun 2005 11:01:37 -0000
foxr Tue Jun 21 07:01:37 2005 EDT
Modified files:
/loncom lond
Log:
A bit of error checking added to ensure that lond is aware if lcuseradd
failed so bad it was not able to write its status file.
Index: loncom/lond
diff -u loncom/lond:1.284 loncom/lond:1.285
--- loncom/lond:1.284 Fri Jun 3 14:23:19 2005
+++ loncom/lond Tue Jun 21 07:01:35 2005
@@ -2,7 +2,7 @@
# The LearningOnline Network
# lond "LON Daemon" Server (port "LOND" 5663)
#
-# $Id: lond,v 1.284 2005/06/03 18:23:19 raeburn Exp $
+# $Id: lond,v 1.285 2005/06/21 11:01:35 foxr Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -58,7 +58,7 @@
my $status='';
my $lastlog='';
-my $VERSION='$Revision: 1.284 $'; #' stupid emacs
+my $VERSION='$Revision: 1.285 $'; #' stupid emacs
my $remoteVERSION;
my $currenthostid="default";
my $currentdomainid;
@@ -5558,24 +5558,30 @@
print $se "$npass\n";
print $se "$lc_error_file\n"; # Status -> unique file.
}
- my $error = IO::File->new("< $lc_error_file");
- my $useraddok = <$error>;
- $error->close;
- unlink($lc_error_file);
-
- chomp $useraddok;
-
- if($useraddok > 0) {
- my $error_text = &lcuseraddstrerror($useraddok);
- &logthis("Failed lcuseradd: $error_text");
- $result = "lcuseradd_failed:$error_text\n";
- } else {
- my $pf = IO::File->new(">$passfilename");
- if($pf) {
- print $pf "unix:\n";
- } else {
- $result = "pass_file_failed_error";
+ if (-r $lc_error_file) {
+ &Debug("Opening error file: $lc_error_file");
+ my $error = IO::File->new("< $lc_error_file");
+ my $useraddok = <$error>;
+ $error->close;
+ unlink($lc_error_file);
+
+ chomp $useraddok;
+
+ if($useraddok > 0) {
+ my $error_text = &lcuseraddstrerror($useraddok);
+ &logthis("Failed lcuseradd: $error_text");
+ $result = "lcuseradd_failed:$error_text\n";
+ } else {
+ my $pf = IO::File->new(">$passfilename");
+ if($pf) {
+ print $pf "unix:\n";
+ } else {
+ $result = "pass_file_failed_error";
+ }
}
+ } else {
+ &Debug("Could not locate lcuseradd error: $lc_error_file");
+ $result="bug_lcuseradd_no_output_file";
}
}
} elsif ($umode eq 'none') {