modules' instantiation failing (files)

2007-04-02 Thread Pedro Figueiredo
hi all,

i need to send different lns configuration in a round-robin fashion.  
in order to do this, i added the following to modules:

 files rra {
 userfile = ${confdir}/users.rr1
 acctusersfile = ${confdir}/acct_users
 preproxy_usersfile = ${confdir}/preproxy_users
 compat = no
 }
 files rrb {
 userfile = ${confdir}/users.rr2
 acctusersfile = ${confdir}/acct_users
 preproxy_usersfile = ${confdir}/preproxy_users
 compat = no
 }

and then in authorize:

 redundant-load-balance {
 rra
 rrb
 ok = 1
 }

freeradius is picking the right module, alternating between them on  
each request. the problem is in the instantiation of the modules,  
where i'm getting the following:

Module: Instantiated files (rra)
files: usersfile = /etc/freeradius-dev/users
files: acctusersfile = /etc/freeradius-dev/acct_users
files: preproxy_usersfile = /etc/freeradius-dev/preproxy_users
files: compat = no
Module: Instantiated files (rrb)
files: usersfile = /etc/freeradius-dev/users
files: acctusersfile = /etc/freeradius-dev/acct_users
files: preproxy_usersfile = /etc/freeradius-dev/preproxy_users
files: compat = no

as you can see, it's not reading the files i told it to read.  
confirmed with strace, just to be on the safe side:

write(1, Module: Instantiated files (rra)..., 34Module:  
Instantiated files (rra)) = 34
write(1,  files: usersfile = \/etc/freera..., 48 files: usersfile  
= /etc/freeradius-dev/users) = 48
write(1,  files: acctusersfile = \/etc/fr..., 57 files:  
acctusersfile = /etc/freeradius-dev/acct_users) = 57
write(1,  files: preproxy_usersfile = \/e..., 66 files:  
preproxy_usersfile = /etc/freeradius-dev/preproxy_users) = 66
write(1,  files: compat = \no\\n, 22 files: compat = no) = 22
open(/etc/freeradius-dev/users, O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0640, st_size=1880, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,  
0) = 0x2a973c3000
read(6, # Simplify the Tunneling rules t..., 4096) = 1880
read(6, , 4096)   = 0
read(6, , 4096)   = 0
close(6)= 0
munmap(0x2a973c3000, 4096)  = 0
open(/etc/freeradius-dev/acct_users, O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0640, st_size=532, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,  
0) = 0x2a973c3000
read(6, #\n#\t$Id: acct_users,v 1.4 2003/0..., 4096) = 532
read(6, , 4096)   = 0
read(6, , 4096)   = 0
close(6)= 0
munmap(0x2a973c3000, 4096)  = 0
open(/etc/freeradius-dev/preproxy_users, O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0640, st_size=1039, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,  
0) = 0x2a973c3000
read(6, #\n#  Configuration file for the ..., 4096) = 1039
read(6, , 4096)   = 0
close(6)= 0
munmap(0x2a973c3000, 4096)  = 0
write(1, Module: Instantiated files (rrb)..., 34Module:  
Instantiated files (rrb)) = 34
write(1,  files: usersfile = \/etc/freera..., 48 files: usersfile  
= /etc/freeradius-dev/users) = 48
write(1,  files: acctusersfile = \/etc/fr..., 57 files:  
acctusersfile = /etc/freeradius-dev/acct_users) = 57
write(1,  files: preproxy_usersfile = \/e..., 66 files:  
preproxy_usersfile = /etc/freeradius-dev/preproxy_users) = 66
write(1,  files: compat = \no\\n, 22 files: compat = no) = 22
open(/etc/freeradius-dev/users, O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0640, st_size=1880, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,  
0) = 0x2a973c3000
read(6, # Simplify the Tunneling rules t..., 4096) = 1880
read(6, , 4096)   = 0
read(6, , 4096)   = 0
close(6)= 0
munmap(0x2a973c3000, 4096)  = 0
open(/etc/freeradius-dev/acct_users, O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0640, st_size=532, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,  
0) = 0x2a973c3000
read(6, #\n#\t$Id: acct_users,v 1.4 2003/0..., 4096) = 532
read(6, , 4096)   = 0
read(6, , 4096)   = 0
close(6)= 0
munmap(0x2a973c3000, 4096)  = 0
open(/etc/freeradius-dev/preproxy_users, O_RDONLY) = 6
fstat(6, {st_mode=S_IFREG|0640, st_size=1039, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,  
0) = 0x2a973c3000
read(6, #\n#  Configuration file for the ..., 4096) = 1039
read(6, , 4096)   = 0
close(6)= 0
munmap(0x2a973c3000, 4096)  = 0

i couldn't find any 

Re: modules' instantiation failing (files)

2007-04-02 Thread Alan DeKok
Pedro Figueiredo wrote:
 i need to send different lns configuration in a round-robin fashion.  
 in order to do this, i added the following to modules:
 
  files rra {
  userfile = ${confdir}/users.rr1

  It's usersfile, with an s.  users + file.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: modules' instantiation failing (files)

2007-04-02 Thread Pedro Figueiredo
On 2 Apr 2007, at 13:38, Alan DeKok wrote:
 Pedro Figueiredo wrote:
 i need to send different lns configuration in a round-robin fashion.
 in order to do this, i added the following to modules:

  files rra {
  userfile = ${confdir}/users.rr1

   It's usersfile, with an s.  users + file.

   Alan DeKok.


oh. now i'm as red as a big red nose (although, in my defense, 1  
other people looked into this as well and also couldn't spot it).

one suggestion for the future, though: can freeradius complain when  
it finds an unknown keyword?

thank you very much for your help.

pedro
--
This email and any attachments may be confidential and/or legally privileged. 
If you have received this e-mail and you are not a named addressee, please 
inform the sender of this email by sending a return email to the address above 
and then delete the e-mail and your response from your system. If you are not a 
named addressee you must not use, disclose, distribute, copy, print or rely on 
this e-mail. Any views or opinions presented are solely those of the author. 
Any statements made, or intentions expressed in this communication may not 
necessarily reflect the view of Easynet. No content herein will bind Easynet or 
any associated company unless confirmed by the execution of a formal contract 
by Easynet. Any figures or amounts given in this email are quotations only and 
are subject to change. Although Easynet routinely screens for viruses, 
addressees should scan this e-mail and any attachments for viruses. Easynet 
makes no representation or warranty as to the absence of virus!
 es in this e-mail or any attachments. Please note that to ensure regulatory 
compliance and for the protection of our customers and business, we may monitor 
and read e-mails sent to and from our server(s). 

Easynet Limited a company incorporated and existing under the laws of England 
and Wales, with company number 2954343 and having its registered office at 
44-46 Whitfield Street London, W1T 2RJ.


- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: modules' instantiation failing (files)

2007-04-02 Thread Alan DeKok
Pedro Figueiredo wrote:
 one suggestion for the future, though: can freeradius complain when  
 it finds an unknown keyword?

  As always, patches are welcome.

  But part of the issue is philosophy: The configuration file format is
very forgiving, which avoids a lot of problems.  Occasionally it can be
too forgiving, but the problem is usually a caused by re-typing things,
rather than doing a cut  paste of configuration.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: modules' instantiation failing (files)

2007-04-02 Thread Pedro Figueiredo

On 2 Apr 2007, at 14:51, Pedro Figueiredo wrote:

 On 2 Apr 2007, at 13:38, Alan DeKok wrote:
 Pedro Figueiredo wrote:
 i need to send different lns configuration in a round-robin fashion.
 in order to do this, i added the following to modules:

  files rra {
  userfile = ${confdir}/users.rr1

   It's usersfile, with an s.  users + file.

   Alan DeKok.


 oh. now i'm as red as a big red nose (although, in my defense, 1
 other people looked into this as well and also couldn't spot it).

ok, there's something really weird going on now. this is my config:

 files {
 usersfile = ${confdir}/users
 acctusersfile = ${confdir}/acct_users
 preproxy_usersfile = ${confdir}/preproxy_users

 #  If you want to use the old Cistron 'users' file
 #  with FreeRADIUS, you should change the next line
 #  to 'compat = cistron'.  You can the copy your  
'users'
 #  file from Cistron.
 compat = no
 }


 files wcpefiles {
 usersfile = ${confdir}/wcpeusers
 acctusersfile = ${confdir}/acct_users
 compat = no
 }

 files rra {
 usersfile = ${confdir}/users.rr1
 acctusersfile = ${confdir}/acct_users
 preproxy_usersfile = ${confdir}/preproxy_users
 compat = no
 }

 files rrb {
 usersfile = ${confdir}/users.rr2
 acctusersfile = ${confdir}/acct_users
 preproxy_usersfile = ${confdir}/preproxy_users
 compat = no
 }

and here's what's happening:

Module: Loaded files
files: usersfile = /etc/freeradius-dev/users
files: acctusersfile = /etc/freeradius-dev/acct_users
files: preproxy_usersfile = /etc/freeradius-dev/preproxy_users
files: compat = no
Module: Instantiated files (files)
files: usersfile = /etc/freeradius-dev/users.rr1
files: acctusersfile = /etc/freeradius-dev/acct_users
files: preproxy_usersfile = /etc/freeradius-dev/preproxy_users
files: compat = no
Module: Instantiated files (rra)
files: usersfile = /etc/freeradius-dev/users.rr2
files: acctusersfile = /etc/freeradius-dev/acct_users
files: preproxy_usersfile = /etc/freeradius-dev/preproxy_users
files: compat = no
Module: Instantiated files (rrb)
files: usersfile = /etc/freeradius-dev/wcpeusers
files: acctusersfile = /etc/freeradius-dev/acct_users
files: preproxy_usersfile = /etc/freeradius-dev/preproxy_users
files: compat = no
Module: Instantiated files (wcpefiles)

as you can see, it's off by one. any suggestions or ideas on why it's  
doing this?

cheers,

pedro
This email and any attachments may be confidential and/or legally privileged. 
If you have received this e-mail and you are not a named addressee, please 
inform the sender of this email by sending a return email to the address above 
and then delete the e-mail and your response from your system. If you are not a 
named addressee you must not use, disclose, distribute, copy, print or rely on 
this e-mail. Any views or opinions presented are solely those of the author. 
Any statements made, or intentions expressed in this communication may not 
necessarily reflect the view of Easynet. No content herein will bind Easynet or 
any associated company unless confirmed by the execution of a formal contract 
by Easynet. Any figures or amounts given in this email are quotations only and 
are subject to change. Although Easynet routinely screens for viruses, 
addressees should scan this e-mail and any attachments for viruses. Easynet 
makes no representation or warranty as to the absence of virus!
 es in this e-mail or any attachments. Please note that to ensure regulatory 
compliance and for the protection of our customers and business, we may monitor 
and read e-mails sent to and from our server(s). 

Easynet Limited a company incorporated and existing under the laws of England 
and Wales, with company number 2954343 and having its registered office at 
44-46 Whitfield Street London, W1T 2RJ.


- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: modules' instantiation failing (files)

2007-04-02 Thread Alan DeKok
Pedro Figueiredo wrote:
 as you can see, it's off by one. any suggestions or ideas on why it's  
 doing this?

  It's not off by one.  Read it again.

  It prints out the configuration items BEFORE it prints out that it
successfully instantiated the module.

  Alan DeKok.
--
  http://deployingradius.com   - The web site of the book
  http://deployingradius.com/blog/ - The blog
- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html