Hello all,
  I use freeradius0.3+redhat6.2+oracle8.1.6! Debug message is:
  rad_recv: Accounting-Request packet from host 127.0.0.1:1025, id=81, length=48
        User-Name = "test1"
        NAS-IP-Address = 192.168.0.100
        Acct-Status-Type = Start
        Acct-Session-Id = "0"
        Acct-Authentic = RADIUS
rlm_sql: Reserving sql socket id: 4
radius_xlat:  'test1'
sql_escape in:  'test1'
sql_escape out:  'test1'
sql_set_user:  escaped user --> 'test1'
radius_xlat:  'INSERT into radacct (RadAcctId, AcctSessionId, AcctUniqueId, User
Name, Realm, NASIPAddress, NASPortId, NASPortType, AcctStartTime, AcctStopTime,
AcctSessionTime, AcctAuthentic, ConnectInfo_start, ConnectInfo_stop, AcctInputOc
tets, AcctOutputOctets, CalledStationId, CallingStationId, AcctTerminateCause, S
erviceType, FramedProtocol, FramedIPAddress, AcctStartDelay, AcctStopDelay) valu
es('', '0', '', 'test1', '', '192.168.0.100', '', '', TO_DATE('2001-10-19 14:53:
00','YYYY-MM-DD HH24:MI:SS'), '', '0', 'RADIUS', '', '', '0', '0', '', '', '', '
', '', '', '', '0')'
rlm_sql: Released sql socket id: 4
  modcall[accounting]: module "sql" returns ok
  rad_recv: Accounting-Request packet from host 127.0.0.1:1025, id=82, length=78
        User-Name = "test1"
        NAS-IP-Address = 192.168.0.100
        Acct-Status-Type = Stop
        Acct-Session-Id = "0"
        Acct-Authentic = RADIUS
        Acct-Input-Octets = 8000
        Acct-Output-Octets = 16000
        Acct-Input-Packets = 10
        Acct-Output-Packets = 20
        Acct-Session-Time = 100
rlm_sql: Reserving sql socket id: 4
radius_xlat:  'test1'
sql_escape in:  'test1'
sql_escape out:  'test1'
sql_set_user:  escaped user --> 'test1'
radius_xlat:  'UPDATE radacct SET AcctStopTime = TO_DATE('2001-10-19 14:55:13','
YYYY-MM-DD HH24:MI:SS'), AcctSessionTime = '100', AcctInputOctets = '8000', Acct
OutputOctets = '16000', AcctTerminateCause = '', AcctStopDelay = '', ConnectInfo
_stop = '' WHERE AcctSessionId = '0' AND UserName = 'test1' AND NASIPAddress = '
192.168.0.100''
MASTER: exit on signal (11)
###############################   
   Then I modified src/modules/rlm_sql/drivers/rlm_sql_oracle/sql_oracle.c
   1.
   int sql_init_socket(SQLSOCK *sqlsocket, SQL_CONFIG *config) {
        rlm_sql_oracle_sock *oracle_sock;
        sqlsocket->conn = (rlm_sql_oracle_sock *)rad_malloc(sizeof(rlm_sql_oracl
e_sock));
        /*test 2001/10/19*/
        memset(sqlsocket->conn,0,sizeof(rlm_sql_oracle_sock));
        oracle_sock = sqlsocket->conn;
2.int sql_free_result(SQLSOCK *sqlsocket, SQL_CONFIG *config) {

        int i=0;
        int num_fields;

        rlm_sql_oracle_sock *oracle_sock = sqlsocket->conn;

        num_fields = sql_num_fields(sqlsocket, config);
        if (num_fields >= 0) {/*modified sql_num_fields to num_fields*/
                for(i=0; i < num_fields; i++) {
                        free(oracle_sock->results[i]);
                }
                free(oracle_sock->results);
        }
        oracle_sock->results=NULL;
        return 0;
}
########################################
run radiusd success!


------------------------------------------------
21CN�����Ʒ��������
http://agent.21cn.com
�����ܹ���ŵ�ɧ�ţ�����������Ϊ21CN�������û���
http://news.21cn.com/cgibin/urlhit2-mcounter.php3?url=http://member.21cn.com/economy/upgrade.php&rd=1
��������Ĵ������ٿ����ҵĴ���
http://adinfo.21cn.com




- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to