[OpenSER-Users] Fwd: Prepaid acounts CDRTool

Dan-Cristian Bogos dan.bogos at gmail.com
Thu Aug 23 09:48:05 CEST 2007


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 at 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 at 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 at 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 at 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 at 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 at 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 at 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 at 192.168.95.79',
> >>>>>>>>>> '36afb36cd5c82c34',                 'sip:101 at sd-7501.dedibox.fr:5060=3Buser=3Dphone',
> >>>>>>>>>> 'sip:101 at 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 at 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 at 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 at openser.org
> > http://openser.org/cgi-bin/mailman/listinfo/users
>




More information about the Users mailing list