Hi Marc,
it looks like there has been some changes with freeradius 1.7 since this one does not install for me either. It says :" ibtool: link: cannot find the library `/usr/local/src/freeradius/freeradius-1.1.7/src/lib/libradius.la' or unhandled argument `/usr/local/src/freeradius/freeradius-1.1.7/src/lib/libradius.la'". On a manual search I could see that this library is not longer included with the sources. I will try asking the guys from freeradius about the changes necessary to work. In the mean time, if u want to give it a try, here is how I have installed from freeradius 1.6: 1. Download the sources: "wget ftp://ftp.freeradius.org/pub/radius/freeradius-1.1.6.tar.gz" 2. Extract and get into the source folder. 3. Go to ./src/modules/rlm_python/ 4. Install the sources statically: (./configure + make + make install). 5. Go back to root folder for the sources 6. ./configure --with-static-modules=python 7. make + make install.
Hope that would do for you.
Cheers, DanB
On 8/22/07, Marc LEURENT lftsy@free.fr wrote:
I have another error with freeradius 1.1.7 from source, I don't know why it cannot find the module... I'll check tomorrow Yhanks for your help Dan, have a pleasant evening
rlm_sql_mysql: Starting connect to MySQL server for #3 rlm_sql (sql): Connected new DB handle, #3 rlm_sql (sql): starting 4 rlm_sql (sql): Attempting to connect rlm_sql_mysql #4 rlm_sql_mysql: Starting connect to MySQL server for #4 rlm_sql (sql): Connected new DB handle, #4 Module: Instantiated sql (sql) python_init done Module: Loaded python python: mod_instantiate = "freeradius-cdrtool" python: func_instantiate = "instantiate" python: mod_authorize = "freeradius-cdrtool" python: func_authorize = "authorize" python: mod_authenticate = "(null)" python: func_authenticate = "(null)" python: mod_preacct = "(null)" python: func_preacct = "(null)" python: mod_accounting = "freeradius-cdrtool" python: func_accounting = "accounting" python: mod_checksimul = "(null)" python: func_checksimul = "(null)" python: mod_detach = "freeradius-cdrtool" python: func_detach = "detach" rlm_python:python_load_function: module 'freeradius-cdrtool' is not found rlm_python:EXCEPT:exceptions.ImportError: /usr/lib/python2.4/lib-dynload/_socket.so: undefined symbol: _Py_TrueStruct rlm_python:python_load_function: failed to import python function 'freeradius-cdrtool.instantiate' radiusd.conf[541]: python: Module instantiation failed. radiusd.conf[1900] Unknown module "python". radiusd.conf[1803] Failed to parse authorize section. zsh: exit 1 radiusd -X
Dan-Cristian Bogos a écrit :
You are getting this error because the interpreter does not accept "-" in the name. I didn't need to import it in the interpreter and there will be no use since radiusd package is available only within freeradius process.
Thxs, DanB
On 8/22/07, Marc LEURENT lftsy@free.fr wrote:
Do you have this error? When I try to load your module in mython, I have this error because of the dash..
root@sd-7501:[/home/../freeradius-cdrtool-1.0]# python Python 2.4.4 (#2, Apr 5 2007, 20:11:18) [GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2 Type "help", "copyright", "credits" or "license" for more information.
import freeradius-cdrtool
File "<stdin>", line 1 import freeradius-cdrtool ^ SyntaxError: invalid syntax
import setup
usage: [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] or: --help [cmd1 cmd2 ...] or: --help-commands or: cmd --help
error: no commands supplied zsh: exit 1 python
Dan-Cristian Bogos a écrit :
Marc,
This is still an error from python, not my module. I think it has something to do with linking inside between C and python. What were the steps in your freeradius installation?
DanB
On 8/22/07, Marc LEURENT lftsy@free.fr wrote:
I have compiled the experimental modules, now the python module is working but I have an error with yours... I have changed the rlm_digest.c and fixed the sql module to work with procedure
rlm_sql (sql): Connected new DB handle, #4 Module: Instantiated sql (sql) python_init done Module: Loaded python python: mod_instantiate = "freeradius-cdrtool" python: func_instantiate = "instantiate" python: mod_authorize = "freeradius-cdrtool" python: func_authorize = "authorize" python: mod_authenticate = "(null)" python: func_authenticate = "(null)" python: mod_preacct = "(null)" python: func_preacct = "(null)" python: mod_accounting = "freeradius-cdrtool" python: func_accounting = "accounting" python: mod_checksimul = "(null)" python: func_checksimul = "(null)" python: mod_detach = "freeradius-cdrtool" python: func_detach = "detach" exceptions.ImportError: /usr/lib/python2.4/lib-dynload/_socket.so: undefined symbol: _Py_TrueStruct Failed to import python module "freeradius-cdrtool" radiusd.conf[544]: python: Module instantiation failed. radiusd.conf[1884] Unknown module "python". radiusd.conf[1792] Failed to parse authorize section. zsh: exit 1 freeradius -X
Dan-Cristian Bogos a écrit :
You can get it from here: http://frad-cdrtool.sourceforge.net/rlm_digest.c
DanB
On 8/22/07, Marc LEURENT lftsy@free.fr wrote: > I haven't found this patch on http://sourceforge.net/projects/frad-cdrtool... > Where did you found it? > Thanks > > Dan-Cristian Bogos a écrit : >> Marc, >> >> I don't have this problem. >> I have compiled freeradius with rlm_python from sources. >> >> For problems with freeradius, I think the best would be to grab some >> support directly from their mailing list, since they are pretty >> helpful. Don't forget about patching also rlm_digest in order to >> sanitize the params coming from OpenSER in the authorization phase and >> not the authentication one. They promised for future releases to >> include this patch inside the distribution. >> >> Cheers, >> DanB >> >> >> On 8/22/07, Marc LEURENT lftsy@free.fr wrote: >>> I have corrected it: mea culpa >>> >>> But now I have a real trouble: >>> When I start freeradius, it said that it can't find rlm_python.so, but this is normal because we added --with-static-modules=python >>> >>> >>> Did you have thos problem? >>> Do you know how to correct it? >>> >>> Thanks >>> >>> rlm_sql (sql): Connected new DB handle, #4 >>> Module: Instantiated sql (sql) >>> radiusd.conf[544] Failed to link to module 'rlm_python': rlm_python.so: cannot open shared object file: No such file or directory >>> radiusd.conf[1884] Unknown module "python". >>> radiusd.conf[1792] Failed to parse authorize section. >>> zsh: exit 1 freeradius -X >>> >>> >>> Dan-Cristian Bogos a écrit : >>>> Hi Marc, >>>> >>>> it looks like you are getting some problems related to stored >>>> procedure in your mysql database. Did u install also the radius patch >>>> recommended by AG-Projects in order to work properly with stored >>>> procedures? On the sql side I cannot help you too much since I am >>>> using still the normal sql queries without stored procedures. >>>> >>>> DanB >>>> >>>> On 8/22/07, Marc LEURENT lftsy@free.fr wrote: >>>>> I have followed your advice, Freeradius is recompiled with rlm_python, >>>>> byt know, rlm_sql seems to encountered troubles >>>>> like : >>>>> >>>>> rlm_sql (sql): Reserving sql socket id: 2 >>>>> rlm_sql_mysql: MYSQL check_error: 1312 received >>>>> >>>>> Any idea of how to repair this? >>>>> Thanks >>>>> >>>>> >>>>> I have added this in my debian/rules file: >>>>> >>>>> modulelist=krb5 ldap sql_mysql sql_iodbc python >>>>> ... >>>>> ... >>>>> ./configure \ >>>>> $(confflags) \ >>>>> --prefix=/usr \ >>>>> ... \ >>>>> --with-static-modules=python >>>>> >>>>> >>>>> >>>>> Here is my freeradius debug: >>>>> >>>>> rlm_detail: /var/log/freeradius/radacct/%{Client-IP-Address}/detail-%Y%m%d expands to /var/log/freeradius/radacct/127.0.0.1/detail-20070822 >>>>> modcall[accounting]: module "detail" returns ok for request 5 >>>>> modcall[accounting]: module "unix" returns noop for request 5 >>>>> radius_xlat: '/var/log/freeradius/radutmp' >>>>> radius_xlat: '' >>>>> modcall[accounting]: module "radutmp" returns ok for request 5 >>>>> radius_xlat: '' >>>>> radius_xlat: ' CALL insert_radacct_record( 'radius', '52f74a-c0a80101-0-4@192.168.95.79', >>>>> '36afb36cd5c82c34', 'sip:101@sd-7501.dedibox.fr:5060=3Buser=3Dphone', >>>>> 'sip:101@sd-7501.dedibox.fr:5060=3Buser=3Dphone', '88.191.45.91', '5060', '2007-08-22 13:59:25', >>>>> '0', '0', '0', '0', '', '', '200', >>>>> 'Sip-Session', '', '', '0', '0', '200', >>>>> 'INVITE', '', 'c0a80101-5766ea7', 'c0a80101-4e8244', '', '', >>>>> '', 'sip:0033677832974@sd-7501.dedibox.fr:5060=3Buser=3Dphone', '', '' )' >>>>> rlm_sql (sql): Reserving sql socket id: 2 >>>>> rlm_sql_mysql: MYSQL check_error: 1312 received >>>>> rlm_sql (sql): Couldn't insert SQL accounting START record - PROCEDURE radius.insert_radacct_record can't return a result set in the given context >>>>> radius_xlat: '' >>>>> rlm_sql (sql): Released sql socket id: 2 >>>>> modcall[accounting]: module "sql" returns ok for request 5 >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> Dan-Cristian Bogos a écrit : >>>>>> Marc, >>>>>> >>>>>> I would suggest as first step reading about how prepaid works in >>>>>> CDRTool. (see PREPAID.txt in doc folder). >>>>>> >>>>>> I personally use freeradius-cdrtool connector >>>>>> (sourceforge.net/projects/frad-cdrtool), which I have written in >>>>>> python and which needs rlm_python compiled into freeradius server. >>>>>> >>>>>> Have a look on all the info and let me know if u need any additional. >>>>>> >>>>>> Cheers, >>>>>> DanB >>>>>> >>>>>> On 8/20/07, Marc LEURENT lftsy@free.fr wrote: >>>>>>> No... >>>>>>> Is it possible to do it with openser or is it compulsory to use asterisk? >>>>>>> What do you use? >>>>>>> >>>>>>> Thanks >>>>>>> >>>>>>> >>>>>>> Dan-Cristian Bogos a écrit : >>>>>>>> Hi there Marc, >>>>>>>> >>>>>>>> are you using any application which locks, unlocks the prepaid >>>>>>>> accounts, and instructs CDRTool to update the user's balance? Are you >>>>>>>> aware that CDRTool uses separate applications for prepaid and postpaid >>>>>>>> accounts? >>>>>>>> >>>>>>>> DanB
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users