Feature requests and current limitations in
Herwin Weststrate
herwin at quarantainenet.nl
Sat Dec 19 11:45:10 CET 2015
As discussed at
https://github.com/FreeRADIUS/freeradius-server/issues/1451#issuecomment-164894510,
I'm currently trying to write a proposal to change the interface of the
programming language that are currently supported as embedded languages
within FreeRADIUS. The current list includes Perl, Python and Ruby
(which should not be used). In the current status rlm_perl is far
superior in terms of features to the other modules, and also has a
completely different interface.
My plan is to make a unified interface for these three modules, so they
all have the same features and behave in the same way. At the moment,
the biggest limitations that should be removed are the following:
- Make the modules work in the same way, so an example in a language
can simply be rewritten to another language (rlm_perl is currently the
most mature and works completely different from rlm_python and rlm_ruby)
- Don't limit the input of rlm_python and rlm_ruby to the request list,
include other lists (like reply and session-state) as well
- Don't limit the output of rlm_python and rlm_ruby to the reply and
control list, include others lists (like session-state) as well
Some lesser changes will include:
- Allow random config structures to be passed to the module, as
rlm_perl now has the "config" option
<https://github.com/FreeRADIUS/freeradius-server/issues/1451>
- Rewrite rlm_ruby to use mruby
<https://github.com/FreeRADIUS/freeradius-server/issues/990>
- Fix multithreading in rlm_python
<https://github.com/FreeRADIUS/freeradius-server/issues/408>
- Strip the extra quotes in rlm_python
<https://github.com/FreeRADIUS/freeradius-server/issues/1452>
- Lots of minor fixes (e.g.
<https://github.com/FreeRADIUS/freeradius-server/pull/1459>)
I don't know if anyone here uses one of these modules, or tried using
one but stopped due to its limitations, but I'm really curious what kind
of features people would want to see in these modules, or what
limitations they'd experienced with using them.
Disclaimer: I'll write the proposal for change, will discuss it on the
mailing lists, and I'll try to implement it too. I have very limited
experience in writing this kind of code, which means it may be a
learnful but slow progress. Also, keep in mind that I'm not related to
the FreeRADIUS project, other than just contributing a pull request
every now and then: I'm not in a position to decide what comes into the
code base and what not.
--
Herwin Weststrate
More information about the Freeradius-Users
mailing list