I cannot do it!
Sniff again
SCREEN):root@sd-7501:[/home/../freeradius-1.1.6]# cd src/modules/rlm_python
(SCREEN):root@sd-7501:[~mleurent/../rlm_python]# ./configure
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... gcc -E
checking for python2.3... no
checking for python2.2... no
checking for python2.1... no
checking for python1.5... no
checking for python... python
checking for Python.h... yes
checking for Py_Initialize in -lpython2.4... yes
configure: creating ./config.status
config.status: creating Makefile
(SCREEN):root@sd-7501:[~mleurent/../rlm_python]# make
../rules.mak:24: ../../../Make.inc: No such file or directory
make: *** No rule to make target `../../../Make.inc'. Stop.
zsh: exit 2 make
Dan-Cristian Bogos a écrit :
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(a)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(a)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(a)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(a)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(a)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(a)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(a)192.168.95.79'.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(a)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(a)openser.org
>>
http://openser.org/cgi-bin/mailman/listinfo/users