Hi, I'm using freeradius with freetds and unixodbc. I am having an issue using a procedure call to insert to a Microsoft SQL Server. When I try to use the procedure call 'exec', I see the following errors: radius_xlat: 'exec *** rlm_sql (sql): Reserving sql socket id: 8 query: exec *** rlm_sql_unixodbc: '00000 ' rlm_sql (sql): Couldn't update SQL accounting ALIVE record - 00000 But if I don't use a procedure call and use an insert command in its place, it works just find. radius_xlat: 'INSERT **** rlm_sql (sql): Reserving sql socket id: 3 rlm_sql (sql): Released sql socket id: 3 modcall[accounting]: module "sql" returns ok for request 6 My question is why can't I use a procedure call 'exec'? Thanks!
Im using the same setup for access to some ancient Sybase and it works fine. However, the query doesn't use EXEC ... it's plain : accounting_stop_query = "sp_my_stored_procedure_name '%{SQL-User-Name}','%{Realm}', ...." I did have problems with freetds 0.62.3, tho, so I installed 0.63 and had no problems with Sybase access since then. On the other hand, Oracle setup (using rlm_sql_oracle) with "EXEC SP_NAME(...)" didn't work either, so I had to change it to "BEGIN SP_NAME(...); END;" Maybe that would work for your unixODBC/freetds setup too. -- Best regards, Marko Dinic, System Engineer ----- YUnet International http://www.eunet.yu Dubrovacka 35/III, 11000 Belgrade Tel: +381 11 311 9901; Fax: + 381 11 311 9901 ----- This e-mail is confidential and intended only for the recipient. Unauthorized distribution, modification or disclosure of its contents is prohibited. If you have received this e-mail in error, please notify the sender by telephone +381 11 311 9901. -----
Hi,
I'm using freeradius with freetds and unixodbc. I am having an issue using a procedure call to insert to a Microsoft SQL Server. When I try to use the procedure call 'exec', I see the following errors:
radius_xlat: 'exec *** rlm_sql (sql): Reserving sql socket id: 8 query: exec *** rlm_sql_unixodbc: '00000 ' rlm_sql (sql): Couldn't update SQL accounting ALIVE record - 00000
But if I don't use a procedure call and use an insert command in its place, it works just find.
radius_xlat: 'INSERT **** rlm_sql (sql): Reserving sql socket id: 3 rlm_sql (sql): Released sql socket id: 3 modcall[accounting]: module "sql" returns ok for request 6
My question is why can't I use a procedure call 'exec'?
Thanks!
participants (2)
-
Jackie Lau -
Marko Dinic