import from branch_1_1:
[freeradius.git] / src / modules / rlm_sql / conf.h
1 #ifndef SQL_CONF_H
2 #define SQL_CONF_H
3 /***************************************************************************
4 *  conf.h                             rlm_sql - FreeRADIUS SQL Module      *
5 *                                                                          *
6 *      Configuration options for the SQL module                            *
7 *                                                                          *
8 *                                     Mike Machado <mike@innercite.com>    *
9 ***************************************************************************/
10
11 #include <freeradius-devel/ident.h>
12 RCSIDH(conf_h, "$Id$")
13
14 typedef struct sql_config {
15         char   *sql_driver;
16         char   *sql_server;
17         char   *sql_port;
18         char   *sql_login;
19         char   *sql_password;
20         char   *sql_db;
21         char   *query_user;
22         char   *default_profile;
23         char   *nas_query;
24         char   *authorize_check_query;
25         char   *authorize_reply_query;
26         char   *authorize_group_check_query;
27         char   *authorize_group_reply_query;
28         char   *accounting_onoff_query;
29         char   *accounting_update_query;
30         char   *accounting_update_query_alt;
31         char   *accounting_start_query;
32         char   *accounting_start_query_alt;
33         char   *accounting_stop_query;
34         char   *accounting_stop_query_alt;
35         char   *simul_count_query;
36         char   *simul_verify_query;
37         char   *groupmemb_query;
38         int     sqltrace;
39         int     do_clients;
40         int     read_groups;
41         char   *tracefile;
42         char   *xlat_name;
43         int     deletestalesessions;
44         int     num_sql_socks;
45         int     connect_failure_retry_delay;
46         char   *postauth_query;
47         char   *allowed_chars;
48
49         /* individual driver config */
50         void    *localcfg;
51
52 } SQL_CONFIG;
53
54
55 #define CHECKRAD1               "/usr/sbin/checkrad"
56 #define CHECKRAD2               "/usr/local/sbin/checkrad"
57
58 /* Hack for funky ascend ports on MAX 4048 (and probably others)
59    The "NAS-Port-Id" value is "xyyzz" where "x" = 1 for digital, 2 for analog;
60    "yy" = line number (1 for first PRI/T1/E1, 2 for second, so on);
61    "zz" = channel number (on the PRI or Channelized T1/E1).
62     This should work with normal terminal servers, unless you have a TS with
63         more than 9999 ports ;^).
64     The "ASCEND_CHANNELS_PER_LINE" is the number of channels for each line into
65         the unit.  For my US/PRI that's 23.  A US/T1 would be 24, and a
66         European E1 would be 30 (I think ... never had one ;^).
67     This will NOT change the "NAS-Port-Id" reported in the detail log.  This
68         is simply to fix the dynamic IP assignments a la Cistron.
69     WARNING: This hack works for me, but I only have one PRI!!!  I've not
70         tested it on 2 or more (or with models other than the Max 4048)
71     Use at your own risk!
72   -- dgreer@austintx.com
73 */
74
75 #define ASCEND_PORT_HACK
76 #define ASCEND_CHANNELS_PER_LINE        23
77 #define CISCO_ACCOUNTING_HACK
78
79 /* SQL defines */
80 #define MAX_QUERY_LEN                   4096
81 #define SQL_LOCK_LEN                    MAX_QUERY_LEN
82 #define SQLTRACEFILE                    RADLOG_DIR "/sqltrace.sql"
83
84 /* SQL Errors */
85 #define SQL_DOWN                        1 /* for re-connect */
86
87 #define MAX_COMMUNITY_LEN               50
88 #define MAX_SQL_SOCKS                   256
89 #define MAX_TABLE_LEN                   20
90 #define MAX_AUTH_QUERY_LEN              256
91 #define AUTH_STRING_LEN                 128
92
93 #endif /* SQL_CONF_H */