(RADIATOR) Radiator quits reading the config file
Chris M
chrism at peakpeak.com
Fri May 25 17:40:50 CDT 2001
Here is the top of a config file:
#
# radius.cfg
#
# these are the variables for the database server names
# refer to them like %{GlobalVar:database1}
DefineGlobalVar database1 hostname1.mydomain.com
DefineGlobalVar database2 hostname2.mydomain.com
# Set this to the directory where your logfile and details file are to go
LogDir /home/radius/raw
LogFile %L/%d-radius.log
#<Log SYSLOG>
# Facility radius
#</Log>
Trace 4
<Log SQL>
DBSource dbi:mysql:raddb
DBUsername mysql
DBAuth some_password
Trace 3
</Log>
........... more config file snipped
Following is the end of my perl debug session on Radiator. What's going on
is that it reads DBAuth, Trace 3 and then Radiator decides it has had enough
and calls close(CONFIG); but there are several hundred more lines in the
config file! What's going on?
Chris
DB<33> s
Radius::Configurable::match_keyword(/usr/lib/perl5/5.6.0/Radius/Configurable
.pm:
211):
211: my $type = $ktable{$keyword} || return 0;
DB<33> p $keyword
DBUsername
DB<34> s
Radius::ServerConfig::keyword(/usr/lib/perl5/5.6.0/Radius/ServerConfig.pm:18
8):
188: if ($keyword eq 'DefineGlobalVar')
189: {
DB<34> n
Radius::ServerConfig::keyword(/usr/lib/perl5/5.6.0/Radius/ServerConfig.pm:19
6):
196: return $self->SUPER::keyword($file, $keyword, $value);
DB<34> p $file
*main::CONFIG
DB<35> p $keyword
DBUsername
DB<36> p $value
mysql
DB<37> s
Radius::Configurable::keyword(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:18
1):
181: my ($self, $file, $keyword, $value) = @_;
DB<37> s
Radius::Configurable::keyword(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:18
3):
183: if (lc $keyword eq 'include')
184: {
DB<37> n
Radius::Configurable::keyword(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:19
7):
197: return $self->match_keyword($keyword, $value,
198: 'Identifier' => 'string',
199: 'Description' => 'string');
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:150)
:
150: &main::log($main::LOG_ERR, "Unknown keyword '$1' in
$fil
ename line $.");
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:158)
:
158: $line = '';
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:78):
78: while (<FILE>)
79: {
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:81):
81: chomp;
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:83):
83: s/^\s*//;
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:84):
84: s/\s*$//;
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:87):
87: next if $_ eq '' || /^#/;
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:89):
89: $line .= $_;
DB<37> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:90):
90: next if ($line =~ s/\\$//); # Line continuation
DB<37> p $line
DBAuth some_password
DB<38> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:93):
93: last if ($line =~ /^<\/([^>]*)>/);
DB<38>
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:95):
95: if ($line =~ /^<\s*(\S*)\s*(.*)>/)
96: {
DB<38>
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:122)
:
122: my ($keyword, $value) = ($1, $2);
DB<38> s
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:128)
:
128: if ($value =~ /^file:\"(.*)\"$/)
129: {
DB<38> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:148)
:
148: if (!$self->keyword(*FILE, $keyword, $value))
149: {
DB<38> p $keyword
DBAuth
DB<39> p $value
some_password
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:150)
:
150: &main::log($main::LOG_ERR, "Unknown keyword '$1' in
$fil
ename line $.");
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:158)
:
158: $line = '';
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:78):
78: while (<FILE>)
79: {
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:81):
81: chomp;
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:83):
83: s/^\s*//;
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:84):
84: s/\s*$//;
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:87):
87: next if $_ eq '' || /^#/;
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:81):
81: chomp;
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:83):
83: s/^\s*//;
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:84):
84: s/\s*$//;
DB<40> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:87):
87: next if $_ eq '' || /^#/;
DB<40> p $_
Trace 3
DB<41> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:89):
89: $line .= $_;
DB<41> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:90):
90: next if ($line =~ s/\\$//); # Line continuation
DB<41>
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:93):
93: last if ($line =~ /^<\/([^>]*)>/);
DB<41>
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:95):
95: if ($line =~ /^<\s*(\S*)\s*(.*)>/)
96: {
DB<41> p line
line
DB<42> p $line
Trace 3
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:122)
:
122: my ($keyword, $value) = ($1, $2);
DB<43> s
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:128)
:
128: if ($value =~ /^file:\"(.*)\"$/)
129: {
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:148)
:
148: if (!$self->keyword(*FILE, $keyword, $value))
149: {
DB<43> s
Radius::ServerConfig::keyword(/usr/lib/perl5/5.6.0/Radius/ServerConfig.pm:14
9):
149: my ($self, $file, $keyword, $value) = @_;
DB<43> s
Radius::ServerConfig::keyword(/usr/lib/perl5/5.6.0/Radius/ServerConfig.pm:15
1):
151: $self->match_keyword
152: ($keyword, $value,
153: 'AuthPort' => 'string',
154: 'AcctPort' => 'string',
155: 'BindAddress' => 'string',
156: 'Foreground' => 'flag',
157: 'DbDir' => 'string',
158: 'LogDir' => 'string',
159: 'DictionaryFile' => 'string',
160: 'PidFile' => 'string',
161: 'LogStdout' => 'flag',
162: 'Trace' => 'integer',
163: 'LogFile' => 'string',
164: 'SnmpgetProg' => 'string',
165: 'SnmpsetProg' => 'string',
166: 'SnmpwalkProg' => 'string',
167: 'FingerProg' => 'string',
168: 'PmwhoProg' => 'string',
169: 'LivingstonMIB' => 'string',
170: 'LivingstonOffs' => 'integer',
171: 'LivingstonHole' => 'integer',
172: 'RewriteUsername' => 'stringarray',
173: 'SocketQueueLength' => 'integer',
174: 'LicenseVersion' => 'string',
175: 'LicenseHostname' => 'string',
176: 'LicenseMaxRequests' => 'integer',
177: 'LicenseExpires' => 'string',
178: 'LicenseOwner' => 'string',
179: 'LicenseVendor' => 'string',
180: 'LicenseKey' => 'string',
181: 'PreClientHook', => 'hook',
182: 'StartupHook', => 'hook',
183: 'USR1Hook', => 'hook',
184: 'USR2Hook', => 'hook',
185: 'WINCHHook', => 'hook',
186: ) && return 1;
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:158)
:
158: $line = '';
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:78):
78: while (<FILE>)
79: {
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:81):
81: chomp;
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:83):
83: s/^\s*//;
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:84):
84: s/\s*$//;
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:87):
87: next if $_ eq '' || /^#/;
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:89):
89: $line .= $_;
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:90):
90: next if ($line =~ s/\\$//); # Line continuation
DB<43> n
Radius::Configurable::parse(/usr/lib/perl5/5.6.0/Radius/Configurable.pm:93):
93: last if ($line =~ /^<\/([^>]*)>/);
DB<43> p $line
</Log>
DB<44> n
main::readConfig(/etc/raddb/radiusd:229):
229: close(CONFIG);
DB<44>
===
Archive at http://www.open.com.au/archives/radiator/
Announcements on radiator-announce at open.com.au
To unsubscribe, email 'majordomo at open.com.au' with
'unsubscribe radiator' in the body of the message.
More information about the radiator
mailing list