summaryrefslogtreecommitdiff
path: root/site_perl/Conf.pm
diff options
context:
space:
mode:
Diffstat (limited to 'site_perl/Conf.pm')
-rw-r--r--site_perl/Conf.pm27
1 files changed, 19 insertions, 8 deletions
diff --git a/site_perl/Conf.pm b/site_perl/Conf.pm
index d3ef307c0..9cc0d900e 100644
--- a/site_perl/Conf.pm
+++ b/site_perl/Conf.pm
@@ -3,8 +3,6 @@ package FS::Conf;
use vars qw($default_dir);
use IO::File;
-$default_dir='/var/spool/freeside/conf';
-
=head1 NAME
FS::Conf - Read access to Freeside configuration values
@@ -13,8 +11,10 @@ FS::Conf - Read access to Freeside configuration values
use FS::Conf;
+ $conf = new FS::Conf "/config/directory";
+
+ $FS::Conf::default_dir = "/config/directory";
$conf = new FS::Conf;
- $conf = new FS::Conf "/non/standard/config/directory";
$dir = $conf->dir;
@@ -33,8 +33,8 @@ but this may change in the future.
=item new [ DIRECTORY ]
-Create a new configuration object. Optionally, a non-default directory may
-be specified.
+Create a new configuration object. A directory arguement is required if
+$FS::Conf::default_dir has not been set.
=cut
@@ -53,7 +53,12 @@ Returns the directory.
sub dir {
my($self) = @_;
- $self->{dir};
+ my $dir = $self->{dir};
+ -e $dir or die "FATAL: $dir doesn't exist!";
+ -d $dir or die "FATAL: $dir isn't a directory!";
+ -r $dir or die "FATAL: Can't read $dir!";
+ -x $dir or die "FATAL: $dir not searchable (executable)!";
+ $dir;
}
=item config
@@ -94,8 +99,6 @@ sub exists {
=head1 BUGS
-The option to specify a non-default directory should probably be removed.
-
Write access (with locking) should be implemented.
=head1 SEE ALSO
@@ -108,6 +111,14 @@ Ivan Kohler <ivan@sisd.com> 98-sep-6
sub exists forgot to fetch $dir ivan@sisd.com 98-sep-27
+$Log: Conf.pm,v $
+Revision 1.3 1999-03-29 01:29:33 ivan
+die unless the configuration directory exists
+
+Revision 1.2 1998/11/13 04:08:44 ivan
+no default default_dir (ironic)
+
+
=cut
1;