rlm_python seems to run authorize function in a single thread
    Clint Lord 
    clint at voodoocube.com
       
    Sat Jan  4 00:53:33 CET 2020
    
    
  
We've created a python module that we use to process authorization requests (ie. func_authorize).  Each call to the authorize method seems to block any subsequent calls until it completes, then it moves on the next one.  In other words it’s processing them one at a time.  This is not the behavior we were expecting since rlm_python is set to RLM_TYPE_THREAD_SAFE.
We’ve done some research on this and found a post from 2015 (referencing FreeRADIUS 2.X) in which someone was complaining about a similar issue, and someone responded that rlm_python is not thread safe in FreeRADIUS 2.X.  Could someone here help us understand the expected threading behavior of rlm_python in FreeRADIUS 3.0.19?  Is there some way to configure FreeRADIUS, rlm_python or the Python runtime to enable calling the authorize function in a multithreaded fashion?
Here are the details of our runtime environment:
FreeRADIUS Version: 3.0.19
Python Version: 2.7.15
Please let us know if you need any additional environmental or configuration information.
We thank you in advance for any help you can provide.
    
    
More information about the Freeradius-Users
mailing list