Migrating to threaded rlm_perl
    Alexander Clouter 
    alex at digriz.org.uk
       
    Mon Jun 20 15:28:38 CEST 2011
    
    
  
Energ <ponch at ponch.ru> wrote:
> 
> Please, help me with understanding of concept how to rewrite my perl 
> module to work with threaded perl.
> 
> Now it looks like this:
> 
> [snipped thread unsafe code]
> 
> While non-threaded perl it works as expected. But threading breaks creation
> of Shared memory (cuz it want to do it for every thread). 
> I also wonder, do i need to post &fetch_url inside CLONE sub or not.
> So, the main question: is there any part of code in rlm, that suppose to run
> only once ( create shared memory in my situation) or how to correctly solve
> problem with IPC within the confines of freeradius.
> 
You should have a read of:
http://perldoc.perl.org/perlmod.html#BEGIN,-UNITCHECK,-CHECK,-INIT-and-END
I would recommend you do not use IPC::Shareable and instead look to use 
BerkeleyDB instead with locks...also means whatever in in your hash is 
remembered across FreeRADIUS restarts.
Cheers
[1] http://search.cpan.org/dist/BerkeleyDB/BerkeleyDB.pod
-- 
Alexander Clouter
.sigmonster says: BOFH excuse #192:
                  runaway cat on system.
    
    
More information about the Freeradius-Users
mailing list