]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Rename PW_TYPE to fr_type_t and the macros from PW_TYPE_ to FR_TYPE_
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Tue, 9 May 2017 16:27:12 +0000 (12:27 -0400)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Tue, 9 May 2017 16:27:31 +0000 (12:27 -0400)
125 files changed:
src/include/conf_file.h
src/include/dict.h
src/include/pair.h
src/include/tmpl.h
src/include/types.h
src/include/value.h
src/lib/ldap/libfreeradius-ldap.h
src/lib/util/dict.c
src/lib/util/pair.c
src/lib/util/pair_cursor.c
src/lib/util/value.c
src/main/client.c
src/main/command.c
src/main/cond_eval.c
src/main/cond_tokenize.c
src/main/conf_file.c
src/main/connection.c
src/main/exec.c
src/main/files.c
src/main/listen.c
src/main/mainconfig.c
src/main/map.c
src/main/pair.c
src/main/radclient.c
src/main/radmin.c
src/main/radsniff.c
src/main/radsnmp.c
src/main/radwho.c
src/main/realms.c
src/main/snmp.c
src/main/stats.c
src/main/threads.c
src/main/tls/conf.c
src/main/tmpl.c
src/main/unit_test_module.c
src/main/unlang_compile.c
src/main/unlang_interpret.c
src/main/xlat_eval.c
src/main/xlat_func.c
src/modules/proto_bfd/proto_bfd.c
src/modules/proto_detail/proto_detail.c
src/modules/proto_dhcp/dhcp.c
src/modules/proto_dhcp/proto_dhcp.c
src/modules/proto_dhcp/rlm_dhcp.c
src/modules/proto_ldap_sync/proto_ldap_sync.c
src/modules/proto_vmps/vqp.c
src/modules/rlm_always/rlm_always.c
src/modules/rlm_attr_filter/rlm_attr_filter.c
src/modules/rlm_cache/drivers/rlm_cache_memcached/rlm_cache_memcached.c
src/modules/rlm_cache/drivers/rlm_cache_redis/rlm_cache_redis.c
src/modules/rlm_cache/rlm_cache.c
src/modules/rlm_couchbase/mod.c
src/modules/rlm_couchbase/rlm_couchbase.c
src/modules/rlm_csv/rlm_csv.c
src/modules/rlm_date/rlm_date.c
src/modules/rlm_delay/rlm_delay.c
src/modules/rlm_detail/rlm_detail.c
src/modules/rlm_eap/lib/sim/sim_proto.c
src/modules/rlm_eap/rlm_eap.c
src/modules/rlm_eap/types/rlm_eap_fast/eap_fast.c
src/modules/rlm_eap/types/rlm_eap_fast/rlm_eap_fast.c
src/modules/rlm_eap/types/rlm_eap_gtc/rlm_eap_gtc.c
src/modules/rlm_eap/types/rlm_eap_mschapv2/rlm_eap_mschapv2.c
src/modules/rlm_eap/types/rlm_eap_peap/rlm_eap_peap.c
src/modules/rlm_eap/types/rlm_eap_pwd/rlm_eap_pwd.c
src/modules/rlm_eap/types/rlm_eap_tls/rlm_eap_tls.c
src/modules/rlm_eap/types/rlm_eap_ttls/rlm_eap_ttls.c
src/modules/rlm_eap/types/rlm_eap_ttls/ttls.c
src/modules/rlm_example/rlm_example.c
src/modules/rlm_exec/rlm_exec.c
src/modules/rlm_expr/paircmp.c
src/modules/rlm_expr/rlm_expr.c
src/modules/rlm_files/rlm_files.c
src/modules/rlm_idn/rlm_idn.c
src/modules/rlm_json/jpath.c
src/modules/rlm_json/json.c
src/modules/rlm_json/json.h
src/modules/rlm_json/rlm_json.c
src/modules/rlm_krb5/rlm_krb5.c
src/modules/rlm_ldap/rlm_ldap.c
src/modules/rlm_linelog/rlm_linelog.c
src/modules/rlm_logintime/rlm_logintime.c
src/modules/rlm_lua/lua.c
src/modules/rlm_lua/rlm_lua.c
src/modules/rlm_mschap/rlm_mschap.c
src/modules/rlm_pam/rlm_pam.c
src/modules/rlm_pap/rlm_pap.c
src/modules/rlm_passwd/rlm_passwd.c
src/modules/rlm_perl/rlm_perl.c
src/modules/rlm_preprocess/rlm_preprocess.c
src/modules/rlm_python/rlm_python.c
src/modules/rlm_radius_client/rlm_radius_client.c
src/modules/rlm_radutmp/rlm_radutmp.c
src/modules/rlm_realm/rlm_realm.c
src/modules/rlm_redis/redis.c
src/modules/rlm_redis/redis.h
src/modules/rlm_redis_ippool/rlm_redis_ippool.c
src/modules/rlm_rediswho/rlm_rediswho.c
src/modules/rlm_rest/rest.c
src/modules/rlm_rest/rlm_rest.c
src/modules/rlm_ruby/rlm_ruby.c
src/modules/rlm_securid/rlm_securid.c
src/modules/rlm_sigtran/rlm_sigtran.c
src/modules/rlm_soh/rlm_soh.c
src/modules/rlm_sometimes/rlm_sometimes.c
src/modules/rlm_sql/drivers/rlm_sql_cassandra/rlm_sql_cassandra.c
src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c
src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c
src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c
src/modules/rlm_sql/rlm_sql.c
src/modules/rlm_sqlcounter/rlm_sqlcounter.c
src/modules/rlm_sqlhpwippool/rlm_sqlhpwippool.c
src/modules/rlm_sqlippool/rlm_sqlippool.c
src/modules/rlm_test/rlm_test.c
src/modules/rlm_unbound/rlm_unbound.c
src/modules/rlm_unix/rlm_unix.c
src/modules/rlm_unpack/rlm_unpack.c
src/modules/rlm_utf8/rlm_utf8.c
src/modules/rlm_wimax/rlm_wimax.c
src/modules/rlm_winbind/rlm_winbind.c
src/modules/rlm_yubikey/rlm_yubikey.c
src/protocols/radius/base.c
src/protocols/radius/decode.c
src/protocols/radius/encode.c
src/protocols/radius/radius.h

index 94f6b1506632c8df157edf193df1bf99c0718181..37dde1708792e24005947b8b10a39090353facbd 100644 (file)
@@ -55,41 +55,41 @@ typedef struct conf_data CONF_DATA; //!< #CONF_ITEM used to associate arbitrary
 typedef struct timeval _timeval_t;
 
 #ifdef HAVE_BUILTIN_CHOOSE_EXPR
-typedef void _mismatch_vp_tmpl;                //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_vp_tmpl_m;      //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_char;           //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_char_m;         //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_bool;           //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_bool_m;         //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint32;         //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint32_m;       //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_fripaddr;       //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_fripaddr_m;     //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_time;           //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_time_m;         //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_abinary;                //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_abinary_m;      //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint8;          //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint8_m;                //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint8_m_m;      //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_ifid;           //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_ifid_m;         //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint16;         //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint16_m;       //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_ethernet;       //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_ethernet_m;     //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_int32;          //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_int32_m;                //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint64;         //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_uint64_m;       //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_size;           //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_size_m;         //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_timeval;                //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_timeval_m;      //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void _mismatch_default;                //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-
-typedef void conf_type_mismatch;       //!< Dummy type used to indicate PW_TYPE_*/C type mismatch.
-typedef void conf_type_invalid;                //!< Dummy type used to indicate invalid PW_TYPE_*.
+typedef void _mismatch_vp_tmpl;                //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_vp_tmpl_m;      //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_char;           //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_char_m;         //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_bool;           //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_bool_m;         //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint32;         //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint32_m;       //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_fripaddr;       //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_fripaddr_m;     //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_time;           //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_time_m;         //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_abinary;                //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_abinary_m;      //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint8;          //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint8_m;                //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint8_m_m;      //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_ifid;           //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_ifid_m;         //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint16;         //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint16_m;       //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_ethernet;       //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_ethernet_m;     //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_int32;          //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_int32_m;                //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint64;         //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_uint64_m;       //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_size;           //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_size_m;         //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_timeval;                //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_timeval_m;      //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void _mismatch_default;                //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+
+typedef void conf_type_mismatch;       //!< Dummy type used to indicate FR_TYPE_*/C type mismatch.
+typedef void conf_type_invalid;                //!< Dummy type used to indicate invalid FR_TYPE_*.
 
 /** Check if two types are compatible (the C11 way)
  *
@@ -110,84 +110,84 @@ typedef void conf_type_invalid;           //!< Dummy type used to indicate invalid PW_TYP
  *
  * @note The warnings/errors emitted are usually awful.
  *
- * @param _t a #PW_TYPE value with optional PW_TYPE_* flags.
+ * @param _t a #fr_type_t value with optional FR_TYPE_* flags.
  * @param _ct data type of global or struct field, obtained with ``__typeof__``.
  * @param _p Pointer or offset.
  */
 #  define FR_CONF_TYPE_CHECK(_t, _ct, _p) \
-__builtin_choose_expr((_t) & PW_TYPE_SUBSECTION, _p, \
-__builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_SIZE) && !((_t) & PW_TYPE_MULTI), \
+__builtin_choose_expr((_t) & FR_TYPE_SUBSECTION, _p, \
+__builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_SIZE) && !((_t) & FR_TYPE_MULTI), \
        __builtin_choose_expr(is_compatible((_ct), size_t *), _p, (_mismatch_size) 0), \
-__builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_SIZE) && ((_t) & PW_TYPE_MULTI), \
+__builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_SIZE) && ((_t) & FR_TYPE_MULTI), \
        __builtin_choose_expr(is_compatible((_ct), size_t **), _p, (_mismatch_size_m) 0), \
-__builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_DATE) && !((_t) & PW_TYPE_MULTI), \
+__builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_DATE) && !((_t) & FR_TYPE_MULTI), \
        __builtin_choose_expr(is_compatible((_ct), time_t *), _p, (_mismatch_time) 0), \
-__builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_DATE) && ((_t) & PW_TYPE_MULTI), \
+__builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_DATE) && ((_t) & FR_TYPE_MULTI), \
        __builtin_choose_expr(is_compatible((_ct), time_t **), _p, (_mismatch_time_m) 0), \
 _Generic((_ct), \
-       vp_tmpl_t **    : __builtin_choose_expr(((_t) & PW_TYPE_TMPL) && !((_t) & PW_TYPE_MULTI), \
+       vp_tmpl_t **    : __builtin_choose_expr(((_t) & FR_TYPE_TMPL) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_vp_tmpl) 0), \
-       vp_tmpl_t ***   : __builtin_choose_expr(((_t) & PW_TYPE_TMPL) && ((_t) & PW_TYPE_MULTI), \
+       vp_tmpl_t ***   : __builtin_choose_expr(((_t) & FR_TYPE_TMPL) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_vp_tmpl_m) 0), \
-       char const **   : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_STRING) && !((_t) & PW_TYPE_MULTI), \
+       char const **   : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_STRING) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_char) 0), \
-       char const ***  : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_STRING) && ((_t) & PW_TYPE_MULTI), \
+       char const ***  : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_STRING) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_char_m) 0), \
-       bool *          : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_BOOLEAN) && !((_t) & PW_TYPE_MULTI), \
+       bool *          : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_BOOLEAN) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_bool) 0), \
-       bool **         : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_BOOLEAN) && ((_t) & PW_TYPE_MULTI), \
+       bool **         : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_BOOLEAN) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_bool_m) 0), \
-       uint32_t *      : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_INTEGER) && !((_t) & PW_TYPE_MULTI), \
+       uint32_t *      : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_INTEGER) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint32) 0), \
-       uint32_t **     : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_INTEGER) && ((_t) & PW_TYPE_MULTI), \
+       uint32_t **     : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_INTEGER) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint32_m) 0), \
-       fr_ipaddr_t *   : __builtin_choose_expr(((PW_BASE_TYPE(_t) == PW_TYPE_IPV4_ADDR) || \
-                                               (PW_BASE_TYPE(_t) == PW_TYPE_IPV4_PREFIX) || \
-                                               (PW_BASE_TYPE(_t) == PW_TYPE_IPV6_ADDR) || \
-                                               (PW_BASE_TYPE(_t) == PW_TYPE_IPV6_PREFIX) || \
-                                               (PW_BASE_TYPE(_t) == PW_TYPE_COMBO_IP_ADDR)) || \
-                                               !((_t) & PW_TYPE_MULTI), _p, (_mismatch_fripaddr) 0), \
-       fr_ipaddr_t **  : __builtin_choose_expr(((PW_BASE_TYPE(_t) == PW_TYPE_IPV4_ADDR) || \
-                                               (PW_BASE_TYPE(_t) == PW_TYPE_IPV4_PREFIX) || \
-                                               (PW_BASE_TYPE(_t) == PW_TYPE_IPV6_ADDR) || \
-                                               (PW_BASE_TYPE(_t) == PW_TYPE_IPV6_PREFIX) || \
-                                               (PW_BASE_TYPE(_t) == PW_TYPE_COMBO_IP_ADDR)) && \
-                                               ((_t) & PW_TYPE_MULTI), _p, (_mismatch_fripaddr_m) 0), \
-       size_t[32/sizeof(size_t)] : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_ABINARY) && !((_t) & PW_TYPE_MULTI), \
+       fr_ipaddr_t *   : __builtin_choose_expr(((PW_BASE_TYPE(_t) == FR_TYPE_IPV4_ADDR) || \
+                                               (PW_BASE_TYPE(_t) == FR_TYPE_IPV4_PREFIX) || \
+                                               (PW_BASE_TYPE(_t) == FR_TYPE_IPV6_ADDR) || \
+                                               (PW_BASE_TYPE(_t) == FR_TYPE_IPV6_PREFIX) || \
+                                               (PW_BASE_TYPE(_t) == FR_TYPE_COMBO_IP_ADDR)) || \
+                                               !((_t) & FR_TYPE_MULTI), _p, (_mismatch_fripaddr) 0), \
+       fr_ipaddr_t **  : __builtin_choose_expr(((PW_BASE_TYPE(_t) == FR_TYPE_IPV4_ADDR) || \
+                                               (PW_BASE_TYPE(_t) == FR_TYPE_IPV4_PREFIX) || \
+                                               (PW_BASE_TYPE(_t) == FR_TYPE_IPV6_ADDR) || \
+                                               (PW_BASE_TYPE(_t) == FR_TYPE_IPV6_PREFIX) || \
+                                               (PW_BASE_TYPE(_t) == FR_TYPE_COMBO_IP_ADDR)) && \
+                                               ((_t) & FR_TYPE_MULTI), _p, (_mismatch_fripaddr_m) 0), \
+       size_t[32/sizeof(size_t)] : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_ABINARY) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_abinary) 0), \
-       size_t*[32/sizeof(size_t)] : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_ABINARY) && ((_t) & PW_TYPE_MULTI), \
+       size_t*[32/sizeof(size_t)] : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_ABINARY) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_abinary_m) 0), \
-       uint8_t const * : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_OCTETS) && !((_t) & PW_TYPE_MULTI), \
+       uint8_t const * : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_OCTETS) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint8) 0), \
-       uint8_t const **: __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_OCTETS) && ((_t) & PW_TYPE_MULTI), \
+       uint8_t const **: __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_OCTETS) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint8_m) 0), \
-       uint8_t *       : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_BYTE) && !((_t) & PW_TYPE_MULTI), \
+       uint8_t *       : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_BYTE) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint8) 0), \
-       uint8_t **      : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_BYTE) && ((_t) & PW_TYPE_MULTI), \
+       uint8_t **      : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_BYTE) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint8_m) 0), \
-       uint8_t[8]      : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_IFID) && !(_t & PW_TYPE_MULTI), \
+       uint8_t[8]      : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_IFID) && !(_t & FR_TYPE_MULTI), \
                        _p, (_mismatch_ifid) 0), \
-       uint8_t*[8]     : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_IFID) && ((_t) & PW_TYPE_MULTI), \
+       uint8_t*[8]     : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_IFID) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_ifid_m) 0), \
-       uint16_t *      : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_SHORT) && !((_t) & PW_TYPE_MULTI), \
+       uint16_t *      : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_SHORT) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint16) 0), \
-       uint16_t **     : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_SHORT) && ((_t) & PW_TYPE_MULTI), \
+       uint16_t **     : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_SHORT) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint16_m) 0), \
-       uint8_t[6]      : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_ETHERNET) && !((_t) & PW_TYPE_MULTI), \
+       uint8_t[6]      : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_ETHERNET) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_ethernet) 0), \
-       uint8_t*[6]     : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_ETHERNET) && ((_t) & PW_TYPE_MULTI), \
+       uint8_t*[6]     : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_ETHERNET) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_ethernet_m) 0), \
-       int32_t *       : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_SIGNED) && !((_t) & PW_TYPE_MULTI), \
+       int32_t *       : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_SIGNED) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_int32) 0), \
-       int32_t **      : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_SIGNED) && ((_t) & PW_TYPE_MULTI), \
+       int32_t **      : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_SIGNED) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_int32_m) 0), \
-       uint64_t *      : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_INTEGER64) && !((_t) & PW_TYPE_MULTI), \
+       uint64_t *      : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_INTEGER64) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint64) 0), \
-       uint64_t **     : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_INTEGER64) && ((_t) & PW_TYPE_MULTI), \
+       uint64_t **     : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_INTEGER64) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_uint64_m) 0), \
-       _timeval_t *    : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_TIMEVAL) && !((_t) & PW_TYPE_MULTI), \
+       _timeval_t *    : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_TIMEVAL) && !((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_timeval) 0), \
-       _timeval_t **   : __builtin_choose_expr((PW_BASE_TYPE(_t) == PW_TYPE_TIMEVAL) && ((_t) & PW_TYPE_MULTI), \
+       _timeval_t **   : __builtin_choose_expr((PW_BASE_TYPE(_t) == FR_TYPE_TIMEVAL) && ((_t) & FR_TYPE_MULTI), \
                        _p, (_mismatch_timeval_m) 0), \
        default: (conf_type_mismatch)0))))))
 
@@ -197,7 +197,7 @@ _Generic((_ct), \
        .offset = FR_CONF_TYPE_CHECK((_t), &(((_s *)NULL)->_f), offsetof(_s, _f))
 #  define FR_CONF_IS_SET_OFFSET(_n, _t, _s, _f) \
        .name = _n, \
-       .type = (_t) | PW_TYPE_IS_SET, \
+       .type = (_t) | FR_TYPE_IS_SET, \
        .offset = FR_CONF_TYPE_CHECK((_t), &(((_s *)NULL)->_f), offsetof(_s, _f)), \
        .is_set_offset = offsetof(_s, _f ## _is_set)
 #  define FR_CONF_POINTER(_n, _t, _p) \
@@ -207,7 +207,7 @@ _Generic((_ct), \
 
 #  define FR_CONF_IS_SET_POINTER(_n, _t, _p) \
        .name = _n, \
-       .type = (_t) | PW_TYPE_IS_SET, \
+       .type = (_t) | FR_TYPE_IS_SET, \
        .data = FR_CONF_TYPE_CHECK((_t), (_p), _p), \
        .is_set_ptr = _p ## _is_set
 #  define FR_ITEM_POINTER(_t, _p) _t, FR_CONF_TYPE_CHECK((_t), (_p), _p)
@@ -217,7 +217,7 @@ _Generic((_ct), \
  * Parse multiple instance of a subsection.
  *
  * @param _n   name of subsection to search for.
- * @param _t   Must be PW_TYPE_SUBSECTION | PW_TYPE_MULTI and any optional flags.
+ * @param _t   Must be FR_TYPE_SUBSECTION | FR_TYPE_MULTI and any optional flags.
  * @param _s   instance data struct.
  * @param _f   field in instance data struct.
  * @param _sub CONF_PARSER array to use to parse subsection data.
@@ -235,7 +235,7 @@ _Generic((_ct), \
        .offset = offsetof(_s, _f)
 #  define FR_CONF_IS_SET_OFFSET(_n, _t, _s, _f) \
        .name = _n, \
-       .type = (_t) | PW_TYPE_IS_SET, \
+       .type = (_t) | FR_TYPE_IS_SET, \
        .offset = offsetof(_s, _f), \
        .is_set_offset = offsetof(_s, _f ## _is_set)
 #  define FR_CONF_POINTER(_n, _t, _p) \
@@ -244,7 +244,7 @@ _Generic((_ct), \
        .data = _p
 #  define FR_CONF_IS_SET_POINTER(_n, _t, _p) \
        .name = _n, \
-       .type = (_t) | PW_TYPE_IS_SET, \
+       .type = (_t) | FR_TYPE_IS_SET, \
        .data = _p, \
        .is_set_ptr = _p ## _is_set
 #  define FR_ITEM_POINTER(_t, _p) _t, _p
@@ -254,7 +254,7 @@ _Generic((_ct), \
  * Parse multiple instance of a subsection.
  *
  * @param _n   name of subsection to search for.
- * @param _t   Must be PW_TYPE_SUBSECTION | PW_TYPE_MULTI and any optional flags.
+ * @param _t   Must be FR_TYPE_SUBSECTION | FR_TYPE_MULTI and any optional flags.
  * @param _s   instance data struct.
  * @param _f   field in instance data struct.
  * @param _sub CONF_PARSER array to use to parse subsection data.
@@ -270,46 +270,46 @@ _Generic((_ct), \
 
 #define FR_CONF_DEPRECATED(_n, _t, _p, _f) \
        .name = _n, \
-       .type = (_t) | PW_TYPE_DEPRECATED
+       .type = (_t) | FR_TYPE_DEPRECATED
 
 /*
  *  Instead of putting the information into a configuration structure,
  *  the configuration file routines MAY just parse it directly into
  *  user-supplied variables.
  */
-#define PW_TYPE_SUBSECTION     102
+#define FR_TYPE_SUBSECTION     102
 
 /** @name #CONF_PARSER type flags
  *
- * These flags should be or'd with another PW_TYPE_* value to create validation
+ * These flags should be or'd with another FR_TYPE_* value to create validation
  * rules for the #cf_pair_parse function.
  *
- * @note File PW_TYPE_FILE_* types have a base type of string, so they're validated
+ * @note File FR_TYPE_FILE_* types have a base type of string, so they're validated
  *      correctly by the config parser.
  * @{
  */
-#define PW_TYPE_DEPRECATED             (1 << 10)                       //!< If a matching #CONF_PAIR is found,
+#define FR_TYPE_DEPRECATED             (1 << 10)                       //!< If a matching #CONF_PAIR is found,
                                                                        //!< error out with a deprecated message.
-#define PW_TYPE_REQUIRED               (1 << 11)                       //!< Error out if no matching #CONF_PAIR
+#define FR_TYPE_REQUIRED               (1 << 11)                       //!< Error out if no matching #CONF_PAIR
                                                                        //!< is found, and no dflt value is set.
-#define PW_TYPE_ATTRIBUTE              (1 << 12)                       //!< Value must resolve to attribute in dict
-                                                                       //!< (deprecated, use #PW_TYPE_TMPL).
-#define PW_TYPE_SECRET                 (1 << 13)                        //!< Only print value if debug level >= 3.
+#define FR_TYPE_ATTRIBUTE              (1 << 12)                       //!< Value must resolve to attribute in dict
+                                                                       //!< (deprecated, use #FR_TYPE_TMPL).
+#define FR_TYPE_SECRET                 (1 << 13)                        //!< Only print value if debug level >= 3.
 
-#define PW_TYPE_FILE_INPUT             ((1 << 14) | PW_TYPE_STRING)    //!< File matching value must exist,
+#define FR_TYPE_FILE_INPUT             ((1 << 14) | FR_TYPE_STRING)    //!< File matching value must exist,
                                                                        //!< and must be readable.
-#define PW_TYPE_FILE_OUTPUT            ((1 << 15) | PW_TYPE_STRING)    //!< File matching value must exist,
+#define FR_TYPE_FILE_OUTPUT            ((1 << 15) | FR_TYPE_STRING)    //!< File matching value must exist,
                                                                        //!< and must be writeable.
 
-#define PW_TYPE_XLAT                   (1 << 16)                       //!< string will be dynamically expanded.
-#define PW_TYPE_TMPL                   (1 << 17)                       //!< CONF_PAIR should be parsed as a template.
+#define FR_TYPE_XLAT                   (1 << 16)                       //!< string will be dynamically expanded.
+#define FR_TYPE_TMPL                   (1 << 17)                       //!< CONF_PAIR should be parsed as a template.
 
-#define PW_TYPE_MULTI                  (1 << 18)                       //!< CONF_PAIR can have multiple copies.
-#define PW_TYPE_NOT_EMPTY              (1 << 19)                       //!< CONF_PAIR is required to have a non zero
+#define FR_TYPE_MULTI                  (1 << 18)                       //!< CONF_PAIR can have multiple copies.
+#define FR_TYPE_NOT_EMPTY              (1 << 19)                       //!< CONF_PAIR is required to have a non zero
                                                                        //!< length value.
-#define PW_TYPE_FILE_EXISTS            ((1 << 20) | PW_TYPE_STRING)    //!< File matching value must exist
+#define FR_TYPE_FILE_EXISTS            ((1 << 20) | FR_TYPE_STRING)    //!< File matching value must exist
 
-#define PW_TYPE_IS_SET                 (1 << 21)                       //!< Write whether this config item was
+#define FR_TYPE_IS_SET                 (1 << 21)                       //!< Write whether this config item was
                                                                        //!< left as the default to is_set_offset
                                                                        //!< or is_set_ptr.
 
@@ -361,7 +361,7 @@ extern bool check_config;
  * Example with #FR_CONF_OFFSET :
  @code{.c}
    static CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("example", PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, example_instance_t, example), .dflt = "default_value" },
+       { FR_CONF_OFFSET("example", FR_TYPE_STRING | FR_TYPE_NOT_EMPTY, example_instance_t, example), .dflt = "default_value" },
        CONF_PARSER_TERMINATOR
    }
  @endcode
@@ -369,7 +369,7 @@ extern bool check_config;
  * Example with #FR_CONF_POINTER :
  @code{.c}
    static CONF_PARSER global_config[] = {
-       { FR_CONF_POINTER("example", PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, &my_global), .dflt = "default_value" },
+       { FR_CONF_POINTER("example", FR_TYPE_STRING | FR_TYPE_NOT_EMPTY, &my_global), .dflt = "default_value" },
        CONF_PARSER_TERMINATOR
    }
  @endcode
@@ -381,11 +381,11 @@ extern bool check_config;
  */
 typedef struct CONF_PARSER {
        char const      *name;                  //!< Name of the #CONF_ITEM to parse.
-       uint32_t        type;                   //!< A #PW_TYPE value, may be or'd with one or more PW_TYPE_* flags.
+       uint32_t        type;                   //!< A #fr_type_t value, may be or'd with one or more FR_TYPE_* flags.
                                                //!< @see cf_pair_parse.
 
        size_t          offset;                 //!< Relative offset of field or structure to write the parsed value to.
-                                               //!< When #type is set to #PW_TYPE_SUBSECTION, may be used to specify
+                                               //!< When #type is set to #FR_TYPE_SUBSECTION, may be used to specify
                                                //!< a base offset to add to all offsets contained within the
                                                //!< subsection.
                                                //!< @note Must be used exclusively to #data.
@@ -393,15 +393,15 @@ typedef struct CONF_PARSER {
        void            *data;                  //!< Pointer to a static variable to write the parsed value to.
                                                //!< @note Must be used exclusively to #offset.
 
-       /** Where to write status if PW_TYPE_IS_DEFAULT is set
+       /** Where to write status if FR_TYPE_IS_DEFAULT is set
         *
         * @note Which field is used, is determined by whether
         *      data ptr is set.
         */
        union {
-               size_t          is_set_offset;  //!< If type contains PW_TYPE_IS_DEFAULT write status to bool.
+               size_t          is_set_offset;  //!< If type contains FR_TYPE_IS_DEFAULT write status to bool.
                                                //!< at this address.
-               void            *is_set_ptr;    //!< If type contains PW_TYPE_IS_DEFAULT write status to ptr
+               void            *is_set_ptr;    //!< If type contains FR_TYPE_IS_DEFAULT write status to ptr
                                                //!< at this address.
        };
 
@@ -409,7 +409,7 @@ typedef struct CONF_PARSER {
                char const      *dflt;          //!< Default as it would appear in radiusd.conf.
 
                struct {
-                       struct CONF_PARSER const *subcs;        //!< When type is set to #PW_TYPE_SUBSECTION, should
+                       struct CONF_PARSER const *subcs;        //!< When type is set to #FR_TYPE_SUBSECTION, should
                                                        //!< be a pointer to the start of another array of
                                                        //!< #CONF_PARSER structs, forming the subsection.
                        size_t          subcs_size;     //!< If non-zero, allocate structs of this size to hold
index d0d2c81b1997e1e0bd3ca54119e675f0f1552085..d0e5b37a0189865230fb881a87b7edc55491e897 100644 (file)
@@ -71,7 +71,7 @@ typedef struct attr_flags {
 } fr_dict_attr_flags_t;
 
 extern const FR_NAME_NUMBER dict_attr_types[];
-extern const size_t dict_attr_sizes[PW_TYPE_MAX + 1][2];
+extern const size_t dict_attr_sizes[FR_TYPE_MAX + 1][2];
 
 typedef struct dict_attr fr_dict_attr_t;
 typedef struct fr_dict fr_dict_t;
@@ -82,7 +82,7 @@ extern fr_dict_t *fr_dict_internal;
 struct dict_attr {
        unsigned int            vendor;                         //!< Vendor that defines this attribute.
        unsigned int            attr;                           //!< Attribute number.
-       PW_TYPE                 type;                           //!< Value type.
+       fr_type_t                       type;                           //!< Value type.
 
        fr_dict_attr_t const    *parent;                        //!< Immediate parent of this attribute.
        fr_dict_attr_t const    **children;                     //!< Children of this attribute.
@@ -150,8 +150,8 @@ typedef struct dict_vendor {
  *
  */
 extern bool const      fr_dict_attr_allowed_chars[UINT8_MAX];
-extern bool const      fr_dict_non_data_types[PW_TYPE_MAX + 1];
-extern bool const      fr_dict_enum_types[PW_TYPE_MAX + 1];
+extern bool const      fr_dict_non_data_types[FR_TYPE_MAX + 1];
+extern bool const      fr_dict_enum_types[FR_TYPE_MAX + 1];
 
 /*
  *     Dictionary debug
@@ -164,7 +164,7 @@ void                        fr_dict_dump(fr_dict_t *dict);
 int                    fr_dict_vendor_add(fr_dict_t *dict, char const *name, unsigned int value);
 
 int                    fr_dict_attr_add(fr_dict_t *dict, fr_dict_attr_t const *parent, char const *name, int attr,
-                                        PW_TYPE type, fr_dict_attr_flags_t flags);
+                                        fr_type_t type, fr_dict_attr_flags_t flags);
 
 int                    fr_dict_enum_add(fr_dict_t *dict, char const *attr, char const *alias, int value);
 
@@ -239,7 +239,7 @@ fr_dict_attr_t const        *fr_dict_attr_by_name(fr_dict_t const *dict, char const *at
 
 fr_dict_attr_t const   *fr_dict_attr_by_num(fr_dict_t *dict, unsigned int vendor, unsigned int attr);
 
-fr_dict_attr_t const   *fr_dict_attr_by_type(fr_dict_attr_t const *da, PW_TYPE type);
+fr_dict_attr_t const   *fr_dict_attr_by_type(fr_dict_attr_t const *da, fr_type_t type);
 
 fr_dict_attr_t const   *fr_dict_attr_child_by_da(fr_dict_attr_t const *parent, fr_dict_attr_t const *child);
 
index 3194e23961e70bb35186fff9763a00d43f011925..7c8e44ded8707473ffb9841bfea2ec9506983345 100644 (file)
@@ -254,7 +254,7 @@ char const  *fr_pair_value_enum(VALUE_PAIR const *vp, char buff[20]);
 size_t         fr_pair_snprint(char *out, size_t outlen, VALUE_PAIR const *vp);
 void           fr_pair_fprint(FILE *, VALUE_PAIR const *vp);
 void           fr_pair_list_fprint(FILE *, VALUE_PAIR const *vp);
-char           *fr_pair_type_asprint(TALLOC_CTX *ctx, PW_TYPE type);
+char           *fr_pair_type_asprint(TALLOC_CTX *ctx, fr_type_t type);
 char           *fr_pair_asprint(TALLOC_CTX *ctx, VALUE_PAIR const *vp, char quote);
 
 void           fr_pair_list_tainted(VALUE_PAIR *vp);
index d441df840dd176907c9e18ed6d7ac17f9746bcc5..349cf1ae1a7aca07977a3e1171654033b239ad88 100644 (file)
@@ -56,9 +56,9 @@
  *
  * If you just need the string value of whatever the VPT refers to, the tmpl_*expand
  * functions may be used. These functions evaluate the VPT, execing, and xlat expanding
- * as necessary. In the case of #TMPL_TYPE_ATTR, and #PW_TYPE_STRING or #PW_TYPE_OCTETS
+ * as necessary. In the case of #TMPL_TYPE_ATTR, and #FR_TYPE_STRING or #FR_TYPE_OCTETS
  * #tmpl_expand will return a pointer to the raw #VALUE_PAIR buffer. This can be very
- * useful when using the #PW_TYPE_TMPL type in #CONF_PARSER structs, as it allows the
+ * useful when using the #FR_TYPE_TMPL type in #CONF_PARSER structs, as it allows the
  * user to determine whether they want the module to sanitise the value using presentation
  * format specific #xlat_escape_t function, or to operate on the raw value.
  *
@@ -307,7 +307,7 @@ void tmpl_verify(char const *file, int line, vp_tmpl_t const *vpt);
    value.strvalue = talloc_strdup(NULL, "my new username");
    value.length = talloc_array_length(value.strvalue) - 1;
 
-   if (fr_pair_update_by_num(ctx, head, PW_USERNAME, 0, TAG_ANY, PW_TYPE_STRING, &value) < 0) return -1; // error
+   if (fr_pair_update_by_num(ctx, head, PW_USERNAME, 0, TAG_ANY, FR_TYPE_STRING, &value) < 0) return -1; // error
  @endcode
  *
  * @param _ctx new #VALUE_PAIR s should be allocated in for the specified list.
@@ -331,17 +331,17 @@ do {\
 /** Map ptr type to a boxed type
  *
  */
-#define        PW_TYPE_FROM_PTR(_ptr) \
+#define        FR_TYPE_FROM_PTR(_ptr) \
        _Generic((_ptr), \
-                char **: PW_TYPE_STRING, \
-                char const **: PW_TYPE_STRING, \
-                uint8_t **: PW_TYPE_OCTETS, \
-                uint8_t const **: PW_TYPE_OCTETS, \
-                uint8_t *: PW_TYPE_BYTE, \
-                uint16_t *: PW_TYPE_SHORT, \
-                uint32_t *: PW_TYPE_INTEGER, \
-                uint64_t *: PW_TYPE_INTEGER64, \
-                struct timeval *: PW_TYPE_TIMEVAL)
+                char **: FR_TYPE_STRING, \
+                char const **: FR_TYPE_STRING, \
+                uint8_t **: FR_TYPE_OCTETS, \
+                uint8_t const **: FR_TYPE_OCTETS, \
+                uint8_t *: FR_TYPE_BYTE, \
+                uint16_t *: FR_TYPE_SHORT, \
+                uint32_t *: FR_TYPE_INTEGER, \
+                uint64_t *: FR_TYPE_INTEGER64, \
+                struct timeval *: FR_TYPE_TIMEVAL)
 
 /** Expand a tmpl to a C type, using existing storage to hold variably sized types
  *
@@ -351,7 +351,7 @@ do {\
  */
 #define        tmpl_expand(_out, _buff, _buff_len, _request, _vpt, _escape, _escape_ctx) \
        _tmpl_to_type((void *)(_out), (uint8_t *)_buff, _buff_len, \
-                     _request, _vpt, _escape, _escape_ctx, PW_TYPE_FROM_PTR(_out))
+                     _request, _vpt, _escape, _escape_ctx, FR_TYPE_FROM_PTR(_out))
 
 /** Expand a tmpl to a C type, allocing a new buffer to hold the string
  *
@@ -360,7 +360,7 @@ do {\
  * @see _tmpl_to_atype
  */
 #define        tmpl_aexpand(_ctx, _out, _request, _vpt, _escape, _escape_ctx) \
-       _tmpl_to_atype(_ctx, (void *)(_out), _request, _vpt, _escape, _escape_ctx, PW_TYPE_FROM_PTR(_out))
+       _tmpl_to_atype(_ctx, (void *)(_out), _request, _vpt, _escape, _escape_ctx, FR_TYPE_FROM_PTR(_out))
 
 
 VALUE_PAIR             **radius_list(REQUEST *request, pair_lists_t list);
@@ -398,7 +398,7 @@ ssize_t                     tmpl_afrom_attr_str(TALLOC_CTX *ctx, vp_tmpl_t **out, char const *name
 ssize_t                        tmpl_afrom_str(TALLOC_CTX *ctx, vp_tmpl_t **out, char const *name, size_t inlen,
                                       FR_TOKEN type, request_refs_t request_def, pair_lists_t list_def, bool do_escape);
 
-int                    tmpl_cast_in_place(vp_tmpl_t *vpt, PW_TYPE type, fr_dict_attr_t const *enumv);
+int                    tmpl_cast_in_place(vp_tmpl_t *vpt, fr_type_t type, fr_dict_attr_t const *enumv);
 
 void                   tmpl_cast_in_place_str(vp_tmpl_t *vpt);
 
@@ -412,14 +412,14 @@ ssize_t                   _tmpl_to_type(void *out,
                                      REQUEST *request,
                                      vp_tmpl_t const *vpt,
                                      xlat_escape_t escape, void const *escape_ctx,
-                                     PW_TYPE dst_type)
+                                     fr_type_t dst_type)
                        CC_HINT(nonnull (1, 4, 5));
 
 ssize_t                        _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
                                       REQUEST *request,
                                       vp_tmpl_t const *vpt,
                                       xlat_escape_t escape, void const *escape_ctx,
-                                      PW_TYPE dst_type)
+                                      fr_type_t dst_type)
                        CC_HINT(nonnull (2, 3, 4));
 
 VALUE_PAIR             *tmpl_cursor_init(int *err, vp_cursor_t *cursor, REQUEST *request,
@@ -436,7 +436,7 @@ int                 tmpl_find_or_add_vp(VALUE_PAIR **out, REQUEST *request, vp_tmpl_t const *v
 
 int                    tmpl_define_unknown_attr(vp_tmpl_t *vpt);
 
-int                    tmpl_define_undefined_attr(vp_tmpl_t *vpt, PW_TYPE type, fr_dict_attr_flags_t const *flags);
+int                    tmpl_define_undefined_attr(vp_tmpl_t *vpt, fr_type_t type, fr_dict_attr_flags_t const *flags);
 
 #ifdef __cplusplus
 }
index 0e5da61864aa106d1a681b28cd3cf56a827e567b..3b675fee326f572f4b7ca977db76348a75d1b016 100644 (file)
@@ -29,121 +29,121 @@ RCSIDH(types_h, "$Id$")
  *
  */
 typedef enum {
-       PW_TYPE_INVALID = 0,                    //!< Invalid (uninitialised) attribute type.
-
-       PW_TYPE_STRING,                         //!< String of printable characters.
-       PW_TYPE_OCTETS,                         //!< Raw octets.
-
-       PW_TYPE_IPV4_ADDR,                      //!< 32 Bit IPv4 Address.
-       PW_TYPE_IPV4_PREFIX,                    //!< IPv4 Prefix.
-       PW_TYPE_IPV6_ADDR,                      //!< 128 Bit IPv6 Address.
-       PW_TYPE_IPV6_PREFIX,                    //!< IPv6 Prefix.
-       PW_TYPE_IFID,                           //!< Interface ID.
-       PW_TYPE_COMBO_IP_ADDR,                  //!< IPv4 or IPv6 address depending on length.
-       PW_TYPE_COMBO_IP_PREFIX,                //!< IPv4 or IPv6 address prefix depending on length.
-       PW_TYPE_ETHERNET,                       //!< 48 Bit Mac-Address.
-
-       PW_TYPE_BOOLEAN,                        //!< A truth value.
-       PW_TYPE_BYTE,                           //!< 8 Bit unsigned integer.
-       PW_TYPE_SHORT,                          //!< 16 Bit unsigned integer.
-       PW_TYPE_INTEGER,                        //!< 32 Bit unsigned integer.
-       PW_TYPE_INTEGER64,                      //!< 64 Bit unsigned integer.
-       PW_TYPE_SIZE,                           //!< Unsigned integer capable of representing any memory
+       FR_TYPE_INVALID = 0,                    //!< Invalid (uninitialised) attribute type.
+
+       FR_TYPE_STRING,                         //!< String of printable characters.
+       FR_TYPE_OCTETS,                         //!< Raw octets.
+
+       FR_TYPE_IPV4_ADDR,                      //!< 32 Bit IPv4 Address.
+       FR_TYPE_IPV4_PREFIX,                    //!< IPv4 Prefix.
+       FR_TYPE_IPV6_ADDR,                      //!< 128 Bit IPv6 Address.
+       FR_TYPE_IPV6_PREFIX,                    //!< IPv6 Prefix.
+       FR_TYPE_IFID,                           //!< Interface ID.
+       FR_TYPE_COMBO_IP_ADDR,                  //!< IPv4 or IPv6 address depending on length.
+       FR_TYPE_COMBO_IP_PREFIX,                //!< IPv4 or IPv6 address prefix depending on length.
+       FR_TYPE_ETHERNET,                       //!< 48 Bit Mac-Address.
+
+       FR_TYPE_BOOLEAN,                        //!< A truth value.
+       FR_TYPE_BYTE,                           //!< 8 Bit unsigned integer.
+       FR_TYPE_SHORT,                          //!< 16 Bit unsigned integer.
+       FR_TYPE_INTEGER,                        //!< 32 Bit unsigned integer.
+       FR_TYPE_INTEGER64,                      //!< 64 Bit unsigned integer.
+       FR_TYPE_SIZE,                           //!< Unsigned integer capable of representing any memory
                                                //!< address on the local system.
-       PW_TYPE_SIGNED,                         //!< 32 Bit signed integer.
+       FR_TYPE_SIGNED,                         //!< 32 Bit signed integer.
 
-       PW_TYPE_TIMEVAL,                        //!< Time value (struct timeval), only for config items.
-       PW_TYPE_DECIMAL,                        //!< Double precision floating point.
-       PW_TYPE_DATE,                           //!< 32 Bit Unix timestamp.
+       FR_TYPE_TIMEVAL,                        //!< Time value (struct timeval), only for config items.
+       FR_TYPE_DECIMAL,                        //!< Double precision floating point.
+       FR_TYPE_DATE,                           //!< 32 Bit Unix timestamp.
 
-       PW_TYPE_ABINARY,                        //!< Ascend binary format a packed data structure.
+       FR_TYPE_ABINARY,                        //!< Ascend binary format a packed data structure.
 
-       PW_TYPE_TLV,                            //!< Contains nested attributes.
-       PW_TYPE_STRUCT,                         //!< like TLV, but without T or L, and fixed-width children
+       FR_TYPE_TLV,                            //!< Contains nested attributes.
+       FR_TYPE_STRUCT,                         //!< like TLV, but without T or L, and fixed-width children
 
-       PW_TYPE_EXTENDED,                       //!< Extended attribute space attribute.
-       PW_TYPE_LONG_EXTENDED,                  //!< Long extended attribute space attribute.
+       FR_TYPE_EXTENDED,                       //!< Extended attribute space attribute.
+       FR_TYPE_LONG_EXTENDED,                  //!< Long extended attribute space attribute.
 
-       PW_TYPE_VSA,                            //!< Vendor-Specific, for RADIUS attribute 26.
-       PW_TYPE_EVS,                            //!< Extended attribute, vendor specific.
-       PW_TYPE_VENDOR,                         //!< Attribute that represents a vendor in the attribute tree.
+       FR_TYPE_VSA,                            //!< Vendor-Specific, for RADIUS attribute 26.
+       FR_TYPE_EVS,                            //!< Extended attribute, vendor specific.
+       FR_TYPE_VENDOR,                         //!< Attribute that represents a vendor in the attribute tree.
 
-       PW_TYPE_MAX                             //!< Number of defined data types.
-} PW_TYPE;
+       FR_TYPE_MAX                             //!< Number of defined data types.
+} fr_type_t;
 
 /** Match all fixed length types in case statements
  *
  * @note This should be used for switch statements in printing and casting
  *     functions that need to deal with all types representing values
  */
-#define PW_TYPE_FIXED_SIZE \
-            PW_TYPE_BYTE: \
-       case PW_TYPE_SHORT: \
-       case PW_TYPE_INTEGER: \
-       case PW_TYPE_INTEGER64: \
-       case PW_TYPE_SIZE: \
-       case PW_TYPE_DATE: \
-       case PW_TYPE_IFID: \
-       case PW_TYPE_ETHERNET: \
-       case PW_TYPE_IPV4_ADDR: \
-       case PW_TYPE_IPV4_PREFIX: \
-       case PW_TYPE_IPV6_ADDR: \
-       case PW_TYPE_IPV6_PREFIX: \
-       case PW_TYPE_COMBO_IP_ADDR: \
-       case PW_TYPE_COMBO_IP_PREFIX: \
-       case PW_TYPE_SIGNED: \
-       case PW_TYPE_TIMEVAL: \
-       case PW_TYPE_BOOLEAN: \
-       case PW_TYPE_DECIMAL
+#define FR_TYPE_FIXED_SIZE \
+            FR_TYPE_BYTE: \
+       case FR_TYPE_SHORT: \
+       case FR_TYPE_INTEGER: \
+       case FR_TYPE_INTEGER64: \
+       case FR_TYPE_SIZE: \
+       case FR_TYPE_DATE: \
+       case FR_TYPE_IFID: \
+       case FR_TYPE_ETHERNET: \
+       case FR_TYPE_IPV4_ADDR: \
+       case FR_TYPE_IPV4_PREFIX: \
+       case FR_TYPE_IPV6_ADDR: \
+       case FR_TYPE_IPV6_PREFIX: \
+       case FR_TYPE_COMBO_IP_ADDR: \
+       case FR_TYPE_COMBO_IP_PREFIX: \
+       case FR_TYPE_SIGNED: \
+       case FR_TYPE_TIMEVAL: \
+       case FR_TYPE_BOOLEAN: \
+       case FR_TYPE_DECIMAL
 
 /** Match all variable length types in case statements
  *
  * @note This should be used for switch statements in printing and casting
  *     functions that need to deal with all types representing values
  */
-#define PW_TYPE_VARIABLE_SIZE \
-            PW_TYPE_STRING: \
-       case PW_TYPE_OCTETS: \
-       case PW_TYPE_ABINARY \
+#define FR_TYPE_VARIABLE_SIZE \
+            FR_TYPE_STRING: \
+       case FR_TYPE_OCTETS: \
+       case FR_TYPE_ABINARY \
 
 
-#define PW_TYPE_BAD \
-            PW_TYPE_MAX: \
-       case PW_TYPE_INVALID
+#define FR_TYPE_BAD \
+            FR_TYPE_MAX: \
+       case FR_TYPE_INVALID
 
 /** Stupid hack for things which produce special error messages for VSAs
  *
  * @note This should be used for switch statements in printing and casting
  *     functions that need to deal with all types representing values
  */
-#define PW_TYPE_STRUCTURAL_EXCEPT_VSA \
-            PW_TYPE_EXTENDED: \
-       case PW_TYPE_LONG_EXTENDED: \
-       case PW_TYPE_EVS: \
-       case PW_TYPE_TLV: \
-       case PW_TYPE_STRUCT
+#define FR_TYPE_STRUCTURAL_EXCEPT_VSA \
+            FR_TYPE_EXTENDED: \
+       case FR_TYPE_LONG_EXTENDED: \
+       case FR_TYPE_EVS: \
+       case FR_TYPE_TLV: \
+       case FR_TYPE_STRUCT
 
 /** Match all non value types in case statements
  *
  * @note This should be used for switch statements in printing and casting
  *     functions that need to deal with all types representing values
  */
-#define PW_TYPE_STRUCTURAL \
-       PW_TYPE_STRUCTURAL_EXCEPT_VSA: \
-       case PW_TYPE_VSA: \
-       case PW_TYPE_VENDOR
+#define FR_TYPE_STRUCTURAL \
+       FR_TYPE_STRUCTURAL_EXCEPT_VSA: \
+       case FR_TYPE_VSA: \
+       case FR_TYPE_VENDOR
 
 /** Naturally numeric types
  *
  */
-#define PW_TYPE_NUMERIC \
-       PW_TYPE_BOOLEAN: \
-       case PW_TYPE_BYTE: \
-       case PW_TYPE_SHORT: \
-       case PW_TYPE_INTEGER: \
-       case PW_TYPE_INTEGER64: \
-       case PW_TYPE_SIZE: \
-       case PW_TYPE_SIGNED: \
-       case PW_TYPE_DATE
+#define FR_TYPE_NUMERIC \
+       FR_TYPE_BOOLEAN: \
+       case FR_TYPE_BYTE: \
+       case FR_TYPE_SHORT: \
+       case FR_TYPE_INTEGER: \
+       case FR_TYPE_INTEGER64: \
+       case FR_TYPE_SIZE: \
+       case FR_TYPE_SIGNED: \
+       case FR_TYPE_DATE
 
 #endif /* _FR_TYPES_H */
index 01a3100b0f832d574cf1bec001cc86a5dc8f9287..992a4e478b8080c2daa2290e3befd9ad9815066d 100644 (file)
@@ -29,7 +29,7 @@ extern size_t const value_box_offsets[];
  * This union contains all data types that can be represented by VALUE_PAIRs. It may also be used in other parts
  * of the server where values of different types need to be stored.
  *
- * PW_TYPE should be an enumeration of the values in this union.
+ * fr_type_t should be an enumeration of the values in this union.
  */
 typedef struct value_box value_box_t;
 struct value_box {
@@ -75,7 +75,7 @@ struct value_box {
 
        } datum;
 
-       PW_TYPE                         type;                   //!< Type of this value-box.
+       fr_type_t                               type;                   //!< Type of this value-box.
 
        bool                            tainted;                //!< i.e. did it come from an untrusted source
 
@@ -85,7 +85,7 @@ struct value_box {
 /*
  *     Allocation
  */
-value_box_t    *value_box_alloc(TALLOC_CTX *ctx, PW_TYPE type);
+value_box_t    *value_box_alloc(TALLOC_CTX *ctx, fr_type_t type);
 
 void           value_box_clear(value_box_t *data);
 
@@ -104,7 +104,7 @@ size_t              value_str_unescape(uint8_t *out, char const *in, size_t inlen, char quot
 int            value_box_hton(value_box_t *dst, value_box_t const *src);
 
 int            value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
-                              PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                              fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                               value_box_t const *src);
 
 /*
@@ -132,7 +132,7 @@ int         value_box_memdup_buffer_shallow(TALLOC_CTX *ctx, value_box_t *dst, uint8_t
 int            value_box_from_ipaddr(value_box_t *dst, fr_ipaddr_t const *ipaddr);
 
 int            value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
-                                  PW_TYPE *src_type, fr_dict_attr_t const *src_enumv,
+                                  fr_type_t *src_type, fr_dict_attr_t const *src_enumv,
                                   char const *src, ssize_t src_len, char quote);
 
 /*
index e961c9d01a7cfb7acb30fbf57844293e3195d4a7..2f39bb928e1dfd4f366e374abe8c21b43f280fce 100644 (file)
@@ -349,7 +349,7 @@ static inline void fr_ldap_berval_to_value(value_box_t *value, struct berval *be
 {
        value->datum.ptr = berval->bv_val;
        value->datum.length = berval->bv_len;
-       value->type = PW_TYPE_OCTETS;
+       value->type = FR_TYPE_OCTETS;
 }
 
 /*
index 3938276c4b191b463c896b63330ee61dc34fba3e..9d11e09279528b465e5fa6adf8d007744953a39d 100644 (file)
@@ -92,92 +92,92 @@ struct fr_dict {
 /** Map data types to names representing those types
  */
 FR_NAME_NUMBER const dict_attr_types[] = {
-       { "string",             PW_TYPE_STRING },
-       { "octets",             PW_TYPE_OCTETS },
-
-       { "ipaddr",             PW_TYPE_IPV4_ADDR },
-       { "ipv4prefix",         PW_TYPE_IPV4_PREFIX },
-       { "ipv6addr",           PW_TYPE_IPV6_ADDR },
-       { "ipv6prefix",         PW_TYPE_IPV6_PREFIX },
-       { "ifid",               PW_TYPE_IFID },
-       { "combo-ip",           PW_TYPE_COMBO_IP_ADDR },
-       { "combo-prefix",       PW_TYPE_COMBO_IP_PREFIX },
-       { "ether",              PW_TYPE_ETHERNET },
-
-       { "bool",               PW_TYPE_BOOLEAN },
-       { "byte",               PW_TYPE_BYTE },
-       { "short",              PW_TYPE_SHORT },
-       { "integer",            PW_TYPE_INTEGER },
-       { "integer64",          PW_TYPE_INTEGER64 },
-       { "size",               PW_TYPE_SIZE },
-       { "signed",             PW_TYPE_SIGNED },
-
-       { "decimal",            PW_TYPE_DECIMAL },
-       { "timeval",            PW_TYPE_TIMEVAL },
-       { "date",               PW_TYPE_DATE },
-
-       { "abinary",            PW_TYPE_ABINARY },
-
-       { "tlv",                PW_TYPE_TLV },
-       { "struct",             PW_TYPE_STRUCT },
-
-       { "extended",           PW_TYPE_EXTENDED },
-       { "long-extended",      PW_TYPE_LONG_EXTENDED },
-
-       { "vsa",                PW_TYPE_VSA },
-       { "evs",                PW_TYPE_EVS },
-       { "vendor",             PW_TYPE_VENDOR },
+       { "string",             FR_TYPE_STRING },
+       { "octets",             FR_TYPE_OCTETS },
+
+       { "ipaddr",             FR_TYPE_IPV4_ADDR },
+       { "ipv4prefix",         FR_TYPE_IPV4_PREFIX },
+       { "ipv6addr",           FR_TYPE_IPV6_ADDR },
+       { "ipv6prefix",         FR_TYPE_IPV6_PREFIX },
+       { "ifid",               FR_TYPE_IFID },
+       { "combo-ip",           FR_TYPE_COMBO_IP_ADDR },
+       { "combo-prefix",       FR_TYPE_COMBO_IP_PREFIX },
+       { "ether",              FR_TYPE_ETHERNET },
+
+       { "bool",               FR_TYPE_BOOLEAN },
+       { "byte",               FR_TYPE_BYTE },
+       { "short",              FR_TYPE_SHORT },
+       { "integer",            FR_TYPE_INTEGER },
+       { "integer64",          FR_TYPE_INTEGER64 },
+       { "size",               FR_TYPE_SIZE },
+       { "signed",             FR_TYPE_SIGNED },
+
+       { "decimal",            FR_TYPE_DECIMAL },
+       { "timeval",            FR_TYPE_TIMEVAL },
+       { "date",               FR_TYPE_DATE },
+
+       { "abinary",            FR_TYPE_ABINARY },
+
+       { "tlv",                FR_TYPE_TLV },
+       { "struct",             FR_TYPE_STRUCT },
+
+       { "extended",           FR_TYPE_EXTENDED },
+       { "long-extended",      FR_TYPE_LONG_EXTENDED },
+
+       { "vsa",                FR_TYPE_VSA },
+       { "evs",                FR_TYPE_EVS },
+       { "vendor",             FR_TYPE_VENDOR },
 
        /*
         *      Alternative names
         */
-       { "cidr",               PW_TYPE_IPV4_PREFIX },
-       { "uint8",              PW_TYPE_BYTE },
-       { "uint16",             PW_TYPE_SHORT },
-       { "uint32",             PW_TYPE_INTEGER },
-       { "uint64",             PW_TYPE_INTEGER64 },
-       { "int32",              PW_TYPE_SIGNED },
+       { "cidr",               FR_TYPE_IPV4_PREFIX },
+       { "uint8",              FR_TYPE_BYTE },
+       { "uint16",             FR_TYPE_SHORT },
+       { "uint32",             FR_TYPE_INTEGER },
+       { "uint64",             FR_TYPE_INTEGER64 },
+       { "int32",              FR_TYPE_SIGNED },
 
        { NULL,                 0 }
 };
 
 /** Map data types to min / max data sizes
  */
-size_t const dict_attr_sizes[PW_TYPE_MAX + 1][2] = {
-       [PW_TYPE_INVALID]       = {~0, 0},      //!< Ensure array starts at 0 (umm?)
+size_t const dict_attr_sizes[FR_TYPE_MAX + 1][2] = {
+       [FR_TYPE_INVALID]       = {~0, 0},      //!< Ensure array starts at 0 (umm?)
 
-       [PW_TYPE_STRING]        = {0, ~0},
-       [PW_TYPE_OCTETS]        = {0, ~0},
+       [FR_TYPE_STRING]        = {0, ~0},
+       [FR_TYPE_OCTETS]        = {0, ~0},
 
-       [PW_TYPE_IPV4_ADDR]     = {4, 4},
-       [PW_TYPE_IPV4_PREFIX]   = {6, 6},
-       [PW_TYPE_IPV6_ADDR]     = {16, 16},
-       [PW_TYPE_IPV6_PREFIX]   = {2, 18},
-       [PW_TYPE_COMBO_IP_ADDR] = {4, 16},
-       [PW_TYPE_IFID]          = {8, 8},
-       [PW_TYPE_ETHERNET]      = {6, 6},
+       [FR_TYPE_IPV4_ADDR]     = {4, 4},
+       [FR_TYPE_IPV4_PREFIX]   = {6, 6},
+       [FR_TYPE_IPV6_ADDR]     = {16, 16},
+       [FR_TYPE_IPV6_PREFIX]   = {2, 18},
+       [FR_TYPE_COMBO_IP_ADDR] = {4, 16},
+       [FR_TYPE_IFID]          = {8, 8},
+       [FR_TYPE_ETHERNET]      = {6, 6},
 
-       [PW_TYPE_BOOLEAN]       = {1, 1},
-       [PW_TYPE_BYTE]          = {1, 1},
-       [PW_TYPE_SHORT]         = {2, 2},
-       [PW_TYPE_INTEGER]       = {4, 4},
-       [PW_TYPE_INTEGER64]     = {8, 8},
-       [PW_TYPE_SIZE]          = {sizeof(size_t), sizeof(size_t)},
-       [PW_TYPE_SIGNED]        = {4, 4},
+       [FR_TYPE_BOOLEAN]       = {1, 1},
+       [FR_TYPE_BYTE]          = {1, 1},
+       [FR_TYPE_SHORT]         = {2, 2},
+       [FR_TYPE_INTEGER]       = {4, 4},
+       [FR_TYPE_INTEGER64]     = {8, 8},
+       [FR_TYPE_SIZE]          = {sizeof(size_t), sizeof(size_t)},
+       [FR_TYPE_SIGNED]        = {4, 4},
 
-       [PW_TYPE_DATE]          = {4, 4},
-       [PW_TYPE_ABINARY]       = {32, ~0},
+       [FR_TYPE_DATE]          = {4, 4},
+       [FR_TYPE_ABINARY]       = {32, ~0},
 
-       [PW_TYPE_TLV]           = {2, ~0},
-       [PW_TYPE_STRUCT]        = {1, ~0},
+       [FR_TYPE_TLV]           = {2, ~0},
+       [FR_TYPE_STRUCT]        = {1, ~0},
 
-       [PW_TYPE_EXTENDED]      = {2, ~0},
-       [PW_TYPE_LONG_EXTENDED] = {3, ~0},
+       [FR_TYPE_EXTENDED]      = {2, ~0},
+       [FR_TYPE_LONG_EXTENDED] = {3, ~0},
 
-       [PW_TYPE_VSA]           = {4, ~0},
-       [PW_TYPE_EVS]           = {6, ~0},
+       [FR_TYPE_VSA]           = {4, ~0},
+       [FR_TYPE_EVS]           = {6, ~0},
 
-       [PW_TYPE_MAX]           = {~0, 0}       //!< Ensure array covers all types.
+       [FR_TYPE_MAX]           = {~0, 0}       //!< Ensure array covers all types.
 };
 
 /** Characters allowed in dictionary names
@@ -204,27 +204,27 @@ bool const fr_dict_attr_allowed_chars[UINT8_MAX] = {
 /** Structural data types
  *
  */
-bool const fr_dict_non_data_types[PW_TYPE_MAX + 1] = {
-       [PW_TYPE_TLV] = true,
-       [PW_TYPE_STRUCT] = true,
-       [PW_TYPE_EXTENDED] = true,
-       [PW_TYPE_LONG_EXTENDED] = true,
-       [PW_TYPE_VSA] = true,
-       [PW_TYPE_EVS] = true,
-       [PW_TYPE_VENDOR] = true
+bool const fr_dict_non_data_types[FR_TYPE_MAX + 1] = {
+       [FR_TYPE_TLV] = true,
+       [FR_TYPE_STRUCT] = true,
+       [FR_TYPE_EXTENDED] = true,
+       [FR_TYPE_LONG_EXTENDED] = true,
+       [FR_TYPE_VSA] = true,
+       [FR_TYPE_EVS] = true,
+       [FR_TYPE_VENDOR] = true
 };
 
 /** Numeric dictionary types
  *
  * @note Must be updated to match the anonymous enum types union in value_box_t
  */
-bool const fr_dict_enum_types[PW_TYPE_MAX + 1] = {
-       [PW_TYPE_BYTE] = true,
-       [PW_TYPE_SHORT] = true,
-       [PW_TYPE_INTEGER] = true,
-       [PW_TYPE_INTEGER64] = true,
-       [PW_TYPE_SIZE] = true,
-       [PW_TYPE_SIGNED] = true
+bool const fr_dict_enum_types[FR_TYPE_MAX + 1] = {
+       [FR_TYPE_BYTE] = true,
+       [FR_TYPE_SHORT] = true,
+       [FR_TYPE_INTEGER] = true,
+       [FR_TYPE_INTEGER64] = true,
+       [FR_TYPE_SIZE] = true,
+       [FR_TYPE_SIGNED] = true
 };
 
 /*
@@ -639,7 +639,7 @@ static inline int fr_dict_attr_child_add(fr_dict_attr_t *parent, fr_dict_attr_t
                 *      Structural attributes always take priority.
                 */
                switch (child->type) {
-               case PW_TYPE_STRUCTURAL:
+               case FR_TYPE_STRUCTURAL:
                        child_is_struct = true;
                        break;
 
@@ -648,7 +648,7 @@ static inline int fr_dict_attr_child_add(fr_dict_attr_t *parent, fr_dict_attr_t
                }
 
                switch ((*bin)->type) {
-               case PW_TYPE_STRUCTURAL:
+               case FR_TYPE_STRUCTURAL:
                        bin_is_struct = true;
                        break;
 
@@ -770,7 +770,7 @@ static int fr_dict_attr_set_name(fr_dict_attr_t **da, char const *name)
 static fr_dict_attr_t *fr_dict_attr_alloc(TALLOC_CTX *ctx,
                                          fr_dict_attr_t const *parent,
                                          char const *name, unsigned int vendor, int attr,
-                                         PW_TYPE type, fr_dict_attr_flags_t const *flags)
+                                         fr_type_t type, fr_dict_attr_flags_t const *flags)
 {
        fr_dict_attr_t *da;
 
@@ -833,7 +833,7 @@ static fr_dict_attr_t *fr_dict_attr_alloc(TALLOC_CTX *ctx,
  *     - NULL on failure
  */
 static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t const *parent,
-                                               char const *name, int attr, PW_TYPE type, fr_dict_attr_flags_t flags)
+                                               char const *name, int attr, fr_type_t type, fr_dict_attr_flags_t flags)
 {
        unsigned int            vendor;
        size_t                  namelen;
@@ -858,7 +858,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
         *      type_size is used to limit the maximum attribute number, so it's checked first.
         */
        if (flags.type_size) {
-               if ((type != PW_TYPE_TLV) && (type != PW_TYPE_VENDOR)) {
+               if ((type != FR_TYPE_TLV) && (type != FR_TYPE_VENDOR)) {
                        fr_strerror_printf("The 'format=' flag can only be used with attributes of type 'tlv'");
                        goto error;
                }
@@ -921,7 +921,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                } else
 
                for (v = parent; v != NULL; v = v->parent) {
-                       if ((v->type == PW_TYPE_TLV) || (v->type == PW_TYPE_VENDOR)) {
+                       if ((v->type == FR_TYPE_TLV) || (v->type == FR_TYPE_VENDOR)) {
                                if ((v->flags.type_size < 4) &&
                                    (attr >= (1 << (8 * v->flags.type_size)))) {
                                        fr_strerror_printf("Attributes must have value between 1..%u",
@@ -954,15 +954,15 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
         *      Tags can only be used in a few limited situations.
         */
        if (flags.has_tag) {
-               if ((type != PW_TYPE_INTEGER) && (type != PW_TYPE_STRING)) {
+               if ((type != FR_TYPE_INTEGER) && (type != FR_TYPE_STRING)) {
                        fr_strerror_printf("The 'has_tag' flag can only be used for attributes of type 'integer' "
                                           "or 'string'");
                        goto error;
                }
 
                if (!(parent->flags.is_root ||
-                     ((parent->type == PW_TYPE_VENDOR) &&
-                      (parent->parent && parent->parent->type == PW_TYPE_VSA)))) {
+                     ((parent->type == FR_TYPE_VENDOR) &&
+                      (parent->parent && parent->parent->type == FR_TYPE_VSA)))) {
                        fr_strerror_printf("The 'has_tag' flag can only be used with RFC and VSA attributes");
                        goto error;
                }
@@ -983,7 +983,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
         *      'concat' can only be used in a few limited situations.
         */
        if (flags.concat) {
-               if (type != PW_TYPE_OCTETS) {
+               if (type != FR_TYPE_OCTETS) {
                        fr_strerror_printf("The 'concat' flag can only be used for attributes of type 'octets'");
                        goto error;
                }
@@ -1014,7 +1014,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                        return NULL;
                }
 
-               if ((type == PW_TYPE_TLV) || (type == PW_TYPE_VENDOR)) {
+               if ((type == FR_TYPE_TLV) || (type == FR_TYPE_VENDOR)) {
                        if ((flags.length != 1) &&
                            (flags.length != 2) &&
                            (flags.length != 4)) {
@@ -1022,13 +1022,13 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                                goto error;
                        }
 
-               } else if ((type != PW_TYPE_OCTETS) &&
-                          (type != PW_TYPE_STRUCT)) {
+               } else if ((type != FR_TYPE_OCTETS) &&
+                          (type != FR_TYPE_STRUCT)) {
                        fr_strerror_printf("The 'length' flag can only be set for attributes of type 'octets' or 'struct'");
                        goto error;
                }
 
-               if (type == PW_TYPE_STRUCT) {
+               if (type == FR_TYPE_STRUCT) {
                        if (flags.type_size != 0) {
                                fr_strerror_printf("Invalid initializer for type_size");
                                goto error;
@@ -1050,7 +1050,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
         */
        if (flags.array) {
                for (v = parent; v != NULL; v = v->parent) {
-                       if (v->type != PW_TYPE_VENDOR) continue;
+                       if (v->type != FR_TYPE_VENDOR) continue;
 
                        if ((v->attr != 34673) && /* freedhcp */
                            (v->attr != DHCP_MAGIC_VENDOR)) {
@@ -1066,13 +1066,13 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                                           fr_int2str(dict_attr_types, type, "<UNKNOWN>"));
                        goto error;
 
-               case PW_TYPE_IPV4_ADDR:
-               case PW_TYPE_IPV6_ADDR:
-               case PW_TYPE_BYTE:
-               case PW_TYPE_SHORT:
-               case PW_TYPE_INTEGER:
-               case PW_TYPE_DATE:
-               case PW_TYPE_STRING:
+               case FR_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV6_ADDR:
+               case FR_TYPE_BYTE:
+               case FR_TYPE_SHORT:
+               case FR_TYPE_INTEGER:
+               case FR_TYPE_DATE:
+               case FR_TYPE_STRING:
                        break;
                }
 
@@ -1087,7 +1087,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
         *      caller sets it, we still sanity check it.
         */
        if (flags.has_value) {
-               if (type != PW_TYPE_INTEGER) {
+               if (type != FR_TYPE_INTEGER) {
                        fr_strerror_printf("The 'has_value' flag can only be used with attributes "
                                           "of type 'integer'");
                        goto error;
@@ -1108,8 +1108,8 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                 *      MS-CHAP-MPPE-Keys, the data is binary crap.  So... we
                 *      MUST specify a length in the dictionary.
                 */
-               if ((flags.encrypt == FLAG_ENCRYPT_USER_PASSWORD) && (type != PW_TYPE_STRING)) {
-                       if (type != PW_TYPE_OCTETS) {
+               if ((flags.encrypt == FLAG_ENCRYPT_USER_PASSWORD) && (type != FR_TYPE_STRING)) {
+                       if (type != FR_TYPE_OCTETS) {
                                fr_strerror_printf("The 'encrypt=1' flag can only be used with "
                                                   "attributes of type 'string'");
                                goto error;
@@ -1136,9 +1136,9 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                if ((flags.encrypt != FLAG_ENCRYPT_TUNNEL_PASSWORD) && !flags.internal && !parent->flags.internal) {
                        for (v = parent; v != NULL; v = v->parent) {
                                switch (v->type) {
-                               case PW_TYPE_EXTENDED:
-                               case PW_TYPE_LONG_EXTENDED:
-                               case PW_TYPE_EVS:
+                               case FR_TYPE_EXTENDED:
+                               case FR_TYPE_LONG_EXTENDED:
+                               case FR_TYPE_EVS:
                                        fr_strerror_printf("The 'encrypt=%d' flag cannot be used with attributes "
                                                           "of type '%s'", flags.encrypt,
                                                           fr_int2str(dict_attr_types, type, "<UNKNOWN>"));
@@ -1152,7 +1152,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                }
 
                switch (type) {
-               case PW_TYPE_TLV:
+               case FR_TYPE_TLV:
                        if (flags.internal || parent->flags.internal) break;
                        /* FALL-THROUGH */
 
@@ -1162,12 +1162,12 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                                           fr_int2str(dict_attr_types, type, "<UNKNOWN>"));
                        goto error;
 
-               case PW_TYPE_IPV4_ADDR:
-               case PW_TYPE_INTEGER:
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_IPV4_ADDR:
+               case FR_TYPE_INTEGER:
+               case FR_TYPE_OCTETS:
                        if (flags.encrypt == FLAG_ENCRYPT_ASCEND_SECRET) goto encrypt_fail;
 
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        break;
                }
        }
@@ -1181,9 +1181,9 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
        /*
         *      These types may only be parented from the root of the dictionary
         */
-       case PW_TYPE_EXTENDED:
-       case PW_TYPE_LONG_EXTENDED:
-       case PW_TYPE_VSA:
+       case FR_TYPE_EXTENDED:
+       case FR_TYPE_LONG_EXTENDED:
+       case FR_TYPE_VSA:
                if (!parent->flags.is_root) {
                        fr_strerror_printf("Attributes of type '%s' can only be used in the RFC space",
                                           fr_int2str(dict_attr_types, type, "?Unknown?"));
@@ -1194,23 +1194,23 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
        /*
         *      EVS may only occur under extended and long extended.
         */
-       case PW_TYPE_EVS:
-               if ((parent->type != PW_TYPE_EXTENDED) && (parent->type != PW_TYPE_LONG_EXTENDED)) {
+       case FR_TYPE_EVS:
+               if ((parent->type != FR_TYPE_EXTENDED) && (parent->type != FR_TYPE_LONG_EXTENDED)) {
                        fr_strerror_printf("Attributes of type 'evs' MUST have a parent of type 'extended', "
                                           "instead of '%s'", fr_int2str(dict_attr_types, parent->type, "?Unknown?"));
                        goto error;
                }
                break;
 
-       case PW_TYPE_VENDOR:
-               if ((parent->type != PW_TYPE_VSA) && (parent->type != PW_TYPE_EVS)) {
+       case FR_TYPE_VENDOR:
+               if ((parent->type != FR_TYPE_VSA) && (parent->type != FR_TYPE_EVS)) {
                        fr_strerror_printf("Attributes of type 'vendor' MUST have a parent of type 'vsa' or "
                                           "'evs', instead of '%s'",
                                           fr_int2str(dict_attr_types, parent->type, "?Unknown?"));
                        goto error;
                }
 
-               if (parent->type == PW_TYPE_VSA) {
+               if (parent->type == FR_TYPE_VSA) {
                        fr_dict_vendor_t const *dv;
 
                        dv = fr_dict_vendor_by_num(dict, attr);
@@ -1227,18 +1227,18 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                }
                break;
 
-       case PW_TYPE_TLV:
+       case FR_TYPE_TLV:
                /*
                 *      Ensure that type_size and length are set.
                 */
                for (v = parent; v != NULL; v = v->parent) {
-                       if ((v->type == PW_TYPE_TLV) || (v->type == PW_TYPE_VENDOR)) {
+                       if ((v->type == FR_TYPE_TLV) || (v->type == FR_TYPE_VENDOR)) {
                                break;
                        }
                }
 
                /*
-                *      root is always PW_TYPE_TLV, so we're OK.
+                *      root is always FR_TYPE_TLV, so we're OK.
                 */
                if (!v) {
                        fr_strerror_printf("Attributes of type '%s' require a parent attribute",
@@ -1254,12 +1254,12 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                flags.length = v->flags.length;
                break;
 
-       case PW_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_COMBO_IP_ADDR:
                /*
                 *      RFC 6929 says that this is a terrible idea.
                 */
                for (v = parent; v != NULL; v = v->parent) {
-                       if (v->type == PW_TYPE_VSA) {
+                       if (v->type == FR_TYPE_VSA) {
                                break;
                        }
                }
@@ -1271,10 +1271,10 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                }
                break;
 
-       case PW_TYPE_INVALID:
-       case PW_TYPE_TIMEVAL:
-       case PW_TYPE_DECIMAL:
-       case PW_TYPE_COMBO_IP_PREFIX:
+       case FR_TYPE_INVALID:
+       case FR_TYPE_TIMEVAL:
+       case FR_TYPE_DECIMAL:
+       case FR_TYPE_COMBO_IP_PREFIX:
                fr_strerror_printf("Attributes of type '%s' cannot be used in dictionaries",
                                   fr_int2str(dict_attr_types, type, "?Unknown?"));
                goto error;
@@ -1287,43 +1287,43 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
         *      Force "length" for data types of fixed length;
         */
        switch (type) {
-       case PW_TYPE_BYTE:
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BYTE:
+       case FR_TYPE_BOOLEAN:
                flags.length = 1;
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                flags.length = 2;
                break;
 
-       case PW_TYPE_DATE:
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_DATE:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_SIGNED:
                flags.length = 4;
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                flags.length = 8;
                break;
 
-       case PW_TYPE_SIZE:
+       case FR_TYPE_SIZE:
                flags.length = sizeof(size_t);
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                flags.length = 6;
                break;
 
-       case PW_TYPE_IFID:
+       case FR_TYPE_IFID:
                flags.length = 8;
                break;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                flags.length = 16;
                break;
 
-       case PW_TYPE_EXTENDED:
+       case FR_TYPE_EXTENDED:
                if (!parent->flags.is_root || (attr < 241)) {
                        fr_strerror_printf("Attributes of type 'extended' MUST be "
                                           "RFC attributes with value >= 241.");
@@ -1332,7 +1332,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                flags.length = 0;
                break;
 
-       case PW_TYPE_LONG_EXTENDED:
+       case FR_TYPE_LONG_EXTENDED:
                if (!parent->flags.is_root || (attr < 241)) {
                        fr_strerror_printf("Attributes of type 'long-extended' MUST "
                                           "be RFC attributes with value >= 241.");
@@ -1342,7 +1342,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                flags.length = 0;
                break;
 
-       case PW_TYPE_EVS:
+       case FR_TYPE_EVS:
                if (attr != PW_VENDOR_SPECIFIC) {
                        fr_strerror_printf("Attributes of type 'evs' MUST have attribute code 26, got %i", attr);
                        goto error;
@@ -1355,13 +1355,13 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                 *      The length is calculated from th children, not
                 *      input as the flags.
                 */
-       case PW_TYPE_STRUCT:
+       case FR_TYPE_STRUCT:
                flags.length = 0;
                break;
 
-       case PW_TYPE_STRING:
-       case PW_TYPE_OCTETS:
-       case PW_TYPE_TLV:
+       case FR_TYPE_STRING:
+       case FR_TYPE_OCTETS:
+       case FR_TYPE_TLV:
                flags.is_pointer = true;
                break;
 
@@ -1372,13 +1372,13 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
        /*
         *      Validate attribute based on parent.
         */
-       if (parent->type == PW_TYPE_STRUCT) {
+       if (parent->type == FR_TYPE_STRUCT) {
                fr_dict_attr_t *mutable;
 
                /*
                 *      STRUCTs will have their length filled in later.
                 */
-               if ((type != PW_TYPE_STRUCT) && (flags.length == 0)) {
+               if ((type != FR_TYPE_STRUCT) && (flags.length == 0)) {
                        fr_strerror_printf("Children of 'struct' type attributes MUST have fixed length.");
                        goto error;
                }
@@ -1407,7 +1407,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
        /*
         *      Propogate vendor down the attribute tree.
         */
-       if (parent->type == PW_TYPE_VENDOR) {
+       if (parent->type == FR_TYPE_VENDOR) {
                vendor = parent->attr;
        } else {
                vendor = parent->vendor;
@@ -1458,7 +1458,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
        /*
         *      Hacks for combo-IP
         */
-       if (n->type == PW_TYPE_COMBO_IP_ADDR) {
+       if (n->type == FR_TYPE_COMBO_IP_ADDR) {
                fr_dict_attr_t *v4, *v6;
 
                v4 = (fr_dict_attr_t *)talloc_zero_array(dict->pool, uint8_t, sizeof(*v4) + namelen);
@@ -1470,10 +1470,10 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
                talloc_set_type(v6, fr_dict_attr_t);
 
                memcpy(v4, n, sizeof(*v4) + namelen);
-               v4->type = PW_TYPE_IPV4_ADDR;
+               v4->type = FR_TYPE_IPV4_ADDR;
 
                memcpy(v6, n, sizeof(*v6) + namelen);
-               v6->type = PW_TYPE_IPV6_ADDR;
+               v6->type = FR_TYPE_IPV6_ADDR;
                if (!fr_hash_table_replace(dict->attributes_combo, v4)) {
                        fr_strerror_printf("Failed inserting IPv4 version of combo attribute");
                        goto error;
@@ -1504,7 +1504,7 @@ static fr_dict_attr_t *fr_dict_attr_add_by_name(fr_dict_t *dict, fr_dict_attr_t
  *     - -1 on failure.
  */
 int fr_dict_attr_add(fr_dict_t *dict, fr_dict_attr_t const *parent,
-                    char const *name, int attr, PW_TYPE type, fr_dict_attr_flags_t flags)
+                    char const *name, int attr, fr_type_t type, fr_dict_attr_flags_t flags)
 {
        fr_dict_attr_t *n;
        fr_dict_attr_t *mutable;
@@ -1580,7 +1580,7 @@ int fr_dict_enum_add(fr_dict_t *dict, char const *attr, char const *alias, int v
                 *      Don't worry about fixups...
                 */
                switch (da->type) {
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        if (value > UINT8_MAX) {
                                talloc_free(dval);
                                fr_strerror_printf("%s: ATTRIBUTEs of type 'byte' cannot have "
@@ -1588,7 +1588,7 @@ int fr_dict_enum_add(fr_dict_t *dict, char const *attr, char const *alias, int v
                                return -1;
                        }
                        break;
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        if (value > UINT16_MAX) {
                                talloc_free(dval);
                                fr_strerror_printf("%s: ATTRIBUTEs of type 'short' cannot have "
@@ -1597,7 +1597,7 @@ int fr_dict_enum_add(fr_dict_t *dict, char const *attr, char const *alias, int v
                        }
                        break;
 
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        break;
 
                default:
@@ -2438,7 +2438,7 @@ static int _dict_from_file(dict_from_file_ctx_t *ctx,
                                goto error;
                        }
 
-                       if (da->type != PW_TYPE_TLV) {
+                       if (da->type != FR_TYPE_TLV) {
                                fr_strerror_printf("Attribute '%s' should be a 'tlv', but is a '%s'",
                                                   argv[1],
                                                   fr_int2str(dict_attr_types, da->type, "?Unknown?"));
@@ -2447,8 +2447,8 @@ static int _dict_from_file(dict_from_file_ctx_t *ctx,
 
                        common = fr_dict_parent_common(ctx->parent, da, true);
                        if (!common ||
-                           (common->type == PW_TYPE_VSA) ||
-                           (common->type == PW_TYPE_EVS)) {
+                           (common->type == FR_TYPE_VSA) ||
+                           (common->type == FR_TYPE_EVS)) {
                                fr_strerror_printf("Attribute '%s' is not a child of '%s'", argv[1], ctx->parent->name);
                                goto error;
                        }
@@ -2525,7 +2525,7 @@ static int _dict_from_file(dict_from_file_ctx_t *ctx,
                                        goto error;
                                }
 
-                               if (da->type != PW_TYPE_EVS) {
+                               if (da->type != FR_TYPE_EVS) {
                                        fr_strerror_printf("Invalid format for BEGIN-VENDOR.  Attribute '%s' should "
                                                           "be 'evs' but is '%s'", p,
                                                           fr_int2str(dict_attr_types, da->type, "?Unknown?"));
@@ -2547,7 +2547,7 @@ static int _dict_from_file(dict_from_file_ctx_t *ctx,
 
                                        memcpy(&mutable, &ctx->parent, sizeof(mutable));
                                        new = fr_dict_attr_alloc(mutable, fr_dict_root(ctx->dict), "Vendor-Specific", 0,
-                                                                PW_VENDOR_SPECIFIC, PW_TYPE_VSA, &flags);
+                                                                PW_VENDOR_SPECIFIC, FR_TYPE_VSA, &flags);
                                        fr_dict_attr_child_add(mutable, new);
                                        vsa_da = new;
                                }
@@ -2561,7 +2561,7 @@ static int _dict_from_file(dict_from_file_ctx_t *ctx,
                        if (!vendor_da) {
                                memset(&flags, 0, sizeof(flags));
 
-                               if (vsa_da->type == PW_TYPE_VSA) {
+                               if (vsa_da->type == FR_TYPE_VSA) {
                                        fr_dict_vendor_t const *dv;
 
                                        dv = fr_dict_vendor_by_num(ctx->dict, vendor);
@@ -2581,7 +2581,7 @@ static int _dict_from_file(dict_from_file_ctx_t *ctx,
 
                                memcpy(&mutable, &vsa_da, sizeof(mutable));
                                new = fr_dict_attr_alloc(mutable, ctx->parent,
-                                                        argv[1], 0, vendor, PW_TYPE_VENDOR, &flags);
+                                                        argv[1], 0, vendor, FR_TYPE_VENDOR, &flags);
                                fr_dict_attr_child_add(mutable, new);
 
                                vendor_da = new;
@@ -2727,7 +2727,7 @@ int fr_dict_from_file(TALLOC_CTX *ctx, fr_dict_t **out, char const *dir, char co
        strcpy(dict->root->name, name);
        talloc_set_type(dict->root, fr_dict_attr_t);
        dict->root->flags.is_root = 1;
-       dict->root->type = PW_TYPE_TLV;
+       dict->root->type = FR_TYPE_TLV;
        dict->root->flags.type_size = 1;
        dict->root->flags.length = 1;
 
@@ -2803,8 +2803,8 @@ int fr_dict_from_file(TALLOC_CTX *ctx, fr_dict_t **out, char const *dir, char co
                         *      prefer the new name when printing
                         *      values.
                         */
-                       if (a->parent->flags.is_root || ((a->parent->type == PW_TYPE_VENDOR) &&
-                           (a->parent->parent->type == PW_TYPE_VSA))) {
+                       if (a->parent->flags.is_root || ((a->parent->type == FR_TYPE_VENDOR) &&
+                           (a->parent->parent->type == FR_TYPE_VSA))) {
                                if (!fr_hash_table_finddata(dict->values_by_da, this->dval)) {
                                        fr_hash_table_replace(dict->values_by_da, this->dval);
                                }
@@ -2958,7 +2958,7 @@ fr_dict_attr_t const *fr_dict_unknown_add(fr_dict_t *dict, fr_dict_attr_t const
         *      Ensure the vendor is present in the
         *      vendor hash.
         */
-       if (old->type == PW_TYPE_VENDOR) if (fr_dict_vendor_add(dict, old->name, old->attr) < 0) return NULL;
+       if (old->type == FR_TYPE_VENDOR) if (fr_dict_vendor_add(dict, old->name, old->attr) < 0) return NULL;
 
        /*
         *      Look up the attribute by number.  If it doesn't exist,
@@ -3041,7 +3041,7 @@ static int fr_dict_unknown_from_fields(fr_dict_attr_t *da, fr_dict_attr_t const
 
        da->attr = attr;
        da->vendor = vendor;
-       da->type = PW_TYPE_OCTETS;
+       da->type = FR_TYPE_OCTETS;
        da->flags.is_unknown = true;
        da->flags.is_raw = true;
        da->flags.is_pointer = true;
@@ -3096,7 +3096,7 @@ fr_dict_attr_t const *fr_dict_unknown_afrom_fields(TALLOC_CTX *ctx, fr_dict_attr
         *      a TLV, in which case the vendor should be known
         *      and we don't need to modify the parent.
         */
-       if (vendor && ((parent->type == PW_TYPE_VSA) || (parent->type == PW_TYPE_EVS))) {
+       if (vendor && ((parent->type == FR_TYPE_VSA) || (parent->type == FR_TYPE_EVS))) {
                da = fr_dict_attr_child_by_num(parent, vendor);
                if (!da) {
                        if (fr_dict_unknown_vendor_afrom_num(ctx, &new_parent, parent, vendor) < 0) return NULL;
@@ -3199,15 +3199,15 @@ int fr_dict_unknown_vendor_afrom_num(TALLOC_CTX *ctx, fr_dict_attr_t **out,
         *      Vendor attributes can occur under VSA or EVS attributes.
         */
        switch (parent->type) {
-       case PW_TYPE_VSA:
-       case PW_TYPE_EVS:
+       case FR_TYPE_VSA:
+       case FR_TYPE_EVS:
                if (!fr_cond_assert(!parent->flags.is_unknown)) return -1;
 
-               *out = fr_dict_attr_alloc(ctx, parent, NULL, 0, vendor, PW_TYPE_VENDOR, &flags);
+               *out = fr_dict_attr_alloc(ctx, parent, NULL, 0, vendor, FR_TYPE_VENDOR, &flags);
 
                return 0;
 
-       case PW_TYPE_VENDOR:
+       case FR_TYPE_VENDOR:
                if (!fr_cond_assert(!parent->flags.is_unknown)) return -1;
                fr_strerror_printf("Unknown vendor cannot be parented by another vendor");
                return -1;
@@ -3253,9 +3253,9 @@ static int fr_dict_unknown_attr_afrom_num(TALLOC_CTX *ctx, fr_dict_attr_t **out,
 
        *out = NULL;
 
-       if (parent->type == PW_TYPE_VENDOR) vendor = parent->attr;
+       if (parent->type == FR_TYPE_VENDOR) vendor = parent->attr;
 
-       da = fr_dict_attr_alloc(ctx, parent, NULL, vendor, num, PW_TYPE_OCTETS, &flags);
+       da = fr_dict_attr_alloc(ctx, parent, NULL, vendor, num, FR_TYPE_OCTETS, &flags);
        if (!da) return -1;
 
        *out = da;
@@ -3331,10 +3331,10 @@ ssize_t fr_dict_unknown_afrom_oid_str(TALLOC_CTX *ctx, fr_dict_attr_t **out,
                                if (!our_parent) goto is_root;
 
                                switch (our_parent->type) {
-                               case PW_TYPE_EVS:
-                               case PW_TYPE_VSA:
+                               case FR_TYPE_EVS:
+                               case FR_TYPE_VSA:
                                        da = fr_dict_attr_child_by_num(our_parent, num);
-                                       if (!fr_cond_assert(!da || (da->type == PW_TYPE_VENDOR))) goto error;
+                                       if (!fr_cond_assert(!da || (da->type == FR_TYPE_VENDOR))) goto error;
 
                                        if (!da) {
                                                if (fr_dict_unknown_vendor_afrom_num(our_ctx, &n,
@@ -3345,9 +3345,9 @@ ssize_t fr_dict_unknown_afrom_oid_str(TALLOC_CTX *ctx, fr_dict_attr_t **out,
                                        }
                                        break;
 
-                               case PW_TYPE_TLV:
-                               case PW_TYPE_EXTENDED:
-                               case PW_TYPE_LONG_EXTENDED:
+                               case FR_TYPE_TLV:
+                               case FR_TYPE_EXTENDED:
+                               case FR_TYPE_LONG_EXTENDED:
                                is_root:
                                        if (fr_dict_unknown_attr_afrom_num(our_ctx, &n, our_parent, num) < 0) {
                                                goto error;
@@ -3357,8 +3357,8 @@ ssize_t fr_dict_unknown_afrom_oid_str(TALLOC_CTX *ctx, fr_dict_attr_t **out,
                                        break;
 
                                /*
-                                *      Can't have a PW_TYPE_STRING inside a
-                                *      PW_TYPE_STRING (for example)
+                                *      Can't have a FR_TYPE_STRING inside a
+                                *      FR_TYPE_STRING (for example)
                                 */
                                default:
                                        fr_strerror_printf("Parent OID component (%s) in \"%.*s\" specified a "
@@ -3543,31 +3543,31 @@ void fr_dict_print(fr_dict_attr_t const *da, int depth)
        fr_dict_snprint_flags(buff, sizeof(buff), da->flags);
 
        switch (da->type) {
-       case PW_TYPE_VSA:
+       case FR_TYPE_VSA:
                name = "VSA";
                break;
 
-       case PW_TYPE_EXTENDED:
+       case FR_TYPE_EXTENDED:
                name = "EXTENDED";
                break;
 
-       case PW_TYPE_TLV:
+       case FR_TYPE_TLV:
                name = "TLV";
                break;
 
-       case PW_TYPE_EVS:
+       case FR_TYPE_EVS:
                name = "EVS";
                break;
 
-       case PW_TYPE_VENDOR:
+       case FR_TYPE_VENDOR:
                name = "VENDOR";
                break;
 
-       case PW_TYPE_LONG_EXTENDED:
+       case FR_TYPE_LONG_EXTENDED:
                name = "LONG EXTENDED";
                break;
 
-       case PW_TYPE_STRUCT:
+       case FR_TYPE_STRUCT:
                name = "STRUCT";
                break;
 
@@ -3751,7 +3751,7 @@ ssize_t fr_dict_attr_by_oid(fr_dict_t *dict, fr_dict_attr_t const **parent,
        }
 
        switch ((*parent)->type) {
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                break;
 
        default:
@@ -3765,7 +3765,7 @@ ssize_t fr_dict_attr_by_oid(fr_dict_t *dict, fr_dict_attr_t const **parent,
         *
         *      @fixme: find the TLV parent, and check it's size
         */
-       if (((*parent)->type != PW_TYPE_VENDOR) && !(*parent)->flags.is_root &&
+       if (((*parent)->type != FR_TYPE_VENDOR) && !(*parent)->flags.is_root &&
            (num > UINT8_MAX)) {
                fr_strerror_printf("TLV attributes must be between 0..255 inclusive");
                return 0;
@@ -3904,10 +3904,10 @@ fr_dict_attr_t const *fr_dict_vendor_attr_by_da(fr_dict_attr_t const *da)
        fr_dict_attr_t const *da_p = da;
 
        while (da_p->parent) {
-               if (da_p->type == PW_TYPE_VENDOR) break;
+               if (da_p->type == FR_TYPE_VENDOR) break;
                da_p = da_p->parent;
        }
-       if (da_p->type != PW_TYPE_VENDOR) return NULL;
+       if (da_p->type != FR_TYPE_VENDOR) return NULL;
 
        return da_p;
 }
@@ -3934,14 +3934,14 @@ fr_dict_attr_t const *fr_dict_vendor_attr_by_num(fr_dict_t const *dict, unsigned
        }
 
        switch (da->type) {
-       case PW_TYPE_VSA:       /* Vendor specific attribute */
-       case PW_TYPE_EVS:       /* Extended vendor specific attribute */
+       case FR_TYPE_VSA:       /* Vendor specific attribute */
+       case FR_TYPE_EVS:       /* Extended vendor specific attribute */
                break;
 
        default:
                fr_strerror_printf("Wrong type for vendor root, expected '%s' or '%s' got '%s'",
-                                  fr_int2str(dict_attr_types, PW_TYPE_VSA, "<INVALID>"),
-                                  fr_int2str(dict_attr_types, PW_TYPE_EVS, "<INVALID>"),
+                                  fr_int2str(dict_attr_types, FR_TYPE_VSA, "<INVALID>"),
+                                  fr_int2str(dict_attr_types, FR_TYPE_EVS, "<INVALID>"),
                                   fr_int2str(dict_attr_types, da->type, "<INVALID>"));
                return NULL;
        }
@@ -3952,10 +3952,10 @@ fr_dict_attr_t const *fr_dict_vendor_attr_by_num(fr_dict_t const *dict, unsigned
                return NULL;
        }
 
-       if (da->type != PW_TYPE_VENDOR) {
+       if (da->type != FR_TYPE_VENDOR) {
                fr_strerror_printf("Wrong type for vendor, expected '%s' got '%s'",
                                   fr_int2str(dict_attr_types, da->type, "<INVALID>"),
-                                  fr_int2str(dict_attr_types, PW_TYPE_VENDOR, "<INVALID>"));
+                                  fr_int2str(dict_attr_types, FR_TYPE_VENDOR, "<INVALID>"));
                return NULL;
        }
 
@@ -4076,7 +4076,7 @@ fr_dict_attr_t const *fr_dict_attr_by_num(fr_dict_t *dict, unsigned int vendor,
 
 /** Lookup a attribute by its its vendor and attribute numbers and data type
  *
- * @note Only works with PW_TYPE_COMBO_IP
+ * @note Only works with FR_TYPE_COMBO_IP
  *
  * @param[in] da       to look for type variant of.
  * @param[in] type     Variant of attribute to lookup.
@@ -4084,7 +4084,7 @@ fr_dict_attr_t const *fr_dict_attr_by_num(fr_dict_t *dict, unsigned int vendor,
  *     - Attribute matching parent/attr/type.
  *     - NULL if no matching attribute could be found.
  */
-fr_dict_attr_t const *fr_dict_attr_by_type(fr_dict_attr_t const *da, PW_TYPE type)
+fr_dict_attr_t const *fr_dict_attr_by_type(fr_dict_attr_t const *da, fr_type_t type)
 {
        fr_dict_t       *dict = fr_dict_by_da(da);
        fr_dict_attr_t  find = {
@@ -4117,7 +4117,7 @@ inline fr_dict_attr_t const *fr_dict_attr_child_by_da(fr_dict_attr_t const *pare
        default:
                return NULL;
 
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                break;
        }
 
@@ -4158,7 +4158,7 @@ inline fr_dict_attr_t const *fr_dict_attr_child_by_num(fr_dict_attr_t const *par
        default:
                return NULL;
 
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                break;
        }
 
index a925af62bc7dc29cbeceb7064f87515d4e614f22..4fb1dba5c35636ffb402737d476dedca3fe460a4 100644 (file)
@@ -113,7 +113,7 @@ VALUE_PAIR *fr_pair_afrom_da(TALLOC_CTX *ctx, fr_dict_attr_t const *da)
  * will be returned.
  *
  * If attr or vendor are uknown will call dict_attruknown to create a dynamic
- * #fr_dict_attr_t of #PW_TYPE_OCTETS.
+ * #fr_dict_attr_t of #FR_TYPE_OCTETS.
  *
  * Which type of #fr_dict_attr_t the #VALUE_PAIR was created with can be determined by
  * checking @verbatim vp->da->flags.is_unknown @endverbatim.
@@ -146,7 +146,7 @@ VALUE_PAIR *fr_pair_afrom_num(TALLOC_CTX *ctx, unsigned int vendor, unsigned int
                }
 
                vp->da = da;
-               vp->vp_type = da->type; /* PW_TYPE_OCTETS */
+               vp->vp_type = da->type; /* FR_TYPE_OCTETS */
 
                return vp;
        }
@@ -160,7 +160,7 @@ VALUE_PAIR *fr_pair_afrom_num(TALLOC_CTX *ctx, unsigned int vendor, unsigned int
  * will be returned.
  *
  * If attr or vendor are uknown will call dict_attruknown to create a dynamic
- * #fr_dict_attr_t of #PW_TYPE_OCTETS.
+ * #fr_dict_attr_t of #FR_TYPE_OCTETS.
  *
  * Which type of #fr_dict_attr_t the #VALUE_PAIR was created with can be determined by
  * checking @verbatim vp->da->flags.is_unknown @endverbatim.
@@ -250,12 +250,12 @@ VALUE_PAIR *fr_pair_copy(TALLOC_CTX *ctx, VALUE_PAIR const *vp)
        }
 
        switch (vp->vp_type) {
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                n->vp_octets = NULL;    /* else fr_pair_value_memcpy will free vp's value */
                fr_pair_value_memcpy(n, vp->vp_octets, n->vp_length);
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                n->vp_strvalue = NULL;  /* else pairstrnpy will free vp's value */
                fr_pair_value_bstrncpy(n, vp->vp_strvalue, n->vp_length);
                break;
@@ -826,7 +826,7 @@ void fr_pair_delete_by_num(VALUE_PAIR **head, unsigned int vendor, unsigned int
                for(i = *head; i; i = next) {
                        VERIFY_VP(i);
                        next = i->next;
-                       if ((i->da->parent->type == PW_TYPE_VENDOR) &&
+                       if ((i->da->parent->type == FR_TYPE_VENDOR) &&
                            (i->da->attr == attr) && (i->da->vendor == vendor) &&
                            (!i->da->flags.has_tag || TAG_EQ(tag, i->tag))) {
                                *last = next;
@@ -991,7 +991,7 @@ int fr_pair_cmp(VALUE_PAIR *a, VALUE_PAIR *b)
                        regex_t *preg;
                        char    *value;
 
-                       if (!fr_cond_assert(a->vp_type == PW_TYPE_STRING)) return -1;
+                       if (!fr_cond_assert(a->vp_type == FR_TYPE_STRING)) return -1;
 
                        slen = regex_compile(NULL, &preg, a->xlat, talloc_array_length(a->xlat) - 1, false, false, false, true);
                        if (slen <= 0) {
@@ -1588,7 +1588,7 @@ VALUE_PAIR *fr_pair_list_copy_by_num(TALLOC_CTX *ctx, VALUE_PAIR *from,
                                continue;
                        }
                } else {
-                       if ((vp->da->parent->type != PW_TYPE_VENDOR) ||
+                       if ((vp->da->parent->type != FR_TYPE_VENDOR) ||
                            (vp->da->attr != attr) || (vp->da->vendor != vendor)) {
                                continue;
                        }
@@ -1712,12 +1712,12 @@ void fr_pair_list_move(TALLOC_CTX *ctx, VALUE_PAIR **to, VALUE_PAIR **from)
                                found->next = j;
                                break;
 
-                       case PW_TYPE_OCTETS:
+                       case FR_TYPE_OCTETS:
                                fr_pair_value_memsteal(found, i->vp_octets);
                                i->vp_octets = NULL;
                                break;
 
-                       case PW_TYPE_STRING:
+                       case FR_TYPE_STRING:
                                fr_pair_value_strsteal(found, i->vp_strvalue);
                                i->vp_strvalue = NULL;
                                found->tag = i->tag;
@@ -1859,7 +1859,7 @@ static void fr_pair_list_move_by_num_internal(TALLOC_CTX *ctx, VALUE_PAIR **to,
                                continue;
                        }
                } else {
-                       if (!((i->da->parent->type == PW_TYPE_VENDOR) &&
+                       if (!((i->da->parent->type == FR_TYPE_VENDOR) &&
                              (i->da->attr == attr) && (i->da->vendor == vendor))) {
                                iprev = i;
                                continue;
@@ -1967,7 +1967,7 @@ void fr_pair_list_mcopy_by_num(TALLOC_CTX *ctx, VALUE_PAIR **to, VALUE_PAIR **fr
  */
 int fr_pair_value_from_str(VALUE_PAIR *vp, char const *value, size_t inlen)
 {
-       PW_TYPE type;
+       fr_type_t type;
 
        if (!value) return -1;
 
@@ -2024,7 +2024,7 @@ void fr_pair_value_memcpy(VALUE_PAIR *vp, uint8_t const *src, size_t size)
 
        vp->vp_octets = p;
        vp->vp_length = size;
-       vp->vp_type = PW_TYPE_OCTETS;
+       vp->vp_type = FR_TYPE_OCTETS;
        talloc_set_type(vp->vp_ptr, uint8_t);
 
        vp->type = VT_DATA;
@@ -2043,7 +2043,7 @@ void fr_pair_value_memsteal(VALUE_PAIR *vp, uint8_t const *src)
 
        vp->vp_octets = talloc_steal(vp, src);
        vp->vp_length = talloc_array_length(vp->vp_octets);
-       vp->vp_type = PW_TYPE_OCTETS;
+       vp->vp_type = FR_TYPE_OCTETS;
        talloc_set_type(vp->vp_ptr, uint8_t);
 
        vp->type = VT_DATA;
@@ -2058,13 +2058,13 @@ void fr_pair_value_memsteal(VALUE_PAIR *vp, uint8_t const *src)
  */
 void fr_pair_value_strsteal(VALUE_PAIR *vp, char const *src)
 {
-       if (!fr_cond_assert(vp->da->type == PW_TYPE_STRING)) return;
+       if (!fr_cond_assert(vp->da->type == FR_TYPE_STRING)) return;
 
        value_box_clear(&vp->data);
 
        vp->vp_strvalue = talloc_steal(vp, src);
        vp->vp_length = talloc_array_length(vp->vp_strvalue) - 1;
-       vp->vp_type = PW_TYPE_STRING;
+       vp->vp_type = FR_TYPE_STRING;
        talloc_set_type(vp->vp_ptr, char);
 
        vp->type = VT_DATA;
@@ -2076,7 +2076,7 @@ void fr_pair_value_strsteal(VALUE_PAIR *vp, char const *src)
  *
  * If len is larger than the current buffer, the additional space will be filled with '\0'
  *
- * @note vp->da must be of type PW_TYPE_STRING.
+ * @note vp->da must be of type FR_TYPE_STRING.
  *
  * @param[in,out] vp   to update
  * @param[in] src      buffer to steal.
@@ -2087,7 +2087,7 @@ void fr_pair_value_strnsteal(VALUE_PAIR *vp, char *src, size_t len)
        char    *p;
        size_t  buf_len;
 
-       if (!fr_cond_assert(vp->da->type == PW_TYPE_STRING)) return;
+       if (!fr_cond_assert(vp->da->type == FR_TYPE_STRING)) return;
 
        value_box_clear(&vp->data);
 
@@ -2101,7 +2101,7 @@ void fr_pair_value_strnsteal(VALUE_PAIR *vp, char *src, size_t len)
                vp->vp_strvalue = talloc_steal(vp, src);
        }
        vp->vp_length = len;
-       vp->vp_type = PW_TYPE_STRING;
+       vp->vp_type = FR_TYPE_STRING;
        talloc_set_type(vp->vp_ptr, char);
 
        vp->type = VT_DATA;
@@ -2111,7 +2111,7 @@ void fr_pair_value_strnsteal(VALUE_PAIR *vp, char *src, size_t len)
 
 /** Copy data into an "string" data type.
  *
- * @note vp->da must be of type PW_TYPE_STRING.
+ * @note vp->da must be of type FR_TYPE_STRING.
  *
  * @param[in,out] vp to update
  * @param[in] src data to copy
@@ -2120,7 +2120,7 @@ void fr_pair_value_strcpy(VALUE_PAIR *vp, char const *src)
 {
        char *p;
 
-       if (!fr_cond_assert(vp->da->type == PW_TYPE_STRING)) return;
+       if (!fr_cond_assert(vp->da->type == FR_TYPE_STRING)) return;
 
        p = talloc_strdup(vp, src);
        if (!p) return;
@@ -2130,7 +2130,7 @@ void fr_pair_value_strcpy(VALUE_PAIR *vp, char const *src)
        vp->vp_strvalue = p;
        vp->type = VT_DATA;
        vp->vp_length = talloc_array_length(vp->vp_strvalue) - 1;
-       vp->vp_type = PW_TYPE_STRING;
+       vp->vp_type = FR_TYPE_STRING;
        talloc_set_type(vp->vp_ptr, char);
 
        VERIFY_VP(vp);
@@ -2141,7 +2141,7 @@ void fr_pair_value_strcpy(VALUE_PAIR *vp, char const *src)
  * @note unlike the original strncpy, this function does not stop
  *     if it finds \0 bytes embedded in the string.
  *
- * @note vp->da must be of type PW_TYPE_STRING.
+ * @note vp->da must be of type FR_TYPE_STRING.
  *
  * @param[in,out] vp to update.
  * @param[in] src data to copy.
@@ -2151,7 +2151,7 @@ void fr_pair_value_bstrncpy(VALUE_PAIR *vp, void const *src, size_t len)
 {
        char *p;
 
-       if (!fr_cond_assert(vp->da->type == PW_TYPE_STRING)) return;
+       if (!fr_cond_assert(vp->da->type == FR_TYPE_STRING)) return;
 
        p = talloc_array(vp, char, len + 1);
        if (!p) return;
@@ -2163,7 +2163,7 @@ void fr_pair_value_bstrncpy(VALUE_PAIR *vp, void const *src, size_t len)
 
        vp->vp_strvalue = p;
        vp->vp_length = len;
-       vp->vp_type = PW_TYPE_STRING;
+       vp->vp_type = FR_TYPE_STRING;
        talloc_set_type(vp->vp_ptr, char);
 
        vp->type = VT_DATA;
@@ -2173,7 +2173,7 @@ void fr_pair_value_bstrncpy(VALUE_PAIR *vp, void const *src, size_t len)
 
 /** Print data into an "string" data type.
  *
- * @note vp->da must be of type PW_TYPE_STRING.
+ * @note vp->da must be of type FR_TYPE_STRING.
  *
  * @param[in,out] vp to update
  * @param[in] fmt the format string
@@ -2183,7 +2183,7 @@ void fr_pair_value_snprintf(VALUE_PAIR *vp, char const *fmt, ...)
        va_list ap;
        char *p;
 
-       if (!fr_cond_assert(vp->da->type == PW_TYPE_STRING)) return;
+       if (!fr_cond_assert(vp->da->type == FR_TYPE_STRING)) return;
 
        va_start(ap, fmt);
        p = talloc_vasprintf(vp, fmt, ap);
@@ -2194,7 +2194,7 @@ void fr_pair_value_snprintf(VALUE_PAIR *vp, char const *fmt, ...)
 
        vp->vp_strvalue = p;
        vp->vp_length = talloc_array_length(vp->vp_strvalue) - 1;
-       vp->vp_type = PW_TYPE_STRING;
+       vp->vp_type = FR_TYPE_STRING;
        talloc_set_type(vp->vp_ptr, char);
 
        vp->type = VT_DATA;
@@ -2254,7 +2254,7 @@ char const *fr_pair_value_enum(VALUE_PAIR const *vp, char buff[20])
        fr_dict_enum_t const    *enumv = NULL;
 
        switch (vp->vp_type) {
-       case PW_TYPE_NUMERIC:
+       case FR_TYPE_NUMERIC:
                break;
 
        default:
@@ -2263,26 +2263,26 @@ char const *fr_pair_value_enum(VALUE_PAIR const *vp, char buff[20])
        }
 
        if (vp->da->flags.has_value) switch (vp->vp_type) {
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BOOLEAN:
                return vp->vp_bool ? "yes" : "no";
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                enumv = fr_dict_enum_by_da(NULL, vp->da, vp->vp_byte);
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                enumv = fr_dict_enum_by_da(NULL, vp->da, vp->vp_short);
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                enumv = fr_dict_enum_by_da(NULL, vp->da, vp->vp_integer);
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                enumv = fr_dict_enum_by_da(NULL, vp->da, vp->vp_integer64);
                break;
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
                enumv = fr_dict_enum_by_da(NULL, vp->da, vp->vp_signed);
                break;
 
@@ -2300,41 +2300,41 @@ char const *fr_pair_value_enum(VALUE_PAIR const *vp, char buff[20])
        return str;
 }
 
-char *fr_pair_type_asprint(TALLOC_CTX *ctx, PW_TYPE type)
+char *fr_pair_type_asprint(TALLOC_CTX *ctx, fr_type_t type)
 {
        switch (type) {
-       case PW_TYPE_STRING :
+       case FR_TYPE_STRING :
                return talloc_typed_strdup(ctx, "_");
 
-       case PW_TYPE_INTEGER64:
-       case PW_TYPE_SIZE:
-       case PW_TYPE_SIGNED:
-       case PW_TYPE_BYTE:
-       case PW_TYPE_SHORT:
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_DATE :
+       case FR_TYPE_INTEGER64:
+       case FR_TYPE_SIZE:
+       case FR_TYPE_SIGNED:
+       case FR_TYPE_BYTE:
+       case FR_TYPE_SHORT:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_DATE :
                return talloc_typed_strdup(ctx, "0");
 
-       case PW_TYPE_IPV4_ADDR :
+       case FR_TYPE_IPV4_ADDR :
                return talloc_typed_strdup(ctx, "?.?.?.?");
 
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
                return talloc_typed_strdup(ctx, "?.?.?.?/?");
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                return talloc_typed_strdup(ctx, "[:?:]");
 
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                return talloc_typed_strdup(ctx, "[:?:]/?");
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                return talloc_typed_strdup(ctx, "??");
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                return talloc_typed_strdup(ctx, "??:??:??:??:??:??:??:??");
 
 #ifdef WITH_ASCEND_BINARY
-       case PW_TYPE_ABINARY:
+       case FR_TYPE_ABINARY:
                return talloc_typed_strdup(ctx, "??");
 #endif
 
@@ -2481,13 +2481,13 @@ char *fr_pair_asprint(TALLOC_CTX *ctx, VALUE_PAIR const *vp, char quote)
        value = fr_pair_value_asprint(ctx, vp, quote);
 
        if (vp->da->flags.has_tag) {
-               if (quote && (vp->vp_type == PW_TYPE_STRING)) {
+               if (quote && (vp->vp_type == FR_TYPE_STRING)) {
                        str = talloc_asprintf(ctx, "%s:%d %s %c%s%c", vp->da->name, vp->tag, token, quote, value, quote);
                } else {
                        str = talloc_asprintf(ctx, "%s:%d %s %s", vp->da->name, vp->tag, token, value);
                }
        } else {
-               if (quote && (vp->vp_type == PW_TYPE_STRING)) {
+               if (quote && (vp->vp_type == FR_TYPE_STRING)) {
                        str = talloc_asprintf(ctx, "%s %s %c%s%c", vp->da->name, token, quote, value, quote);
                } else {
                        str = talloc_asprintf(ctx, "%s %s %s", vp->da->name, token, value);
@@ -2694,7 +2694,7 @@ inline void fr_pair_verify(char const *file, int line, VALUE_PAIR const *vp)
        fr_dict_verify(file, line, vp->da);
 
        if (vp->vp_ptr) switch (vp->vp_type) {
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
        {
                size_t len;
                TALLOC_CTX *parent;
@@ -2723,7 +2723,7 @@ inline void fr_pair_verify(char const *file, int line, VALUE_PAIR const *vp)
        }
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
        {
                size_t len;
                TALLOC_CTX *parent;
@@ -2758,7 +2758,7 @@ inline void fr_pair_verify(char const *file, int line, VALUE_PAIR const *vp)
        }
                break;
 
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
                if (vp->vp_ip.af != AF_INET) {
                        FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: VALUE_PAIR \"%s\" address family is not "
                                     "set correctly for IPv4 address.  Expected %i got %i\n",
@@ -2775,7 +2775,7 @@ inline void fr_pair_verify(char const *file, int line, VALUE_PAIR const *vp)
                }
                break;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                if (vp->vp_ip.af != AF_INET6) {
                        FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: VALUE_PAIR \"%s\" address family is not "
                                     "set correctly for IPv6 address.  Expected %i got %i\n",
@@ -2813,7 +2813,7 @@ inline void fr_pair_verify(char const *file, int line, VALUE_PAIR const *vp)
                        if (!fr_cond_assert(0)) fr_exit_now(1);
                }
 
-               if (da->type == PW_TYPE_COMBO_IP_ADDR) {
+               if (da->type == FR_TYPE_COMBO_IP_ADDR) {
                        da = fr_dict_attr_by_type(vp->da, vp->da->type);
                        if (!da) {
                                FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: VALUE_PAIR attribute %p \"%s\" "
@@ -2837,11 +2837,11 @@ inline void fr_pair_verify(char const *file, int line, VALUE_PAIR const *vp)
        }
 
        if (vp->da->flags.is_raw || vp->da->flags.is_unknown) {
-               if (vp->data.type != PW_TYPE_OCTETS) {
+               if (vp->data.type != FR_TYPE_OCTETS) {
                        FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: VALUE_PAIR (raw/unknown) attribute %p \"%s\" "
                                     "data type incorrect.  Expected %s, got %s",
                                     file, line, vp->da, vp->da->name,
-                                    fr_int2str(dict_attr_types, PW_TYPE_OCTETS, "<INVALID>"),
+                                    fr_int2str(dict_attr_types, FR_TYPE_OCTETS, "<INVALID>"),
                                     fr_int2str(dict_attr_types, vp->data.type, "<INVALID>"));
                        if (!fr_cond_assert(0)) fr_exit_now(1);
                }
index 322e7bb20fcefd075f75d0e2f43da6eea8666b7b..19fd2dc085ba021f92e754b74bbfa264e50eef6f 100644 (file)
@@ -221,7 +221,7 @@ VALUE_PAIR *fr_pair_cursor_next_by_num(vp_cursor_t *cursor, unsigned int vendor,
                     i != NULL;
                     i = i->next) {
                        VERIFY_VP(i);
-                       if ((i->da->parent->type == PW_TYPE_VENDOR) &&
+                       if ((i->da->parent->type == FR_TYPE_VENDOR) &&
                            (i->da->attr == attr) && (i->da->vendor == vendor) &&
                            (!i->da->flags.has_tag || TAG_EQ(tag, i->tag))) {
                                break;
index 6d4e3e1247b1686065dc8bc07430990cf4f262ea..cb9b83f53e2a936fd99255735beb0e6c421cab25 100644 (file)
@@ -59,31 +59,31 @@ RCSID("$Id$")
  *      Use #value_box_network_length instead, as that deals with variable
  *      length attributes too.
  */
-static size_t const value_box_network_sizes[PW_TYPE_MAX + 1][2] = {
-       [PW_TYPE_INVALID]       = {~0, 0},
+static size_t const value_box_network_sizes[FR_TYPE_MAX + 1][2] = {
+       [FR_TYPE_INVALID]       = {~0, 0},
 
-       [PW_TYPE_STRING]        = {0, ~0},
-       [PW_TYPE_OCTETS]        = {0, ~0},
+       [FR_TYPE_STRING]        = {0, ~0},
+       [FR_TYPE_OCTETS]        = {0, ~0},
 
-       [PW_TYPE_IPV4_ADDR]     = {4, 4},
-       [PW_TYPE_IPV4_PREFIX]   = {6, 6},
-       [PW_TYPE_IPV6_ADDR]     = {16, 16},
-       [PW_TYPE_IPV6_PREFIX]   = {18, 18},
-       [PW_TYPE_IFID]          = {8, 8},
-       [PW_TYPE_ETHERNET]      = {6, 6},
+       [FR_TYPE_IPV4_ADDR]     = {4, 4},
+       [FR_TYPE_IPV4_PREFIX]   = {6, 6},
+       [FR_TYPE_IPV6_ADDR]     = {16, 16},
+       [FR_TYPE_IPV6_PREFIX]   = {18, 18},
+       [FR_TYPE_IFID]          = {8, 8},
+       [FR_TYPE_ETHERNET]      = {6, 6},
 
-       [PW_TYPE_BOOLEAN]       = {1, 1},
-       [PW_TYPE_BYTE]          = {1, 1},
-       [PW_TYPE_SHORT]         = {2, 2},
-       [PW_TYPE_INTEGER]       = {4, 4},
-       [PW_TYPE_INTEGER64]     = {8, 8},
+       [FR_TYPE_BOOLEAN]       = {1, 1},
+       [FR_TYPE_BYTE]          = {1, 1},
+       [FR_TYPE_SHORT]         = {2, 2},
+       [FR_TYPE_INTEGER]       = {4, 4},
+       [FR_TYPE_INTEGER64]     = {8, 8},
 
-       [PW_TYPE_SIGNED]        = {4, 4},
+       [FR_TYPE_SIGNED]        = {4, 4},
 
-       [PW_TYPE_DATE]          = {4, 4},               //!< 64bit on most machines.
+       [FR_TYPE_DATE]          = {4, 4},               //!< 64bit on most machines.
 
-       [PW_TYPE_ABINARY]       = {32, ~0},
-       [PW_TYPE_MAX]           = {~0, 0}               //!< Ensure array covers all types.
+       [FR_TYPE_ABINARY]       = {32, ~0},
+       [FR_TYPE_MAX]           = {~0, 0}               //!< Ensure array covers all types.
 };
 
 static_assert(SIZEOF_MEMBER(value_box_t, datum.ip.addr.v4.s_addr) == 4,
@@ -114,63 +114,63 @@ static_assert(SIZEOF_MEMBER(value_box_t, datum.sinteger) == 4,
  * location passed as a void *.
  */
 size_t const value_box_field_sizes[] = {
-       [PW_TYPE_STRING]                        = SIZEOF_MEMBER(value_box_t, datum.strvalue),
-       [PW_TYPE_OCTETS]                        = SIZEOF_MEMBER(value_box_t, datum.octets),
-
-       [PW_TYPE_IPV4_ADDR]                     = SIZEOF_MEMBER(value_box_t, datum.ip),
-       [PW_TYPE_IPV4_PREFIX]                   = SIZEOF_MEMBER(value_box_t, datum.ip),
-       [PW_TYPE_IPV6_ADDR]                     = SIZEOF_MEMBER(value_box_t, datum.ip),
-       [PW_TYPE_IPV6_PREFIX]                   = SIZEOF_MEMBER(value_box_t, datum.ip),
-       [PW_TYPE_IFID]                          = SIZEOF_MEMBER(value_box_t, datum.ifid),
-       [PW_TYPE_ETHERNET]                      = SIZEOF_MEMBER(value_box_t, datum.ether),
-
-       [PW_TYPE_BOOLEAN]                       = SIZEOF_MEMBER(value_box_t, datum.boolean),
-       [PW_TYPE_BYTE]                          = SIZEOF_MEMBER(value_box_t, datum.byte),
-       [PW_TYPE_SHORT]                         = SIZEOF_MEMBER(value_box_t, datum.ushort),
-       [PW_TYPE_INTEGER]                       = SIZEOF_MEMBER(value_box_t, datum.integer),
-       [PW_TYPE_INTEGER64]                     = SIZEOF_MEMBER(value_box_t, datum.integer64),
-       [PW_TYPE_SIZE]                          = SIZEOF_MEMBER(value_box_t, datum.size),
-
-       [PW_TYPE_SIGNED]                        = SIZEOF_MEMBER(value_box_t, datum.sinteger),
-
-       [PW_TYPE_TIMEVAL]                       = SIZEOF_MEMBER(value_box_t, datum.timeval),
-       [PW_TYPE_DECIMAL]                       = SIZEOF_MEMBER(value_box_t, datum.decimal),
-       [PW_TYPE_DATE]                          = SIZEOF_MEMBER(value_box_t, datum.date),
-
-       [PW_TYPE_ABINARY]                       = SIZEOF_MEMBER(value_box_t, datum.filter),
-       [PW_TYPE_MAX]                           = 0     //!< Ensure array covers all types.
+       [FR_TYPE_STRING]                        = SIZEOF_MEMBER(value_box_t, datum.strvalue),
+       [FR_TYPE_OCTETS]                        = SIZEOF_MEMBER(value_box_t, datum.octets),
+
+       [FR_TYPE_IPV4_ADDR]                     = SIZEOF_MEMBER(value_box_t, datum.ip),
+       [FR_TYPE_IPV4_PREFIX]                   = SIZEOF_MEMBER(value_box_t, datum.ip),
+       [FR_TYPE_IPV6_ADDR]                     = SIZEOF_MEMBER(value_box_t, datum.ip),
+       [FR_TYPE_IPV6_PREFIX]                   = SIZEOF_MEMBER(value_box_t, datum.ip),
+       [FR_TYPE_IFID]                          = SIZEOF_MEMBER(value_box_t, datum.ifid),
+       [FR_TYPE_ETHERNET]                      = SIZEOF_MEMBER(value_box_t, datum.ether),
+
+       [FR_TYPE_BOOLEAN]                       = SIZEOF_MEMBER(value_box_t, datum.boolean),
+       [FR_TYPE_BYTE]                          = SIZEOF_MEMBER(value_box_t, datum.byte),
+       [FR_TYPE_SHORT]                         = SIZEOF_MEMBER(value_box_t, datum.ushort),
+       [FR_TYPE_INTEGER]                       = SIZEOF_MEMBER(value_box_t, datum.integer),
+       [FR_TYPE_INTEGER64]                     = SIZEOF_MEMBER(value_box_t, datum.integer64),
+       [FR_TYPE_SIZE]                          = SIZEOF_MEMBER(value_box_t, datum.size),
+
+       [FR_TYPE_SIGNED]                        = SIZEOF_MEMBER(value_box_t, datum.sinteger),
+
+       [FR_TYPE_TIMEVAL]                       = SIZEOF_MEMBER(value_box_t, datum.timeval),
+       [FR_TYPE_DECIMAL]                       = SIZEOF_MEMBER(value_box_t, datum.decimal),
+       [FR_TYPE_DATE]                          = SIZEOF_MEMBER(value_box_t, datum.date),
+
+       [FR_TYPE_ABINARY]                       = SIZEOF_MEMBER(value_box_t, datum.filter),
+       [FR_TYPE_MAX]                           = 0     //!< Ensure array covers all types.
 };
 
 /** Where the value starts in the #value_box_t
  *
  */
 size_t const value_box_offsets[] = {
-       [PW_TYPE_STRING]                        = offsetof(value_box_t, datum.strvalue),
-       [PW_TYPE_OCTETS]                        = offsetof(value_box_t, datum.octets),
+       [FR_TYPE_STRING]                        = offsetof(value_box_t, datum.strvalue),
+       [FR_TYPE_OCTETS]                        = offsetof(value_box_t, datum.octets),
 
-       [PW_TYPE_IPV4_ADDR]                     = offsetof(value_box_t, datum.ip),
-       [PW_TYPE_IPV4_PREFIX]                   = offsetof(value_box_t, datum.ip),
-       [PW_TYPE_IPV6_ADDR]                     = offsetof(value_box_t, datum.ip),
-       [PW_TYPE_IPV6_PREFIX]                   = offsetof(value_box_t, datum.ip),
-       [PW_TYPE_IFID]                          = offsetof(value_box_t, datum.ifid),
-       [PW_TYPE_ETHERNET]                      = offsetof(value_box_t, datum.ether),
+       [FR_TYPE_IPV4_ADDR]                     = offsetof(value_box_t, datum.ip),
+       [FR_TYPE_IPV4_PREFIX]                   = offsetof(value_box_t, datum.ip),
+       [FR_TYPE_IPV6_ADDR]                     = offsetof(value_box_t, datum.ip),
+       [FR_TYPE_IPV6_PREFIX]                   = offsetof(value_box_t, datum.ip),
+       [FR_TYPE_IFID]                          = offsetof(value_box_t, datum.ifid),
+       [FR_TYPE_ETHERNET]                      = offsetof(value_box_t, datum.ether),
 
-       [PW_TYPE_BOOLEAN]                       = offsetof(value_box_t, datum.boolean),
-       [PW_TYPE_BYTE]                          = offsetof(value_box_t, datum.byte),
-       [PW_TYPE_SHORT]                         = offsetof(value_box_t, datum.ushort),
-       [PW_TYPE_INTEGER]                       = offsetof(value_box_t, datum.integer),
-       [PW_TYPE_INTEGER64]                     = offsetof(value_box_t, datum.integer64),
-       [PW_TYPE_SIZE]                          = offsetof(value_box_t, datum.size),
+       [FR_TYPE_BOOLEAN]                       = offsetof(value_box_t, datum.boolean),
+       [FR_TYPE_BYTE]                          = offsetof(value_box_t, datum.byte),
+       [FR_TYPE_SHORT]                         = offsetof(value_box_t, datum.ushort),
+       [FR_TYPE_INTEGER]                       = offsetof(value_box_t, datum.integer),
+       [FR_TYPE_INTEGER64]                     = offsetof(value_box_t, datum.integer64),
+       [FR_TYPE_SIZE]                          = offsetof(value_box_t, datum.size),
 
-       [PW_TYPE_SIGNED]                        = offsetof(value_box_t, datum.sinteger),
+       [FR_TYPE_SIGNED]                        = offsetof(value_box_t, datum.sinteger),
 
-       [PW_TYPE_TIMEVAL]                       = offsetof(value_box_t, datum.timeval),
-       [PW_TYPE_DECIMAL]                       = offsetof(value_box_t, datum.decimal),
+       [FR_TYPE_TIMEVAL]                       = offsetof(value_box_t, datum.timeval),
+       [FR_TYPE_DECIMAL]                       = offsetof(value_box_t, datum.decimal),
 
-       [PW_TYPE_DATE]                          = offsetof(value_box_t, datum.date),
+       [FR_TYPE_DATE]                          = offsetof(value_box_t, datum.date),
 
-       [PW_TYPE_ABINARY]                       = offsetof(value_box_t, datum.filter),
-       [PW_TYPE_MAX]                           = 0     //!< Ensure array covers all types.
+       [FR_TYPE_ABINARY]                       = offsetof(value_box_t, datum.filter),
+       [FR_TYPE_MAX]                           = 0     //!< Ensure array covers all types.
 };
 
 /** Allocate a value box of a specific type
@@ -184,7 +184,7 @@ size_t const value_box_offsets[] = {
  *     - A new value_box_t.
  *     - NULL on error.
  */
-value_box_t *value_box_alloc(TALLOC_CTX *ctx, PW_TYPE type)
+value_box_t *value_box_alloc(TALLOC_CTX *ctx, fr_type_t type)
 {
        value_box_t *value;
 
@@ -204,16 +204,16 @@ value_box_t *value_box_alloc(TALLOC_CTX *ctx, PW_TYPE type)
 inline void value_box_clear(value_box_t *data)
 {
        switch (data->type) {
-       case PW_TYPE_OCTETS:
-       case PW_TYPE_STRING:
+       case FR_TYPE_OCTETS:
+       case FR_TYPE_STRING:
                TALLOC_FREE(data->datum.ptr);
                data->datum.length = 0;
                break;
 
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                if (!fr_cond_assert(0)) return;
 
-       case PW_TYPE_INVALID:
+       case FR_TYPE_INVALID:
                return;
 
        default:
@@ -222,7 +222,7 @@ inline void value_box_clear(value_box_t *data)
        }
 
        data->tainted = false;
-       data->type = PW_TYPE_INVALID;
+       data->type = FR_TYPE_INVALID;
 }
 
 /** Copy flags and type data from one value box to another
@@ -233,7 +233,7 @@ inline void value_box_clear(value_box_t *data)
 static inline void value_box_copy_meta(value_box_t *dst, value_box_t const *src)
 {
        switch (src->type) {
-       case PW_TYPE_VARIABLE_SIZE:
+       case FR_TYPE_VARIABLE_SIZE:
                dst->datum.length = src->datum.length;
                break;
 
@@ -260,8 +260,8 @@ int value_box_cmp(value_box_t const *a, value_box_t const *b)
 {
        int compare = 0;
 
-       if (!fr_cond_assert(a->type != PW_TYPE_INVALID)) return -1;
-       if (!fr_cond_assert(b->type != PW_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(a->type != FR_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(b->type != FR_TYPE_INVALID)) return -1;
 
        if (a->type != b->type) {
                fr_strerror_printf("Can't compare values of different types");
@@ -273,7 +273,7 @@ int value_box_cmp(value_box_t const *a, value_box_t const *b)
         *      do the per-type comparison here.
         */
        switch (a->type) {
-       case PW_TYPE_VARIABLE_SIZE:
+       case FR_TYPE_VARIABLE_SIZE:
        {
                size_t length;
 
@@ -304,65 +304,65 @@ int value_box_cmp(value_box_t const *a, value_box_t const *b)
 #define CHECK(_type) if (a->datum._type < b->datum._type)   { compare = -1; \
                } else if (a->datum._type > b->datum._type) { compare = +1; }
 
-       case PW_TYPE_BOOLEAN:   /* this isn't a RADIUS type, and shouldn't really ever be used */
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BOOLEAN:   /* this isn't a RADIUS type, and shouldn't really ever be used */
+       case FR_TYPE_BYTE:
                CHECK(byte);
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                CHECK(ushort);
                break;
 
-       case PW_TYPE_DATE:
+       case FR_TYPE_DATE:
                CHECK(date);
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                CHECK(integer);
                break;
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
                CHECK(sinteger);
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                CHECK(integer64);
                break;
 
-       case PW_TYPE_SIZE:
+       case FR_TYPE_SIZE:
                CHECK(size);
                break;
 
-       case PW_TYPE_TIMEVAL:
+       case FR_TYPE_TIMEVAL:
                compare = fr_timeval_cmp(&a->datum.timeval, &b->datum.timeval);
                break;
 
-       case PW_TYPE_DECIMAL:
+       case FR_TYPE_DECIMAL:
                CHECK(decimal);
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                compare = memcmp(a->datum.ether, b->datum.ether, sizeof(a->datum.ether));
                break;
 
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV4_PREFIX:
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_PREFIX:
                compare = memcmp(&a->datum.ip, &b->datum.ip, sizeof(a->datum.ip));
                break;
 
-       case PW_TYPE_IFID:
+       case FR_TYPE_IFID:
                compare = memcmp(a->datum.ifid, b->datum.ifid, sizeof(a->datum.ifid));
                break;
 
        /*
         *      These should be handled at some point
         */
-       case PW_TYPE_COMBO_IP_ADDR:             /* This should have been converted into IPADDR/IPV6ADDR */
-       case PW_TYPE_COMBO_IP_PREFIX:           /* This should have been converted into IPADDR/IPV6ADDR */
-       case PW_TYPE_STRUCTURAL:
-       case PW_TYPE_BAD:
+       case FR_TYPE_COMBO_IP_ADDR:             /* This should have been converted into IPADDR/IPV6ADDR */
+       case FR_TYPE_COMBO_IP_PREFIX:           /* This should have been converted into IPADDR/IPV6ADDR */
+       case FR_TYPE_STRUCTURAL:
+       case FR_TYPE_BAD:
                (void)fr_cond_assert(0);        /* unknown type */
                return -2;
 
@@ -506,16 +506,16 @@ int value_box_cmp_op(FR_TOKEN op, value_box_t const *a, value_box_t const *b)
 
        if (!a || !b) return -1;
 
-       if (!fr_cond_assert(a->type != PW_TYPE_INVALID)) return -1;
-       if (!fr_cond_assert(b->type != PW_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(a->type != FR_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(b->type != FR_TYPE_INVALID)) return -1;
 
        switch (a->type) {
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
                switch (b->type) {
-               case PW_TYPE_IPV4_ADDR:         /* IPv4 and IPv4 */
+               case FR_TYPE_IPV4_ADDR:         /* IPv4 and IPv4 */
                        goto cmp;
 
-               case PW_TYPE_IPV4_PREFIX:       /* IPv4 and IPv4 Prefix */
+               case FR_TYPE_IPV4_PREFIX:       /* IPv4 and IPv4 Prefix */
                        return value_box_cidr_cmp_op(op, 4, 32, (uint8_t const *) &a->datum.ip.addr.v4.s_addr,
                                                     b->datum.ip.prefix, (uint8_t const *) &b->datum.ip.addr.v4.s_addr);
 
@@ -524,14 +524,14 @@ int value_box_cmp_op(FR_TOKEN op, value_box_t const *a, value_box_t const *b)
                        return -1;
                }
 
-       case PW_TYPE_IPV4_PREFIX:               /* IPv4 and IPv4 Prefix */
+       case FR_TYPE_IPV4_PREFIX:               /* IPv4 and IPv4 Prefix */
                switch (b->type) {
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        return value_box_cidr_cmp_op(op, 4, a->datum.ip.prefix,
                                                     (uint8_t const *) &a->datum.ip.addr.v4.s_addr,
                                                     32, (uint8_t const *) &b->datum.ip.addr.v4);
 
-               case PW_TYPE_IPV4_PREFIX:       /* IPv4 Prefix and IPv4 Prefix */
+               case FR_TYPE_IPV4_PREFIX:       /* IPv4 Prefix and IPv4 Prefix */
                        return value_box_cidr_cmp_op(op, 4, a->datum.ip.prefix,
                                                     (uint8_t const *) &a->datum.ip.addr.v4.s_addr,
                                                     b->datum.ip.prefix, (uint8_t const *) &b->datum.ip.addr.v4.s_addr);
@@ -541,12 +541,12 @@ int value_box_cmp_op(FR_TOKEN op, value_box_t const *a, value_box_t const *b)
                        return -1;
                }
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                switch (b->type) {
-               case PW_TYPE_IPV6_ADDR:         /* IPv6 and IPv6 */
+               case FR_TYPE_IPV6_ADDR:         /* IPv6 and IPv6 */
                        goto cmp;
 
-               case PW_TYPE_IPV6_PREFIX:       /* IPv6 and IPv6 Preifx */
+               case FR_TYPE_IPV6_PREFIX:       /* IPv6 and IPv6 Preifx */
                        return value_box_cidr_cmp_op(op, 16, 128, (uint8_t const *) &a->datum.ip.addr.v6,
                                                     b->datum.ip.prefix, (uint8_t const *) &b->datum.ip.addr.v6);
 
@@ -555,14 +555,14 @@ int value_box_cmp_op(FR_TOKEN op, value_box_t const *a, value_box_t const *b)
                        return -1;
                }
 
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                switch (b->type) {
-               case PW_TYPE_IPV6_ADDR:         /* IPv6 Prefix and IPv6 */
+               case FR_TYPE_IPV6_ADDR:         /* IPv6 Prefix and IPv6 */
                        return value_box_cidr_cmp_op(op, 16, a->datum.ip.prefix,
                                                     (uint8_t const *) &a->datum.ip.addr.v6,
                                                     128, (uint8_t const *) &b->datum.ip.addr.v6);
 
-               case PW_TYPE_IPV6_PREFIX:       /* IPv6 Prefix and IPv6 */
+               case FR_TYPE_IPV6_PREFIX:       /* IPv6 Prefix and IPv6 */
                        return value_box_cidr_cmp_op(op, 16, a->datum.ip.prefix,
                                                     (uint8_t const *) &a->datum.ip.addr.v6,
                                                     b->datum.ip.prefix, (uint8_t const *) &b->datum.ip.addr.v6);
@@ -798,31 +798,31 @@ size_t value_str_unescape(uint8_t *out, char const *in, size_t inlen, char quote
  */
 int value_box_hton(value_box_t *dst, value_box_t const *src)
 {
-       if (!fr_cond_assert(src->type != PW_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(src->type != FR_TYPE_INVALID)) return -1;
 
        /* 8 byte integers */
        switch (src->type) {
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                dst->datum.integer64 = htonll(src->datum.integer64);
                value_box_copy_meta(dst, src);
                break;
 
        /* 4 byte integers */
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_DATE:
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_DATE:
+       case FR_TYPE_SIGNED:
                dst->datum.integer = htonl(src->datum.integer);
                value_box_copy_meta(dst, src);
                break;
 
        /* 2 byte integers */
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                dst->datum.ushort = htons(src->datum.ushort);
                value_box_copy_meta(dst, src);
                break;
 
-       case PW_TYPE_OCTETS:
-       case PW_TYPE_STRING:
+       case FR_TYPE_OCTETS:
+       case FR_TYPE_STRING:
                if (!fr_cond_assert(0)) return -1; /* shouldn't happen */
 
        default:
@@ -851,17 +851,17 @@ static uint8_t const v4_v6_map[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  * @param src          Input data.
  */
 static inline int value_box_cast_to_strvalue(TALLOC_CTX *ctx, value_box_t *dst,
-                                            PW_TYPE dst_type, UNUSED fr_dict_attr_t const *dst_enumv,
+                                            fr_type_t dst_type, UNUSED fr_dict_attr_t const *dst_enumv,
                                             value_box_t const *src)
 {
-       if (!fr_cond_assert(dst_type == PW_TYPE_STRING)) return -1;
+       if (!fr_cond_assert(dst_type == FR_TYPE_STRING)) return -1;
 
        switch (src->type) {
        /*
         *      The presentation format of octets is hex
         *      What we actually want here is the raw string
         */
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                dst->datum.strvalue = talloc_bstrndup(ctx, (char const *)src->datum.octets, src->datum.length);
                dst->datum.length = src->datum.length;  /* It's the same, even though the buffer is slightly bigger */
                break;
@@ -876,7 +876,7 @@ static inline int value_box_cast_to_strvalue(TALLOC_CTX *ctx, value_box_t *dst,
        }
 
        if (!dst->datum.strvalue) return -1;
-       dst->type = PW_TYPE_STRING;
+       dst->type = FR_TYPE_STRING;
 
        return 0;
 }
@@ -892,25 +892,25 @@ static inline int value_box_cast_to_strvalue(TALLOC_CTX *ctx, value_box_t *dst,
  * @param src          Input data.
  */
 static inline int value_box_cast_to_octets(TALLOC_CTX *ctx, value_box_t *dst,
-                                          PW_TYPE dst_type, UNUSED fr_dict_attr_t const *dst_enumv,
+                                          fr_type_t dst_type, UNUSED fr_dict_attr_t const *dst_enumv,
                                           value_box_t const *src)
 {
        uint8_t *bin;
 
-       if (!fr_cond_assert(dst_type == PW_TYPE_OCTETS)) return -1;
+       if (!fr_cond_assert(dst_type == FR_TYPE_OCTETS)) return -1;
 
        switch (src->type) {
        /*
         *      <string> (excluding terminating \0)
         */
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                bin = talloc_memdup(ctx, (uint8_t const *)src->datum.strvalue, src->datum.length);
                break;
 
        /*
         *      <4 bytes address>
         */
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
        {
                bin = talloc_memdup(ctx, (uint8_t const *)&src->datum.ip.addr.v4.s_addr,
                                    sizeof(src->datum.ip.addr.v4.s_addr));
@@ -920,7 +920,7 @@ static inline int value_box_cast_to_octets(TALLOC_CTX *ctx, value_box_t *dst,
        /*
         *      <1 byte prefix> + <4 bytes address>
         */
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
                bin = talloc_array(ctx, uint8_t, sizeof(src->datum.ip.addr.v4.s_addr) + 1);
                bin[0] = src->datum.ip.prefix;
                memcpy(&bin[1], (uint8_t const *)&src->datum.ip.addr.v4.s_addr, sizeof(src->datum.ip.addr.v4.s_addr));
@@ -929,7 +929,7 @@ static inline int value_box_cast_to_octets(TALLOC_CTX *ctx, value_box_t *dst,
        /*
         *      <16 bytes address>
         */
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                bin = talloc_memdup(ctx, (uint8_t const *)src->datum.ip.addr.v6.s6_addr,
                                    sizeof(src->datum.ip.addr.v6.s6_addr));
                break;
@@ -937,7 +937,7 @@ static inline int value_box_cast_to_octets(TALLOC_CTX *ctx, value_box_t *dst,
        /*
         *      <1 byte prefix> + <1 byte scope> + <16 bytes address>
         */
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                bin = talloc_array(ctx, uint8_t, sizeof(src->datum.ip.addr.v6.s6_addr) + 2);
                bin[0] = src->datum.ip.scope_id;
                bin[1] = src->datum.ip.prefix;
@@ -957,7 +957,7 @@ static inline int value_box_cast_to_octets(TALLOC_CTX *ctx, value_box_t *dst,
 
        talloc_set_type(bin, uint8_t);
        value_box_memsteal(ctx, dst, bin, src->tainted);
-       dst->type = PW_TYPE_OCTETS;
+       dst->type = FR_TYPE_OCTETS;
 
        return 0;
 }
@@ -965,11 +965,11 @@ static inline int value_box_cast_to_octets(TALLOC_CTX *ctx, value_box_t *dst,
 /** Convert any supported type to an IPv4 address
  *
  * Allowed input types are:
- * - PW_TYPE_IPV6_ADDR (with v4 prefix).
- * - PW_TYPE_IPV4_PREFIX (with 32bit mask).
- * - PW_TYPE_IPV6_PREFIX (with v4 prefix and 128bit mask).
- * - PW_TYPE_OCTETS (of length 4).
- * - PW_TYPE_INTEGER
+ * - FR_TYPE_IPV6_ADDR (with v4 prefix).
+ * - FR_TYPE_IPV4_PREFIX (with 32bit mask).
+ * - FR_TYPE_IPV6_PREFIX (with v4 prefix and 128bit mask).
+ * - FR_TYPE_OCTETS (of length 4).
+ * - FR_TYPE_INTEGER
  *
  * @param ctx          unused.
  * @param dst          Where to write result of casting.
@@ -978,13 +978,13 @@ static inline int value_box_cast_to_octets(TALLOC_CTX *ctx, value_box_t *dst,
  * @param src          Input data.
  */
 static inline int value_box_cast_to_ipv4addr(TALLOC_CTX *ctx, value_box_t *dst,
-                                            PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                                            fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                                             value_box_t const *src)
 {
-       if (!fr_cond_assert(dst_type == PW_TYPE_IPV4_ADDR)) return -1;
+       if (!fr_cond_assert(dst_type == FR_TYPE_IPV4_ADDR)) return -1;
 
        switch (src->type) {
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                if (memcmp(src->datum.ip.addr.v6.s6_addr, v4_v6_map, sizeof(v4_v6_map)) != 0) {
                bad_v6_prefix_map:
                        fr_strerror_printf("Invalid cast from %s to %s.  No IPv4-IPv6 mapping prefix",
@@ -998,7 +998,7 @@ static inline int value_box_cast_to_ipv4addr(TALLOC_CTX *ctx, value_box_t *dst,
 
                break;
 
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
                if (src->datum.ip.prefix != 32) {
                        fr_strerror_printf("Invalid cast from %s to %s.  Only /32 (not %i/) prefixes may be "
                                           "cast to IP address types",
@@ -1010,7 +1010,7 @@ static inline int value_box_cast_to_ipv4addr(TALLOC_CTX *ctx, value_box_t *dst,
                memcpy(&dst->datum.ip.addr.v4, &src->datum.ip.addr.v4, sizeof(dst->datum.ip.addr.v4));
                break;
 
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                if (src->datum.ip.prefix != 128) {
                        fr_strerror_printf("Invalid cast from %s to %s.  Only /128 (not /%i) prefixes may be "
                                           "cast to IP address types",
@@ -1024,12 +1024,12 @@ static inline int value_box_cast_to_ipv4addr(TALLOC_CTX *ctx, value_box_t *dst,
                       sizeof(dst->datum.ip.addr.v4));
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                if (value_box_from_str(ctx, dst, &dst_type, dst_enumv,
                                       src->datum.strvalue, src->datum.length, '\0') < 0) return -1;
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                if (src->datum.length != sizeof(dst->datum.ip.addr.v4.s_addr)) {
                        fr_strerror_printf("Invalid cast from %s to %s.  Only %zu byte octet strings "
                                           "may be cast to IP address types",
@@ -1041,7 +1041,7 @@ static inline int value_box_cast_to_ipv4addr(TALLOC_CTX *ctx, value_box_t *dst,
                memcpy(&dst->datum.ip.addr.v4, src->datum.octets, sizeof(dst->datum.ip.addr.v4.s_addr));
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
        {
                uint32_t net;
 
@@ -1060,7 +1060,7 @@ static inline int value_box_cast_to_ipv4addr(TALLOC_CTX *ctx, value_box_t *dst,
        dst->datum.ip.af = AF_INET;
        dst->datum.ip.prefix = 32;
        dst->datum.ip.scope_id = 0;
-       dst->type = PW_TYPE_IPV4_ADDR;
+       dst->type = FR_TYPE_IPV4_ADDR;
 
        return 0;
 }
@@ -1068,10 +1068,10 @@ static inline int value_box_cast_to_ipv4addr(TALLOC_CTX *ctx, value_box_t *dst,
 /** Convert any supported type to an IPv6 address
  *
  * Allowed input types are:
- * - PW_TYPE_IPV4_ADDR
- * - PW_TYPE_IPV4_PREFIX (with 32bit mask).
- * - PW_TYPE_IPV6_PREFIX (with 128bit mask).
- * - PW_TYPE_OCTETS (of length 16).
+ * - FR_TYPE_IPV4_ADDR
+ * - FR_TYPE_IPV4_PREFIX (with 32bit mask).
+ * - FR_TYPE_IPV6_PREFIX (with 128bit mask).
+ * - FR_TYPE_OCTETS (of length 16).
  *
  * @param ctx          unused.
  * @param dst          Where to write result of casting.
@@ -1080,20 +1080,20 @@ static inline int value_box_cast_to_ipv4addr(TALLOC_CTX *ctx, value_box_t *dst,
  * @param src          Input data.
  */
 static inline int value_box_cast_to_ipv4prefix(TALLOC_CTX *ctx, value_box_t *dst,
-                                              PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                                              fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                                               value_box_t const *src)
 {
-       if (!fr_cond_assert(dst_type == PW_TYPE_IPV4_PREFIX)) return -1;
+       if (!fr_cond_assert(dst_type == FR_TYPE_IPV4_PREFIX)) return -1;
 
        switch (src->type) {
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
                memcpy(&dst->datum.ip, &src->datum.ip, sizeof(dst->datum.ip));
                break;
 
        /*
         *      Copy the last four bytes, to make an IPv4prefix
         */
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                if (memcmp(src->datum.ip.addr.v6.s6_addr, v4_v6_map, sizeof(v4_v6_map)) != 0) {
                bad_v6_prefix_map:
                        fr_strerror_printf("Invalid cast from %s to %s.  No IPv4-IPv6 mapping prefix",
@@ -1106,7 +1106,7 @@ static inline int value_box_cast_to_ipv4prefix(TALLOC_CTX *ctx, value_box_t *dst
                dst->datum.ip.prefix = 32;
                break;
 
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                if (memcmp(src->datum.ip.addr.v6.s6_addr, v4_v6_map, sizeof(v4_v6_map)) != 0) goto bad_v6_prefix_map;
 
                if (src->datum.ip.prefix < (sizeof(v4_v6_map) << 3)) {
@@ -1125,13 +1125,13 @@ static inline int value_box_cast_to_ipv4prefix(TALLOC_CTX *ctx, value_box_t *dst
                dst->datum.ip.prefix = src->datum.ip.prefix - (sizeof(v4_v6_map) << 3);
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                if (value_box_from_str(ctx, dst, &dst_type, dst_enumv,
                                       src->datum.strvalue, src->datum.length, '\0') < 0) return -1;
                break;
 
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                if (src->datum.length != sizeof(dst->datum.ip.addr.v4.s_addr) + 1) {
                        fr_strerror_printf("Invalid cast from %s to %s.  Only %zu byte octet strings "
                                           "may be cast to IP address types",
@@ -1144,7 +1144,7 @@ static inline int value_box_cast_to_ipv4prefix(TALLOC_CTX *ctx, value_box_t *dst
                memcpy(&dst->datum.ip.addr.v4, &src->datum.octets[1], sizeof(dst->datum.ip.addr.v4.s_addr));
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
        {
                uint32_t net;
 
@@ -1159,7 +1159,7 @@ static inline int value_box_cast_to_ipv4prefix(TALLOC_CTX *ctx, value_box_t *dst
 
        dst->datum.ip.af = AF_INET;
        dst->datum.ip.scope_id = 0;
-       dst->type = PW_TYPE_IPV4_PREFIX;
+       dst->type = FR_TYPE_IPV4_PREFIX;
 
        return 0;
 }
@@ -1167,10 +1167,10 @@ static inline int value_box_cast_to_ipv4prefix(TALLOC_CTX *ctx, value_box_t *dst
 /** Convert any supported type to an IPv6 address
  *
  * Allowed input types are:
- * - PW_TYPE_IPV4_ADDR
- * - PW_TYPE_IPV4_PREFIX (with 32bit mask).
- * - PW_TYPE_IPV6_PREFIX (with 128bit mask).
- * - PW_TYPE_OCTETS (of length 16).
+ * - FR_TYPE_IPV4_ADDR
+ * - FR_TYPE_IPV4_PREFIX (with 32bit mask).
+ * - FR_TYPE_IPV6_PREFIX (with 128bit mask).
+ * - FR_TYPE_OCTETS (of length 16).
  *
  * @param ctx          unused.
  * @param dst          Where to write result of casting.
@@ -1179,16 +1179,16 @@ static inline int value_box_cast_to_ipv4prefix(TALLOC_CTX *ctx, value_box_t *dst
  * @param src          Input data.
  */
 static inline int value_box_cast_to_ipv6addr(TALLOC_CTX *ctx, value_box_t *dst,
-                                            PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                                            fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                                             value_box_t const *src)
 {
-       if (!fr_cond_assert(dst_type == PW_TYPE_IPV6_ADDR)) return -1;
+       if (!fr_cond_assert(dst_type == FR_TYPE_IPV6_ADDR)) return -1;
 
        static_assert((sizeof(v4_v6_map) + sizeof(src->datum.ip.addr.v4)) <=
                      sizeof(src->datum.ip.addr.v6), "IPv6 storage too small");
 
        switch (src->type) {
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
        {
                uint8_t *p = dst->datum.ip.addr.v6.s6_addr;
 
@@ -1200,7 +1200,7 @@ static inline int value_box_cast_to_ipv6addr(TALLOC_CTX *ctx, value_box_t *dst,
        }
                break;
 
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
        {
                uint8_t *p = dst->datum.ip.addr.v6.s6_addr;
 
@@ -1221,7 +1221,7 @@ static inline int value_box_cast_to_ipv6addr(TALLOC_CTX *ctx, value_box_t *dst,
        }
                break;
 
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                if (src->datum.ip.prefix != 128) {
                        fr_strerror_printf("Invalid cast from %s to %s.  Only /128 (not /%i) prefixes may be "
                                           "cast to IP address types",
@@ -1235,12 +1235,12 @@ static inline int value_box_cast_to_ipv6addr(TALLOC_CTX *ctx, value_box_t *dst,
                dst->datum.ip.scope_id = src->datum.ip.scope_id;
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                if (value_box_from_str(ctx, dst, &dst_type, dst_enumv,
                                       src->datum.strvalue, src->datum.length, '\0') < 0) return -1;
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                if (src->datum.length != sizeof(dst->datum.ip.addr.v6.s6_addr)) {
                        fr_strerror_printf("Invalid cast from %s to %s.  Only %zu byte octet strings "
                                           "may be cast to IP address types",
@@ -1261,7 +1261,7 @@ static inline int value_box_cast_to_ipv6addr(TALLOC_CTX *ctx, value_box_t *dst,
 
        dst->datum.ip.af = AF_INET6;
        dst->datum.ip.prefix = 128;
-       dst->type = PW_TYPE_IPV6_ADDR;
+       dst->type = FR_TYPE_IPV6_ADDR;
 
        return 0;
 }
@@ -1269,10 +1269,10 @@ static inline int value_box_cast_to_ipv6addr(TALLOC_CTX *ctx, value_box_t *dst,
 /** Convert any supported type to an IPv6 address
  *
  * Allowed input types are:
- * - PW_TYPE_IPV4_ADDR
- * - PW_TYPE_IPV4_PREFIX (with 32bit mask).
- * - PW_TYPE_IPV6_PREFIX (with 128bit mask).
- * - PW_TYPE_OCTETS (of length 16).
+ * - FR_TYPE_IPV4_ADDR
+ * - FR_TYPE_IPV4_PREFIX (with 32bit mask).
+ * - FR_TYPE_IPV6_PREFIX (with 128bit mask).
+ * - FR_TYPE_OCTETS (of length 16).
  *
  * @param ctx          unused.
  * @param dst          Where to write result of casting.
@@ -1281,11 +1281,11 @@ static inline int value_box_cast_to_ipv6addr(TALLOC_CTX *ctx, value_box_t *dst,
  * @param src          Input data.
  */
 static inline int value_box_cast_to_ipv6prefix(TALLOC_CTX *ctx, value_box_t *dst,
-                                              PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                                              fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                                               value_box_t const *src)
 {
        switch (src->type) {
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
        {
                uint8_t *p = dst->datum.ip.addr.v6.s6_addr;
 
@@ -1298,7 +1298,7 @@ static inline int value_box_cast_to_ipv6prefix(TALLOC_CTX *ctx, value_box_t *dst
        }
                break;
 
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
        {
                uint8_t *p = dst->datum.ip.addr.v6.s6_addr;
 
@@ -1311,19 +1311,19 @@ static inline int value_box_cast_to_ipv6prefix(TALLOC_CTX *ctx, value_box_t *dst
        }
                break;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                memcpy(dst->datum.ip.addr.v6.s6_addr, src->datum.ip.addr.v6.s6_addr,
                       sizeof(dst->datum.ip.addr.v6.s6_addr));
                dst->datum.ip.prefix = 128;
                dst->datum.ip.scope_id = src->datum.ip.scope_id;
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                if (value_box_from_str(ctx, dst, &dst_type, dst_enumv,
                                       src->datum.strvalue, src->datum.length, '\0') < 0) return -1;
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                if (src->datum.length != (sizeof(dst->datum.ip.addr.v6.s6_addr) + 2)) {
                        fr_strerror_printf("Invalid cast from %s to %s.  Only %zu byte octet strings "
                                           "may be cast to IP address types",
@@ -1342,7 +1342,7 @@ static inline int value_box_cast_to_ipv6prefix(TALLOC_CTX *ctx, value_box_t *dst
        }
 
        dst->datum.ip.af = AF_INET6;
-       dst->type = PW_TYPE_IPV6_PREFIX;
+       dst->type = FR_TYPE_IPV6_PREFIX;
 
        return 0;
 }
@@ -1364,11 +1364,11 @@ static inline int value_box_cast_to_ipv6prefix(TALLOC_CTX *ctx, value_box_t *dst
  *     - -1 on failure.
  */
 int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
-                  PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                  fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                   value_box_t const *src)
 {
-       if (!fr_cond_assert(dst_type != PW_TYPE_INVALID)) return -1;
-       if (!fr_cond_assert(src->type != PW_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(dst_type != FR_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(src->type != FR_TYPE_INVALID)) return -1;
 
        if (fr_dict_non_data_types[dst_type]) {
                fr_strerror_printf("Invalid cast from %s to %s.  Can only cast simple data types.",
@@ -1391,61 +1391,61 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
         *      Dispatch to specialised cast functions
         */
        switch (dst_type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                return value_box_cast_to_strvalue(ctx, dst, dst_type, dst_enumv, src);
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                return value_box_cast_to_octets(ctx, dst, dst_type, dst_enumv, src);
 
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
                return value_box_cast_to_ipv4addr(ctx, dst, dst_type, dst_enumv, src);
 
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
                return value_box_cast_to_ipv4prefix(ctx, dst, dst_type, dst_enumv, src);
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                return value_box_cast_to_ipv6addr(ctx, dst, dst_type, dst_enumv, src);
 
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                return value_box_cast_to_ipv6prefix(ctx, dst, dst_type, dst_enumv, src);
 
        /*
         *      Need func
         */
-       case PW_TYPE_IFID:
-       case PW_TYPE_COMBO_IP_ADDR:
-       case PW_TYPE_COMBO_IP_PREFIX:
-       case PW_TYPE_ETHERNET:
-       case PW_TYPE_BOOLEAN:
-       case PW_TYPE_BYTE:
-       case PW_TYPE_SHORT:
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_INTEGER64:
-       case PW_TYPE_SIZE:
-       case PW_TYPE_SIGNED:
-       case PW_TYPE_TIMEVAL:
-       case PW_TYPE_DECIMAL:
-       case PW_TYPE_DATE:
-       case PW_TYPE_ABINARY:
+       case FR_TYPE_IFID:
+       case FR_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_COMBO_IP_PREFIX:
+       case FR_TYPE_ETHERNET:
+       case FR_TYPE_BOOLEAN:
+       case FR_TYPE_BYTE:
+       case FR_TYPE_SHORT:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_INTEGER64:
+       case FR_TYPE_SIZE:
+       case FR_TYPE_SIGNED:
+       case FR_TYPE_TIMEVAL:
+       case FR_TYPE_DECIMAL:
+       case FR_TYPE_DATE:
+       case FR_TYPE_ABINARY:
                break;
 
        /*
         *      Invalid types for casting (should have been caught earlier)
         */
-       case PW_TYPE_STRUCTURAL:
-       case PW_TYPE_INVALID:
-       case PW_TYPE_MAX:
+       case FR_TYPE_STRUCTURAL:
+       case FR_TYPE_INVALID:
+       case FR_TYPE_MAX:
                if (!fr_cond_assert(0)) return -1;
        }
 
        /*
         *      Deserialise a value_box_t
         */
-       if (src->type == PW_TYPE_STRING) return value_box_from_str(ctx, dst, &dst_type, dst_enumv,
+       if (src->type == FR_TYPE_STRING) return value_box_from_str(ctx, dst, &dst_type, dst_enumv,
                                                                   src->datum.strvalue, src->datum.length, '\0');
 
-       if ((src->type == PW_TYPE_IFID) &&
-           (dst_type == PW_TYPE_INTEGER64)) {
+       if ((src->type == FR_TYPE_IFID) &&
+           (dst_type == FR_TYPE_INTEGER64)) {
                memcpy(&dst->datum.integer64, src->datum.ifid, sizeof(src->datum.ifid));
                dst->datum.integer64 = htonll(dst->datum.integer64);
 
@@ -1456,8 +1456,8 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
                return 0;
        }
 
-       if ((src->type == PW_TYPE_INTEGER64) &&
-           (dst_type == PW_TYPE_ETHERNET)) {
+       if ((src->type == FR_TYPE_INTEGER64) &&
+           (dst_type == FR_TYPE_ETHERNET)) {
                uint8_t array[8];
                uint64_t i;
 
@@ -1473,13 +1473,13 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
                goto fixed_length;
        }
 
-       if (dst_type == PW_TYPE_SHORT) {
+       if (dst_type == FR_TYPE_SHORT) {
                switch (src->type) {
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        dst->datum.ushort = src->datum.byte;
                        break;
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        goto do_octets;
 
                default:
@@ -1492,17 +1492,17 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
         *      We can cast LONG integers to SHORTER ones, so long
         *      as the long one is on the LHS.
         */
-       if (dst_type == PW_TYPE_INTEGER) {
+       if (dst_type == FR_TYPE_INTEGER) {
                switch (src->type) {
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        dst->datum.integer = src->datum.byte;
                        break;
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        dst->datum.integer = src->datum.ushort;
                        break;
 
-               case PW_TYPE_SIGNED:
+               case FR_TYPE_SIGNED:
                        if (src->datum.sinteger < 0 ) {
                                fr_strerror_printf("Invalid cast: From signed to integer.  "
                                                   "signed value %d is negative ", src->datum.sinteger);
@@ -1511,7 +1511,7 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
                        dst->datum.integer = (uint32_t)src->datum.sinteger;
                        break;
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        goto do_octets;
 
                default:
@@ -1524,25 +1524,25 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
         *      For integers, we allow the casting of a SMALL type to
         *      a larger type, but not vice-versa.
         */
-       if (dst_type == PW_TYPE_INTEGER64) {
+       if (dst_type == FR_TYPE_INTEGER64) {
                switch (src->type) {
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        dst->datum.integer64 = src->datum.byte;
                        break;
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        dst->datum.integer64 = src->datum.ushort;
                        break;
 
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        dst->datum.integer64 = src->datum.integer;
                        break;
 
-               case PW_TYPE_DATE:
+               case FR_TYPE_DATE:
                        dst->datum.integer64 = src->datum.date;
                        break;
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        goto do_octets;
 
                default:
@@ -1559,17 +1559,17 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
        /*
         *      We can cast integers less that < INT_MAX to signed
         */
-       if (dst_type == PW_TYPE_SIGNED) {
+       if (dst_type == FR_TYPE_SIGNED) {
                switch (src->type) {
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        dst->datum.sinteger = src->datum.byte;
                        break;
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        dst->datum.sinteger = src->datum.ushort;
                        break;
 
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        if (src->datum.integer > INT_MAX) {
                                fr_strerror_printf("Invalid cast: From integer to signed.  integer value %u is larger "
                                                   "than max signed int and would overflow", src->datum.integer);
@@ -1578,7 +1578,7 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
                        dst->datum.sinteger = (int)src->datum.integer;
                        break;
 
-               case PW_TYPE_INTEGER64:
+               case FR_TYPE_INTEGER64:
                        if (src->datum.integer > INT_MAX) {
                                fr_strerror_printf("Invalid cast: From integer64 to signed.  integer64 value %" PRIu64
                                                   " is larger than max signed int and would overflow", src->datum.integer64);
@@ -1587,7 +1587,7 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
                        dst->datum.sinteger = (int)src->datum.integer64;
                        break;
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        goto do_octets;
 
                default:
@@ -1596,24 +1596,24 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
                goto fixed_length;
        }
 
-       if (dst_type == PW_TYPE_TIMEVAL) {
+       if (dst_type == FR_TYPE_TIMEVAL) {
                switch (src->type) {
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        dst->datum.timeval.tv_sec = src->datum.byte;
                        dst->datum.timeval.tv_usec = 0;
                        break;
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        dst->datum.timeval.tv_sec = src->datum.ushort;
                        dst->datum.timeval.tv_usec = 0;
                        break;
 
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        dst->datum.timeval.tv_sec = src->datum.integer;
                        dst->datum.timeval.tv_usec = 0;
                        break;
 
-               case PW_TYPE_INTEGER64:
+               case FR_TYPE_INTEGER64:
                        /*
                         *      tv_sec is a time_t, which is variable in size
                         *      depending on the system.
@@ -1631,7 +1631,7 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
                }
        }
 
-       if (src->type == PW_TYPE_OCTETS) {
+       if (src->type == FR_TYPE_OCTETS) {
                value_box_t tmp;
 
        do_octets:
@@ -1669,13 +1669,13 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
                 *      Fixup IP addresses.
                 */
                switch (dst->type) {
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        dst->datum.ip.af = AF_INET;
                        dst->datum.ip.prefix = 128;
                        dst->datum.ip.scope_id = 0;
                        break;
 
-               case PW_TYPE_IPV6_ADDR:
+               case FR_TYPE_IPV6_ADDR:
                        dst->datum.ip.af = AF_INET6;
                        dst->datum.ip.prefix = 128;
                        dst->datum.ip.scope_id = 0;
@@ -1691,19 +1691,19 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
        /*
         *      Convert host order to network byte order.
         */
-       if ((dst_type == PW_TYPE_IPV4_ADDR) &&
-           ((src->type == PW_TYPE_INTEGER) ||
-            (src->type == PW_TYPE_DATE) ||
-            (src->type == PW_TYPE_SIGNED))) {
+       if ((dst_type == FR_TYPE_IPV4_ADDR) &&
+           ((src->type == FR_TYPE_INTEGER) ||
+            (src->type == FR_TYPE_DATE) ||
+            (src->type == FR_TYPE_SIGNED))) {
                dst->datum.ip.af = AF_INET;
                dst->datum.ip.prefix = 32;
                dst->datum.ip.scope_id = 0;
                dst->datum.ip.addr.v4.s_addr = htonl(src->datum.integer);
 
-       } else if ((src->type == PW_TYPE_IPV4_ADDR) &&
-                  ((dst_type == PW_TYPE_INTEGER) ||
-                   (dst_type == PW_TYPE_DATE) ||
-                   (dst_type == PW_TYPE_SIGNED))) {
+       } else if ((src->type == FR_TYPE_IPV4_ADDR) &&
+                  ((dst_type == FR_TYPE_INTEGER) ||
+                   (dst_type == FR_TYPE_DATE) ||
+                   (dst_type == FR_TYPE_SIGNED))) {
                dst->datum.integer = htonl(src->datum.ip.addr.v4.s_addr);
 
        } else {                /* they're of the same byte order */
@@ -1729,7 +1729,7 @@ int value_box_cast(TALLOC_CTX *ctx, value_box_t *dst,
  */
 int value_box_copy(TALLOC_CTX *ctx, value_box_t *dst, const value_box_t *src)
 {
-       if (!fr_cond_assert(src->type != PW_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(src->type != FR_TYPE_INVALID)) return -1;
 
        switch (src->type) {
        default:
@@ -1738,7 +1738,7 @@ int value_box_copy(TALLOC_CTX *ctx, value_box_t *dst, const value_box_t *src)
                       value_box_field_sizes[src->type]);
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
        {
                char *str = NULL;
 
@@ -1754,7 +1754,7 @@ int value_box_copy(TALLOC_CTX *ctx, value_box_t *dst, const value_box_t *src)
        }
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
        {
                uint8_t *bin = NULL;
 
@@ -1780,7 +1780,7 @@ int value_box_copy(TALLOC_CTX *ctx, value_box_t *dst, const value_box_t *src)
  *
  * Like #value_box_copy, but does not duplicate the buffers of the src value_box.
  *
- * For #PW_TYPE_STRING and #PW_TYPE_OCTETS adds a reference from ctx so that the
+ * For #FR_TYPE_STRING and #FR_TYPE_OCTETS adds a reference from ctx so that the
  * buffer cannot be freed until the ctx is freed.
  *
  * @note Will free any exiting buffers associated with the dst #value_box_t.
@@ -1796,8 +1796,8 @@ void value_box_copy_shallow(TALLOC_CTX *ctx, value_box_t *dst, value_box_t const
                value_box_copy(ctx, dst, src);
                break;
 
-       case PW_TYPE_STRING:
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_STRING:
+       case FR_TYPE_OCTETS:
                dst->datum.ptr = ctx ? talloc_reference(ctx, src->datum.ptr) : src->datum.ptr;
                value_box_copy_meta(dst, src);
                break;
@@ -1817,13 +1817,13 @@ void value_box_copy_shallow(TALLOC_CTX *ctx, value_box_t *dst, value_box_t const
  */
 int value_box_steal(TALLOC_CTX *ctx, value_box_t *dst, value_box_t const *src)
 {
-       if (!fr_cond_assert(src->type != PW_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(src->type != FR_TYPE_INVALID)) return -1;
 
        switch (src->type) {
        default:
                return value_box_copy(ctx, dst, src);
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
        {
                char const *str;
 
@@ -1837,7 +1837,7 @@ int value_box_steal(TALLOC_CTX *ctx, value_box_t *dst, value_box_t const *src)
        }
                return 0;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
        {
                uint8_t const *bin;
 
@@ -1872,7 +1872,7 @@ int value_box_strdup(TALLOC_CTX *ctx, value_box_t *dst, char const *src, bool ta
                return -1;
        }
 
-       dst->type = PW_TYPE_STRING;
+       dst->type = FR_TYPE_STRING;
        dst->tainted = tainted;
        dst->datum.strvalue = str;
        dst->datum.length = talloc_array_length(str) - 1;
@@ -1911,7 +1911,7 @@ int value_box_strdup_buffer(TALLOC_CTX *ctx, value_box_t *dst, char const *src,
                return -1;
        }
 
-       dst->type = PW_TYPE_STRING;
+       dst->type = FR_TYPE_STRING;
        dst->tainted = tainted;
        dst->datum.strvalue = str;
        dst->datum.length = talloc_array_length(str) - 1;
@@ -1950,7 +1950,7 @@ int value_box_strsteal(TALLOC_CTX *ctx, value_box_t *dst, char *src, bool tainte
                return -1;
        }
 
-       dst->type = PW_TYPE_STRING;
+       dst->type = FR_TYPE_STRING;
        dst->tainted = tainted;
        dst->datum.strvalue = str;
        dst->datum.length = len - 1;
@@ -1969,7 +1969,7 @@ int value_box_strsteal(TALLOC_CTX *ctx, value_box_t *dst, char *src, bool tainte
  */
 int value_box_strdup_shallow(value_box_t *dst, char const *src, bool tainted)
 {
-       dst->type = PW_TYPE_STRING;
+       dst->type = FR_TYPE_STRING;
        dst->tainted = tainted;
        dst->datum.strvalue = src;
        dst->datum.length = strlen(src);
@@ -2001,7 +2001,7 @@ int value_box_strdup_buffer_shallow(TALLOC_CTX *ctx, value_box_t *dst, char cons
                return -1;
        }
 
-       dst->type = PW_TYPE_STRING;
+       dst->type = FR_TYPE_STRING;
        dst->tainted = tainted;
        dst->datum.strvalue = ctx ? talloc_reference(ctx, src) : src;
        dst->datum.length = len - 1;
@@ -2034,7 +2034,7 @@ int value_box_memdup(TALLOC_CTX *ctx, value_box_t *dst, uint8_t const *src, size
                return -1;
        }
 
-       dst->type = PW_TYPE_OCTETS;
+       dst->type = FR_TYPE_OCTETS;
        dst->tainted = tainted;
        dst->datum.octets = bin;
        dst->datum.length = len;
@@ -2085,7 +2085,7 @@ int value_box_memsteal(TALLOC_CTX *ctx, value_box_t *dst, uint8_t const *src, bo
                return -1;
        }
 
-       dst->type = PW_TYPE_OCTETS;
+       dst->type = FR_TYPE_OCTETS;
        dst->tainted = tainted;
        dst->datum.octets = bin;
        dst->datum.length = talloc_array_length(src);
@@ -2111,7 +2111,7 @@ int value_box_memsteal(TALLOC_CTX *ctx, value_box_t *dst, uint8_t const *src, bo
  */
 int value_box_memdup_shallow(value_box_t *dst, uint8_t *src, size_t len, bool tainted)
 {
-       dst->type = PW_TYPE_OCTETS;
+       dst->type = FR_TYPE_OCTETS;
        dst->tainted = tainted;
        dst->datum.octets = src;
        dst->datum.length = len;
@@ -2135,7 +2135,7 @@ int value_box_memdup_buffer_shallow(TALLOC_CTX *ctx, value_box_t *dst, uint8_t *
 {
        (void) talloc_get_type_abort(src, uint8_t);
 
-       dst->type = PW_TYPE_OCTETS;
+       dst->type = FR_TYPE_OCTETS;
        dst->tainted = tainted;
        dst->datum.octets = ctx ? talloc_reference(ctx, src) : src;
        dst->datum.length = talloc_array_length(src);
@@ -2156,7 +2156,7 @@ int value_box_memdup_buffer_shallow(TALLOC_CTX *ctx, value_box_t *dst, uint8_t *
  */
 int value_box_from_ipaddr(value_box_t *dst, fr_ipaddr_t const *ipaddr)
 {
-       PW_TYPE type;
+       fr_type_t type;
 
        switch (ipaddr->af) {
        case AF_INET:
@@ -2166,9 +2166,9 @@ int value_box_from_ipaddr(value_box_t *dst, fr_ipaddr_t const *ipaddr)
                }
 
                if (ipaddr->prefix == 32) {
-                       type = PW_TYPE_IPV4_ADDR;
+                       type = FR_TYPE_IPV4_ADDR;
                } else {
-                       type = PW_TYPE_IPV4_PREFIX;
+                       type = FR_TYPE_IPV4_PREFIX;
                }
                break;
 
@@ -2179,9 +2179,9 @@ int value_box_from_ipaddr(value_box_t *dst, fr_ipaddr_t const *ipaddr)
                }
 
                if (ipaddr->prefix == 128) {
-                       type = PW_TYPE_IPV6_ADDR;
+                       type = FR_TYPE_IPV6_ADDR;
                } else {
-                       type = PW_TYPE_IPV6_PREFIX;
+                       type = FR_TYPE_IPV6_PREFIX;
                }
                break;
 
@@ -2216,7 +2216,7 @@ int value_box_from_ipaddr(value_box_t *dst, fr_ipaddr_t const *ipaddr)
  *     - -1 on parse error.
  */
 int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
-                      PW_TYPE *dst_type, fr_dict_attr_t const *dst_enumv,
+                      fr_type_t *dst_type, fr_dict_attr_t const *dst_enumv,
                       char const *in, ssize_t inlen, char quote)
 {
        fr_dict_enum_t  *dval;
@@ -2224,7 +2224,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        ssize_t         ret;
        char            buffer[256];
 
-       if (!fr_cond_assert(*dst_type != PW_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(*dst_type != FR_TYPE_INVALID)) return -1;
 
        if (!in) return -1;
 
@@ -2240,7 +2240,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
         *      of size len and copy.
         */
        switch (*dst_type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
        {
                char *buff, *p;
 
@@ -2272,12 +2272,12 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                goto finish;
 
-       case PW_TYPE_VSA:
+       case FR_TYPE_VSA:
                fr_strerror_printf("Must use 'Attr-26 = ...' instead of 'Vendor-Specific = ...'");
                return -1;
 
        /* raw octets: 0x01020304... */
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
        {
                uint8_t *p;
 
@@ -2313,7 +2313,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                goto finish;
 
-       case PW_TYPE_ABINARY:
+       case FR_TYPE_ABINARY:
 #ifdef WITH_ASCEND_BINARY
                if ((len > 1) && (strncasecmp(in, "0x", 2) == 0)) {
                        ssize_t bin;
@@ -2345,7 +2345,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                goto do_octets;
 #endif
 
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
        {
                fr_ipaddr_t addr;
 
@@ -2365,11 +2365,11 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                goto finish;
 
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
                if (fr_inet_pton4(&dst->datum.ip, in, inlen, fr_hostname_lookups, false, true) < 0) return -1;
                goto finish;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
        {
                fr_ipaddr_t addr;
 
@@ -2389,7 +2389,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                goto finish;
 
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                if (fr_inet_pton6(&dst->datum.ip, in, inlen, fr_hostname_lookups, false, true) < 0) return -1;
                goto finish;
 
@@ -2399,9 +2399,9 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        default:
                break;
 
-       case PW_TYPE_STRUCTURAL_EXCEPT_VSA:
-       case PW_TYPE_VENDOR:
-       case PW_TYPE_BAD:
+       case FR_TYPE_STRUCTURAL_EXCEPT_VSA:
+       case FR_TYPE_VENDOR:
+       case FR_TYPE_BAD:
                fr_strerror_printf("Invalid dst_type %d", *dst_type);
                return -1;
        }
@@ -2422,14 +2422,14 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
 
        switch (*dst_type) {
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV4_PREFIX:
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_PREFIX:
                break;
 
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
        {
                char *p;
                unsigned int i;
@@ -2462,7 +2462,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                break;
        }
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
        {
                char *p;
                unsigned int i;
@@ -2495,7 +2495,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                break;
        }
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
        {
                char *p;
 
@@ -2553,7 +2553,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
        {
                uint64_t i;
 
@@ -2568,7 +2568,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                break;
 
-       case PW_TYPE_SIZE:
+       case FR_TYPE_SIZE:
        {
                size_t i;
 
@@ -2580,11 +2580,11 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                break;
 
-       case PW_TYPE_TIMEVAL:
+       case FR_TYPE_TIMEVAL:
                if (fr_timeval_from_str(&dst->datum.timeval, in) < 0) return -1;
                break;
 
-       case PW_TYPE_DECIMAL:
+       case FR_TYPE_DECIMAL:
        {
                double d;
 
@@ -2596,7 +2596,7 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                break;
 
-       case PW_TYPE_DATE:
+       case FR_TYPE_DATE:
        {
                /*
                 *      time_t may be 64 bits, whule vp_date MUST be 32-bits.  We need an
@@ -2614,14 +2614,14 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
 
                break;
 
-       case PW_TYPE_IFID:
+       case FR_TYPE_IFID:
                if (fr_inet_ifid_pton((void *) dst->datum.ifid, in) == NULL) {
                        fr_strerror_printf("Failed to parse interface-id string \"%s\"", in);
                        return -1;
                }
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
        {
                char const *c1, *c2, *cp;
                size_t p_len = 0;
@@ -2672,18 +2672,18 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
         *      These are not dynamic da, and will have the same vendor
         *      and attribute as the original.
         */
-       case PW_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_COMBO_IP_ADDR:
        {
                if (fr_inet_pton(&dst->datum.ip, in, inlen, AF_UNSPEC, fr_hostname_lookups, true) < 0) return -1;
                switch (dst->datum.ip.af) {
                case AF_INET:
-                       ret = dict_attr_sizes[PW_TYPE_COMBO_IP_ADDR][0]; /* size of IPv4 address */
-                       *dst_type = PW_TYPE_IPV4_ADDR;
+                       ret = dict_attr_sizes[FR_TYPE_COMBO_IP_ADDR][0]; /* size of IPv4 address */
+                       *dst_type = FR_TYPE_IPV4_ADDR;
                        break;
 
                case AF_INET6:
-                       *dst_type = PW_TYPE_IPV6_ADDR;
-                       ret = dict_attr_sizes[PW_TYPE_COMBO_IP_ADDR][1]; /* size of IPv6 address */
+                       *dst_type = FR_TYPE_IPV6_ADDR;
+                       ret = dict_attr_sizes[FR_TYPE_COMBO_IP_ADDR][1]; /* size of IPv6 address */
                        break;
 
                default:
@@ -2693,12 +2693,12 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
        }
                break;
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
                /* Damned code for 1 WiMAX attribute */
                dst->datum.sinteger = (int32_t)strtol(in, NULL, 10);
                break;
 
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BOOLEAN:
                if ((strcmp(in, "yes") == 0) || strcmp(in, "true") == 0) {
                        dst->datum.boolean = true;
                } else if ((strcmp(in, "no") == 0) || (strcmp(in, "false") == 0)) {
@@ -2709,12 +2709,12 @@ int value_box_from_str(TALLOC_CTX *ctx, value_box_t *dst,
                }
                break;
 
-       case PW_TYPE_COMBO_IP_PREFIX:
+       case FR_TYPE_COMBO_IP_PREFIX:
                break;
 
-       case PW_TYPE_VARIABLE_SIZE:             /* Should have been dealt with above */
-       case PW_TYPE_STRUCTURAL:        /* Listed again to suppress compiler warnings */
-       case PW_TYPE_BAD:
+       case FR_TYPE_VARIABLE_SIZE:             /* Should have been dealt with above */
+       case FR_TYPE_STRUCTURAL:        /* Listed again to suppress compiler warnings */
+       case FR_TYPE_BAD:
                fr_strerror_printf("Unknown attribute dst_type %d", *dst_type);
                return -1;
        }
@@ -2738,7 +2738,7 @@ finish:
 size_t value_box_network_length(value_box_t *value)
 {
        switch (value->type) {
-       case PW_TYPE_VARIABLE_SIZE:
+       case FR_TYPE_VARIABLE_SIZE:
                return value->datum.length;
 
        default:
@@ -2753,20 +2753,20 @@ char *value_box_asprint(TALLOC_CTX *ctx, value_box_t const *data, char quote)
 {
        char *p = NULL;
 
-       if (!fr_cond_assert(data->type != PW_TYPE_INVALID)) return NULL;
+       if (!fr_cond_assert(data->type != FR_TYPE_INVALID)) return NULL;
 
        if (fr_dict_enum_types[data->type] && data->datum.enumv) {
                fr_dict_enum_t const    *dv;
                value_box_t             tmp;
 
-               value_box_cast(ctx, &tmp, PW_TYPE_INTEGER, NULL, data);
+               value_box_cast(ctx, &tmp, FR_TYPE_INTEGER, NULL, data);
 
                dv = fr_dict_enum_by_da(NULL, data->datum.enumv, tmp.datum.integer);
                if (dv) return talloc_typed_strdup(ctx, dv->name);
        }
 
        switch (data->type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
        {
                size_t len, ret;
 
@@ -2790,7 +2790,7 @@ char *value_box_asprint(TALLOC_CTX *ctx, value_box_t const *data, char quote)
                break;
        }
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                p = talloc_array(ctx, char, 2 + 1 + data->datum.length * 2);
                if (!p) return NULL;
                p[0] = '0';
@@ -2807,8 +2807,8 @@ char *value_box_asprint(TALLOC_CTX *ctx, value_box_t const *data, char quote)
         *
         *      An example is tunneled ipv4 in ipv6 addresses.
         */
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_PREFIX:
        {
                char buff[INET_ADDRSTRLEN  + 4]; // + /prefix
 
@@ -2819,8 +2819,8 @@ char *value_box_asprint(TALLOC_CTX *ctx, value_box_t const *data, char quote)
        }
        break;
 
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_PREFIX:
        {
                char buff[INET6_ADDRSTRLEN + 4]; // + /prefix
 
@@ -2831,7 +2831,7 @@ char *value_box_asprint(TALLOC_CTX *ctx, value_box_t const *data, char quote)
        }
        break;
 
-       case PW_TYPE_IFID:
+       case FR_TYPE_IFID:
                p = talloc_typed_asprintf(ctx, "%x:%x:%x:%x",
                                          (data->datum.ifid[0] << 8) | data->datum.ifid[1],
                                          (data->datum.ifid[2] << 8) | data->datum.ifid[3],
@@ -2839,51 +2839,51 @@ char *value_box_asprint(TALLOC_CTX *ctx, value_box_t const *data, char quote)
                                          (data->datum.ifid[6] << 8) | data->datum.ifid[7]);
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                p = talloc_typed_asprintf(ctx, "%02x:%02x:%02x:%02x:%02x:%02x",
                                          data->datum.ether[0], data->datum.ether[1],
                                          data->datum.ether[2], data->datum.ether[3],
                                          data->datum.ether[4], data->datum.ether[5]);
                break;
 
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BOOLEAN:
                p = talloc_typed_strdup(ctx, data->datum.byte ? "yes" : "no");
                break;
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                p = talloc_typed_asprintf(ctx, "%u", data->datum.byte);
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                p = talloc_typed_asprintf(ctx, "%u", data->datum.ushort);
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                p = talloc_typed_asprintf(ctx, "%u", data->datum.integer);
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                p = talloc_typed_asprintf(ctx, "%" PRIu64, data->datum.integer64);
                break;
 
-       case PW_TYPE_SIZE:
+       case FR_TYPE_SIZE:
                p = talloc_typed_asprintf(ctx, "%zu", data->datum.size);
                break;
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
                p = talloc_typed_asprintf(ctx, "%d", data->datum.sinteger);
                break;
 
-       case PW_TYPE_TIMEVAL:
+       case FR_TYPE_TIMEVAL:
                p = talloc_typed_asprintf(ctx, "%" PRIu64 ".%06" PRIu64,
                                          (uint64_t)data->datum.timeval.tv_sec, (uint64_t)data->datum.timeval.tv_usec);
                break;
 
-       case PW_TYPE_DECIMAL:
+       case FR_TYPE_DECIMAL:
                p = talloc_typed_asprintf(ctx, "%g", data->datum.decimal);
                break;
 
-       case PW_TYPE_DATE:
+       case FR_TYPE_DATE:
        {
                time_t t;
                struct tm s_tm;
@@ -2896,7 +2896,7 @@ char *value_box_asprint(TALLOC_CTX *ctx, value_box_t const *data, char quote)
                break;
        }
 
-       case PW_TYPE_ABINARY:
+       case FR_TYPE_ABINARY:
 #ifdef WITH_ASCEND_BINARY
                p = talloc_array(ctx, char, 128);
                if (!p) return NULL;
@@ -2909,10 +2909,10 @@ char *value_box_asprint(TALLOC_CTX *ctx, value_box_t const *data, char quote)
        /*
         *      Don't add default here
         */
-       case PW_TYPE_COMBO_IP_ADDR:
-       case PW_TYPE_COMBO_IP_PREFIX:
-       case PW_TYPE_STRUCTURAL:
-       case PW_TYPE_BAD:
+       case FR_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_COMBO_IP_PREFIX:
+       case FR_TYPE_STRUCTURAL:
+       case FR_TYPE_BAD:
                (void)fr_cond_assert(0);
                return NULL;
        }
@@ -2943,7 +2943,7 @@ size_t value_box_snprint(char *out, size_t outlen, value_box_t const *data, char
 
        size_t          len = 0, freespace = outlen;
 
-       if (!fr_cond_assert(data->type != PW_TYPE_INVALID)) return -1;
+       if (!fr_cond_assert(data->type != FR_TYPE_INVALID)) return -1;
 
        if (!data) return 0;
        if (outlen == 0) return data->datum.length;
@@ -2956,14 +2956,14 @@ size_t value_box_snprint(char *out, size_t outlen, value_box_t const *data, char
                fr_dict_enum_t const    *dv;
                value_box_t             tmp;
 
-               value_box_cast(NULL, &tmp, PW_TYPE_INTEGER, NULL, data);
+               value_box_cast(NULL, &tmp, FR_TYPE_INTEGER, NULL, data);
 
                dv = fr_dict_enum_by_da(NULL, data->datum.enumv, tmp.datum.integer);
                if (dv) return strlcpy(out, dv->name, outlen);
        }
 
        switch (data->type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
 
                /*
                 *      Ensure that WE add the quotation marks around the string.
@@ -2994,33 +2994,33 @@ size_t value_box_snprint(char *out, size_t outlen, value_box_t const *data, char
 
                return fr_snprint(out, outlen, data->datum.strvalue, data->datum.length, quote);
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                return snprintf(out, outlen, "%u", data->datum.byte);
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                return snprintf(out, outlen, "%u", data->datum.ushort);
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                return snprintf(out, outlen, "%u", data->datum.integer);
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                return snprintf(out, outlen, "%" PRIu64, data->datum.integer64);
 
-       case PW_TYPE_SIZE:
+       case FR_TYPE_SIZE:
                return snprintf(out, outlen, "%zu", data->datum.size);
 
-       case PW_TYPE_SIGNED: /* Damned code for 1 WiMAX attribute */
+       case FR_TYPE_SIGNED: /* Damned code for 1 WiMAX attribute */
                len = snprintf(buf, sizeof(buf), "%d", data->datum.sinteger);
                a = buf;
                break;
 
-       case PW_TYPE_TIMEVAL:
+       case FR_TYPE_TIMEVAL:
                len = snprintf(buf, sizeof(buf),  "%" PRIu64 ".%06" PRIu64,
                               (uint64_t)data->datum.timeval.tv_sec, (uint64_t)data->datum.timeval.tv_usec);
                a = buf;
                break;
 
-       case PW_TYPE_DATE:
+       case FR_TYPE_DATE:
                t = data->datum.date;
                if (quote > 0) {
                        len = strftime(buf, sizeof(buf) - 1, "%%%b %e %Y %H:%M:%S %Z%%", localtime_r(&t, &s_tm));
@@ -3033,19 +3033,19 @@ size_t value_box_snprint(char *out, size_t outlen, value_box_t const *data, char
                a = buf;
                break;
 
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                a = fr_inet_ntop(buf, sizeof(buf), &data->datum.ip);
                len = strlen(buf);
                break;
 
-       case PW_TYPE_IPV4_PREFIX:
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                a = fr_inet_ntop_prefix(buf, sizeof(buf), &data->datum.ip);
                len = strlen(buf);
                break;
 
-       case PW_TYPE_ABINARY:
+       case FR_TYPE_ABINARY:
 #ifdef WITH_ASCEND_BINARY
                print_abinary(buf, sizeof(buf), (uint8_t const *) data->datum.filter, data->datum.length, quote);
                a = buf;
@@ -3054,8 +3054,8 @@ size_t value_box_snprint(char *out, size_t outlen, value_box_t const *data, char
 #else
        /* FALL THROUGH */
 #endif
-       case PW_TYPE_OCTETS:
-       case PW_TYPE_TLV:
+       case FR_TYPE_OCTETS:
+       case FR_TYPE_TLV:
        {
                size_t max;
 
@@ -3087,34 +3087,34 @@ size_t value_box_snprint(char *out, size_t outlen, value_box_t const *data, char
        }
                return len;
 
-       case PW_TYPE_IFID:
+       case FR_TYPE_IFID:
                a = fr_inet_ifid_ntop(buf, sizeof(buf), data->datum.ifid);
                len = strlen(buf);
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                return snprintf(out, outlen, "%02x:%02x:%02x:%02x:%02x:%02x",
                                data->datum.ether[0], data->datum.ether[1],
                                data->datum.ether[2], data->datum.ether[3],
                                data->datum.ether[4], data->datum.ether[5]);
 
-       case PW_TYPE_DECIMAL:
+       case FR_TYPE_DECIMAL:
                return snprintf(out, outlen, "%g", data->datum.decimal);
 
        /*
         *      Don't add default here
         */
-       case PW_TYPE_INVALID:
-       case PW_TYPE_COMBO_IP_ADDR:
-       case PW_TYPE_COMBO_IP_PREFIX:
-       case PW_TYPE_EXTENDED:
-       case PW_TYPE_LONG_EXTENDED:
-       case PW_TYPE_EVS:
-       case PW_TYPE_VSA:
-       case PW_TYPE_VENDOR:
-       case PW_TYPE_BOOLEAN:
-       case PW_TYPE_STRUCT:
-       case PW_TYPE_MAX:
+       case FR_TYPE_INVALID:
+       case FR_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_COMBO_IP_PREFIX:
+       case FR_TYPE_EXTENDED:
+       case FR_TYPE_LONG_EXTENDED:
+       case FR_TYPE_EVS:
+       case FR_TYPE_VSA:
+       case FR_TYPE_VENDOR:
+       case FR_TYPE_BOOLEAN:
+       case FR_TYPE_STRUCT:
+       case FR_TYPE_MAX:
                (void)fr_cond_assert(0);
                *out = '\0';
                return 0;
index 50ba5c9abbae3c9d4d13040562e4b82949164a76..c84836d1c94f09b3766004660b237389f9994055 100644 (file)
@@ -467,43 +467,43 @@ static char const *hs_proto = NULL;
 
 #ifdef WITH_TCP
 static CONF_PARSER limit_config[] = {
-       { FR_CONF_OFFSET("max_connections", PW_TYPE_INTEGER, RADCLIENT, limit.max_connections), .dflt = "16" },
+       { FR_CONF_OFFSET("max_connections", FR_TYPE_INTEGER, RADCLIENT, limit.max_connections), .dflt = "16" },
 
-       { FR_CONF_OFFSET("lifetime", PW_TYPE_INTEGER, RADCLIENT, limit.lifetime), .dflt = "0" },
+       { FR_CONF_OFFSET("lifetime", FR_TYPE_INTEGER, RADCLIENT, limit.lifetime), .dflt = "0" },
 
-       { FR_CONF_OFFSET("idle_timeout", PW_TYPE_INTEGER, RADCLIENT, limit.idle_timeout), .dflt = "30" },
+       { FR_CONF_OFFSET("idle_timeout", FR_TYPE_INTEGER, RADCLIENT, limit.idle_timeout), .dflt = "30" },
        CONF_PARSER_TERMINATOR
 };
 #endif
 
 static const CONF_PARSER client_config[] = {
-       { FR_CONF_POINTER("ipaddr", PW_TYPE_COMBO_IP_PREFIX, &cl_ipaddr) },
-       { FR_CONF_POINTER("ipv4addr", PW_TYPE_IPV4_PREFIX, &cl_ipaddr) },
-       { FR_CONF_POINTER("ipv6addr", PW_TYPE_IPV6_PREFIX, &cl_ipaddr) },
+       { FR_CONF_POINTER("ipaddr", FR_TYPE_COMBO_IP_PREFIX, &cl_ipaddr) },
+       { FR_CONF_POINTER("ipv4addr", FR_TYPE_IPV4_PREFIX, &cl_ipaddr) },
+       { FR_CONF_POINTER("ipv6addr", FR_TYPE_IPV6_PREFIX, &cl_ipaddr) },
 
-       { FR_CONF_POINTER("src_ipaddr", PW_TYPE_STRING, &cl_srcipaddr) },
+       { FR_CONF_POINTER("src_ipaddr", FR_TYPE_STRING, &cl_srcipaddr) },
 
-       { FR_CONF_OFFSET("require_message_authenticator", PW_TYPE_BOOLEAN, RADCLIENT, message_authenticator), .dflt = "no" },
+       { FR_CONF_OFFSET("require_message_authenticator", FR_TYPE_BOOLEAN, RADCLIENT, message_authenticator), .dflt = "no" },
 
-       { FR_CONF_OFFSET("secret", PW_TYPE_STRING | PW_TYPE_SECRET, RADCLIENT, secret) },
-       { FR_CONF_OFFSET("shortname", PW_TYPE_STRING, RADCLIENT, shortname) },
+       { FR_CONF_OFFSET("secret", FR_TYPE_STRING | FR_TYPE_SECRET, RADCLIENT, secret) },
+       { FR_CONF_OFFSET("shortname", FR_TYPE_STRING, RADCLIENT, shortname) },
 
-       { FR_CONF_OFFSET("nas_type", PW_TYPE_STRING, RADCLIENT, nas_type) },
+       { FR_CONF_OFFSET("nas_type", FR_TYPE_STRING, RADCLIENT, nas_type) },
 
-       { FR_CONF_OFFSET("login", PW_TYPE_STRING, RADCLIENT, login) },
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING, RADCLIENT, password) },
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING, RADCLIENT, server) },
-       { FR_CONF_OFFSET("response_window", PW_TYPE_TIMEVAL, RADCLIENT, response_window) },
+       { FR_CONF_OFFSET("login", FR_TYPE_STRING, RADCLIENT, login) },
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING, RADCLIENT, password) },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING, RADCLIENT, server) },
+       { FR_CONF_OFFSET("response_window", FR_TYPE_TIMEVAL, RADCLIENT, response_window) },
 
 #ifdef WITH_TCP
-       { FR_CONF_POINTER("proto", PW_TYPE_STRING, &hs_proto) },
-       { FR_CONF_POINTER("limit", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) limit_config },
+       { FR_CONF_POINTER("proto", FR_TYPE_STRING, &hs_proto) },
+       { FR_CONF_POINTER("limit", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) limit_config },
 #endif
 
 #ifdef WITH_DYNAMIC_CLIENTS
-       { FR_CONF_OFFSET("dynamic_clients", PW_TYPE_STRING, RADCLIENT, client_server) },
-       { FR_CONF_OFFSET("lifetime", PW_TYPE_INTEGER, RADCLIENT, lifetime) },
-       { FR_CONF_OFFSET("rate_limit", PW_TYPE_BOOLEAN, RADCLIENT, rate_limit) },
+       { FR_CONF_OFFSET("dynamic_clients", FR_TYPE_STRING, RADCLIENT, client_server) },
+       { FR_CONF_OFFSET("lifetime", FR_TYPE_INTEGER, RADCLIENT, lifetime) },
+       { FR_CONF_OFFSET("rate_limit", FR_TYPE_BOOLEAN, RADCLIENT, rate_limit) },
 #endif
        CONF_PARSER_TERMINATOR
 };
@@ -685,19 +685,19 @@ RADCLIENT_LIST *client_list_parse_section(CONF_SECTION *section, UNUSED bool tls
  *     We overload this structure a lot.
  */
 static const CONF_PARSER dynamic_config[] = {
-       { FR_CONF_OFFSET("FreeRADIUS-Client-IP-Address", PW_TYPE_IPV4_ADDR, RADCLIENT, ipaddr) },
-       { FR_CONF_OFFSET("FreeRADIUS-Client-IPv6-Address", PW_TYPE_IPV6_ADDR, RADCLIENT, ipaddr) },
-       { FR_CONF_OFFSET("FreeRADIUS-Client-IP-Prefix", PW_TYPE_IPV4_PREFIX, RADCLIENT, ipaddr) },
-       { FR_CONF_OFFSET("FreeRADIUS-Client-IPv6-Prefix", PW_TYPE_IPV6_PREFIX, RADCLIENT, ipaddr) },
-       { FR_CONF_OFFSET("FreeRADIUS-Client-Src-IP-Address", PW_TYPE_IPV4_ADDR, RADCLIENT, src_ipaddr) },
-       { FR_CONF_OFFSET("FreeRADIUS-Client-Src-IPv6-Address", PW_TYPE_IPV6_ADDR, RADCLIENT, src_ipaddr) },
-
-       { FR_CONF_OFFSET("FreeRADIUS-Client-Require-MA", PW_TYPE_BOOLEAN, RADCLIENT, message_authenticator) },
-
-       { FR_CONF_OFFSET("FreeRADIUS-Client-Secret", PW_TYPE_STRING, RADCLIENT, secret), .dflt = "" },
-       { FR_CONF_OFFSET("FreeRADIUS-Client-Shortname", PW_TYPE_STRING, RADCLIENT, shortname), .dflt = "" },
-       { FR_CONF_OFFSET("FreeRADIUS-Client-NAS-Type", PW_TYPE_STRING, RADCLIENT, nas_type) },
-       { FR_CONF_OFFSET("FreeRADIUS-Client-Virtual-Server", PW_TYPE_STRING, RADCLIENT, server) },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-IP-Address", FR_TYPE_IPV4_ADDR, RADCLIENT, ipaddr) },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-IPv6-Address", FR_TYPE_IPV6_ADDR, RADCLIENT, ipaddr) },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-IP-Prefix", FR_TYPE_IPV4_PREFIX, RADCLIENT, ipaddr) },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-IPv6-Prefix", FR_TYPE_IPV6_PREFIX, RADCLIENT, ipaddr) },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-Src-IP-Address", FR_TYPE_IPV4_ADDR, RADCLIENT, src_ipaddr) },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-Src-IPv6-Address", FR_TYPE_IPV6_ADDR, RADCLIENT, src_ipaddr) },
+
+       { FR_CONF_OFFSET("FreeRADIUS-Client-Require-MA", FR_TYPE_BOOLEAN, RADCLIENT, message_authenticator) },
+
+       { FR_CONF_OFFSET("FreeRADIUS-Client-Secret", FR_TYPE_STRING, RADCLIENT, secret), .dflt = "" },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-Shortname", FR_TYPE_STRING, RADCLIENT, shortname), .dflt = "" },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-NAS-Type", FR_TYPE_STRING, RADCLIENT, nas_type) },
+       { FR_CONF_OFFSET("FreeRADIUS-Client-Virtual-Server", FR_TYPE_STRING, RADCLIENT, server) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -1269,7 +1269,7 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
                strvalue = fr_pair_value_asprint(vp, vp, '\'');
 
                switch (dynamic_config[i].type) {
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        if (da->attr == PW_FREERADIUS_CLIENT_IP_ADDRESS) {
                                memcpy(&c->ipaddr, &vp->vp_ip, sizeof(c->ipaddr));
                                cp = cf_pair_alloc(c->cs, "ipv4addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
@@ -1285,7 +1285,7 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
 
                        break;
 
-               case PW_TYPE_IPV6_ADDR:
+               case FR_TYPE_IPV6_ADDR:
                        if (da->attr == PW_FREERADIUS_CLIENT_IPV6_ADDRESS) {
                                memcpy(&c->ipaddr, &vp->vp_ip, sizeof(c->ipaddr));
                                cp = cf_pair_alloc(c->cs, "ipv6addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
@@ -1300,7 +1300,7 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
 
                        break;
 
-               case PW_TYPE_IPV4_PREFIX:
+               case FR_TYPE_IPV4_PREFIX:
                        if (da->attr == PW_FREERADIUS_CLIENT_IP_PREFIX) {
                                memcpy(&c->ipaddr, &vp->vp_ip, sizeof(c->ipaddr));
                                cp = cf_pair_alloc(c->cs, "ipv4addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
@@ -1308,7 +1308,7 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
 
                        break;
 
-               case PW_TYPE_IPV6_PREFIX:
+               case FR_TYPE_IPV6_PREFIX:
                        if (da->attr == PW_FREERADIUS_CLIENT_IPV6_PREFIX) {
                                memcpy(&c->ipaddr, &vp->vp_ip, sizeof(c->ipaddr));;
                                cp = cf_pair_alloc(c->cs, "ipv6addr", strvalue, T_OP_SET, T_BARE_WORD, T_BARE_WORD);
@@ -1316,7 +1316,7 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
 
                        break;
 
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                {
                        CONF_PARSER const *parse;
 
@@ -1351,7 +1351,7 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
                }
                        break;
 
-               case PW_TYPE_BOOLEAN:
+               case FR_TYPE_BOOLEAN:
                {
                        CONF_PARSER const *parse;
 
@@ -1401,7 +1401,7 @@ RADCLIENT *client_afrom_request(RADCLIENT_LIST *clients, REQUEST *request)
                                goto error;
                        }
 
-                       if (vp->vp_type == PW_TYPE_STRING) {
+                       if (vp->vp_type == FR_TYPE_STRING) {
                                RDEBUG2("%s = '%s'", vp->da->name, value);
                                cp = cf_pair_alloc(c->cs, vp->da->name, value, T_OP_SET,
                                                   T_BARE_WORD, T_SINGLE_QUOTED_STRING);
index 47fd565590b866778e566ae3a571311fee57a2eb..9aed4ceffa9970060ef023361999969d75e3dceb 100644 (file)
@@ -95,12 +95,12 @@ typedef struct fr_command_socket_t {
 } fr_command_socket_t;
 
 static const CONF_PARSER command_config[] = {
-       { FR_CONF_OFFSET("socket", PW_TYPE_STRING, fr_command_socket_t, path), .dflt = "${run_dir}/radiusd.sock" },
-       { FR_CONF_DEPRECATED("uid", PW_TYPE_STRING, fr_command_socket_t, NULL) },
-       { FR_CONF_OFFSET("gid", PW_TYPE_STRING, fr_command_socket_t, gid_name) },
-       { FR_CONF_OFFSET("mode", PW_TYPE_STRING, fr_command_socket_t, mode_name) },
-       { FR_CONF_OFFSET("peercred", PW_TYPE_BOOLEAN, fr_command_socket_t, peercred), .dflt = "yes" },
-       { FR_CONF_OFFSET("blocking", PW_TYPE_BOOLEAN, fr_command_socket_t, blocking),  },
+       { FR_CONF_OFFSET("socket", FR_TYPE_STRING, fr_command_socket_t, path), .dflt = "${run_dir}/radiusd.sock" },
+       { FR_CONF_DEPRECATED("uid", FR_TYPE_STRING, fr_command_socket_t, NULL) },
+       { FR_CONF_OFFSET("gid", FR_TYPE_STRING, fr_command_socket_t, gid_name) },
+       { FR_CONF_OFFSET("mode", FR_TYPE_STRING, fr_command_socket_t, mode_name) },
+       { FR_CONF_OFFSET("peercred", FR_TYPE_BOOLEAN, fr_command_socket_t, peercred), .dflt = "yes" },
+       { FR_CONF_OFFSET("blocking", FR_TYPE_BOOLEAN, fr_command_socket_t, blocking),  },
        CONF_PARSER_TERMINATOR
 };
 
@@ -957,28 +957,28 @@ static void cprint_conf_parser(rad_listen_t *listener, int indent, CONF_SECTION
                                variables[i].name);
                        break;
 
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        cprintf(listener, "%.*s%s = %u\n", indent, tabs,
                                variables[i].name, *(int const *) data);
                        break;
 
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        inet_ntop(AF_INET, data, buffer, sizeof(buffer));
                        break;
 
-               case PW_TYPE_IPV6_ADDR:
+               case FR_TYPE_IPV6_ADDR:
                        inet_ntop(AF_INET6, data, buffer, sizeof(buffer));
                        break;
 
-               case PW_TYPE_BOOLEAN:
+               case FR_TYPE_BOOLEAN:
                        cprintf(listener, "%.*s%s = %s\n", indent, tabs,
                                variables[i].name,
                                ((*(bool const *) data) == false) ? "no" : "yes");
                        break;
 
-               case PW_TYPE_STRING:
-               case PW_TYPE_FILE_INPUT:
-               case PW_TYPE_FILE_OUTPUT:
+               case FR_TYPE_STRING:
+               case FR_TYPE_FILE_INPUT:
+               case FR_TYPE_FILE_OUTPUT:
                        /*
                         *      FIXME: Escape things in the string!
                         */
@@ -2502,7 +2502,7 @@ static int command_set_module_config(rad_listen_t *listener, int argc, char *arg
                /*
                 *      FIXME: Recurse into sub-types somehow...
                 */
-               if (PW_BASE_TYPE(variables[i].type) == PW_TYPE_SUBSECTION) continue;
+               if (PW_BASE_TYPE(variables[i].type) == FR_TYPE_SUBSECTION) continue;
 
                if (strcmp(variables[i].name, argv[1]) == 0) {
                        rcode = i;
index b2f4250df96684e9c50d4d0a16a7c980a5d1d6c5..bf0162c92f485877a24d919b09c19779f7335e74 100644 (file)
@@ -171,7 +171,7 @@ static int cond_do_regex(REQUEST *request, fr_cond_t const *c,
        size_t          nmatch = sizeof(rxmatch) / sizeof(regmatch_t);
 
        if (!rad_cond_assert(lhs != NULL)) return -1;
-       if (!rad_cond_assert(lhs->type == PW_TYPE_STRING)) return -1;
+       if (!rad_cond_assert(lhs->type == FR_TYPE_STRING)) return -1;
 
        EVAL_DEBUG("CMP WITH REGEX %s %s",
                   map->rhs->tmpl_iflag ? "CASE INSENSITIVE" : "CASE SENSITIVE",
@@ -183,7 +183,7 @@ static int cond_do_regex(REQUEST *request, fr_cond_t const *c,
                break;
 
        default:
-               if (!rad_cond_assert(rhs && rhs->type == PW_TYPE_STRING)) return -1;
+               if (!rad_cond_assert(rhs && rhs->type == FR_TYPE_STRING)) return -1;
                if (!rad_cond_assert(rhs && rhs->datum.strvalue)) return -1;
                slen = regex_compile(request, &rreg, rhs->datum.strvalue, rhs->datum.length,
                                     map->rhs->tmpl_iflag, map->rhs->tmpl_mflag, true, true);
@@ -228,7 +228,7 @@ static int cond_do_regex(REQUEST *request, fr_cond_t const *c,
 static void cond_print_operands(value_box_t const *lhs, value_box_t const *rhs)
 {
        if (lhs) {
-               if (lhs->type == PW_TYPE_STRING) {
+               if (lhs->type == FR_TYPE_STRING) {
                        EVAL_DEBUG("LHS: \"%s\" (%zu)" , lhs->datum.strvalue, lhs->datum.length);
                } else {
                        EVAL_DEBUG("LHS: 0x%pH (%zu)", lhs->datum.octets, lhs->datum.length);
@@ -238,7 +238,7 @@ static void cond_print_operands(value_box_t const *lhs, value_box_t const *rhs)
        }
 
        if (rhs) {
-               if (rhs->type == PW_TYPE_STRING) {
+               if (rhs->type == FR_TYPE_STRING) {
                        EVAL_DEBUG("RHS: \"%s\" (%zu)", rhs->datum.strvalue, rhs->datum.length);
                } else {
                        EVAL_DEBUG("RHS: 0x%pH (%zu)", rhs->datum.octets, rhs->datum.length);
@@ -372,7 +372,7 @@ static int cond_normalise_and_cmp(REQUEST *request, fr_cond_t const *c, value_bo
        value_box_t             *rhs = NULL;
 
        fr_dict_attr_t const    *cast = NULL;
-       PW_TYPE                 cast_type = PW_TYPE_INVALID;
+       fr_type_t                       cast_type = FR_TYPE_INVALID;
 
        value_box_t             lhs_cast, rhs_cast;
        void                    *lhs_cast_buff = NULL, *rhs_cast_buff = NULL;
@@ -389,7 +389,7 @@ static int cond_normalise_and_cmp(REQUEST *request, fr_cond_t const *c, value_bo
         */
 #define CAST(_s) \
 do {\
-       if ((cast_type != PW_TYPE_INVALID) && _s && (_s ->type != PW_TYPE_INVALID) && (cast_type != _s->type)) {\
+       if ((cast_type != FR_TYPE_INVALID) && _s && (_s ->type != FR_TYPE_INVALID) && (cast_type != _s->type)) {\
                EVAL_DEBUG("CASTING " #_s " FROM %s TO %s",\
                           fr_int2str(dict_attr_types, _s->type, "<INVALID>"),\
                           fr_int2str(dict_attr_types, cast_type, "<INVALID>"));\
@@ -405,11 +405,11 @@ do {\
 
 #define CHECK_INT_CAST(_l, _r) \
 do {\
-       if ((cast_type == PW_TYPE_INVALID) &&\
-           _l && (_l->type == PW_TYPE_STRING) &&\
-           _r && (_r->type == PW_TYPE_STRING) &&\
+       if ((cast_type == FR_TYPE_INVALID) &&\
+           _l && (_l->type == FR_TYPE_STRING) &&\
+           _r && (_r->type == FR_TYPE_STRING) &&\
            all_digits(lhs->datum.strvalue) && all_digits(rhs->datum.strvalue)) {\
-               cast_type = PW_TYPE_INTEGER64;\
+               cast_type = FR_TYPE_INTEGER64;\
                EVAL_DEBUG("OPERANDS ARE NUMBER STRINGS, SETTING CAST TO integer64");\
        }\
 } while (0)
@@ -419,7 +419,7 @@ do {\
         */
 #ifdef HAVE_REGEX
        if (map->op == T_OP_REG_EQ) {
-               cast_type = PW_TYPE_STRING;
+               cast_type = FR_TYPE_STRING;
 
                if (map->rhs->type == TMPL_TYPE_XLAT_STRUCT) escape = regex_escape;
        }
@@ -531,7 +531,7 @@ do {\
                        data.datum.strvalue = map->rhs->name;
                        data.datum.length = map->rhs->len;
                }
-               data.type = PW_TYPE_STRING;
+               data.type = FR_TYPE_STRING;
 
                rad_assert(data.datum.strvalue);
 
@@ -658,7 +658,7 @@ int cond_eval_map(REQUEST *request, UNUSED int modreturn, UNUSED int depth, fr_c
                        data.datum.length = map->lhs->len;
                }
                rad_assert(data.datum.strvalue);
-               data.type = PW_TYPE_STRING;
+               data.type = FR_TYPE_STRING;
 
                rcode = cond_normalise_and_cmp(request, c, &data);
                if (p) talloc_free(p);
index c7fecb1a96bdf01e73b15a731c4b9c7bd17f2b57..00a79012d4f1640cf87dc02bdb5cfb14ce40b2be 100644 (file)
@@ -180,7 +180,7 @@ static ssize_t cond_tokenize_string(TALLOC_CTX *ctx, char **out,  char const **e
                         */
                        value_box_t data;
                        char quote = *start;
-                       PW_TYPE src_type = PW_TYPE_STRING;
+                       fr_type_t src_type = FR_TYPE_STRING;
 
                        /*
                         *      Regex compilers can handle escapes.  So we don't do it.
@@ -282,7 +282,7 @@ static ssize_t cond_tokenize_cast(char const *start, fr_dict_attr_t const **pda,
 {
        char const *p = start;
        char const *q;
-       PW_TYPE cast;
+       fr_type_t cast;
 
        while (isspace((int) *p)) p++; /* skip spaces before condition */
 
@@ -292,8 +292,8 @@ static ssize_t cond_tokenize_cast(char const *start, fr_dict_attr_t const **pda,
        q = p;
        while (*q && *q != '>') q++;
 
-       cast = fr_substr2int(dict_attr_types, p, PW_TYPE_INVALID, q - p);
-       if (cast == PW_TYPE_INVALID) {
+       cast = fr_substr2int(dict_attr_types, p, FR_TYPE_INVALID, q - p);
+       if (cast == FR_TYPE_INVALID) {
                *error = "Invalid data type in cast";
                return -(p - start);
        }
@@ -320,7 +320,7 @@ static ssize_t cond_tokenize_cast(char const *start, fr_dict_attr_t const **pda,
        return q - start;
 }
 
-static bool cond_type_check(fr_cond_t *c, PW_TYPE lhs_type)
+static bool cond_type_check(fr_cond_t *c, fr_type_t lhs_type)
 {
        /*
         *      SOME integer mismatch is OK.  If the LHS has a large type,
@@ -329,57 +329,57 @@ static bool cond_type_check(fr_cond_t *c, PW_TYPE lhs_type)
         *      If the LHS has a small type, and the RHS has a large type,
         *      then add a cast to the LHS.
         */
-       if (lhs_type == PW_TYPE_INTEGER64) {
-               if ((c->data.map->rhs->tmpl_da->type == PW_TYPE_INTEGER) ||
-                   (c->data.map->rhs->tmpl_da->type == PW_TYPE_SHORT) ||
-                   (c->data.map->rhs->tmpl_da->type == PW_TYPE_BYTE)) {
+       if (lhs_type == FR_TYPE_INTEGER64) {
+               if ((c->data.map->rhs->tmpl_da->type == FR_TYPE_INTEGER) ||
+                   (c->data.map->rhs->tmpl_da->type == FR_TYPE_SHORT) ||
+                   (c->data.map->rhs->tmpl_da->type == FR_TYPE_BYTE)) {
                        c->cast = NULL;
                        return true;
                }
        }
 
-       if (lhs_type == PW_TYPE_INTEGER) {
-               if ((c->data.map->rhs->tmpl_da->type == PW_TYPE_SHORT) ||
-                   (c->data.map->rhs->tmpl_da->type == PW_TYPE_BYTE)) {
+       if (lhs_type == FR_TYPE_INTEGER) {
+               if ((c->data.map->rhs->tmpl_da->type == FR_TYPE_SHORT) ||
+                   (c->data.map->rhs->tmpl_da->type == FR_TYPE_BYTE)) {
                        c->cast = NULL;
                        return true;
                }
 
-               if (c->data.map->rhs->tmpl_da->type == PW_TYPE_INTEGER64) {
+               if (c->data.map->rhs->tmpl_da->type == FR_TYPE_INTEGER64) {
                        c->cast = c->data.map->rhs->tmpl_da;
                        return true;
                }
        }
 
-       if (lhs_type == PW_TYPE_SHORT) {
-               if (c->data.map->rhs->tmpl_da->type == PW_TYPE_BYTE) {
+       if (lhs_type == FR_TYPE_SHORT) {
+               if (c->data.map->rhs->tmpl_da->type == FR_TYPE_BYTE) {
                        c->cast = NULL;
                        return true;
                }
 
-               if ((c->data.map->rhs->tmpl_da->type == PW_TYPE_INTEGER64) ||
-                   (c->data.map->rhs->tmpl_da->type == PW_TYPE_INTEGER)) {
+               if ((c->data.map->rhs->tmpl_da->type == FR_TYPE_INTEGER64) ||
+                   (c->data.map->rhs->tmpl_da->type == FR_TYPE_INTEGER)) {
                        c->cast = c->data.map->rhs->tmpl_da;
                        return true;
                }
        }
 
-       if (lhs_type == PW_TYPE_BYTE) {
-               if ((c->data.map->rhs->tmpl_da->type == PW_TYPE_INTEGER64) ||
-                   (c->data.map->rhs->tmpl_da->type == PW_TYPE_INTEGER) ||
-                   (c->data.map->rhs->tmpl_da->type == PW_TYPE_SHORT)) {
+       if (lhs_type == FR_TYPE_BYTE) {
+               if ((c->data.map->rhs->tmpl_da->type == FR_TYPE_INTEGER64) ||
+                   (c->data.map->rhs->tmpl_da->type == FR_TYPE_INTEGER) ||
+                   (c->data.map->rhs->tmpl_da->type == FR_TYPE_SHORT)) {
                        c->cast = c->data.map->rhs->tmpl_da;
                        return true;
                }
        }
 
-       if ((lhs_type == PW_TYPE_IPV4_PREFIX) &&
-           (c->data.map->rhs->tmpl_da->type == PW_TYPE_IPV4_ADDR)) {
+       if ((lhs_type == FR_TYPE_IPV4_PREFIX) &&
+           (c->data.map->rhs->tmpl_da->type == FR_TYPE_IPV4_ADDR)) {
                return true;
        }
 
-       if ((lhs_type == PW_TYPE_IPV6_PREFIX) &&
-           (c->data.map->rhs->tmpl_da->type == PW_TYPE_IPV6_ADDR)) {
+       if ((lhs_type == FR_TYPE_IPV6_PREFIX) &&
+           (c->data.map->rhs->tmpl_da->type == FR_TYPE_IPV6_ADDR)) {
                return true;
        }
 
@@ -387,14 +387,14 @@ static bool cond_type_check(fr_cond_t *c, PW_TYPE lhs_type)
         *      Same checks as above, but with the types swapped, and
         *      with explicit cast for the interpretor.
         */
-       if ((lhs_type == PW_TYPE_IPV4_ADDR) &&
-           (c->data.map->rhs->tmpl_da->type == PW_TYPE_IPV4_PREFIX)) {
+       if ((lhs_type == FR_TYPE_IPV4_ADDR) &&
+           (c->data.map->rhs->tmpl_da->type == FR_TYPE_IPV4_PREFIX)) {
                c->cast = c->data.map->rhs->tmpl_da;
                return true;
        }
 
-       if ((lhs_type == PW_TYPE_IPV6_ADDR) &&
-           (c->data.map->rhs->tmpl_da->type == PW_TYPE_IPV6_PREFIX)) {
+       if ((lhs_type == FR_TYPE_IPV6_ADDR) &&
+           (c->data.map->rhs->tmpl_da->type == FR_TYPE_IPV6_PREFIX)) {
                c->cast = c->data.map->rhs->tmpl_da;
                return true;
        }
@@ -524,7 +524,7 @@ static ssize_t cond_tokenize(TALLOC_CTX *ctx, CONF_ITEM *ci, char const *start,
                                return_P("Empty octet string is invalid");
                        }
 
-                       c->cast = fr_dict_attr_by_num(NULL, 0, PW_CAST_BASE + PW_TYPE_OCTETS);
+                       c->cast = fr_dict_attr_by_num(NULL, 0, PW_CAST_BASE + FR_TYPE_OCTETS);
                }
 
                while (isspace((int)*p)) p++; /* skip spaces after LHS */
@@ -792,12 +792,12 @@ static ssize_t cond_tokenize(TALLOC_CTX *ctx, CONF_ITEM *ci, char const *start,
                                }
 
                                if ((map->lhs->type != TMPL_TYPE_ATTR) ||
-                                   !((map->lhs->tmpl_da->type == PW_TYPE_OCTETS) ||
-                                     (map->lhs->tmpl_da->type == PW_TYPE_BYTE) ||
-                                     (map->lhs->tmpl_da->type == PW_TYPE_SHORT) ||
-                                     (map->lhs->tmpl_da->type == PW_TYPE_INTEGER) ||
-                                     (map->lhs->tmpl_da->type == PW_TYPE_INTEGER64))) {
-                                       c->cast = fr_dict_attr_by_num(NULL, 0, PW_CAST_BASE + PW_TYPE_OCTETS);
+                                   !((map->lhs->tmpl_da->type == FR_TYPE_OCTETS) ||
+                                     (map->lhs->tmpl_da->type == FR_TYPE_BYTE) ||
+                                     (map->lhs->tmpl_da->type == FR_TYPE_SHORT) ||
+                                     (map->lhs->tmpl_da->type == FR_TYPE_INTEGER) ||
+                                     (map->lhs->tmpl_da->type == FR_TYPE_INTEGER64))) {
+                                       c->cast = fr_dict_attr_by_num(NULL, 0, PW_CAST_BASE + FR_TYPE_OCTETS);
                                }
                        }
 
@@ -912,40 +912,40 @@ static ssize_t cond_tokenize(TALLOC_CTX *ctx, CONF_ITEM *ci, char const *start,
                                         *      Run-time parsing of strings.
                                         *      Run-time copying of octets.
                                         */
-                                       if ((c->data.map->lhs->tmpl_da->type == PW_TYPE_STRING) ||
-                                           (c->data.map->lhs->tmpl_da->type == PW_TYPE_OCTETS)) {
+                                       if ((c->data.map->lhs->tmpl_da->type == FR_TYPE_STRING) ||
+                                           (c->data.map->lhs->tmpl_da->type == FR_TYPE_OCTETS)) {
                                                goto cast_ok;
                                        }
 
                                        /*
                                         *      ifid to integer64 is OK
                                         */
-                                       if ((c->data.map->lhs->tmpl_da->type == PW_TYPE_IFID) &&
-                                           (c->cast->type == PW_TYPE_INTEGER64)) {
+                                       if ((c->data.map->lhs->tmpl_da->type == FR_TYPE_IFID) &&
+                                           (c->cast->type == FR_TYPE_INTEGER64)) {
                                                goto cast_ok;
                                        }
 
                                        /*
                                         *      ipaddr to ipv4prefix is OK
                                         */
-                                       if ((c->data.map->lhs->tmpl_da->type == PW_TYPE_IPV4_ADDR) &&
-                                           (c->cast->type == PW_TYPE_IPV4_PREFIX)) {
+                                       if ((c->data.map->lhs->tmpl_da->type == FR_TYPE_IPV4_ADDR) &&
+                                           (c->cast->type == FR_TYPE_IPV4_PREFIX)) {
                                                goto cast_ok;
                                        }
 
                                        /*
                                         *      ipv6addr to ipv6prefix is OK
                                         */
-                                       if ((c->data.map->lhs->tmpl_da->type == PW_TYPE_IPV6_ADDR) &&
-                                           (c->cast->type == PW_TYPE_IPV6_PREFIX)) {
+                                       if ((c->data.map->lhs->tmpl_da->type == FR_TYPE_IPV6_ADDR) &&
+                                           (c->cast->type == FR_TYPE_IPV6_PREFIX)) {
                                                goto cast_ok;
                                        }
 
                                        /*
                                         *      integer64 to ethernet is OK.
                                         */
-                                       if ((c->data.map->lhs->tmpl_da->type == PW_TYPE_INTEGER64) &&
-                                           (c->cast->type == PW_TYPE_ETHERNET)) {
+                                       if ((c->data.map->lhs->tmpl_da->type == FR_TYPE_INTEGER64) &&
+                                           (c->cast->type == FR_TYPE_ETHERNET)) {
                                                goto cast_ok;
                                        }
 
@@ -1011,7 +1011,7 @@ static ssize_t cond_tokenize(TALLOC_CTX *ctx, CONF_ITEM *ci, char const *start,
                                 */
                                if ((c->data.map->lhs->type == TMPL_TYPE_ATTR) &&
                                    (c->data.map->rhs->type != TMPL_TYPE_ATTR) &&
-                                   (c->data.map->lhs->tmpl_da->type == PW_TYPE_STRING) &&
+                                   (c->data.map->lhs->tmpl_da->type == FR_TYPE_STRING) &&
                                    (c->data.map->op != T_OP_CMP_TRUE) &&
                                    (c->data.map->op != T_OP_CMP_FALSE) &&
                                    (map->rhs->quote == T_BARE_WORD)) {
@@ -1025,9 +1025,9 @@ static ssize_t cond_tokenize(TALLOC_CTX *ctx, CONF_ITEM *ci, char const *start,
                                 */
                                if ((c->data.map->lhs->type == TMPL_TYPE_ATTR) &&
                                    (c->data.map->rhs->type != TMPL_TYPE_ATTR) &&
-                                   (c->data.map->lhs->tmpl_da->type != PW_TYPE_STRING) &&
-                                   (c->data.map->lhs->tmpl_da->type != PW_TYPE_OCTETS) &&
-                                   (c->data.map->lhs->tmpl_da->type != PW_TYPE_DATE) &&
+                                   (c->data.map->lhs->tmpl_da->type != FR_TYPE_STRING) &&
+                                   (c->data.map->lhs->tmpl_da->type != FR_TYPE_OCTETS) &&
+                                   (c->data.map->lhs->tmpl_da->type != FR_TYPE_DATE) &&
                                    (rhs_type == T_SINGLE_QUOTED_STRING)) {
                                        *error = "Comparison value must be an unquoted string";
                                return_rhs:
@@ -1058,19 +1058,19 @@ static ssize_t cond_tokenize(TALLOC_CTX *ctx, CONF_ITEM *ci, char const *start,
                                if ((c->data.map->lhs->type == TMPL_TYPE_ATTR) &&
                                    ((c->data.map->rhs->type == TMPL_TYPE_UNPARSED) ||
                                     (c->data.map->rhs->type == TMPL_TYPE_DATA))) {
-                                       PW_TYPE type = c->data.map->lhs->tmpl_da->type;
+                                       fr_type_t type = c->data.map->lhs->tmpl_da->type;
 
                                        switch (c->data.map->lhs->tmpl_da->type) {
-                                       case PW_TYPE_IPV4_ADDR:
+                                       case FR_TYPE_IPV4_ADDR:
                                                if (strchr(c->data.map->rhs->name, '/') != NULL) {
-                                                       type = PW_TYPE_IPV4_PREFIX;
+                                                       type = FR_TYPE_IPV4_PREFIX;
                                                        c->cast = fr_dict_attr_by_num(NULL, 0, PW_CAST_BASE + type);
                                                }
                                                break;
 
-                                       case PW_TYPE_IPV6_ADDR:
+                                       case FR_TYPE_IPV6_ADDR:
                                                if (strchr(c->data.map->rhs->name, '/') != NULL) {
-                                                       type = PW_TYPE_IPV6_PREFIX;
+                                                       type = FR_TYPE_IPV6_PREFIX;
                                                        c->cast = fr_dict_attr_by_num(NULL, 0, PW_CAST_BASE + type);
                                                }
                                                break;
@@ -1109,7 +1109,7 @@ static ssize_t cond_tokenize(TALLOC_CTX *ctx, CONF_ITEM *ci, char const *start,
                                         *      Cast the LHS to the
                                         *      type of the RHS.
                                         */
-                                       if (c->data.map->lhs->tmpl_da->type == PW_TYPE_COMBO_IP_ADDR) {
+                                       if (c->data.map->lhs->tmpl_da->type == FR_TYPE_COMBO_IP_ADDR) {
                                                fr_dict_attr_t const *da;
 
                                                da = fr_dict_attr_by_type(c->data.map->lhs->tmpl_da,
@@ -1129,14 +1129,14 @@ static ssize_t cond_tokenize(TALLOC_CTX *ctx, CONF_ITEM *ci, char const *start,
                                    ((c->data.map->rhs->type == TMPL_TYPE_XLAT) ||
                                     (c->data.map->rhs->type == TMPL_TYPE_XLAT_STRUCT) ||
                                     (c->data.map->rhs->type == TMPL_TYPE_EXEC))) {
-                                       if (c->data.map->lhs->tmpl_da->type == PW_TYPE_IPV4_ADDR) {
+                                       if (c->data.map->lhs->tmpl_da->type == FR_TYPE_IPV4_ADDR) {
                                                c->cast = fr_dict_attr_by_num(NULL, 0,
-                                                                             PW_CAST_BASE + PW_TYPE_IPV4_PREFIX);
+                                                                             PW_CAST_BASE + FR_TYPE_IPV4_PREFIX);
                                        }
 
-                                       if (c->data.map->lhs->tmpl_da->type == PW_TYPE_IPV6_ADDR) {
+                                       if (c->data.map->lhs->tmpl_da->type == FR_TYPE_IPV6_ADDR) {
                                                c->cast = fr_dict_attr_by_num(NULL, 0,
-                                                                             PW_CAST_BASE + PW_TYPE_IPV6_PREFIX);
+                                                                             PW_CAST_BASE + FR_TYPE_IPV6_PREFIX);
                                        }
                                }
 
index 77027fcb0c1be1c2ced6a490fd9237b33eb57308..88b592908837f3c145374278116850baf4e770b5 100644 (file)
@@ -398,7 +398,7 @@ static FILE *cf_file_open(CONF_SECTION *cs, char const *filename)
 /** Set the euid/egid used when performing file checks
  *
  * Sets the euid, and egid used when cf_file_check is called to check
- * permissions on conf items of type #PW_TYPE_FILE_INPUT.
+ * permissions on conf items of type #FR_TYPE_FILE_INPUT.
  *
  * @note This is probably only useful for the freeradius daemon itself.
  *
@@ -1380,7 +1380,7 @@ static char const parse_spaces[] = "
 /** Validation function for ipaddr conf_file types
  *
  */
-static inline int fr_item_validate_ipaddr(CONF_SECTION *cs, char const *name, PW_TYPE type, char const *value,
+static inline int fr_item_validate_ipaddr(CONF_SECTION *cs, char const *name, fr_type_t type, char const *value,
                                          fr_ipaddr_t *ipaddr)
 {
        char ipbuf[128];
@@ -1395,9 +1395,9 @@ static inline int fr_item_validate_ipaddr(CONF_SECTION *cs, char const *name, PW
        }
 
        switch (type) {
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_COMBO_IP_ADDR:
                switch (ipaddr->af) {
                case AF_INET:
                if (ipaddr->prefix != 32) {
@@ -1453,17 +1453,17 @@ int cf_section_parse_pass2(void *base, CONF_SECTION *cs, CONF_PARSER const varia
                char const      *name = variables[i].name;
                int             type = variables[i].type;
 
-               is_tmpl = (type & PW_TYPE_TMPL);
-               is_xlat = (type & PW_TYPE_XLAT);
-               attribute = (type & PW_TYPE_ATTRIBUTE);
-               multi = (type & PW_TYPE_MULTI);
+               is_tmpl = (type & FR_TYPE_TMPL);
+               is_xlat = (type & FR_TYPE_XLAT);
+               attribute = (type & FR_TYPE_ATTRIBUTE);
+               multi = (type & FR_TYPE_MULTI);
 
                type = PW_BASE_TYPE(type);              /* normal types are small */
 
                /*
                 *      It's a section, recurse!
                 */
-               if (type == PW_TYPE_SUBSECTION) {
+               if (type == FR_TYPE_SUBSECTION) {
                        uint8_t         *subcs_base;
                        CONF_SECTION    *subcs = cf_subsection_find(cs, name);
 
@@ -1473,7 +1473,7 @@ int cf_section_parse_pass2(void *base, CONF_SECTION *cs, CONF_PARSER const varia
                         */
                        if (!base) {
                                subcs_base = NULL;
-                       } else if (type & PW_TYPE_MULTI) {
+                       } else if (type & FR_TYPE_MULTI) {
                                size_t j, len;
                                uint8_t **array;
 
@@ -1521,7 +1521,7 @@ int cf_section_parse_pass2(void *base, CONF_SECTION *cs, CONF_PARSER const varia
                         *      Ignore %{... in shared secrets.
                         *      They're never dynamically expanded.
                         */
-                       if ((variables[i].type & PW_TYPE_SECRET) != 0) continue;
+                       if ((variables[i].type & FR_TYPE_SECRET) != 0) continue;
 
                        if (strstr(cp->value, "%{") != NULL) {
                                cf_log_err(&cp->item, "Found dynamic expansion in string which "
@@ -1534,8 +1534,8 @@ int cf_section_parse_pass2(void *base, CONF_SECTION *cs, CONF_PARSER const varia
                /*
                 *      Parse (and throw away) the xlat string (for validation).
                 *
-                *      FIXME: All of these should be converted from PW_TYPE_XLAT
-                *      to PW_TYPE_TMPL.
+                *      FIXME: All of these should be converted from FR_TYPE_XLAT
+                *      to FR_TYPE_TMPL.
                 */
                if (is_xlat) {
                        char const      *error;
@@ -1671,16 +1671,16 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
 
        if (!cs) return -1;
 
-       attribute = (type & PW_TYPE_ATTRIBUTE);
-       required = (type & PW_TYPE_REQUIRED);
-       secret = (type & PW_TYPE_SECRET);
-       file_input = (type == PW_TYPE_FILE_INPUT);      /* check, not and */
-       file_exists = (type == PW_TYPE_FILE_EXISTS);    /* check, not and */
-       cant_be_empty = (type & PW_TYPE_NOT_EMPTY);
-       tmpl = (type & PW_TYPE_TMPL);
+       attribute = (type & FR_TYPE_ATTRIBUTE);
+       required = (type & FR_TYPE_REQUIRED);
+       secret = (type & FR_TYPE_SECRET);
+       file_input = (type == FR_TYPE_FILE_INPUT);      /* check, not and */
+       file_exists = (type == FR_TYPE_FILE_EXISTS);    /* check, not and */
+       cant_be_empty = (type & FR_TYPE_NOT_EMPTY);
+       tmpl = (type & FR_TYPE_TMPL);
 
        rad_assert(cp);
-       rad_assert(!(type & PW_TYPE_ATTRIBUTE) || tmpl);         /* Attribute flag only valid for templates */
+       rad_assert(!(type & FR_TYPE_ATTRIBUTE) || tmpl);         /* Attribute flag only valid for templates */
 
        if (required) cant_be_empty = true;             /* May want to review this in the future... */
 
@@ -1741,7 +1741,7 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
        }
 
        switch (type) {
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BOOLEAN:
                /*
                 *      Allow yes/no, true/false, and on/off
                 */
@@ -1762,7 +1762,7 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
                cf_log_info(cs, "%.*s\t%s = %s", cs->depth, parse_spaces, cf_pair_attr(cp), cp->value);
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
        {
                unsigned long v = strtoul(cp->value, 0, 0);
 
@@ -1785,7 +1785,7 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
        }
                break;
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
        {
                unsigned long v = strtoul(cp->value, 0, 0);
 
@@ -1800,7 +1800,7 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
        }
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
        {
                unsigned long v = strtoul(cp->value, 0, 0);
 
@@ -1815,12 +1815,12 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
        }
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                *(uint64_t *)out = strtoull(cp->value, NULL, 10);
                cf_log_info(cs, "%.*s\t%s = %" PRIu64, cs->depth, parse_spaces, cf_pair_attr(cp), *(uint64_t *)out);
                break;
 
-       case PW_TYPE_SIZE:
+       case FR_TYPE_SIZE:
        {
                if (fr_size_from_str((size_t *)out, cp->value) < 0) {
                        cf_log_err(&(cs->item), "Invalid value \"%s\" for variable %s: %s", cp->value,
@@ -1832,12 +1832,12 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
                break;
        }
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
                *(int32_t *)out = strtol(cp->value, NULL, 10);
                cf_log_info(cs, "%.*s\t%s = %d", cs->depth, parse_spaces, cf_pair_attr(cp), *(int32_t *)out);
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
        {
                char **str = out;
 
@@ -1874,8 +1874,8 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
        }
                break;
 
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_PREFIX:
                ipaddr = out;
 
                if (fr_inet_pton4(ipaddr, cp->value, -1, true, false, true) < 0) {
@@ -1890,8 +1890,8 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
                }
                break;
 
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_PREFIX:
                ipaddr = out;
 
                if (fr_inet_pton6(ipaddr, cp->value, -1, true, false, true) < 0) {
@@ -1906,8 +1906,8 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
                }
                break;
 
-       case PW_TYPE_COMBO_IP_ADDR:
-       case PW_TYPE_COMBO_IP_PREFIX:
+       case FR_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_COMBO_IP_PREFIX:
                ipaddr = out;
 
                if (fr_inet_pton(ipaddr, cp->value, -1, AF_UNSPEC, true, true) < 0) {
@@ -1922,7 +1922,7 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
                }
                break;
 
-       case PW_TYPE_TIMEVAL:
+       case FR_TYPE_TIMEVAL:
        {
                struct timeval tv;
 
@@ -1943,8 +1943,8 @@ static int cf_pair_parse_value(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs, CON
                 *      It's not an error parsing the configuration
                 *      file.
                 */
-               rad_assert(type > PW_TYPE_INVALID);
-               rad_assert(type < PW_TYPE_MAX);
+               rad_assert(type > FR_TYPE_INVALID);
+               rad_assert(type < FR_TYPE_MAX);
 
                cf_log_err(&(cp->item), "type '%s' (%i) is not supported in the configuration files",
                           fr_int2str(dict_attr_types, type, "?Unknown?"), type);
@@ -1998,12 +1998,12 @@ static int cf_pair_default(CONF_PAIR **out, CONF_SECTION *cs, char const *name,
         */
        if (dflt_quote == T_INVALID) {
                switch (type) {
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        dflt_quote = T_DOUBLE_QUOTED_STRING;
                        break;
 
-               case PW_TYPE_FILE_INPUT:
-               case PW_TYPE_FILE_OUTPUT:
+               case FR_TYPE_FILE_INPUT:
+               case FR_TYPE_FILE_OUTPUT:
                        dflt_quote = T_DOUBLE_QUOTED_STRING;
                        break;
 
@@ -2036,23 +2036,23 @@ static int cf_pair_default(CONF_PAIR **out, CONF_SECTION *cs, char const *name,
  * @note The dflt value will only be used if no matching #CONF_PAIR is found. Empty strings will not
  *      result in the dflt value being used.
  *
- * **PW_TYPE to data type mappings**
- * | PW_TYPE                 | Data type          | Dynamically allocated  |
+ * **fr_type_t to data type mappings**
+ * | fr_type_t                 | Data type          | Dynamically allocated  |
  * | ----------------------- | ------------------ | ---------------------- |
- * | PW_TYPE_TMPL            | ``vp_tmpl_t``      | Yes                    |
- * | PW_TYPE_BOOLEAN         | ``bool``           | No                     |
- * | PW_TYPE_INTEGER         | ``uint32_t``       | No                     |
- * | PW_TYPE_SHORT           | ``uint16_t``       | No                     |
- * | PW_TYPE_INTEGER64       | ``uint64_t``       | No                     |
- * | PW_TYPE_SIGNED          | ``int32_t``        | No                     |
- * | PW_TYPE_STRING          | ``char const *``   | Yes                    |
- * | PW_TYPE_IPV4_ADDR       | ``fr_ipaddr_t``    | No                     |
- * | PW_TYPE_IPV4_PREFIX     | ``fr_ipaddr_t``    | No                     |
- * | PW_TYPE_IPV6_ADDR       | ``fr_ipaddr_t``    | No                     |
- * | PW_TYPE_IPV6_PREFIX     | ``fr_ipaddr_t``    | No                     |
- * | PW_TYPE_COMBO_IP_ADDR   | ``fr_ipaddr_t``    | No                     |
- * | PW_TYPE_COMBO_IP_PREFIX | ``fr_ipaddr_t``    | No                     |
- * | PW_TYPE_TIMEVAL         | ``struct timeval`` | No                     |
+ * | FR_TYPE_TMPL            | ``vp_tmpl_t``      | Yes                    |
+ * | FR_TYPE_BOOLEAN         | ``bool``           | No                     |
+ * | FR_TYPE_INTEGER         | ``uint32_t``       | No                     |
+ * | FR_TYPE_SHORT           | ``uint16_t``       | No                     |
+ * | FR_TYPE_INTEGER64       | ``uint64_t``       | No                     |
+ * | FR_TYPE_SIGNED          | ``int32_t``        | No                     |
+ * | FR_TYPE_STRING          | ``char const *``   | Yes                    |
+ * | FR_TYPE_IPV4_ADDR       | ``fr_ipaddr_t``    | No                     |
+ * | FR_TYPE_IPV4_PREFIX     | ``fr_ipaddr_t``    | No                     |
+ * | FR_TYPE_IPV6_ADDR       | ``fr_ipaddr_t``    | No                     |
+ * | FR_TYPE_IPV6_PREFIX     | ``fr_ipaddr_t``    | No                     |
+ * | FR_TYPE_COMBO_IP_ADDR   | ``fr_ipaddr_t``    | No                     |
+ * | FR_TYPE_COMBO_IP_PREFIX | ``fr_ipaddr_t``    | No                     |
+ * | FR_TYPE_TIMEVAL         | ``struct timeval`` | No                     |
  *
  * @param[in] ctx      To allocate arrays and values in.
  * @param[in] cs       to search for matching #CONF_PAIR in.
@@ -2060,32 +2060,32 @@ static int cf_pair_default(CONF_PAIR **out, CONF_SECTION *cs, char const *name,
  * @param[in] type     Data type to parse #CONF_PAIR value as.
  *                     Should be one of the following ``data`` types,
  *                     and one or more of the following ``flag`` types or'd together:
- *     - ``data`` #PW_TYPE_TMPL                - @copybrief PW_TYPE_TMPL
+ *     - ``data`` #FR_TYPE_TMPL                - @copybrief FR_TYPE_TMPL
  *                                               Feeds the value into #tmpl_afrom_str. Value can be
  *                                               obtained when processing requests, with #tmpl_expand or #tmpl_aexpand.
- *     - ``data`` #PW_TYPE_BOOLEAN             - @copybrief PW_TYPE_BOOLEAN
- *     - ``data`` #PW_TYPE_INTEGER             - @copybrief PW_TYPE_INTEGER
- *     - ``data`` #PW_TYPE_SHORT               - @copybrief PW_TYPE_SHORT
- *     - ``data`` #PW_TYPE_INTEGER64           - @copybrief PW_TYPE_INTEGER64
- *     - ``data`` #PW_TYPE_SIGNED              - @copybrief PW_TYPE_SIGNED
- *     - ``data`` #PW_TYPE_STRING              - @copybrief PW_TYPE_STRING
- *     - ``data`` #PW_TYPE_IPV4_ADDR           - @copybrief PW_TYPE_IPV4_ADDR (IPv4 address with prefix 32).
- *     - ``data`` #PW_TYPE_IPV4_PREFIX         - @copybrief PW_TYPE_IPV4_PREFIX (IPv4 address with variable prefix).
- *     - ``data`` #PW_TYPE_IPV6_ADDR           - @copybrief PW_TYPE_IPV6_ADDR (IPv6 address with prefix 128).
- *     - ``data`` #PW_TYPE_IPV6_PREFIX         - @copybrief PW_TYPE_IPV6_PREFIX (IPv6 address with variable prefix).
- *     - ``data`` #PW_TYPE_COMBO_IP_ADDR       - @copybrief PW_TYPE_COMBO_IP_ADDR (IPv4/IPv6 address with
+ *     - ``data`` #FR_TYPE_BOOLEAN             - @copybrief FR_TYPE_BOOLEAN
+ *     - ``data`` #FR_TYPE_INTEGER             - @copybrief FR_TYPE_INTEGER
+ *     - ``data`` #FR_TYPE_SHORT               - @copybrief FR_TYPE_SHORT
+ *     - ``data`` #FR_TYPE_INTEGER64           - @copybrief FR_TYPE_INTEGER64
+ *     - ``data`` #FR_TYPE_SIGNED              - @copybrief FR_TYPE_SIGNED
+ *     - ``data`` #FR_TYPE_STRING              - @copybrief FR_TYPE_STRING
+ *     - ``data`` #FR_TYPE_IPV4_ADDR           - @copybrief FR_TYPE_IPV4_ADDR (IPv4 address with prefix 32).
+ *     - ``data`` #FR_TYPE_IPV4_PREFIX         - @copybrief FR_TYPE_IPV4_PREFIX (IPv4 address with variable prefix).
+ *     - ``data`` #FR_TYPE_IPV6_ADDR           - @copybrief FR_TYPE_IPV6_ADDR (IPv6 address with prefix 128).
+ *     - ``data`` #FR_TYPE_IPV6_PREFIX         - @copybrief FR_TYPE_IPV6_PREFIX (IPv6 address with variable prefix).
+ *     - ``data`` #FR_TYPE_COMBO_IP_ADDR       - @copybrief FR_TYPE_COMBO_IP_ADDR (IPv4/IPv6 address with
  *                                               prefix 32/128).
- *     - ``data`` #PW_TYPE_COMBO_IP_PREFIX     - @copybrief PW_TYPE_COMBO_IP_PREFIX (IPv4/IPv6 address with
+ *     - ``data`` #FR_TYPE_COMBO_IP_PREFIX     - @copybrief FR_TYPE_COMBO_IP_PREFIX (IPv4/IPv6 address with
  *                                               variable prefix).
- *     - ``data`` #PW_TYPE_TIMEVAL             - @copybrief PW_TYPE_TIMEVAL
- *     - ``flag`` #PW_TYPE_DEPRECATED          - @copybrief PW_TYPE_DEPRECATED
- *     - ``flag`` #PW_TYPE_REQUIRED            - @copybrief PW_TYPE_REQUIRED
- *     - ``flag`` #PW_TYPE_ATTRIBUTE           - @copybrief PW_TYPE_ATTRIBUTE
- *     - ``flag`` #PW_TYPE_SECRET              - @copybrief PW_TYPE_SECRET
- *     - ``flag`` #PW_TYPE_FILE_INPUT          - @copybrief PW_TYPE_FILE_INPUT
- *     - ``flag`` #PW_TYPE_NOT_EMPTY           - @copybrief PW_TYPE_NOT_EMPTY
- *     - ``flag`` #PW_TYPE_MULTI               - @copybrief PW_TYPE_MULTI
- *     - ``flag`` #PW_TYPE_IS_SET              - @copybrief PW_TYPE_IS_SET
+ *     - ``data`` #FR_TYPE_TIMEVAL             - @copybrief FR_TYPE_TIMEVAL
+ *     - ``flag`` #FR_TYPE_DEPRECATED          - @copybrief FR_TYPE_DEPRECATED
+ *     - ``flag`` #FR_TYPE_REQUIRED            - @copybrief FR_TYPE_REQUIRED
+ *     - ``flag`` #FR_TYPE_ATTRIBUTE           - @copybrief FR_TYPE_ATTRIBUTE
+ *     - ``flag`` #FR_TYPE_SECRET              - @copybrief FR_TYPE_SECRET
+ *     - ``flag`` #FR_TYPE_FILE_INPUT          - @copybrief FR_TYPE_FILE_INPUT
+ *     - ``flag`` #FR_TYPE_NOT_EMPTY           - @copybrief FR_TYPE_NOT_EMPTY
+ *     - ``flag`` #FR_TYPE_MULTI               - @copybrief FR_TYPE_MULTI
+ *     - ``flag`` #FR_TYPE_IS_SET              - @copybrief FR_TYPE_IS_SET
  * @param[out] out     Pointer to a global variable, or pointer to a field in the struct being populated with values.
  * @param[in] dflt             value to use, if no #CONF_PAIR is found.
  * @param[in] dflt_quote       around the dflt value.
@@ -2103,11 +2103,11 @@ int cf_pair_parse(TALLOC_CTX *ctx, CONF_SECTION *cs,
        size_t          count = 0;
        CONF_PAIR       *cp, *dflt_cp = NULL;
 
-       rad_assert(!(type & PW_TYPE_TMPL) || !dflt || (dflt_quote != T_INVALID)); /* We ALWAYS need a quoting type for templates */
+       rad_assert(!(type & FR_TYPE_TMPL) || !dflt || (dflt_quote != T_INVALID)); /* We ALWAYS need a quoting type for templates */
 
-       multi = (type & PW_TYPE_MULTI);
-       required = (type & PW_TYPE_REQUIRED);
-       deprecated = (type & PW_TYPE_DEPRECATED);
+       multi = (type & FR_TYPE_MULTI);
+       required = (type & FR_TYPE_REQUIRED);
+       deprecated = (type & FR_TYPE_DEPRECATED);
 
        /*
         *      If the item is multi-valued we allocate an array
@@ -2156,7 +2156,7 @@ int cf_pair_parse(TALLOC_CTX *ctx, CONF_SECTION *cs,
                /*
                 *      Tmpl is outside normal range
                 */
-               if (type & PW_TYPE_TMPL) {
+               if (type & FR_TYPE_TMPL) {
                        array = (void **)talloc_zero_array(ctx, vp_tmpl_t *, count);
                /*
                 *      Allocate an array of values.
@@ -2165,40 +2165,40 @@ int cf_pair_parse(TALLOC_CTX *ctx, CONF_SECTION *cs,
                 *      talloc_array_length().
                 */
                } else switch (PW_BASE_TYPE(type)) {
-               case PW_TYPE_BOOLEAN:
+               case FR_TYPE_BOOLEAN:
                        array = (void **)talloc_zero_array(ctx, bool, count);
                        break;
 
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        array = (void **)talloc_zero_array(ctx, uint32_t, count);
                        break;
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        array = (void **)talloc_zero_array(ctx, uint16_t, count);
                        break;
 
-               case PW_TYPE_INTEGER64:
+               case FR_TYPE_INTEGER64:
                        array = (void **)talloc_zero_array(ctx, uint64_t, count);
                        break;
 
-               case PW_TYPE_SIGNED:
+               case FR_TYPE_SIGNED:
                        array = (void **)talloc_zero_array(ctx, int32_t, count);
                        break;
 
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        array = (void **)talloc_zero_array(ctx, char *, count);
                        break;
 
-               case PW_TYPE_IPV4_ADDR:
-               case PW_TYPE_IPV4_PREFIX:
-               case PW_TYPE_IPV6_ADDR:
-               case PW_TYPE_IPV6_PREFIX:
-               case PW_TYPE_COMBO_IP_ADDR:
-               case PW_TYPE_COMBO_IP_PREFIX:
+               case FR_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_PREFIX:
+               case FR_TYPE_IPV6_ADDR:
+               case FR_TYPE_IPV6_PREFIX:
+               case FR_TYPE_COMBO_IP_ADDR:
+               case FR_TYPE_COMBO_IP_PREFIX:
                        array = (void **)talloc_zero_array(ctx, fr_ipaddr_t, count);
                        break;
 
-               case PW_TYPE_TIMEVAL:
+               case FR_TYPE_TIMEVAL:
                        array = (void **)talloc_zero_array(ctx, struct timeval, count);
                        break;
 
@@ -2273,13 +2273,13 @@ static int cf_section_parse_init(CONF_SECTION *cs, void *base, CONF_PARSER const
        int i;
 
        for (i = 0; variables[i].name != NULL; i++) {
-               if ((PW_BASE_TYPE(variables[i].type) == PW_TYPE_SUBSECTION)) {
+               if ((PW_BASE_TYPE(variables[i].type) == FR_TYPE_SUBSECTION)) {
                        CONF_SECTION *subcs;
 
                        if (!variables[i].dflt) continue;
 
                        subcs = cf_subsection_find(cs, variables[i].name);
-                       if (!subcs && (variables[i].type & PW_TYPE_REQUIRED)) {
+                       if (!subcs && (variables[i].type & FR_TYPE_REQUIRED)) {
                                cf_log_err_cs(cs, "Missing %s {} subsection", variables[i].name);
                                return -1;
                        }
@@ -2287,7 +2287,7 @@ static int cf_section_parse_init(CONF_SECTION *cs, void *base, CONF_PARSER const
                        /*
                         *      Set the is_set field for the subsection.
                         */
-                       if (variables[i].type & PW_TYPE_IS_SET) {
+                       if (variables[i].type & FR_TYPE_IS_SET) {
                                bool *is_set;
 
                                is_set = variables[i].data ? variables[i].is_set_ptr :
@@ -2312,9 +2312,9 @@ static int cf_section_parse_init(CONF_SECTION *cs, void *base, CONF_PARSER const
                        continue;
                }
 
-               if ((PW_BASE_TYPE(variables[i].type) != PW_TYPE_STRING) &&
-                   (variables[i].type != PW_TYPE_FILE_INPUT) &&
-                   (variables[i].type != PW_TYPE_FILE_OUTPUT)) {
+               if ((PW_BASE_TYPE(variables[i].type) != FR_TYPE_STRING) &&
+                   (variables[i].type != FR_TYPE_FILE_INPUT) &&
+                   (variables[i].type != FR_TYPE_FILE_OUTPUT)) {
                        continue;
                }
 
@@ -2378,13 +2378,13 @@ static void cf_section_parse_warn(CONF_SECTION *cs)
  *     - -2 if a deprecated #CONF_ITEM was found.
  */
 static int cf_subsection_parse(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs,
-                              char const *name, PW_TYPE type, CONF_PARSER const *subcs_vars, size_t subcs_size)
+                              char const *name, fr_type_t type, CONF_PARSER const *subcs_vars, size_t subcs_size)
 {
        CONF_SECTION *subcs;
        int count, i, ret;
        uint8_t **array;
 
-       rad_assert(type & PW_TYPE_SUBSECTION);
+       rad_assert(type & FR_TYPE_SUBSECTION);
 
        subcs = cf_subsection_find(cs, name);
        rad_assert(subcs);      /* should have been pre-allocated earlier */
@@ -2392,7 +2392,7 @@ static int cf_subsection_parse(TALLOC_CTX *ctx, void *out, CONF_SECTION *cs,
        /*
         *      Handle the single subsection case (which is simple)
         */
-       if (!(type & PW_TYPE_MULTI)) {
+       if (!(type & FR_TYPE_MULTI)) {
                uint8_t *buff;
 
                /*
@@ -2489,7 +2489,7 @@ int cf_section_parse(TALLOC_CTX *ctx, void *base, CONF_SECTION *cs, CONF_PARSER
                /*
                 *      Handle subsections specially
                 */
-               if (PW_BASE_TYPE(variables[i].type) == PW_TYPE_SUBSECTION) {
+               if (PW_BASE_TYPE(variables[i].type) == FR_TYPE_SUBSECTION) {
                        if (cf_subsection_parse(ctx, (uint8_t *)base + variables[i].offset, cs,
                                                variables[i].name, variables[i].type,
                                                variables[i].subcs, variables[i].subcs_size) < 0) goto finish;
@@ -2509,7 +2509,7 @@ int cf_section_parse(TALLOC_CTX *ctx, void *base, CONF_SECTION *cs, CONF_PARSER
                 *      Get pointer to where we need to write out
                 *      whether the pointer was set.
                 */
-               if (variables[i].type & PW_TYPE_IS_SET) {
+               if (variables[i].type & FR_TYPE_IS_SET) {
                        is_set = variables[i].data ? variables[i].is_set_ptr :
                                                     ((uint8_t *)base) + variables[i].is_set_offset;
                }
index 45886821fbfbf3cc62b7844f4b0b5819ead18a85..8863faa1bb00d3fc3263fac33e56dcfddee89a68 100644 (file)
@@ -142,21 +142,21 @@ struct fr_connection_pool_t {
 };
 
 static const CONF_PARSER connection_config[] = {
-       { FR_CONF_OFFSET("start", PW_TYPE_INTEGER, fr_connection_pool_t, start), .dflt = "5" },
-       { FR_CONF_OFFSET("min", PW_TYPE_INTEGER, fr_connection_pool_t, min), .dflt = "5" },
-       { FR_CONF_OFFSET("max", PW_TYPE_INTEGER, fr_connection_pool_t, max), .dflt = "10" },
-       { FR_CONF_OFFSET("max_pending", PW_TYPE_INTEGER, fr_connection_pool_t, max_pending), .dflt = "0" },
-       { FR_CONF_OFFSET("spare", PW_TYPE_INTEGER, fr_connection_pool_t, spare), .dflt = "3" },
-       { FR_CONF_OFFSET("uses", PW_TYPE_INTEGER64, fr_connection_pool_t, max_uses), .dflt = "0" },
-       { FR_CONF_OFFSET("lifetime", PW_TYPE_INTEGER, fr_connection_pool_t, lifetime), .dflt = "0" },
-       { FR_CONF_OFFSET("cleanup_delay", PW_TYPE_INTEGER, fr_connection_pool_t, cleanup_interval) },
-       { FR_CONF_OFFSET("cleanup_interval", PW_TYPE_INTEGER, fr_connection_pool_t, cleanup_interval), .dflt = "30" },
-       { FR_CONF_OFFSET("idle_timeout", PW_TYPE_INTEGER, fr_connection_pool_t, idle_timeout), .dflt = "60" },
-       { FR_CONF_OFFSET("connect_timeout", PW_TYPE_TIMEVAL, fr_connection_pool_t, connect_timeout), .dflt = "3.0" },
-       { FR_CONF_OFFSET("held_trigger_min", PW_TYPE_TIMEVAL, fr_connection_pool_t, held_trigger_min), .dflt = "0.0" },
-       { FR_CONF_OFFSET("held_trigger_max", PW_TYPE_TIMEVAL, fr_connection_pool_t, held_trigger_max), .dflt = "0.5" },
-       { FR_CONF_OFFSET("retry_delay", PW_TYPE_INTEGER, fr_connection_pool_t, retry_delay), .dflt = "1" },
-       { FR_CONF_OFFSET("spread", PW_TYPE_BOOLEAN, fr_connection_pool_t, spread), .dflt = "no" },
+       { FR_CONF_OFFSET("start", FR_TYPE_INTEGER, fr_connection_pool_t, start), .dflt = "5" },
+       { FR_CONF_OFFSET("min", FR_TYPE_INTEGER, fr_connection_pool_t, min), .dflt = "5" },
+       { FR_CONF_OFFSET("max", FR_TYPE_INTEGER, fr_connection_pool_t, max), .dflt = "10" },
+       { FR_CONF_OFFSET("max_pending", FR_TYPE_INTEGER, fr_connection_pool_t, max_pending), .dflt = "0" },
+       { FR_CONF_OFFSET("spare", FR_TYPE_INTEGER, fr_connection_pool_t, spare), .dflt = "3" },
+       { FR_CONF_OFFSET("uses", FR_TYPE_INTEGER64, fr_connection_pool_t, max_uses), .dflt = "0" },
+       { FR_CONF_OFFSET("lifetime", FR_TYPE_INTEGER, fr_connection_pool_t, lifetime), .dflt = "0" },
+       { FR_CONF_OFFSET("cleanup_delay", FR_TYPE_INTEGER, fr_connection_pool_t, cleanup_interval) },
+       { FR_CONF_OFFSET("cleanup_interval", FR_TYPE_INTEGER, fr_connection_pool_t, cleanup_interval), .dflt = "30" },
+       { FR_CONF_OFFSET("idle_timeout", FR_TYPE_INTEGER, fr_connection_pool_t, idle_timeout), .dflt = "60" },
+       { FR_CONF_OFFSET("connect_timeout", FR_TYPE_TIMEVAL, fr_connection_pool_t, connect_timeout), .dflt = "3.0" },
+       { FR_CONF_OFFSET("held_trigger_min", FR_TYPE_TIMEVAL, fr_connection_pool_t, held_trigger_min), .dflt = "0.0" },
+       { FR_CONF_OFFSET("held_trigger_max", FR_TYPE_TIMEVAL, fr_connection_pool_t, held_trigger_max), .dflt = "0.5" },
+       { FR_CONF_OFFSET("retry_delay", FR_TYPE_INTEGER, fr_connection_pool_t, retry_delay), .dflt = "1" },
+       { FR_CONF_OFFSET("spread", FR_TYPE_BOOLEAN, fr_connection_pool_t, spread), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index f1957de56ba6a227fa05060fc308fa030769116e..bc6c5006f0b86499946f107288ff073cf88c237d 100644 (file)
@@ -635,7 +635,7 @@ wait:
                        value_box_t boxed_answer = {
                                .datum.strvalue = answer,
                                .datum.length = len,
-                               .type = PW_TYPE_STRING
+                               .type = FR_TYPE_STRING
                        };
 
                        status = WEXITSTATUS(status);
index 26b2720bb12e2cf9572f784b3644c5eb109d2408..63f7849e12cde65314a03ac0e2a0aba7de95f276 100644 (file)
@@ -235,7 +235,7 @@ parse_again:
                             vp = fr_pair_cursor_next(&cursor)) {
                                if (((vp->op == T_OP_REG_EQ) ||
                                     (vp->op == T_OP_REG_NE)) &&
-                                   (vp->vp_type != PW_TYPE_STRING)) {
+                                   (vp->vp_type != FR_TYPE_STRING)) {
                                        pairlist_free(&pl);
                                        talloc_free(check_tmp);
                                        ERROR("%s[%d]: Cannot use regular expressions for non-string attributes in entry %s",
index 57f28ad4123d688a0ee77121d26df895057ae969..4944fb21729606a4123679af9230dc400a3c09ba 100644 (file)
@@ -1235,19 +1235,19 @@ void common_packet_debug(REQUEST *request, RADIUS_PACKET *packet, bool received)
        }
 }
 static CONF_PARSER performance_config[] = {
-       { FR_CONF_OFFSET("skip_duplicate_checks", PW_TYPE_BOOLEAN, rad_listen_t, nodup) },
+       { FR_CONF_OFFSET("skip_duplicate_checks", FR_TYPE_BOOLEAN, rad_listen_t, nodup) },
 
        CONF_PARSER_TERMINATOR
 };
 
 
 static CONF_PARSER limit_config[] = {
-       { FR_CONF_OFFSET("max_pps", PW_TYPE_INTEGER, listen_socket_t, max_rate) },
+       { FR_CONF_OFFSET("max_pps", FR_TYPE_INTEGER, listen_socket_t, max_rate) },
 
 #ifdef WITH_TCP
-       { FR_CONF_OFFSET("max_connections", PW_TYPE_INTEGER, listen_socket_t, limit.max_connections), .dflt = "16" },
-       { FR_CONF_OFFSET("lifetime", PW_TYPE_INTEGER, listen_socket_t, limit.lifetime), .dflt = "0" },
-       { FR_CONF_OFFSET("idle_timeout", PW_TYPE_INTEGER, listen_socket_t, limit.idle_timeout), .dflt = STRINGIFY(30) },
+       { FR_CONF_OFFSET("max_connections", FR_TYPE_INTEGER, listen_socket_t, limit.max_connections), .dflt = "16" },
+       { FR_CONF_OFFSET("lifetime", FR_TYPE_INTEGER, listen_socket_t, limit.lifetime), .dflt = "0" },
+       { FR_CONF_OFFSET("idle_timeout", FR_TYPE_INTEGER, listen_socket_t, limit.idle_timeout), .dflt = STRINGIFY(30) },
 #endif
        CONF_PARSER_TERMINATOR
 };
@@ -1298,13 +1298,13 @@ int common_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
        memset(&ipaddr, 0, sizeof(ipaddr));
        ipaddr.addr.v4.s_addr = htonl(INADDR_NONE);
 
-       rcode = cf_pair_parse(NULL, cs, "ipaddr", FR_ITEM_POINTER(PW_TYPE_COMBO_IP_ADDR, &ipaddr), NULL, T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "ipaddr", FR_ITEM_POINTER(FR_TYPE_COMBO_IP_ADDR, &ipaddr), NULL, T_INVALID);
        if (rcode < 0) return -1;
        if (rcode != 0) rcode = cf_pair_parse(NULL, cs, "ipv4addr",
-                                             FR_ITEM_POINTER(PW_TYPE_IPV4_ADDR, &ipaddr), NULL, T_INVALID);
+                                             FR_ITEM_POINTER(FR_TYPE_IPV4_ADDR, &ipaddr), NULL, T_INVALID);
        if (rcode < 0) return -1;
        if (rcode != 0) rcode = cf_pair_parse(NULL, cs, "ipv6addr",
-                                             FR_ITEM_POINTER(PW_TYPE_IPV6_ADDR, &ipaddr), NULL, T_INVALID);
+                                             FR_ITEM_POINTER(FR_TYPE_IPV6_ADDR, &ipaddr), NULL, T_INVALID);
        if (rcode < 0) return -1;
        /*
         *      Default to all IPv6 interfaces (it's the future)
@@ -1316,10 +1316,10 @@ int common_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
                ipaddr.addr.v6 = in6addr_any;   /* in6addr_any binds to all addresses */
        }
 
-       rcode = cf_pair_parse(NULL, cs, "port", FR_ITEM_POINTER(PW_TYPE_SHORT, &sock->my_port), "0", T_BARE_WORD);
+       rcode = cf_pair_parse(NULL, cs, "port", FR_ITEM_POINTER(FR_TYPE_SHORT, &sock->my_port), "0", T_BARE_WORD);
        if (rcode < 0) return -1;
 
-       rcode = cf_pair_parse(NULL, cs, "recv_buff", FR_ITEM_POINTER(PW_TYPE_INTEGER, &recv_buff), "0", T_BARE_WORD);
+       rcode = cf_pair_parse(NULL, cs, "recv_buff", FR_ITEM_POINTER(FR_TYPE_INTEGER, &recv_buff), "0", T_BARE_WORD);
        if (rcode < 0) return -1;
        if (recv_buff) {
                FR_INTEGER_BOUND_CHECK("recv_buff", recv_buff, >=, 32);
@@ -1339,7 +1339,7 @@ int common_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
                CONF_SECTION *tls;
 #  endif
 
-               rcode = cf_pair_parse(NULL, cs, "proto", FR_ITEM_POINTER(PW_TYPE_STRING, &proto),
+               rcode = cf_pair_parse(NULL, cs, "proto", FR_ITEM_POINTER(FR_TYPE_STRING, &proto),
                                      "udp", T_DOUBLE_QUOTED_STRING);
                if (rcode < 0) return -1;
 
@@ -1531,7 +1531,7 @@ int common_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
         */
        clients_cs = NULL;
        parent_cs = cf_top_section(cs);
-       rcode = cf_pair_parse(NULL, cs, "clients", FR_ITEM_POINTER(PW_TYPE_STRING, &section_name), NULL, T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "clients", FR_ITEM_POINTER(FR_TYPE_STRING, &section_name), NULL, T_INVALID);
        if (rcode < 0) return -1; /* bad string */
        if (rcode == 0) {
                /*
@@ -3090,7 +3090,7 @@ static rad_listen_t *listen_parse(listen_config_t *lc)
        this->fd = -1;
        this->cs = cs;
 
-       rcode = cf_pair_parse(this, cs, "type", FR_ITEM_POINTER(PW_TYPE_STRING, &listen_type),
+       rcode = cf_pair_parse(this, cs, "type", FR_ITEM_POINTER(FR_TYPE_STRING, &listen_type),
                              "", T_DOUBLE_QUOTED_STRING);
        if (rcode < 0) {
                talloc_free(this);
index 7296be15fd37add5dbda207743b89e1747ee09e4..5b9f57df377a095c2fe7723323cbbca3b1234c45 100644 (file)
@@ -107,13 +107,13 @@ static char const *radius_dir = NULL;     //!< Path to raddb directory
  *     Log destinations
  */
 static const CONF_PARSER startup_log_config[] = {
-       { FR_CONF_POINTER("destination", PW_TYPE_STRING, &radlog_dest), .dflt = "files" },
-       { FR_CONF_POINTER("syslog_facility", PW_TYPE_STRING, &syslog_facility), .dflt = STRINGIFY(0) },
+       { FR_CONF_POINTER("destination", FR_TYPE_STRING, &radlog_dest), .dflt = "files" },
+       { FR_CONF_POINTER("syslog_facility", FR_TYPE_STRING, &syslog_facility), .dflt = STRINGIFY(0) },
 
-       { FR_CONF_POINTER("localstatedir", PW_TYPE_STRING, &localstatedir), .dflt = "${prefix}/var"},
-       { FR_CONF_POINTER("logdir", PW_TYPE_STRING, &radlog_dir), .dflt = "${localstatedir}/log"},
-       { FR_CONF_POINTER("file", PW_TYPE_STRING, &main_config.log_file), .dflt = "${logdir}/radius.log" },
-       { FR_CONF_POINTER("requests", PW_TYPE_STRING | PW_TYPE_DEPRECATED, &default_log.file) },
+       { FR_CONF_POINTER("localstatedir", FR_TYPE_STRING, &localstatedir), .dflt = "${prefix}/var"},
+       { FR_CONF_POINTER("logdir", FR_TYPE_STRING, &radlog_dir), .dflt = "${localstatedir}/log"},
+       { FR_CONF_POINTER("file", FR_TYPE_STRING, &main_config.log_file), .dflt = "${logdir}/radius.log" },
+       { FR_CONF_POINTER("requests", FR_TYPE_STRING | FR_TYPE_DEPRECATED, &default_log.file) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -122,15 +122,15 @@ static const CONF_PARSER startup_log_config[] = {
  *     Basic configuration for the server.
  */
 static const CONF_PARSER startup_server_config[] = {
-       { FR_CONF_POINTER("log", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) startup_log_config },
+       { FR_CONF_POINTER("log", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) startup_log_config },
 
-       { FR_CONF_POINTER("name", PW_TYPE_STRING, &my_name), .dflt = "radiusd" },
-       { FR_CONF_POINTER("prefix", PW_TYPE_STRING, &prefix), .dflt = "/usr/local" },
+       { FR_CONF_POINTER("name", FR_TYPE_STRING, &my_name), .dflt = "radiusd" },
+       { FR_CONF_POINTER("prefix", FR_TYPE_STRING, &prefix), .dflt = "/usr/local" },
 
-       { FR_CONF_POINTER("log_file", PW_TYPE_STRING, &main_config.log_file) },
-       { FR_CONF_POINTER("log_destination", PW_TYPE_STRING, &radlog_dest) },
-       { FR_CONF_POINTER("use_utc", PW_TYPE_BOOLEAN, &log_dates_utc) },
-       { FR_CONF_IS_SET_POINTER("timestamp", PW_TYPE_BOOLEAN, &log_timestamp) },
+       { FR_CONF_POINTER("log_file", FR_TYPE_STRING, &main_config.log_file) },
+       { FR_CONF_POINTER("log_destination", FR_TYPE_STRING, &radlog_dest) },
+       { FR_CONF_POINTER("use_utc", FR_TYPE_BOOLEAN, &log_dates_utc) },
+       { FR_CONF_IS_SET_POINTER("timestamp", FR_TYPE_BOOLEAN, &log_timestamp) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -142,18 +142,18 @@ static const CONF_PARSER startup_server_config[] = {
  *
  **********************************************************************/
 static const CONF_PARSER log_config[] = {
-       { FR_CONF_POINTER("stripped_names", PW_TYPE_BOOLEAN, &log_stripped_names), .dflt = "no" },
-       { FR_CONF_POINTER("auth", PW_TYPE_BOOLEAN, &main_config.log_auth), .dflt = "no" },
-       { FR_CONF_POINTER("auth_badpass", PW_TYPE_BOOLEAN, &main_config.log_auth_badpass), .dflt = "no" },
-       { FR_CONF_POINTER("auth_goodpass", PW_TYPE_BOOLEAN, &main_config.log_auth_goodpass), .dflt = "no" },
-       { FR_CONF_POINTER("msg_badpass", PW_TYPE_STRING, &main_config.auth_badpass_msg) },
-       { FR_CONF_POINTER("msg_goodpass", PW_TYPE_STRING, &main_config.auth_goodpass_msg) },
-       { FR_CONF_POINTER("colourise", PW_TYPE_BOOLEAN, &do_colourise) },
-       { FR_CONF_POINTER("timestamp", PW_TYPE_BOOLEAN, &log_timestamp) },
-       { FR_CONF_POINTER("use_utc", PW_TYPE_BOOLEAN, &log_dates_utc) },
-       { FR_CONF_POINTER("msg_denied", PW_TYPE_STRING, &main_config.denied_msg), .dflt = "You are already logged in - access denied" },
+       { FR_CONF_POINTER("stripped_names", FR_TYPE_BOOLEAN, &log_stripped_names), .dflt = "no" },
+       { FR_CONF_POINTER("auth", FR_TYPE_BOOLEAN, &main_config.log_auth), .dflt = "no" },
+       { FR_CONF_POINTER("auth_badpass", FR_TYPE_BOOLEAN, &main_config.log_auth_badpass), .dflt = "no" },
+       { FR_CONF_POINTER("auth_goodpass", FR_TYPE_BOOLEAN, &main_config.log_auth_goodpass), .dflt = "no" },
+       { FR_CONF_POINTER("msg_badpass", FR_TYPE_STRING, &main_config.auth_badpass_msg) },
+       { FR_CONF_POINTER("msg_goodpass", FR_TYPE_STRING, &main_config.auth_goodpass_msg) },
+       { FR_CONF_POINTER("colourise", FR_TYPE_BOOLEAN, &do_colourise) },
+       { FR_CONF_POINTER("timestamp", FR_TYPE_BOOLEAN, &log_timestamp) },
+       { FR_CONF_POINTER("use_utc", FR_TYPE_BOOLEAN, &log_dates_utc) },
+       { FR_CONF_POINTER("msg_denied", FR_TYPE_STRING, &main_config.denied_msg), .dflt = "You are already logged in - access denied" },
 #ifdef WITH_CONF_WRITE
-       { FR_CONF_POINTER("write_dir", PW_TYPE_STRING, &main_config.write_dir), .dflt = NULL },
+       { FR_CONF_POINTER("write_dir", FR_TYPE_STRING, &main_config.write_dir), .dflt = NULL },
 #endif
        CONF_PARSER_TERMINATOR
 };
@@ -163,19 +163,19 @@ static const CONF_PARSER log_config[] = {
  *  Security configuration for the server.
  */
 static const CONF_PARSER security_config[] = {
-       { FR_CONF_POINTER("max_attributes", PW_TYPE_INTEGER, &fr_max_attributes), .dflt = STRINGIFY(0) },
-       { FR_CONF_POINTER("reject_delay", PW_TYPE_TIMEVAL, &main_config.reject_delay), .dflt = STRINGIFY(0) },
-       { FR_CONF_POINTER("status_server", PW_TYPE_BOOLEAN, &main_config.status_server), .dflt = "no" },
+       { FR_CONF_POINTER("max_attributes", FR_TYPE_INTEGER, &fr_max_attributes), .dflt = STRINGIFY(0) },
+       { FR_CONF_POINTER("reject_delay", FR_TYPE_TIMEVAL, &main_config.reject_delay), .dflt = STRINGIFY(0) },
+       { FR_CONF_POINTER("status_server", FR_TYPE_BOOLEAN, &main_config.status_server), .dflt = "no" },
 
        /*
         *      No default, so it isn't printed in debug mode.
         */
-       { FR_CONF_POINTER("tunnel_password_zeros", PW_TYPE_BOOLEAN, &fr_tunnel_password_zeros) },
+       { FR_CONF_POINTER("tunnel_password_zeros", FR_TYPE_BOOLEAN, &fr_tunnel_password_zeros) },
 
 #ifdef ENABLE_OPENSSL_VERSION_CHECK
-       { FR_CONF_POINTER("allow_vulnerable_openssl", PW_TYPE_STRING, &main_config.allow_vulnerable_openssl), .dflt = "no" },
+       { FR_CONF_POINTER("allow_vulnerable_openssl", FR_TYPE_STRING, &main_config.allow_vulnerable_openssl), .dflt = "no" },
 #endif
-       { FR_CONF_POINTER("server_id", PW_TYPE_BYTE, &main_config.state_server_id) },
+       { FR_CONF_POINTER("server_id", FR_TYPE_BYTE, &main_config.state_server_id) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -185,9 +185,9 @@ static const CONF_PARSER resources[] = {
         *      the config item will *not* get printed out in debug mode, so that no one knows
         *      it exists.
         */
-       { FR_CONF_POINTER("talloc_pool_size", PW_TYPE_SIZE, &main_config.talloc_pool_size) },                   /* DO NOT SET DEFAULT */
-       { FR_CONF_POINTER("talloc_memory_limit", PW_TYPE_SIZE, &main_config.talloc_memory_limit) },             /* DO NOT SET DEFAULT */
-       { FR_CONF_POINTER("talloc_memory_report", PW_TYPE_BOOLEAN, &main_config.talloc_memory_report) },        /* DO NOT SET DEFAULT */
+       { FR_CONF_POINTER("talloc_pool_size", FR_TYPE_SIZE, &main_config.talloc_pool_size) },                   /* DO NOT SET DEFAULT */
+       { FR_CONF_POINTER("talloc_memory_limit", FR_TYPE_SIZE, &main_config.talloc_memory_limit) },             /* DO NOT SET DEFAULT */
+       { FR_CONF_POINTER("talloc_memory_report", FR_TYPE_BOOLEAN, &main_config.talloc_memory_report) },        /* DO NOT SET DEFAULT */
        CONF_PARSER_TERMINATOR
 };
 
@@ -199,31 +199,31 @@ static const CONF_PARSER server_config[] = {
         *      hard-coded defines for the locations of the various
         *      files.
         */
-       { FR_CONF_POINTER("name", PW_TYPE_STRING, &my_name), .dflt = "radiusd" },
-       { FR_CONF_POINTER("prefix", PW_TYPE_STRING, &prefix), .dflt = "/usr/local" },
-       { FR_CONF_POINTER("localstatedir", PW_TYPE_STRING, &localstatedir), .dflt = "${prefix}/var"},
-       { FR_CONF_POINTER("sbindir", PW_TYPE_STRING, &sbindir), .dflt = "${prefix}/sbin"},
-       { FR_CONF_POINTER("logdir", PW_TYPE_STRING, &radlog_dir), .dflt = "${localstatedir}/log"},
-       { FR_CONF_POINTER("run_dir", PW_TYPE_STRING, &run_dir), .dflt = "${localstatedir}/run/${name}"},
-       { FR_CONF_POINTER("libdir", PW_TYPE_STRING, &radlib_dir), .dflt = "${prefix}/lib"},
-       { FR_CONF_POINTER("radacctdir", PW_TYPE_STRING, &radacct_dir), .dflt = "${logdir}/radacct" },
-       { FR_CONF_POINTER("panic_action", PW_TYPE_STRING, &main_config.panic_action) },
-       { FR_CONF_POINTER("hostname_lookups", PW_TYPE_BOOLEAN, &fr_dns_lookups), .dflt = "no" },
-       { FR_CONF_POINTER("max_request_time", PW_TYPE_INTEGER, &main_config.max_request_time), .dflt = STRINGIFY(MAX_REQUEST_TIME) },
-       { FR_CONF_POINTER("cleanup_delay", PW_TYPE_INTEGER, &main_config.cleanup_delay), .dflt = STRINGIFY(CLEANUP_DELAY) },
-       { FR_CONF_POINTER("continuation_timeout", PW_TYPE_INTEGER, &main_config.continuation_timeout), .dflt = "15" },
-       { FR_CONF_POINTER("max_requests", PW_TYPE_INTEGER, &main_config.max_requests), .dflt = STRINGIFY(MAX_REQUESTS) },
-       { FR_CONF_POINTER("pidfile", PW_TYPE_STRING, &main_config.pid_file), .dflt = "${run_dir}/radiusd.pid"},
-       { FR_CONF_POINTER("checkrad", PW_TYPE_STRING, &main_config.checkrad), .dflt = "${sbindir}/checkrad" },
-
-       { FR_CONF_POINTER("debug_level", PW_TYPE_INTEGER, &main_config.debug_level), .dflt = "0" },
+       { FR_CONF_POINTER("name", FR_TYPE_STRING, &my_name), .dflt = "radiusd" },
+       { FR_CONF_POINTER("prefix", FR_TYPE_STRING, &prefix), .dflt = "/usr/local" },
+       { FR_CONF_POINTER("localstatedir", FR_TYPE_STRING, &localstatedir), .dflt = "${prefix}/var"},
+       { FR_CONF_POINTER("sbindir", FR_TYPE_STRING, &sbindir), .dflt = "${prefix}/sbin"},
+       { FR_CONF_POINTER("logdir", FR_TYPE_STRING, &radlog_dir), .dflt = "${localstatedir}/log"},
+       { FR_CONF_POINTER("run_dir", FR_TYPE_STRING, &run_dir), .dflt = "${localstatedir}/run/${name}"},
+       { FR_CONF_POINTER("libdir", FR_TYPE_STRING, &radlib_dir), .dflt = "${prefix}/lib"},
+       { FR_CONF_POINTER("radacctdir", FR_TYPE_STRING, &radacct_dir), .dflt = "${logdir}/radacct" },
+       { FR_CONF_POINTER("panic_action", FR_TYPE_STRING, &main_config.panic_action) },
+       { FR_CONF_POINTER("hostname_lookups", FR_TYPE_BOOLEAN, &fr_dns_lookups), .dflt = "no" },
+       { FR_CONF_POINTER("max_request_time", FR_TYPE_INTEGER, &main_config.max_request_time), .dflt = STRINGIFY(MAX_REQUEST_TIME) },
+       { FR_CONF_POINTER("cleanup_delay", FR_TYPE_INTEGER, &main_config.cleanup_delay), .dflt = STRINGIFY(CLEANUP_DELAY) },
+       { FR_CONF_POINTER("continuation_timeout", FR_TYPE_INTEGER, &main_config.continuation_timeout), .dflt = "15" },
+       { FR_CONF_POINTER("max_requests", FR_TYPE_INTEGER, &main_config.max_requests), .dflt = STRINGIFY(MAX_REQUESTS) },
+       { FR_CONF_POINTER("pidfile", FR_TYPE_STRING, &main_config.pid_file), .dflt = "${run_dir}/radiusd.pid"},
+       { FR_CONF_POINTER("checkrad", FR_TYPE_STRING, &main_config.checkrad), .dflt = "${sbindir}/checkrad" },
+
+       { FR_CONF_POINTER("debug_level", FR_TYPE_INTEGER, &main_config.debug_level), .dflt = "0" },
 
 #ifdef WITH_PROXY
-       { FR_CONF_POINTER("proxy_requests", PW_TYPE_BOOLEAN, &main_config.proxy_requests), .dflt = "yes" },
+       { FR_CONF_POINTER("proxy_requests", FR_TYPE_BOOLEAN, &main_config.proxy_requests), .dflt = "yes" },
 #endif
-       { FR_CONF_POINTER("log", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) log_config },
+       { FR_CONF_POINTER("log", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) log_config },
 
-       { FR_CONF_POINTER("resources", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) resources },
+       { FR_CONF_POINTER("resources", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) resources },
 
        /*
         *      People with old configs will have these.  They are listed
@@ -233,12 +233,12 @@ static const CONF_PARSER server_config[] = {
         *      DON'T exist in radiusd.conf, then the previously parsed
         *      values for "log { foo = bar}" will be used.
         */
-       { FR_CONF_POINTER("log_auth", PW_TYPE_BOOLEAN | PW_TYPE_DEPRECATED, &main_config.log_auth) },
-       { FR_CONF_POINTER("log_auth_badpass", PW_TYPE_BOOLEAN | PW_TYPE_DEPRECATED, &main_config.log_auth_badpass) },
-       { FR_CONF_POINTER("log_auth_goodpass", PW_TYPE_BOOLEAN | PW_TYPE_DEPRECATED, &main_config.log_auth_goodpass) },
-       { FR_CONF_POINTER("log_stripped_names", PW_TYPE_BOOLEAN | PW_TYPE_DEPRECATED, &log_stripped_names) },
+       { FR_CONF_POINTER("log_auth", FR_TYPE_BOOLEAN | FR_TYPE_DEPRECATED, &main_config.log_auth) },
+       { FR_CONF_POINTER("log_auth_badpass", FR_TYPE_BOOLEAN | FR_TYPE_DEPRECATED, &main_config.log_auth_badpass) },
+       { FR_CONF_POINTER("log_auth_goodpass", FR_TYPE_BOOLEAN | FR_TYPE_DEPRECATED, &main_config.log_auth_goodpass) },
+       { FR_CONF_POINTER("log_stripped_names", FR_TYPE_BOOLEAN | FR_TYPE_DEPRECATED, &log_stripped_names) },
 
-       { FR_CONF_POINTER("security", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) security_config },
+       { FR_CONF_POINTER("security", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) security_config },
        CONF_PARSER_TERMINATOR
 };
 
@@ -258,33 +258,33 @@ static const CONF_PARSER server_config[] = {
  **********************************************************************/
 static const CONF_PARSER bootstrap_security_config[] = {
 #ifdef HAVE_SETUID
-       { FR_CONF_POINTER("user", PW_TYPE_STRING, &uid_name) },
-       { FR_CONF_POINTER("group", PW_TYPE_STRING, &gid_name) },
+       { FR_CONF_POINTER("user", FR_TYPE_STRING, &uid_name) },
+       { FR_CONF_POINTER("group", FR_TYPE_STRING, &gid_name) },
 #endif
-       { FR_CONF_POINTER("chroot", PW_TYPE_STRING, &chroot_dir) },
-       { FR_CONF_POINTER("allow_core_dumps", PW_TYPE_BOOLEAN, &allow_core_dumps), .dflt = "no" },
+       { FR_CONF_POINTER("chroot", FR_TYPE_STRING, &chroot_dir) },
+       { FR_CONF_POINTER("allow_core_dumps", FR_TYPE_BOOLEAN, &allow_core_dumps), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER bootstrap_config[] = {
-       { FR_CONF_POINTER("security", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) bootstrap_security_config },
+       { FR_CONF_POINTER("security", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) bootstrap_security_config },
 
-       { FR_CONF_POINTER("name", PW_TYPE_STRING, &my_name), .dflt = "radiusd" },
-       { FR_CONF_POINTER("prefix", PW_TYPE_STRING, &prefix), .dflt = "/usr/local" },
-       { FR_CONF_POINTER("localstatedir", PW_TYPE_STRING, &localstatedir), .dflt = "${prefix}/var"},
+       { FR_CONF_POINTER("name", FR_TYPE_STRING, &my_name), .dflt = "radiusd" },
+       { FR_CONF_POINTER("prefix", FR_TYPE_STRING, &prefix), .dflt = "/usr/local" },
+       { FR_CONF_POINTER("localstatedir", FR_TYPE_STRING, &localstatedir), .dflt = "${prefix}/var"},
 
-       { FR_CONF_POINTER("logdir", PW_TYPE_STRING, &radlog_dir), .dflt = "${localstatedir}/log"},
-       { FR_CONF_POINTER("run_dir", PW_TYPE_STRING, &run_dir), .dflt = "${localstatedir}/run/${name}"},
+       { FR_CONF_POINTER("logdir", FR_TYPE_STRING, &radlog_dir), .dflt = "${localstatedir}/log"},
+       { FR_CONF_POINTER("run_dir", FR_TYPE_STRING, &run_dir), .dflt = "${localstatedir}/run/${name}"},
 
        /*
         *      For backwards compatibility.
         */
 #ifdef HAVE_SETUID
-       { FR_CONF_POINTER("user", PW_TYPE_STRING | PW_TYPE_DEPRECATED, &uid_name) },
-       { FR_CONF_POINTER("group", PW_TYPE_STRING | PW_TYPE_DEPRECATED, &gid_name) },
+       { FR_CONF_POINTER("user", FR_TYPE_STRING | FR_TYPE_DEPRECATED, &uid_name) },
+       { FR_CONF_POINTER("group", FR_TYPE_STRING | FR_TYPE_DEPRECATED, &gid_name) },
 #endif
-       { FR_CONF_POINTER("chroot", PW_TYPE_STRING | PW_TYPE_DEPRECATED, &chroot_dir) },
-       { FR_CONF_POINTER("allow_core_dumps", PW_TYPE_BOOLEAN | PW_TYPE_DEPRECATED, &allow_core_dumps) },
+       { FR_CONF_POINTER("chroot", FR_TYPE_STRING | FR_TYPE_DEPRECATED, &chroot_dir) },
+       { FR_CONF_POINTER("allow_core_dumps", FR_TYPE_BOOLEAN | FR_TYPE_DEPRECATED, &allow_core_dumps) },
        CONF_PARSER_TERMINATOR
 };
 
index 4daab5cd0fa3446171e1bf527a72c4eb01fd6a8f..a26908829ffd292ccf8331a86848903724ebeaad 100644 (file)
@@ -64,7 +64,7 @@ bool map_cast_from_hex(vp_map_t *map, FR_TOKEN rhs_type, char const *rhs)
        fr_dict_attr_t const    *da;
        VALUE_PAIR              *vp = NULL;
        vp_tmpl_t               *vpt;
-       value_box_t             bin = { .type = PW_TYPE_STRING }, cast;
+       value_box_t             bin = { .type = FR_TYPE_STRING }, cast;
 
        rad_assert(map != NULL);
 
@@ -870,7 +870,7 @@ int map_to_vp(TALLOC_CTX *ctx, VALUE_PAIR **out, REQUEST *request, vp_map_t cons
                                vp = fr_pair_cursor_remove(&from);
                                talloc_free(vp);
 
-                               rad_assert((n->vp_type != PW_TYPE_STRING) || (n->vp_strvalue != NULL));
+                               rad_assert((n->vp_type != FR_TYPE_STRING) || (n->vp_strvalue != NULL));
 
                                n->op = map->op;
                                n->tag = map->lhs->tmpl_tag;
@@ -1401,7 +1401,7 @@ update:
                        if (!vp->da->parent->flags.is_root) continue;
                        if (vp->da->vendor != 0) continue;
                        if (vp->da->flags.has_tag) continue;
-                       if (vp->vp_type != PW_TYPE_STRING) continue;
+                       if (vp->vp_type != FR_TYPE_STRING) continue;
 
                        if (!context->username && (vp->da->attr == PW_USER_NAME)) {
                                context->username = vp;
@@ -1482,7 +1482,7 @@ size_t map_snprint(char *out, size_t outlen, vp_map_t const *map)
        if (!rad_cond_assert(map->rhs != NULL)) return -1;
 
        if ((map->lhs->type == TMPL_TYPE_ATTR) &&
-           (map->lhs->tmpl_da->type == PW_TYPE_STRING) &&
+           (map->lhs->tmpl_da->type == FR_TYPE_STRING) &&
            (map->rhs->type == TMPL_TYPE_UNPARSED)) {
                *(p++) = '\'';
                len = tmpl_snprint(p, (end - p) - 1, map->rhs); /* -1 for proceeding '\'' */
@@ -1539,7 +1539,7 @@ void map_debug_log(REQUEST *request, vp_map_t const *map, VALUE_PAIR const *vp)
                vp_tmpl_t       vpt;
                char const      *quote;
 
-               quote = (vp->vp_type == PW_TYPE_STRING) ? "\"" : "";
+               quote = (vp->vp_type == FR_TYPE_STRING) ? "\"" : "";
 
                /*
                 *      Fudge a temporary tmpl that describes the attribute we're copying
@@ -1566,7 +1566,7 @@ void map_debug_log(REQUEST *request, vp_map_t const *map, VALUE_PAIR const *vp)
        {
                char const *quote;
 
-               quote = (vp->vp_type == PW_TYPE_STRING) ? "\"" : "";
+               quote = (vp->vp_type == FR_TYPE_STRING) ? "\"" : "";
 
                /*
                 *      Not appropriate to use map->rhs->quote here, as that's the quoting
index d1c75c7b8bca574bb497a38541e5f0faba683fe0..16039f10f1f747c314f7cec15ca0b36dab6eb674 100644 (file)
@@ -82,13 +82,13 @@ int radius_compare_vps(UNUSED REQUEST *request, VALUE_PAIR *check, VALUE_PAIR *v
                char *expr = NULL, *value = NULL;
                char const *expr_p, *value_p;
 
-               if (check->vp_type == PW_TYPE_STRING) {
+               if (check->vp_type == FR_TYPE_STRING) {
                        expr_p = check->vp_strvalue;
                } else {
                        expr_p = expr = fr_pair_value_asprint(check, check, '\0');
                }
 
-               if (vp->vp_type == PW_TYPE_STRING) {
+               if (vp->vp_type == FR_TYPE_STRING) {
                        value_p = vp->vp_strvalue;
                } else {
                        value_p = value = fr_pair_value_asprint(vp, vp, '\0');
@@ -167,9 +167,9 @@ int radius_compare_vps(UNUSED REQUEST *request, VALUE_PAIR *check, VALUE_PAIR *v
                 *      Ascend binary attributes can be treated
                 *      as opaque objects, I guess...
                 */
-               case PW_TYPE_ABINARY:
+               case FR_TYPE_ABINARY:
 #endif
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        if (vp->vp_length != check->vp_length) {
                                ret = 1; /* NOT equal */
                                break;
@@ -177,22 +177,22 @@ int radius_compare_vps(UNUSED REQUEST *request, VALUE_PAIR *check, VALUE_PAIR *v
                        ret = memcmp(vp->vp_strvalue, check->vp_strvalue, vp->vp_length);
                        break;
 
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        ret = strcmp(vp->vp_strvalue,
                                     check->vp_strvalue);
                        break;
 
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        ret = vp->vp_byte - check->vp_byte;
                        break;
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        ret = vp->vp_short - check->vp_short;
                        break;
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        ret = vp->vp_integer - check->vp_integer;
                        break;
 
-               case PW_TYPE_INTEGER64:
+               case FR_TYPE_INTEGER64:
                        /*
                         *      Don't want integer overflow!
                         */
@@ -205,7 +205,7 @@ int radius_compare_vps(UNUSED REQUEST *request, VALUE_PAIR *check, VALUE_PAIR *v
                        }
                        break;
 
-               case PW_TYPE_SIGNED:
+               case FR_TYPE_SIGNED:
                        if (vp->vp_signed < check->vp_signed) {
                                ret = -1;
                        } else if (vp->vp_signed > check->vp_signed) {
@@ -215,25 +215,25 @@ int radius_compare_vps(UNUSED REQUEST *request, VALUE_PAIR *check, VALUE_PAIR *v
                        }
                        break;
 
-               case PW_TYPE_DATE:
+               case FR_TYPE_DATE:
                        ret = vp->vp_date - check->vp_date;
                        break;
 
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        ret = ntohl(vp->vp_ipv4addr) - ntohl(check->vp_ipv4addr);
                        break;
 
-               case PW_TYPE_IPV6_ADDR:
+               case FR_TYPE_IPV6_ADDR:
                        ret = memcmp(vp->vp_ip.addr.v6.s6_addr, check->vp_ip.addr.v6.s6_addr,
                                     sizeof(vp->vp_ip.addr.v6.s6_addr));
                        break;
 
-               case PW_TYPE_IPV4_PREFIX:
-               case PW_TYPE_IPV6_PREFIX:
+               case FR_TYPE_IPV4_PREFIX:
+               case FR_TYPE_IPV6_PREFIX:
                        ret = memcmp(&vp->vp_ip, &check->vp_ip, sizeof(vp->vp_ip));
                        break;
 
-               case PW_TYPE_IFID:
+               case FR_TYPE_IFID:
                        ret = memcmp(vp->vp_ifid, check->vp_ifid, sizeof(vp->vp_ifid));
                        break;
 
index c768ba992c0f4d71863053ddac076525ad6cafe4..c904611945bddcbd7b6ec26b379bb9503afd1503 100644 (file)
@@ -252,7 +252,7 @@ static bool already_hex(VALUE_PAIR *vp)
 {
        size_t i;
 
-       if (!vp || (vp->vp_type != PW_TYPE_OCTETS)) return true;
+       if (!vp || (vp->vp_type != FR_TYPE_OCTETS)) return true;
 
        /*
         *      If it's 17 octets, it *might* be already encoded.
@@ -527,7 +527,7 @@ static int radclient_init(TALLOC_CTX *ctx, rc_file_pair_t *files)
                                talloc_free(q);
 
                                vp->vp_octets = talloc_steal(vp, p);
-                               vp->data.type = PW_TYPE_OCTETS;
+                               vp->data.type = FR_TYPE_OCTETS;
                                vp->type = VT_DATA;
 
                                VERIFY_VP(vp);
index 193554bcd3c3fc2f6d6894d69b967ce49ab5e6d1..ca2665a9a7fe4494a78c8e34c011b76ff3e6eb3c 100644 (file)
@@ -571,7 +571,7 @@ int main(int argc, char **argv)
                         *      Now find the socket name (sigh)
                         */
                        rcode = cf_pair_parse(NULL, subcs, "socket",
-                                             FR_ITEM_POINTER(PW_TYPE_STRING, &file), NULL, T_DOUBLE_QUOTED_STRING);
+                                             FR_ITEM_POINTER(FR_TYPE_STRING, &file), NULL, T_DOUBLE_QUOTED_STRING);
                        if (rcode < 0) {
                                fprintf(stderr, "%s: Failed parsing listen section 'socket'\n", progname);
                                exit(1);
@@ -591,7 +591,7 @@ int main(int argc, char **argv)
                         *      Check UID and GID.
                         */
                        rcode = cf_pair_parse(NULL, subcs, "uid",
-                                             FR_ITEM_POINTER(PW_TYPE_STRING, &uid_name), NULL, T_DOUBLE_QUOTED_STRING);
+                                             FR_ITEM_POINTER(FR_TYPE_STRING, &uid_name), NULL, T_DOUBLE_QUOTED_STRING);
                        if (rcode < 0) {
                                fprintf(stderr, "%s: Failed parsing listen section 'uid'\n", progname);
                                exit(1);
@@ -608,7 +608,7 @@ int main(int argc, char **argv)
                        if (uid != pwd->pw_uid) continue;
 
                        rcode = cf_pair_parse(NULL, subcs, "gid",
-                                             FR_ITEM_POINTER(PW_TYPE_STRING, &gid_name), NULL, T_DOUBLE_QUOTED_STRING);
+                                             FR_ITEM_POINTER(FR_TYPE_STRING, &gid_name), NULL, T_DOUBLE_QUOTED_STRING);
                        if (rcode < 0) {
                                fprintf(stderr, "%s: Failed parsing listen section 'gid'\n", progname);
                                exit(1);
index be6c5fd90df12bec2e7b6e0affe4382af7d8216c..aa3f388cd33fed5f34a6b34d845824ace1a578af 100644 (file)
@@ -341,7 +341,7 @@ static void rs_packet_print_csv(uint64_t count, rs_status_t status, fr_pcap_t *h
                for (i = 0; i < conf->list_da_num; i++) {
                        vp = fr_pair_find_by_da(packet->vps, conf->list_da[i], TAG_ANY);
                        if (vp && (vp->vp_length > 0)) {
-                               if (conf->list_da[i]->type == PW_TYPE_STRING) {
+                               if (conf->list_da[i]->type == FR_TYPE_STRING) {
                                        *p++ = '"';
                                        s--;
                                        if (s <= 0) return;
index 5ef3adf1233024f8be3f65bd1f99ff8a49351486..bf21c8877eda3d067333ffc664292ef7b0b9763e 100644 (file)
@@ -224,7 +224,7 @@ static ssize_t radsnmp_pair_from_oid(TALLOC_CTX *ctx, radsnmp_conf_t *conf, vp_c
                        break;
                }
 
-               if (index_attr->type != PW_TYPE_INTEGER) {
+               if (index_attr->type != FR_TYPE_INTEGER) {
                        fr_strerror_printf("Index is not a \"integer\"");
                        break;
                }
@@ -241,7 +241,7 @@ static ssize_t radsnmp_pair_from_oid(TALLOC_CTX *ctx, radsnmp_conf_t *conf, vp_c
                /*
                 *      Entry must be a TLV type
                 */
-               if (parent->type != PW_TYPE_TLV) {
+               if (parent->type != FR_TYPE_TLV) {
                        fr_strerror_printf("Entry is not \"tlv\"");
                        break;
                }
@@ -298,15 +298,15 @@ static ssize_t radsnmp_pair_from_oid(TALLOC_CTX *ctx, radsnmp_conf_t *conf, vp_c
                 *      of conveying information, so empty TLVs are
                 *      disallowed.
                 */
-               case PW_TYPE_TLV:
+               case FR_TYPE_TLV:
                        vp->da = fr_dict_unknown_afrom_fields(vp, vp->da->parent, vp->da->vendor, vp->da->attr);
                        /* FALL-THROUGH */
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        fr_pair_value_memcpy(vp, (uint8_t const *)"\0", 1);
                        break;
 
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        fr_pair_value_bstrncpy(vp, "\0", 1);
                        break;
 
@@ -321,7 +321,7 @@ static ssize_t radsnmp_pair_from_oid(TALLOC_CTX *ctx, radsnmp_conf_t *conf, vp_c
                return slen;
        }
 
-       if (da->type == PW_TYPE_TLV) {
+       if (da->type == FR_TYPE_TLV) {
                fr_strerror_printf("TLVs cannot hold values");
                return -(slen);
        }
@@ -433,7 +433,7 @@ static int radsnmp_get_response(int fd,
                        slen = dict_print_attr_oid(p, end - p, parent, vp->da->parent);
                        if (slen < 0) return -1;
 
-                       if (vp->vp_type != PW_TYPE_INTEGER) {
+                       if (vp->vp_type != FR_TYPE_INTEGER) {
                                fr_strerror_printf("Index attribute \"%s\" is not of type \"integer\"", vp->da->name);
                                return -1;
                        }
@@ -489,12 +489,12 @@ static int radsnmp_get_response(int fd,
                io_vector[3].iov_len = 1;
 
                switch (vp->vp_type) {
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        memcpy(&io_vector[4].iov_base, &vp->vp_strvalue, sizeof(io_vector[4].iov_base));
                        io_vector[4].iov_len = vp->vp_length;
                        break;
 
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        memcpy(&io_vector[4].iov_base, &vp->vp_strvalue, sizeof(io_vector[4].iov_base));
                        io_vector[4].iov_len = vp->vp_length;
                        break;
index 0a8a22ca695fa549b5f3ab0fc5b7c3113c7f3aa5..4ffb95985868966cfd0fdc413beffcd0f76f9ffa 100644 (file)
@@ -66,7 +66,7 @@ static struct radutmp_config_t {
 } radutmpconfig;
 
 static const CONF_PARSER module_config[] = {
-  { FR_CONF_POINTER("filename", PW_TYPE_FILE_INPUT, &radutmpconfig.radutmp_fn), .dflt = RADUTMP },
+  { FR_CONF_POINTER("filename", FR_TYPE_FILE_INPUT, &radutmpconfig.radutmp_fn), .dflt = RADUTMP },
   CONF_PARSER_TERMINATOR
 };
 
index 9bee6598e514537a1b055d2526bc848477ccd11e..922bb8c05c3d40d07ffb12b8ddaba9741bb32df9 100644 (file)
@@ -93,17 +93,17 @@ static rbtree_t     *home_pools_byname = NULL;
  *  Map the proxy server configuration parameters to variables.
  */
 static const CONF_PARSER proxy_config[] = {
-       { FR_CONF_OFFSET("retry_delay", PW_TYPE_INTEGER, realm_config_t, retry_delay), .dflt = STRINGIFY(RETRY_DELAY) },
+       { FR_CONF_OFFSET("retry_delay", FR_TYPE_INTEGER, realm_config_t, retry_delay), .dflt = STRINGIFY(RETRY_DELAY) },
 
-       { FR_CONF_OFFSET("retry_count", PW_TYPE_INTEGER, realm_config_t, retry_count), .dflt = STRINGIFY(RETRY_COUNT) },
+       { FR_CONF_OFFSET("retry_count", FR_TYPE_INTEGER, realm_config_t, retry_count), .dflt = STRINGIFY(RETRY_COUNT) },
 
-       { FR_CONF_OFFSET("default_fallback", PW_TYPE_BOOLEAN, realm_config_t, fallback), .dflt = "no" },
+       { FR_CONF_OFFSET("default_fallback", FR_TYPE_BOOLEAN, realm_config_t, fallback), .dflt = "no" },
 
-       { FR_CONF_OFFSET("dynamic", PW_TYPE_BOOLEAN, realm_config_t, dynamic) },
+       { FR_CONF_OFFSET("dynamic", FR_TYPE_BOOLEAN, realm_config_t, dynamic) },
 
-       { FR_CONF_OFFSET("dead_time", PW_TYPE_INTEGER, realm_config_t, dead_time), .dflt = STRINGIFY(DEAD_TIME) },
+       { FR_CONF_OFFSET("dead_time", FR_TYPE_INTEGER, realm_config_t, dead_time), .dflt = STRINGIFY(DEAD_TIME) },
 
-       { FR_CONF_OFFSET("wake_all_if_all_dead", PW_TYPE_BOOLEAN, realm_config_t, wake_all_if_all_dead), .dflt = "no" },
+       { FR_CONF_OFFSET("wake_all_if_all_dead", FR_TYPE_BOOLEAN, realm_config_t, wake_all_if_all_dead), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 #endif
@@ -322,73 +322,73 @@ void realms_free(void)
 
 #ifdef WITH_PROXY
 static CONF_PARSER limit_config[] = {
-       { FR_CONF_OFFSET("max_connections", PW_TYPE_INTEGER, home_server_t, limit.max_connections), .dflt = "16" },
-       { FR_CONF_OFFSET("max_requests", PW_TYPE_INTEGER, home_server_t, limit.max_requests), .dflt = "0" },
-       { FR_CONF_OFFSET("lifetime", PW_TYPE_INTEGER, home_server_t, limit.lifetime), .dflt = "0" },
-       { FR_CONF_OFFSET("idle_timeout", PW_TYPE_INTEGER, home_server_t, limit.idle_timeout), .dflt = "0" },
+       { FR_CONF_OFFSET("max_connections", FR_TYPE_INTEGER, home_server_t, limit.max_connections), .dflt = "16" },
+       { FR_CONF_OFFSET("max_requests", FR_TYPE_INTEGER, home_server_t, limit.max_requests), .dflt = "0" },
+       { FR_CONF_OFFSET("lifetime", FR_TYPE_INTEGER, home_server_t, limit.lifetime), .dflt = "0" },
+       { FR_CONF_OFFSET("idle_timeout", FR_TYPE_INTEGER, home_server_t, limit.idle_timeout), .dflt = "0" },
        CONF_PARSER_TERMINATOR
 };
 
 #ifdef WITH_COA
 static CONF_PARSER home_server_coa[] = {
-       { FR_CONF_OFFSET("irt", PW_TYPE_INTEGER, home_server_t, coa_irt), .dflt = STRINGIFY(2) },
-       { FR_CONF_OFFSET("mrt", PW_TYPE_INTEGER, home_server_t, coa_mrt), .dflt = STRINGIFY(16) },
-       { FR_CONF_OFFSET("mrc", PW_TYPE_INTEGER, home_server_t, coa_mrc), .dflt = STRINGIFY(5) },
-       { FR_CONF_OFFSET("mrd", PW_TYPE_INTEGER, home_server_t, coa_mrd), .dflt = STRINGIFY(30) },
+       { FR_CONF_OFFSET("irt", FR_TYPE_INTEGER, home_server_t, coa_irt), .dflt = STRINGIFY(2) },
+       { FR_CONF_OFFSET("mrt", FR_TYPE_INTEGER, home_server_t, coa_mrt), .dflt = STRINGIFY(16) },
+       { FR_CONF_OFFSET("mrc", FR_TYPE_INTEGER, home_server_t, coa_mrc), .dflt = STRINGIFY(5) },
+       { FR_CONF_OFFSET("mrd", FR_TYPE_INTEGER, home_server_t, coa_mrd), .dflt = STRINGIFY(30) },
        CONF_PARSER_TERMINATOR
 };
 #endif
 
 static CONF_PARSER home_server_config[] = {
-       { FR_CONF_OFFSET("ipaddr", PW_TYPE_COMBO_IP_ADDR, home_server_t, ipaddr) },
-       { FR_CONF_OFFSET("ipv4addr", PW_TYPE_IPV4_ADDR, home_server_t, ipaddr) },
-       { FR_CONF_OFFSET("ipv6addr", PW_TYPE_IPV6_ADDR, home_server_t, ipaddr) },
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, home_server_t, server) },
+       { FR_CONF_OFFSET("ipaddr", FR_TYPE_COMBO_IP_ADDR, home_server_t, ipaddr) },
+       { FR_CONF_OFFSET("ipv4addr", FR_TYPE_IPV4_ADDR, home_server_t, ipaddr) },
+       { FR_CONF_OFFSET("ipv6addr", FR_TYPE_IPV6_ADDR, home_server_t, ipaddr) },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING | FR_TYPE_NOT_EMPTY, home_server_t, server) },
 
-       { FR_CONF_OFFSET("port", PW_TYPE_SHORT, home_server_t, port), .dflt = "0" },
+       { FR_CONF_OFFSET("port", FR_TYPE_SHORT, home_server_t, port), .dflt = "0" },
 
-       { FR_CONF_OFFSET("type", PW_TYPE_STRING, home_server_t, type_str) },
+       { FR_CONF_OFFSET("type", FR_TYPE_STRING, home_server_t, type_str) },
 
 #ifdef WITH_TCP
-       { FR_CONF_OFFSET("proto", PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, home_server_t, proto_str) },
+       { FR_CONF_OFFSET("proto", FR_TYPE_STRING | FR_TYPE_NOT_EMPTY, home_server_t, proto_str) },
 #endif
 
-       { FR_CONF_OFFSET("secret", PW_TYPE_STRING | PW_TYPE_SECRET, home_server_t, secret) },
+       { FR_CONF_OFFSET("secret", FR_TYPE_STRING | FR_TYPE_SECRET, home_server_t, secret) },
 
-       { FR_CONF_OFFSET("src_ipaddr", PW_TYPE_STRING, home_server_t, src_ipaddr_str) },
+       { FR_CONF_OFFSET("src_ipaddr", FR_TYPE_STRING, home_server_t, src_ipaddr_str) },
 
-       { FR_CONF_OFFSET("response_window", PW_TYPE_TIMEVAL, home_server_t, response_window), .dflt = "30" },
-       { FR_CONF_OFFSET("response_timeouts", PW_TYPE_INTEGER, home_server_t, max_response_timeouts), .dflt = "1" },
-       { FR_CONF_OFFSET("max_outstanding", PW_TYPE_INTEGER, home_server_t, max_outstanding), .dflt = "65536" },
+       { FR_CONF_OFFSET("response_window", FR_TYPE_TIMEVAL, home_server_t, response_window), .dflt = "30" },
+       { FR_CONF_OFFSET("response_timeouts", FR_TYPE_INTEGER, home_server_t, max_response_timeouts), .dflt = "1" },
+       { FR_CONF_OFFSET("max_outstanding", FR_TYPE_INTEGER, home_server_t, max_outstanding), .dflt = "65536" },
 
-       { FR_CONF_OFFSET("zombie_period", PW_TYPE_INTEGER, home_server_t, zombie_period), .dflt = "40" },
+       { FR_CONF_OFFSET("zombie_period", FR_TYPE_INTEGER, home_server_t, zombie_period), .dflt = "40" },
 
-       { FR_CONF_OFFSET("status_check", PW_TYPE_STRING, home_server_t, ping_check_str), .dflt = "none" },
-       { FR_CONF_OFFSET("ping_check", PW_TYPE_STRING, home_server_t, ping_check_str) },
+       { FR_CONF_OFFSET("status_check", FR_TYPE_STRING, home_server_t, ping_check_str), .dflt = "none" },
+       { FR_CONF_OFFSET("ping_check", FR_TYPE_STRING, home_server_t, ping_check_str) },
 
-       { FR_CONF_OFFSET("ping_interval", PW_TYPE_INTEGER, home_server_t, ping_interval), .dflt = "30" },
-       { FR_CONF_OFFSET("check_interval", PW_TYPE_INTEGER, home_server_t, ping_interval) },
+       { FR_CONF_OFFSET("ping_interval", FR_TYPE_INTEGER, home_server_t, ping_interval), .dflt = "30" },
+       { FR_CONF_OFFSET("check_interval", FR_TYPE_INTEGER, home_server_t, ping_interval) },
 
-       { FR_CONF_OFFSET("check_timeout", PW_TYPE_INTEGER, home_server_t, ping_timeout), .dflt = "4" },
-       { FR_CONF_OFFSET("status_check_timeout", PW_TYPE_INTEGER, home_server_t, ping_timeout) },
+       { FR_CONF_OFFSET("check_timeout", FR_TYPE_INTEGER, home_server_t, ping_timeout), .dflt = "4" },
+       { FR_CONF_OFFSET("status_check_timeout", FR_TYPE_INTEGER, home_server_t, ping_timeout) },
 
-       { FR_CONF_OFFSET("num_answers_to_alive", PW_TYPE_INTEGER, home_server_t, num_pings_to_alive), .dflt = "3" },
-       { FR_CONF_OFFSET("revive_interval", PW_TYPE_INTEGER, home_server_t, revive_interval), .dflt = "300" },
+       { FR_CONF_OFFSET("num_answers_to_alive", FR_TYPE_INTEGER, home_server_t, num_pings_to_alive), .dflt = "3" },
+       { FR_CONF_OFFSET("revive_interval", FR_TYPE_INTEGER, home_server_t, revive_interval), .dflt = "300" },
 
-       { FR_CONF_OFFSET("username", PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, home_server_t, ping_user_name) },
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, home_server_t, ping_user_password) },
+       { FR_CONF_OFFSET("username", FR_TYPE_STRING | FR_TYPE_NOT_EMPTY, home_server_t, ping_user_name) },
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING | FR_TYPE_NOT_EMPTY, home_server_t, ping_user_password) },
 
 #ifdef WITH_STATS
-       { FR_CONF_OFFSET("historic_average_window", PW_TYPE_INTEGER, home_server_t, ema.window) },
+       { FR_CONF_OFFSET("historic_average_window", FR_TYPE_INTEGER, home_server_t, ema.window) },
 #endif
 
-       { FR_CONF_POINTER("limit", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) limit_config },
+       { FR_CONF_POINTER("limit", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) limit_config },
 
 #ifdef WITH_COA
-       { FR_CONF_POINTER("coa", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) home_server_coa },
+       { FR_CONF_POINTER("coa", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) home_server_coa },
 #endif
 
-       { FR_CONF_OFFSET("self", PW_TYPE_BOOLEAN, home_server_t, is_ourself), },
+       { FR_CONF_OFFSET("self", FR_TYPE_BOOLEAN, home_server_t, is_ourself), },
 
        CONF_PARSER_TERMINATOR
 };
index 40bc3935644c071303bc170bc665119d10428c14..acdf53aae5ff8bfbf4e91825b60121422a4ba379 100644 (file)
@@ -82,7 +82,7 @@ static int reset_state = PW_RADIUS_AUTH_SERV_CONFIG_RESET_VALUE_RUNNING;
 static int snmp_value_serv_ident_get(TALLOC_CTX *ctx, value_box_t *out, NDEBUG_UNUSED fr_snmp_map_t const *map,
                                     UNUSED void *snmp_ctx)
 {
-       rad_assert(map->da->type == PW_TYPE_STRING);
+       rad_assert(map->da->type == FR_TYPE_STRING);
 
        out->datum.strvalue = talloc_typed_asprintf(ctx, "FreeRADIUS %s", radiusd_version_short);
        out->datum.length = talloc_array_length(out->datum.strvalue) - 1;
@@ -95,7 +95,7 @@ static int snmp_value_uptime_get(UNUSED TALLOC_CTX *ctx, value_box_t *out, NDEBU
        struct timeval now;
        struct timeval diff;
 
-       rad_assert(map->da->type == PW_TYPE_INTEGER);
+       rad_assert(map->da->type == FR_TYPE_INTEGER);
 
        gettimeofday(&now, NULL);
        fr_timeval_subtract(&diff, &now, &uptime);
@@ -112,7 +112,7 @@ static int snmp_config_reset_time_get(UNUSED TALLOC_CTX *ctx, value_box_t *out,
        struct timeval now;
        struct timeval diff;
 
-       rad_assert(map->da->type == PW_TYPE_INTEGER);
+       rad_assert(map->da->type == FR_TYPE_INTEGER);
 
        gettimeofday(&now, NULL);
        fr_timeval_subtract(&diff, &now, &reset_time);
@@ -126,7 +126,7 @@ static int snmp_config_reset_time_get(UNUSED TALLOC_CTX *ctx, value_box_t *out,
 static int snmp_config_reset_get(UNUSED TALLOC_CTX *ctx, value_box_t *out, NDEBUG_UNUSED fr_snmp_map_t const *map,
                                 UNUSED void *snmp_ctx)
 {
-       rad_assert(map->da->type == PW_TYPE_INTEGER);
+       rad_assert(map->da->type == FR_TYPE_INTEGER);
 
        out->datum.integer = reset_state;
 
@@ -135,7 +135,7 @@ static int snmp_config_reset_get(UNUSED TALLOC_CTX *ctx, value_box_t *out, NDEBU
 
 static int snmp_config_reset_set(NDEBUG_UNUSED fr_snmp_map_t const *map, UNUSED void *snmp_ctx, value_box_t *in)
 {
-       rad_assert(map->da->type == PW_TYPE_INTEGER);
+       rad_assert(map->da->type == FR_TYPE_INTEGER);
 
        switch (in->datum.integer) {
        case PW_RADIUS_AUTH_SERV_CONFIG_RESET_VALUE_RESET:
@@ -152,7 +152,7 @@ static int snmp_config_reset_set(NDEBUG_UNUSED fr_snmp_map_t const *map, UNUSED
 static int snmp_auth_stats_offset_get(UNUSED TALLOC_CTX *ctx, value_box_t *out,
                                      fr_snmp_map_t const *map, UNUSED void *snmp_ctx)
 {
-       rad_assert(map->da->type == PW_TYPE_INTEGER);
+       rad_assert(map->da->type == FR_TYPE_INTEGER);
 
        out->datum.integer = *(uint32_t *)((uint8_t *)(&radius_auth_stats) + map->offset);
 
@@ -193,7 +193,7 @@ static int snmp_client_ipv4addr_get(UNUSED TALLOC_CTX *ctx, value_box_t *out,
        RADCLIENT *client = snmp_ctx;
 
        rad_assert(client);
-       rad_assert(map->da->type == PW_TYPE_IPV4_ADDR);
+       rad_assert(map->da->type == FR_TYPE_IPV4_ADDR);
 
        /*
         *      The old SNMP MIB only allowed access
@@ -215,7 +215,7 @@ static int snmp_client_id_get(TALLOC_CTX *ctx, value_box_t *out,
        size_t len;
 
        rad_assert(client);
-       rad_assert(map->da->type == PW_TYPE_STRING);
+       rad_assert(map->da->type == FR_TYPE_STRING);
 
        len = talloc_array_length(client->longname) - 1;
 
@@ -231,7 +231,7 @@ static int snmp_auth_client_stats_offset_get(UNUSED TALLOC_CTX *ctx, value_box_t
        RADCLIENT *client = snmp_ctx;
 
        rad_assert(client);
-       rad_assert(map->da->type == PW_TYPE_INTEGER);
+       rad_assert(map->da->type == FR_TYPE_INTEGER);
 
        out->datum.integer = *(uint32_t *)((uint8_t *)(&client->auth) + map->offset);
 
@@ -613,7 +613,7 @@ static ssize_t snmp_process_index_attr(vp_cursor_t *out, REQUEST *request,
                goto error;
        }
 
-       if (tlv_stack[depth]->type != PW_TYPE_INTEGER) {
+       if (tlv_stack[depth]->type != FR_TYPE_INTEGER) {
                fr_strerror_printf("Bad index attribute: Index attribute \"%s\" should be a integer, "
                                   "but is a %s", tlv_stack[depth]->name,
                                   fr_int2str(dict_attr_types, tlv_stack[depth]->type, "?Unknown?"));
@@ -866,7 +866,7 @@ static ssize_t snmp_process(vp_cursor_t *out, REQUEST *request,
         *      matching the next deepest DA in the
         *      tlv_stack.
         */
-       if (tlv_stack[depth]->type == PW_TYPE_TLV) return snmp_process_tlv(out, request, tlv_stack, depth, cursor,
+       if (tlv_stack[depth]->type == FR_TYPE_TLV) return snmp_process_tlv(out, request, tlv_stack, depth, cursor,
                                                                           map, snmp_ctx, snmp_op);
 
        /*
@@ -923,10 +923,10 @@ int fr_snmp_process(REQUEST *request)
                /*
                 *      Clear out any junk values
                 */
-               if (da->type == PW_TYPE_TLV) {
+               if (da->type == FR_TYPE_TLV) {
                        switch (vp->vp_type) {
-                       case PW_TYPE_OCTETS:
-                       case PW_TYPE_STRING:
+                       case FR_TYPE_OCTETS:
+                       case FR_TYPE_STRING:
                                talloc_free(vp->data.datum.ptr);
 
                        /* FALL-THROUGH */
index 6ed184d41bff47cfa9a6369b9ecde80bddfc94e4..28b60ffffb662559641dbd064cfee4cf44756c0b 100644 (file)
@@ -584,7 +584,7 @@ void request_stats_reply(REQUEST *request)
                         *      When retrieving client by number, also
                         *      echo back it's IP address.
                         */
-                       if ((vp->vp_type == PW_TYPE_INTEGER) &&
+                       if ((vp->vp_type == FR_TYPE_INTEGER) &&
                            (client->ipaddr.af == AF_INET)) {
                                vp = radius_pair_create(request->reply,
                                                       &request->reply->vps,
index 635b0afbce758a159b42fc11273ec159de3512e4..1e82add6703c8442955ef3c173d06732dbd72e78 100644 (file)
@@ -171,17 +171,17 @@ static THREAD_HANDLE *thread_spawn(time_t now, int do_trigger);
  *     A mapping of configuration file names to internal integers
  */
 static const CONF_PARSER thread_config[] = {
-       { FR_CONF_POINTER("start_servers", PW_TYPE_INTEGER, &thread_pool.start_threads), .dflt = "5" },
-       { FR_CONF_POINTER("max_servers", PW_TYPE_INTEGER, &thread_pool.max_threads), .dflt = "32" },
-       { FR_CONF_POINTER("min_spare_servers", PW_TYPE_INTEGER, &thread_pool.min_spare_threads), .dflt = "3" },
-       { FR_CONF_POINTER("max_spare_servers", PW_TYPE_INTEGER, &thread_pool.max_spare_threads), .dflt = "10" },
-       { FR_CONF_POINTER("max_requests_per_server", PW_TYPE_INTEGER, &thread_pool.max_requests_per_thread), .dflt = "0" },
-       { FR_CONF_POINTER("cleanup_delay", PW_TYPE_INTEGER, &thread_pool.cleanup_delay), .dflt = "5" },
-       { FR_CONF_POINTER("max_queue_size", PW_TYPE_INTEGER, &thread_pool.max_queue_size), .dflt = "65536" },
-       { FR_CONF_POINTER("queue_priority", PW_TYPE_STRING, &thread_pool.queue_priority), .dflt = NULL },
+       { FR_CONF_POINTER("start_servers", FR_TYPE_INTEGER, &thread_pool.start_threads), .dflt = "5" },
+       { FR_CONF_POINTER("max_servers", FR_TYPE_INTEGER, &thread_pool.max_threads), .dflt = "32" },
+       { FR_CONF_POINTER("min_spare_servers", FR_TYPE_INTEGER, &thread_pool.min_spare_threads), .dflt = "3" },
+       { FR_CONF_POINTER("max_spare_servers", FR_TYPE_INTEGER, &thread_pool.max_spare_threads), .dflt = "10" },
+       { FR_CONF_POINTER("max_requests_per_server", FR_TYPE_INTEGER, &thread_pool.max_requests_per_thread), .dflt = "0" },
+       { FR_CONF_POINTER("cleanup_delay", FR_TYPE_INTEGER, &thread_pool.cleanup_delay), .dflt = "5" },
+       { FR_CONF_POINTER("max_queue_size", FR_TYPE_INTEGER, &thread_pool.max_queue_size), .dflt = "65536" },
+       { FR_CONF_POINTER("queue_priority", FR_TYPE_STRING, &thread_pool.queue_priority), .dflt = NULL },
 #ifdef WITH_STATS
 #ifdef WITH_ACCOUNTING
-       { FR_CONF_POINTER("auto_limit_acct", PW_TYPE_BOOLEAN, &thread_pool.auto_limit_acct) },
+       { FR_CONF_POINTER("auto_limit_acct", FR_TYPE_BOOLEAN, &thread_pool.auto_limit_acct) },
 #endif
 #endif
        CONF_PARSER_TERMINATOR
index 02fcf4810f37978872717d378940de06c56a925a..8018aad55564a7ed2eb5171002c13f444c39969a 100644 (file)
@@ -40,139 +40,139 @@ USES_APPLE_DEPRECATED_API /* OpenSSL API has been deprecated by Apple */
 #include <freeradius-devel/rad_assert.h>
 
 static CONF_PARSER cache_config[] = {
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING, fr_tls_conf_t, session_cache_server) },
-       { FR_CONF_OFFSET("name", PW_TYPE_STRING, fr_tls_conf_t, session_id_name) },
-       { FR_CONF_OFFSET("lifetime", PW_TYPE_INTEGER, fr_tls_conf_t, session_cache_lifetime), .dflt = "86400" },
-       { FR_CONF_OFFSET("verify", PW_TYPE_BOOLEAN, fr_tls_conf_t, session_cache_verify), .dflt = "no" },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING, fr_tls_conf_t, session_cache_server) },
+       { FR_CONF_OFFSET("name", FR_TYPE_STRING, fr_tls_conf_t, session_id_name) },
+       { FR_CONF_OFFSET("lifetime", FR_TYPE_INTEGER, fr_tls_conf_t, session_cache_lifetime), .dflt = "86400" },
+       { FR_CONF_OFFSET("verify", FR_TYPE_BOOLEAN, fr_tls_conf_t, session_cache_verify), .dflt = "no" },
 
 #if OPENSSL_VERSION_NUMBER >= 0x10100000L
-       { FR_CONF_OFFSET("require_extended_master_secret", PW_TYPE_BOOLEAN, fr_tls_conf_t, session_cache_require_extms), .dflt = "yes" },
-       { FR_CONF_OFFSET("require_perfect_forward_secrecy", PW_TYPE_BOOLEAN, fr_tls_conf_t, session_cache_require_pfs), .dflt = "no" },
+       { FR_CONF_OFFSET("require_extended_master_secret", FR_TYPE_BOOLEAN, fr_tls_conf_t, session_cache_require_extms), .dflt = "yes" },
+       { FR_CONF_OFFSET("require_perfect_forward_secrecy", FR_TYPE_BOOLEAN, fr_tls_conf_t, session_cache_require_pfs), .dflt = "no" },
 #endif
 
-       { FR_CONF_DEPRECATED("enable", PW_TYPE_BOOLEAN, fr_tls_conf_t, NULL) },
-       { FR_CONF_DEPRECATED("max_entries", PW_TYPE_INTEGER, fr_tls_conf_t, NULL) },
-       { FR_CONF_DEPRECATED("persist_dir", PW_TYPE_STRING, fr_tls_conf_t, NULL) },
+       { FR_CONF_DEPRECATED("enable", FR_TYPE_BOOLEAN, fr_tls_conf_t, NULL) },
+       { FR_CONF_DEPRECATED("max_entries", FR_TYPE_INTEGER, fr_tls_conf_t, NULL) },
+       { FR_CONF_DEPRECATED("persist_dir", FR_TYPE_STRING, fr_tls_conf_t, NULL) },
 
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER verify_config[] = {
-       { FR_CONF_OFFSET("tmpdir", PW_TYPE_STRING, fr_tls_conf_t, verify_tmp_dir) },
-       { FR_CONF_OFFSET("client", PW_TYPE_STRING, fr_tls_conf_t, verify_client_cert_cmd) },
+       { FR_CONF_OFFSET("tmpdir", FR_TYPE_STRING, fr_tls_conf_t, verify_tmp_dir) },
+       { FR_CONF_OFFSET("client", FR_TYPE_STRING, fr_tls_conf_t, verify_client_cert_cmd) },
        CONF_PARSER_TERMINATOR
 };
 
 #ifdef HAVE_OPENSSL_OCSP_H
 static CONF_PARSER ocsp_config[] = {
-       { FR_CONF_OFFSET("enable", PW_TYPE_BOOLEAN, fr_tls_ocsp_conf_t, enable), .dflt = "no" },
+       { FR_CONF_OFFSET("enable", FR_TYPE_BOOLEAN, fr_tls_ocsp_conf_t, enable), .dflt = "no" },
 
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING, fr_tls_ocsp_conf_t, cache_server) },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING, fr_tls_ocsp_conf_t, cache_server) },
 
-       { FR_CONF_OFFSET("override_cert_url", PW_TYPE_BOOLEAN, fr_tls_ocsp_conf_t, override_url), .dflt = "no" },
-       { FR_CONF_OFFSET("url", PW_TYPE_STRING, fr_tls_ocsp_conf_t, url) },
-       { FR_CONF_OFFSET("use_nonce", PW_TYPE_BOOLEAN, fr_tls_ocsp_conf_t, use_nonce), .dflt = "yes" },
-       { FR_CONF_OFFSET("timeout", PW_TYPE_INTEGER, fr_tls_ocsp_conf_t, timeout), .dflt = "yes" },
-       { FR_CONF_OFFSET("softfail", PW_TYPE_BOOLEAN, fr_tls_ocsp_conf_t, softfail), .dflt = "no" },
+       { FR_CONF_OFFSET("override_cert_url", FR_TYPE_BOOLEAN, fr_tls_ocsp_conf_t, override_url), .dflt = "no" },
+       { FR_CONF_OFFSET("url", FR_TYPE_STRING, fr_tls_ocsp_conf_t, url) },
+       { FR_CONF_OFFSET("use_nonce", FR_TYPE_BOOLEAN, fr_tls_ocsp_conf_t, use_nonce), .dflt = "yes" },
+       { FR_CONF_OFFSET("timeout", FR_TYPE_INTEGER, fr_tls_ocsp_conf_t, timeout), .dflt = "yes" },
+       { FR_CONF_OFFSET("softfail", FR_TYPE_BOOLEAN, fr_tls_ocsp_conf_t, softfail), .dflt = "no" },
 
        CONF_PARSER_TERMINATOR
 };
 #endif
 
 static CONF_PARSER tls_server_config[] = {
-       { FR_CONF_OFFSET("verify_depth", PW_TYPE_INTEGER, fr_tls_conf_t, verify_depth), .dflt = "0" },
-       { FR_CONF_OFFSET("ca_path", PW_TYPE_FILE_INPUT, fr_tls_conf_t, ca_path) },
-       { FR_CONF_OFFSET("pem_file_type", PW_TYPE_BOOLEAN, fr_tls_conf_t, file_type), .dflt = "yes" },
-       { FR_CONF_OFFSET("private_key_file", PW_TYPE_FILE_INPUT, fr_tls_conf_t, private_key_file) },
-       { FR_CONF_OFFSET("certificate_file", PW_TYPE_FILE_INPUT, fr_tls_conf_t, certificate_file) },
-       { FR_CONF_OFFSET("ca_file", PW_TYPE_FILE_INPUT, fr_tls_conf_t, ca_file) },
-       { FR_CONF_OFFSET("private_key_password", PW_TYPE_STRING | PW_TYPE_SECRET, fr_tls_conf_t, private_key_password) },
+       { FR_CONF_OFFSET("verify_depth", FR_TYPE_INTEGER, fr_tls_conf_t, verify_depth), .dflt = "0" },
+       { FR_CONF_OFFSET("ca_path", FR_TYPE_FILE_INPUT, fr_tls_conf_t, ca_path) },
+       { FR_CONF_OFFSET("pem_file_type", FR_TYPE_BOOLEAN, fr_tls_conf_t, file_type), .dflt = "yes" },
+       { FR_CONF_OFFSET("private_key_file", FR_TYPE_FILE_INPUT, fr_tls_conf_t, private_key_file) },
+       { FR_CONF_OFFSET("certificate_file", FR_TYPE_FILE_INPUT, fr_tls_conf_t, certificate_file) },
+       { FR_CONF_OFFSET("ca_file", FR_TYPE_FILE_INPUT, fr_tls_conf_t, ca_file) },
+       { FR_CONF_OFFSET("private_key_password", FR_TYPE_STRING | FR_TYPE_SECRET, fr_tls_conf_t, private_key_password) },
 #ifdef PSK_MAX_IDENTITY_LEN
-       { FR_CONF_OFFSET("psk_identity", PW_TYPE_STRING, fr_tls_conf_t, psk_identity) },
-       { FR_CONF_OFFSET("psk_hexphrase", PW_TYPE_STRING | PW_TYPE_SECRET, fr_tls_conf_t, psk_password) },
-       { FR_CONF_OFFSET("psk_query", PW_TYPE_STRING, fr_tls_conf_t, psk_query) },
+       { FR_CONF_OFFSET("psk_identity", FR_TYPE_STRING, fr_tls_conf_t, psk_identity) },
+       { FR_CONF_OFFSET("psk_hexphrase", FR_TYPE_STRING | FR_TYPE_SECRET, fr_tls_conf_t, psk_password) },
+       { FR_CONF_OFFSET("psk_query", FR_TYPE_STRING, fr_tls_conf_t, psk_query) },
 #endif
-       { FR_CONF_OFFSET("dh_file", PW_TYPE_FILE_INPUT, fr_tls_conf_t, dh_file) },
-       { FR_CONF_OFFSET("random_file", PW_TYPE_FILE_EXISTS, fr_tls_conf_t, random_file) },
-       { FR_CONF_OFFSET("fragment_size", PW_TYPE_INTEGER, fr_tls_conf_t, fragment_size), .dflt = "1024" },
-       { FR_CONF_OFFSET("auto_chain", PW_TYPE_BOOLEAN, fr_tls_conf_t, auto_chain), .dflt = "yes" },
-       { FR_CONF_OFFSET("disable_single_dh_use", PW_TYPE_BOOLEAN, fr_tls_conf_t, disable_single_dh_use) },
-       { FR_CONF_OFFSET("check_crl", PW_TYPE_BOOLEAN, fr_tls_conf_t, check_crl), .dflt = "no" },
+       { FR_CONF_OFFSET("dh_file", FR_TYPE_FILE_INPUT, fr_tls_conf_t, dh_file) },
+       { FR_CONF_OFFSET("random_file", FR_TYPE_FILE_EXISTS, fr_tls_conf_t, random_file) },
+       { FR_CONF_OFFSET("fragment_size", FR_TYPE_INTEGER, fr_tls_conf_t, fragment_size), .dflt = "1024" },
+       { FR_CONF_OFFSET("auto_chain", FR_TYPE_BOOLEAN, fr_tls_conf_t, auto_chain), .dflt = "yes" },
+       { FR_CONF_OFFSET("disable_single_dh_use", FR_TYPE_BOOLEAN, fr_tls_conf_t, disable_single_dh_use) },
+       { FR_CONF_OFFSET("check_crl", FR_TYPE_BOOLEAN, fr_tls_conf_t, check_crl), .dflt = "no" },
 #ifdef X509_V_FLAG_CRL_CHECK_ALL
-       { FR_CONF_DEPRECATED("check_all_crl", PW_TYPE_BOOLEAN, fr_tls_conf_t, NULL) },
+       { FR_CONF_DEPRECATED("check_all_crl", FR_TYPE_BOOLEAN, fr_tls_conf_t, NULL) },
 #endif
-       { FR_CONF_OFFSET("allow_expired_crl", PW_TYPE_BOOLEAN, fr_tls_conf_t, allow_expired_crl) },
-       { FR_CONF_OFFSET("check_cert_cn", PW_TYPE_STRING, fr_tls_conf_t, check_cert_cn) },
-       { FR_CONF_OFFSET("cipher_list", PW_TYPE_STRING, fr_tls_conf_t, cipher_list) },
-       { FR_CONF_OFFSET("cipher_server_preference", PW_TYPE_BOOLEAN, fr_tls_conf_t, cipher_server_preference), .dflt = "yes" },
+       { FR_CONF_OFFSET("allow_expired_crl", FR_TYPE_BOOLEAN, fr_tls_conf_t, allow_expired_crl) },
+       { FR_CONF_OFFSET("check_cert_cn", FR_TYPE_STRING, fr_tls_conf_t, check_cert_cn) },
+       { FR_CONF_OFFSET("cipher_list", FR_TYPE_STRING, fr_tls_conf_t, cipher_list) },
+       { FR_CONF_OFFSET("cipher_server_preference", FR_TYPE_BOOLEAN, fr_tls_conf_t, cipher_server_preference), .dflt = "yes" },
 #ifdef SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS
-       { FR_CONF_OFFSET("allow_renegotiation", PW_TYPE_BOOLEAN, fr_tls_conf_t, allow_renegotiation), .dflt = "no" },
+       { FR_CONF_OFFSET("allow_renegotiation", FR_TYPE_BOOLEAN, fr_tls_conf_t, allow_renegotiation), .dflt = "no" },
 #endif
-       { FR_CONF_OFFSET("check_cert_issuer", PW_TYPE_STRING, fr_tls_conf_t, check_cert_issuer) },
-       { FR_CONF_OFFSET("require_client_cert", PW_TYPE_BOOLEAN, fr_tls_conf_t, require_client_cert) },
+       { FR_CONF_OFFSET("check_cert_issuer", FR_TYPE_STRING, fr_tls_conf_t, check_cert_issuer) },
+       { FR_CONF_OFFSET("require_client_cert", FR_TYPE_BOOLEAN, fr_tls_conf_t, require_client_cert) },
 
 #if OPENSSL_VERSION_NUMBER >= 0x0090800fL
 #ifndef OPENSSL_NO_ECDH
-       { FR_CONF_OFFSET("ecdh_curve", PW_TYPE_STRING, fr_tls_conf_t, ecdh_curve), .dflt = "prime256v1" },
+       { FR_CONF_OFFSET("ecdh_curve", FR_TYPE_STRING, fr_tls_conf_t, ecdh_curve), .dflt = "prime256v1" },
 #endif
 #endif
 
 #ifdef SSL_OP_NO_TLSv1
-       { FR_CONF_OFFSET("disable_tlsv1", PW_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1) },
+       { FR_CONF_OFFSET("disable_tlsv1", FR_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1) },
 #endif
 
 #ifdef SSL_OP_NO_TLSv1_1
-       { FR_CONF_OFFSET("disable_tlsv1_1", PW_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1_1) },
+       { FR_CONF_OFFSET("disable_tlsv1_1", FR_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1_1) },
 #endif
 
 #ifdef SSL_OP_NO_TLSv1_2
-       { FR_CONF_OFFSET("disable_tlsv1_2", PW_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1_2) },
+       { FR_CONF_OFFSET("disable_tlsv1_2", FR_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1_2) },
 #endif
 
-       { FR_CONF_POINTER("cache", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) cache_config },
+       { FR_CONF_POINTER("cache", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) cache_config },
 
-       { FR_CONF_POINTER("verify", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) verify_config },
+       { FR_CONF_POINTER("verify", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) verify_config },
 
 #ifdef HAVE_OPENSSL_OCSP_H
-       { FR_CONF_OFFSET("ocsp", PW_TYPE_SUBSECTION, fr_tls_conf_t, ocsp), .subcs = (void const *) ocsp_config },
+       { FR_CONF_OFFSET("ocsp", FR_TYPE_SUBSECTION, fr_tls_conf_t, ocsp), .subcs = (void const *) ocsp_config },
 
-       { FR_CONF_OFFSET("staple", PW_TYPE_SUBSECTION, fr_tls_conf_t, staple), .subcs = (void const *) ocsp_config },
+       { FR_CONF_OFFSET("staple", FR_TYPE_SUBSECTION, fr_tls_conf_t, staple), .subcs = (void const *) ocsp_config },
 #endif
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER tls_client_config[] = {
-       { FR_CONF_OFFSET("verify_depth", PW_TYPE_INTEGER, fr_tls_conf_t, verify_depth), .dflt = "0" },
-       { FR_CONF_OFFSET("ca_path", PW_TYPE_FILE_INPUT, fr_tls_conf_t, ca_path) },
-       { FR_CONF_OFFSET("pem_file_type", PW_TYPE_BOOLEAN, fr_tls_conf_t, file_type), .dflt = "yes" },
-       { FR_CONF_OFFSET("private_key_file", PW_TYPE_FILE_INPUT, fr_tls_conf_t, private_key_file) },
-       { FR_CONF_OFFSET("certificate_file", PW_TYPE_FILE_INPUT, fr_tls_conf_t, certificate_file) },
-       { FR_CONF_OFFSET("ca_file", PW_TYPE_FILE_INPUT, fr_tls_conf_t, ca_file) },
-       { FR_CONF_OFFSET("private_key_password", PW_TYPE_STRING | PW_TYPE_SECRET, fr_tls_conf_t, private_key_password) },
-       { FR_CONF_OFFSET("dh_file", PW_TYPE_STRING, fr_tls_conf_t, dh_file) },
-       { FR_CONF_OFFSET("random_file", PW_TYPE_STRING, fr_tls_conf_t, random_file) },
-       { FR_CONF_OFFSET("fragment_size", PW_TYPE_INTEGER, fr_tls_conf_t, fragment_size), .dflt = "1024" },
-       { FR_CONF_OFFSET("check_crl", PW_TYPE_BOOLEAN, fr_tls_conf_t, check_crl), .dflt = "no" },
-       { FR_CONF_OFFSET("check_cert_cn", PW_TYPE_STRING, fr_tls_conf_t, check_cert_cn) },
-       { FR_CONF_OFFSET("cipher_list", PW_TYPE_STRING, fr_tls_conf_t, cipher_list) },
-       { FR_CONF_OFFSET("check_cert_issuer", PW_TYPE_STRING, fr_tls_conf_t, check_cert_issuer) },
+       { FR_CONF_OFFSET("verify_depth", FR_TYPE_INTEGER, fr_tls_conf_t, verify_depth), .dflt = "0" },
+       { FR_CONF_OFFSET("ca_path", FR_TYPE_FILE_INPUT, fr_tls_conf_t, ca_path) },
+       { FR_CONF_OFFSET("pem_file_type", FR_TYPE_BOOLEAN, fr_tls_conf_t, file_type), .dflt = "yes" },
+       { FR_CONF_OFFSET("private_key_file", FR_TYPE_FILE_INPUT, fr_tls_conf_t, private_key_file) },
+       { FR_CONF_OFFSET("certificate_file", FR_TYPE_FILE_INPUT, fr_tls_conf_t, certificate_file) },
+       { FR_CONF_OFFSET("ca_file", FR_TYPE_FILE_INPUT, fr_tls_conf_t, ca_file) },
+       { FR_CONF_OFFSET("private_key_password", FR_TYPE_STRING | FR_TYPE_SECRET, fr_tls_conf_t, private_key_password) },
+       { FR_CONF_OFFSET("dh_file", FR_TYPE_STRING, fr_tls_conf_t, dh_file) },
+       { FR_CONF_OFFSET("random_file", FR_TYPE_STRING, fr_tls_conf_t, random_file) },
+       { FR_CONF_OFFSET("fragment_size", FR_TYPE_INTEGER, fr_tls_conf_t, fragment_size), .dflt = "1024" },
+       { FR_CONF_OFFSET("check_crl", FR_TYPE_BOOLEAN, fr_tls_conf_t, check_crl), .dflt = "no" },
+       { FR_CONF_OFFSET("check_cert_cn", FR_TYPE_STRING, fr_tls_conf_t, check_cert_cn) },
+       { FR_CONF_OFFSET("cipher_list", FR_TYPE_STRING, fr_tls_conf_t, cipher_list) },
+       { FR_CONF_OFFSET("check_cert_issuer", FR_TYPE_STRING, fr_tls_conf_t, check_cert_issuer) },
 
 #if OPENSSL_VERSION_NUMBER >= 0x0090800fL
 #ifndef OPENSSL_NO_ECDH
-       { FR_CONF_OFFSET("ecdh_curve", PW_TYPE_STRING, fr_tls_conf_t, ecdh_curve), .dflt = "prime256v1" },
+       { FR_CONF_OFFSET("ecdh_curve", FR_TYPE_STRING, fr_tls_conf_t, ecdh_curve), .dflt = "prime256v1" },
 #endif
 #endif
 
 #ifdef SSL_OP_NO_TLSv1
-       { FR_CONF_OFFSET("disable_tlsv1", PW_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1) },
+       { FR_CONF_OFFSET("disable_tlsv1", FR_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1) },
 #endif
 
 #ifdef SSL_OP_NO_TLSv1_1
-       { FR_CONF_OFFSET("disable_tlsv1_1", PW_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1_1) },
+       { FR_CONF_OFFSET("disable_tlsv1_1", FR_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1_1) },
 #endif
 
 #ifdef SSL_OP_NO_TLSv1_2
-       { FR_CONF_OFFSET("disable_tlsv1_2", PW_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1_2) },
+       { FR_CONF_OFFSET("disable_tlsv1_2", FR_TYPE_BOOLEAN, fr_tls_conf_t, disable_tlsv1_2) },
 #endif
        CONF_PARSER_TERMINATOR
 };
index b479b71900d9083cdf32257333c68de8a695a65d..dfdc52534a427f04e3f1500b512ae174e4ae6e98 100644 (file)
@@ -612,7 +612,7 @@ int tmpl_afrom_value_box(TALLOC_CTX *ctx, vp_tmpl_t **out, value_box_t *data, bo
        vpt = talloc(ctx, vp_tmpl_t);
        name = value_box_asprint(vpt, data, '\0');
        tmpl_init(vpt, TMPL_TYPE_DATA, name, talloc_array_length(name),
-                 (data->type == PW_TYPE_STRING) ? T_SINGLE_QUOTED_STRING : T_BARE_WORD);
+                 (data->type == FR_TYPE_STRING) ? T_SINGLE_QUOTED_STRING : T_BARE_WORD);
 
        if (steal) {
                if (value_box_steal(vpt, &vpt->tmpl_value_box, data) < 0) {
@@ -954,7 +954,7 @@ ssize_t tmpl_afrom_str(TALLOC_CTX *ctx, vp_tmpl_t **out, char const *in, size_t
        char quote;
        char const *p;
        ssize_t slen;
-       PW_TYPE data_type = PW_TYPE_STRING;
+       fr_type_t data_type = FR_TYPE_STRING;
        vp_tmpl_t *vpt = NULL;
        value_box_t data;
 
@@ -985,7 +985,7 @@ ssize_t tmpl_afrom_str(TALLOC_CTX *ctx, vp_tmpl_t **out, char const *in, size_t
                        vpt = tmpl_alloc(ctx, TMPL_TYPE_DATA, in, inlen, type);
                        vpt->tmpl_value_box_datum.ptr = talloc_array(vpt, uint8_t, binlen);
                        vpt->tmpl_value_box_length = binlen;
-                       vpt->tmpl_value_box_type = PW_TYPE_OCTETS;
+                       vpt->tmpl_value_box_type = FR_TYPE_OCTETS;
 
                        len = fr_hex2bin(vpt->tmpl_value_box_datum.ptr, binlen, in + 2, inlen - 2);
                        if (len != binlen) {
@@ -1112,10 +1112,10 @@ ssize_t tmpl_afrom_str(TALLOC_CTX *ctx, vp_tmpl_t **out, char const *in, size_t
 /** @name Cast or convert #vp_tmpl_t
  *
  * #tmpl_cast_in_place can be used to convert #TMPL_TYPE_UNPARSED to a #TMPL_TYPE_DATA of a
- *  specified #PW_TYPE.
+ *  specified #fr_type_t.
  *
  * #tmpl_cast_in_place_str does the same as #tmpl_cast_in_place, but will always convert to
- * #PW_TYPE #PW_TYPE_STRING.
+ * #fr_type_t #FR_TYPE_STRING.
  *
  * #tmpl_cast_to_vp does the same as #tmpl_cast_in_place, but outputs a #VALUE_PAIR.
  *
@@ -1139,7 +1139,7 @@ ssize_t tmpl_afrom_str(TALLOC_CTX *ctx, vp_tmpl_t **out, char const *in, size_t
  *     - 0 on success.
  *     - -1 on failure.
  */
-int tmpl_cast_in_place(vp_tmpl_t *vpt, PW_TYPE type, fr_dict_attr_t const *enumv)
+int tmpl_cast_in_place(vp_tmpl_t *vpt, fr_type_t type, fr_dict_attr_t const *enumv)
 {
        VERIFY_TMPL(vpt);
 
@@ -1170,8 +1170,8 @@ int tmpl_cast_in_place(vp_tmpl_t *vpt, PW_TYPE type, fr_dict_attr_t const *enumv
                 *      Free old value buffers
                 */
                switch (vpt->tmpl_value_box_type) {
-               case PW_TYPE_STRING:
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_STRING:
+               case FR_TYPE_OCTETS:
                        talloc_free(vpt->tmpl_value_box_datum.ptr);
                        break;
 
@@ -1192,7 +1192,7 @@ int tmpl_cast_in_place(vp_tmpl_t *vpt, PW_TYPE type, fr_dict_attr_t const *enumv
        return 0;
 }
 
-/** Convert #vp_tmpl_t of type #TMPL_TYPE_UNPARSED to #TMPL_TYPE_DATA of type #PW_TYPE_STRING
+/** Convert #vp_tmpl_t of type #TMPL_TYPE_UNPARSED to #TMPL_TYPE_DATA of type #FR_TYPE_STRING
  *
  * @note Conversion is done in place.
  *
@@ -1207,7 +1207,7 @@ void tmpl_cast_in_place_str(vp_tmpl_t *vpt)
        rad_assert(vpt->tmpl_value_box_datum.strvalue != NULL);
 
        vpt->type = TMPL_TYPE_DATA;
-       vpt->tmpl_value_box_type = PW_TYPE_STRING;
+       vpt->tmpl_value_box_type = FR_TYPE_STRING;
        vpt->tmpl_value_box_length = talloc_array_length(vpt->tmpl_value_box_datum.strvalue) - 1;
 }
 
@@ -1263,7 +1263,7 @@ int tmpl_cast_to_vp(VALUE_PAIR **out, REQUEST *request,
        /*
         *      New escapes: strings are in binary form.
         */
-       if (vp->vp_type == PW_TYPE_STRING) {
+       if (vp->vp_type == FR_TYPE_STRING) {
                vp->data.datum.ptr = talloc_steal(vp, data.datum.ptr);
                vp->vp_length = rcode;
        } else if (fr_pair_value_from_str(vp, data.datum.strvalue, rcode) < 0) {
@@ -1321,7 +1321,7 @@ int tmpl_define_unknown_attr(vp_tmpl_t *vpt)
  *     - 0 on success.
  *     - -1 on failure.
  */
-int tmpl_define_undefined_attr(vp_tmpl_t *vpt, PW_TYPE type, fr_dict_attr_flags_t const *flags)
+int tmpl_define_undefined_attr(vp_tmpl_t *vpt, fr_type_t type, fr_dict_attr_flags_t const *flags)
 {
        fr_dict_attr_t const *da;
 
@@ -1372,7 +1372,7 @@ int tmpl_define_undefined_attr(vp_tmpl_t *vpt, PW_TYPE type, fr_dict_attr_flags_
  *
  * The intended use of #tmpl_expand and #tmpl_aexpand is for modules to easily convert a #vp_tmpl_t
  * provided by the conf parser, into a usable value.
- * The value returned should be raw and undoctored for #PW_TYPE_STRING and #PW_TYPE_OCTETS types,
+ * The value returned should be raw and undoctored for #FR_TYPE_STRING and #FR_TYPE_OCTETS types,
  * and the printable (string) version of the data for all others.
  *
  * Depending what arguments are passed, either copies the value to buff, or writes a pointer
@@ -1403,7 +1403,7 @@ int tmpl_define_undefined_attr(vp_tmpl_t *vpt, PW_TYPE type, fr_dict_attr_flags_
  *                             - #TMPL_TYPE_DATA
  * @param[in] escape           xlat escape function (only used for xlat types).
  * @param[in] escape_ctx       xlat escape function data.
- * @param dst_type             PW_TYPE_* matching out pointer.  @see tmpl_expand.
+ * @param dst_type             FR_TYPE_* matching out pointer.  @see tmpl_expand.
  * @return
  *     - -1 on failure.
  *     - The length of data written to buff, or pointed to by out.
@@ -1413,7 +1413,7 @@ ssize_t _tmpl_to_type(void *out,
                      REQUEST *request,
                      vp_tmpl_t const *vpt,
                      xlat_escape_t escape, void const *escape_ctx,
-                     PW_TYPE dst_type)
+                     fr_type_t dst_type)
 {
        value_box_t             value_to_cast;
        value_box_t             value_from_cast;
@@ -1422,7 +1422,7 @@ ssize_t _tmpl_to_type(void *out,
 
        VALUE_PAIR              *vp = NULL;
 
-       PW_TYPE                 src_type = PW_TYPE_STRING;
+       fr_type_t                       src_type = FR_TYPE_STRING;
 
        ssize_t                 slen = -1;      /* quiet compiler */
 
@@ -1543,10 +1543,10 @@ ssize_t _tmpl_to_type(void *out,
         *      Deal with casts.
         */
        switch (src_type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                switch (dst_type) {
-               case PW_TYPE_STRING:
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_STRING:
+               case FR_TYPE_OCTETS:
                        from_cast = to_cast;
                        break;
 
@@ -1555,13 +1555,13 @@ ssize_t _tmpl_to_type(void *out,
                }
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                switch (dst_type) {
                /*
                 *      Need to use the expansion buffer for this conversion as
                 *      we need to add a \0 terminator.
                 */
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        if (!buff) {
                                fr_strerror_printf("Missing expansion buffer for octet->string cast");
                                return -1;
@@ -1581,7 +1581,7 @@ ssize_t _tmpl_to_type(void *out,
                /*
                 *      Just copy the pointer.  Length does not include \0.
                 */
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        from_cast = to_cast;
                        break;
 
@@ -1620,7 +1620,7 @@ ssize_t _tmpl_to_type(void *out,
                 *      that works with buffers, but it's not a high priority...
                 */
                switch (dst_type) {
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        if (!buff) {
                                fr_strerror_printf("Missing expansion buffer to store cast output");
                        error:
@@ -1638,7 +1638,7 @@ ssize_t _tmpl_to_type(void *out,
                        value_from_cast.datum.strvalue = (char *)buff;
                        break;
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        if (!buff) {
                                fr_strerror_printf("Missing expansion buffer to store cast output");
                                goto error;
@@ -1672,7 +1672,7 @@ ssize_t _tmpl_to_type(void *out,
  *
  * The intended use of #tmpl_expand and #tmpl_aexpand is for modules to easily convert a #vp_tmpl_t
  * provided by the conf parser, into a usable value.
- * The value returned should be raw and undoctored for #PW_TYPE_STRING and #PW_TYPE_OCTETS types,
+ * The value returned should be raw and undoctored for #FR_TYPE_STRING and #FR_TYPE_OCTETS types,
  * and the printable (string) version of the data for all others.
  *
  * This function will always duplicate values, whereas #tmpl_expand may return a pointer to an
@@ -1698,7 +1698,7 @@ ssize_t _tmpl_to_type(void *out,
  *                     - #TMPL_TYPE_DATA
  * @param escape xlat  escape function (only used for TMPL_TYPE_XLAT_* types).
  * @param escape_ctx   xlat escape function data (only used for TMPL_TYPE_XLAT_* types).
- * @param dst_type     PW_TYPE_* matching out pointer.  @see tmpl_aexpand.
+ * @param dst_type     FR_TYPE_* matching out pointer.  @see tmpl_aexpand.
  * @return
  *     - -1 on failure.
  *     - The length of data written to buff, or pointed to by out.
@@ -1707,7 +1707,7 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
                       REQUEST *request,
                       vp_tmpl_t const *vpt,
                       xlat_escape_t escape, void const *escape_ctx,
-                      PW_TYPE dst_type)
+                      fr_type_t dst_type)
 {
        value_box_t const       *to_cast = NULL;
        value_box_t             from_cast;
@@ -1731,7 +1731,7 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
 
                value.datum.length = vpt->len;
                value.datum.strvalue = vpt->name;
-               value.type = PW_TYPE_STRING;
+               value.type = FR_TYPE_STRING;
                to_cast = &value;
                needs_dup = true;
                break;
@@ -1747,7 +1747,7 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
                        return slen;
                }
                value.datum.length = strlen(value.datum.strvalue);
-               value.type = PW_TYPE_STRING;
+               value.type = FR_TYPE_STRING;
                MEM(value.datum.strvalue = talloc_realloc(tmp_ctx, value.datum.ptr, char, value.datum.length + 1));     /* Trim */
                rad_assert(value.datum.strvalue[value.datum.length] == '\0');
                to_cast = &value;
@@ -1756,7 +1756,7 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
        case TMPL_TYPE_XLAT:
        {
                value_box_t     tmp;
-               PW_TYPE         src_type = PW_TYPE_STRING;
+               fr_type_t               src_type = FR_TYPE_STRING;
 
                RDEBUG4("EXPAND TMPL XLAT");
 
@@ -1776,7 +1776,7 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
 
                value.datum.strvalue = tmp.datum.strvalue;
                value.datum.length = tmp.datum.length;
-               value.type = PW_TYPE_STRING;
+               value.type = FR_TYPE_STRING;
                to_cast = &value;
        }
                break;
@@ -1784,7 +1784,7 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
        case TMPL_TYPE_XLAT_STRUCT:
        {
                value_box_t     tmp;
-               PW_TYPE         src_type = PW_TYPE_STRING;
+               fr_type_t               src_type = FR_TYPE_STRING;
 
                RDEBUG4("EXPAND TMPL XLAT STRUCT");
                RDEBUG2("EXPAND %s", vpt->name); /* xlat_struct doesn't do this */
@@ -1807,7 +1807,7 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
 
                value.datum.strvalue = tmp.datum.strvalue;
                value.datum.length = tmp.datum.length;
-               value.type = PW_TYPE_STRING;
+               value.type = FR_TYPE_STRING;
                to_cast = &value;
 
                RDEBUG2("   --> %s", value.datum.strvalue);     /* Print post-unescaping */
@@ -1824,8 +1824,8 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
 
                to_cast = &vp->data;
                switch (to_cast->type) {
-               case PW_TYPE_STRING:
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_STRING:
+               case FR_TYPE_OCTETS:
                        rad_assert(to_cast->datum.ptr);
                        needs_dup = true;
                        break;
@@ -1841,8 +1841,8 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
 
                to_cast = &vpt->tmpl_value_box;
                switch (to_cast->type) {
-               case PW_TYPE_STRING:
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_STRING:
+               case FR_TYPE_OCTETS:
                        rad_assert(to_cast->datum.ptr);
                        needs_dup = true;
                        break;
@@ -1874,8 +1874,8 @@ ssize_t _tmpl_to_atype(TALLOC_CTX *ctx, void *out,
                if (ret < 0) goto error;
        } else {
                switch (to_cast->type) {
-               case PW_TYPE_OCTETS:
-               case PW_TYPE_STRING:
+               case FR_TYPE_OCTETS:
+               case FR_TYPE_STRING:
                        /*
                         *      Ensure we don't free the output buffer when the
                         *      tmp_ctx is freed.
@@ -2530,7 +2530,7 @@ void tmpl_verify(char const *file, int line, vp_tmpl_t const *vpt)
                                if (!fr_cond_assert(0)) fr_exit_now(1);
                        }
 
-                       if ((da->type == PW_TYPE_COMBO_IP_ADDR) && (da->type != vpt->tmpl_da->type)) {
+                       if ((da->type == FR_TYPE_COMBO_IP_ADDR) && (da->type != vpt->tmpl_da->type)) {
                                da = fr_dict_attr_by_type(vpt->tmpl_da, vpt->tmpl_da->type);
                                if (!da) {
                                        FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: TMPL_TYPE_ATTR "
@@ -2577,15 +2577,15 @@ void tmpl_verify(char const *file, int line, vp_tmpl_t const *vpt)
                        if (!fr_cond_assert(0)) fr_exit_now(1);
                }
 
-               if (vpt->tmpl_value_box_type == PW_TYPE_INVALID) {
+               if (vpt->tmpl_value_box_type == FR_TYPE_INVALID) {
                        FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: TMPL_TYPE_DATA type was "
-                                    "PW_TYPE_INVALID (uninitialised)", file, line);
+                                    "FR_TYPE_INVALID (uninitialised)", file, line);
                        if (!fr_cond_assert(0)) fr_exit_now(1);
                }
 
-               if (vpt->tmpl_value_box_type >= PW_TYPE_MAX) {
+               if (vpt->tmpl_value_box_type >= FR_TYPE_MAX) {
                        FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: TMPL_TYPE_DATA type was "
-                                    "%i (outside the range of PW_TYPEs)", file, line, vpt->tmpl_value_box_type);
+                                    "%i (outside the range of fr_type_ts)", file, line, vpt->tmpl_value_box_type);
                        if (!fr_cond_assert(0)) fr_exit_now(1);
                }
                /*
@@ -2593,7 +2593,7 @@ void tmpl_verify(char const *file, int line, vp_tmpl_t const *vpt)
                 *      be talloced. They may be allocated on the stack or in global variables.
                 */
                switch (vpt->tmpl_value_box_type) {
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        if (vpt->tmpl_value_box_datum.strvalue[vpt->tmpl_value_box_length] != '\0') {
                                FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: TMPL_TYPE_DATA char buffer not \\0 "
                                             "terminated", file, line);
@@ -2601,7 +2601,7 @@ void tmpl_verify(char const *file, int line, vp_tmpl_t const *vpt)
                        }
                        break;
 
-               case PW_TYPE_TLV:
+               case FR_TYPE_TLV:
                        FR_FAULT_LOG("CONSISTENCY CHECK FAILED %s[%u]: TMPL_TYPE_DATA is of type TLV",
                                     file, line);
                        if (!fr_cond_assert(0)) fr_exit_now(1);
index dfead251260baedadb92d27613ec99ac6ccbcb38..2ffb02b4f7b971d3515d30d187c52292c112acac 100644 (file)
@@ -326,7 +326,7 @@ static REQUEST *request_from_file(FILE *fp, RADCLIENT *client)
                        talloc_free(q);
 
                        vp->vp_octets = talloc_steal(vp, p);
-                       vp->data.type = PW_TYPE_OCTETS;
+                       vp->data.type = FR_TYPE_OCTETS;
                        vp->type = VT_DATA;
 
                        VERIFY_VP(vp);
@@ -514,7 +514,7 @@ static ssize_t xlat_poke(TALLOC_CTX *ctx, char **out, size_t outlen,
        for (i = 0; variables[i].name != NULL; i++) {
                int ret;
 
-               if (PW_BASE_TYPE(variables[i].type) == PW_TYPE_SUBSECTION) continue;
+               if (PW_BASE_TYPE(variables[i].type) == FR_TYPE_SUBSECTION) continue;
                /* else it's a CONF_PAIR */
 
                /*
index 3ffd4087f0cc3fe0d128c300e99b3a6084c5d1f9..2d772ed55e61277702726e867ccd6972c99ffa79 100644 (file)
@@ -724,8 +724,8 @@ static bool pass2_cond_callback(void *ctx, fr_cond_t *c)
                            (map->rhs->type == TMPL_TYPE_UNPARSED)) {
                                if ((map->rhs->len > 0) ||
                                    (map->op != T_OP_CMP_EQ) ||
-                                   (map->lhs->tmpl_da->type == PW_TYPE_STRING) ||
-                                   (map->lhs->tmpl_da->type == PW_TYPE_OCTETS)) {
+                                   (map->lhs->tmpl_da->type == FR_TYPE_STRING) ||
+                                   (map->lhs->tmpl_da->type == FR_TYPE_OCTETS)) {
 
                                        if (tmpl_cast_in_place(map->rhs, map->lhs->tmpl_da->type, map->lhs->tmpl_da) < 0) {
                                                cf_log_err(map->ci, "Failed to parse data type %s from string: %s",
index 564531e266e472e8e8953e950583d9d7acfe71a2..de9306879caed1b450b451c2dfa64e8411be26f1 100644 (file)
@@ -184,10 +184,10 @@ static unlang_action_t unlang_load_balance(REQUEST *request, unlang_stack_t *sta
                         *      select which frame is being used.
                         */
                        if ((g->vpt->type == TMPL_TYPE_ATTR) &&
-                           ((g->vpt->tmpl_da->type == PW_TYPE_BYTE) ||
-                            (g->vpt->tmpl_da->type == PW_TYPE_SHORT) ||
-                            (g->vpt->tmpl_da->type == PW_TYPE_INTEGER) ||
-                            (g->vpt->tmpl_da->type == PW_TYPE_INTEGER64))) {
+                           ((g->vpt->tmpl_da->type == FR_TYPE_BYTE) ||
+                            (g->vpt->tmpl_da->type == FR_TYPE_SHORT) ||
+                            (g->vpt->tmpl_da->type == FR_TYPE_INTEGER) ||
+                            (g->vpt->tmpl_da->type == FR_TYPE_INTEGER64))) {
                                VALUE_PAIR *vp;
 
                                slen = tmpl_find_vp(&vp, request, g->vpt);
@@ -197,19 +197,19 @@ static unlang_action_t unlang_load_balance(REQUEST *request, unlang_stack_t *sta
                                }
 
                                switch (g->vpt->tmpl_da->type) {
-                               case PW_TYPE_BYTE:
+                               case FR_TYPE_BYTE:
                                        start = ((uint32_t) vp->vp_byte) % g->num_children;
                                        break;
 
-                               case PW_TYPE_SHORT:
+                               case FR_TYPE_SHORT:
                                        start = ((uint32_t) vp->vp_short) % g->num_children;
                                        break;
 
-                               case PW_TYPE_INTEGER:
+                               case FR_TYPE_INTEGER:
                                        start = vp->vp_integer % g->num_children;
                                        break;
 
-                               case PW_TYPE_INTEGER64:
+                               case FR_TYPE_INTEGER64:
                                        start = (uint32_t) (vp->vp_integer64 % ((uint64_t) g->num_children));
                                        break;
 
index 9a90d82813064239aff9aa04302e591c6030b5b5..eeab86374d847e86c520d57a8a636a394eb7bb69 100644 (file)
@@ -508,10 +508,10 @@ static char *xlat_aprint(TALLOC_CTX *ctx, REQUEST *request, xlat_exp_t const * c
                 *      This is really the reverse of fr_snprint().
                 */
                if (*child) {
-                       PW_TYPE type;
+                       fr_type_t type;
                        value_box_t data;
 
-                       type = PW_TYPE_STRING;
+                       type = FR_TYPE_STRING;
                        if (value_box_from_str(ctx, &data, &type, NULL, child,
                                                talloc_array_length(child) - 1, '"') < 0) {
                                talloc_free(child);
index db2511cb9e9d5acee904d3e70a42b2958da9b49f..8359d9ec94a0eb59c57df0ade05d9af4b679e50b 100644 (file)
@@ -97,8 +97,8 @@ static ssize_t xlat_integer(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
        if ((radius_get_vp(&vp, request, fmt) < 0) || !vp) return 0;
 
        switch (vp->vp_type) {
-       case PW_TYPE_OCTETS:
-       case PW_TYPE_STRING:
+       case FR_TYPE_OCTETS:
+       case FR_TYPE_STRING:
                if (vp->vp_length > 8) {
                        break;
                }
@@ -111,42 +111,42 @@ static ssize_t xlat_integer(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
                memcpy(&int32, vp->vp_octets, vp->vp_length);
                return snprintf(*out, outlen, "%i", htonl(int32));
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                return snprintf(*out, outlen, "%" PRIu64, vp->vp_integer64);
 
        /*
         *      IP addresses are treated specially, as parsing functions assume the value
         *      is bigendian and will convert it for us.
         */
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV4_PREFIX:       /* Same addr field */
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_PREFIX:       /* Same addr field */
                return snprintf(*out, outlen, "%u", htonl(vp->vp_ipv4addr));
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                return snprintf(*out, outlen, "%u", vp->vp_integer);
 
-       case PW_TYPE_DATE:
+       case FR_TYPE_DATE:
                return snprintf(*out, outlen, "%u", vp->vp_date);
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                return snprintf(*out, outlen, "%u", (unsigned int) vp->vp_byte);
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                return snprintf(*out, outlen, "%u", (unsigned int) vp->vp_short);
 
        /*
         *      Ethernet is weird... It's network related, so we assume to it should be
         *      bigendian.
         */
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                memcpy(&int64, vp->vp_ether, sizeof(vp->vp_ether));
                return snprintf(*out, outlen, "%" PRIu64, htonll(int64));
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
                return snprintf(*out, outlen, "%i", vp->vp_signed);
 
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_PREFIX:
                return fr_snprint_uint128(*out, outlen, ntohlll(*(uint128_t const *) &vp->vp_ipv6addr));
 
        default:
@@ -182,7 +182,7 @@ static ssize_t xlat_hex(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
        /*
         *      The easy case.
         */
-       if (vp->vp_type == PW_TYPE_OCTETS) {
+       if (vp->vp_type == FR_TYPE_OCTETS) {
                p = vp->vp_octets;
                len = vp->vp_length;
        /*
@@ -190,7 +190,7 @@ static ssize_t xlat_hex(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
         *      print that as hex.
         */
        } else {
-               if (value_box_cast(request, &dst, PW_TYPE_OCTETS, NULL, &vp->data) < 0) {
+               if (value_box_cast(request, &dst, FR_TYPE_OCTETS, NULL, &vp->data) < 0) {
                        REDEBUG("%s", fr_strerror());
                        goto error;
                }
@@ -369,7 +369,7 @@ static ssize_t xlat_debug_attr(UNUSED TALLOC_CTX *ctx, UNUSED char **out, UNUSED
                RIDEBUG2("Type   : %s", fr_int2str(dict_attr_types, vp->vp_type, "<INVALID>"));
 
                switch (vp->vp_type) {
-               case PW_TYPE_VARIABLE_SIZE:
+               case FR_TYPE_VARIABLE_SIZE:
                        RIDEBUG2("Length : %zu", vp->vp_length);
                        break;
 
@@ -385,15 +385,15 @@ static ssize_t xlat_debug_attr(UNUSED TALLOC_CTX *ctx, UNUSED char **out, UNUSED
 
                        value_box_t *dst = NULL;
 
-                       if ((PW_TYPE) type->number == vp->vp_type) goto next_type;
+                       if ((fr_type_t) type->number == vp->vp_type) goto next_type;
 
                        switch (type->number) {
-                       case PW_TYPE_INVALID:           /* Not real type */
-                       case PW_TYPE_MAX:               /* Not real type */
-                       case PW_TYPE_COMBO_IP_ADDR:     /* Covered by IPv4 address IPv6 address */
-                       case PW_TYPE_COMBO_IP_PREFIX:   /* Covered by IPv4 address IPv6 address */
-                       case PW_TYPE_TIMEVAL:           /* Not a VALUE_PAIR type */
-                       case PW_TYPE_STRUCTURAL:
+                       case FR_TYPE_INVALID:           /* Not real type */
+                       case FR_TYPE_MAX:               /* Not real type */
+                       case FR_TYPE_COMBO_IP_ADDR:     /* Covered by IPv4 address IPv6 address */
+                       case FR_TYPE_COMBO_IP_PREFIX:   /* Covered by IPv4 address IPv6 address */
+                       case FR_TYPE_TIMEVAL:           /* Not a VALUE_PAIR type */
+                       case FR_TYPE_STRUCTURAL:
                                goto next_type;
 
                        default:
@@ -546,14 +546,14 @@ static ssize_t xlat_string(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
         *      These are printed specially.
         */
        switch (vp->vp_type) {
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                return fr_snprint(*out, outlen, (char const *) vp->vp_octets, vp->vp_length, '"');
 
                /*
                 *      Note that "%{string:...}" is NOT binary safe!
                 *      It is explicitly used to get rid of embedded zeros.
                 */
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                return strlcpy(*out, vp->vp_strvalue, outlen);
 
        default:
@@ -593,7 +593,7 @@ static ssize_t xlat_xlat(TALLOC_CTX *ctx, char **out, size_t outlen,
        /*
         *      If it's a string, expand it again
         */
-       if (vp->vp_type == PW_TYPE_STRING) {
+       if (vp->vp_type == FR_TYPE_STRING) {
                slen = xlat_eval(*out, outlen, request, vp->vp_strvalue, NULL, NULL);
                if (slen <= 0) return slen;
        /*
index 0e297fcaf92e0e50933b87b4862985230323d95f..b609b324bc77cc959196c394ac7e416d8eed13b5 100644 (file)
@@ -425,7 +425,7 @@ static ssize_t bfd_parse_secret(CONF_SECTION *cs, uint8_t secret[BFD_MAX_SECRET_
        size_t len;
        char const *value = NULL;
 
-       rcode = cf_pair_parse(NULL, cs, "secret", FR_ITEM_POINTER(PW_TYPE_STRING, &value), NULL, T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "secret", FR_ITEM_POINTER(FR_TYPE_STRING, &value), NULL, T_INVALID);
        if (rcode != 0) return 0;
 
        len = strlen(value);
@@ -495,26 +495,26 @@ static bfd_state_t *bfd_new_session(bfd_socket_t *sock, int sockfd,
        /*
         *      Allow over-riding of variables per session.
         */
-       rcode = cf_pair_parse(NULL, cs, "demand", FR_ITEM_POINTER(PW_TYPE_BOOLEAN, &flag), NULL, T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "demand", FR_ITEM_POINTER(FR_TYPE_BOOLEAN, &flag), NULL, T_INVALID);
        if (rcode == 0) {
                session->demand_mode = flag;
        }
 
-       rcode = cf_pair_parse(NULL, cs, "min_transmit_interval", FR_ITEM_POINTER(PW_TYPE_INTEGER, &number), NULL, T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "min_transmit_interval", FR_ITEM_POINTER(FR_TYPE_INTEGER, &number), NULL, T_INVALID);
        if (rcode == 0) {
                if (number < 100) number = 100;
                if (number > 10000) number = 10000;
 
                session->desired_min_tx_interval = number * 1000;
        }
-       rcode = cf_pair_parse(NULL, cs, "min_receive_interval", FR_ITEM_POINTER(PW_TYPE_INTEGER, &number), NULL, T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "min_receive_interval", FR_ITEM_POINTER(FR_TYPE_INTEGER, &number), NULL, T_INVALID);
        if (rcode == 0) {
                if (number < 100) number = 100;
                if (number > 10000) number = 10000;
 
                session->required_min_rx_interval = number * 1000;
        }
-       rcode = cf_pair_parse(NULL, cs, "max_timeouts", FR_ITEM_POINTER(PW_TYPE_INTEGER, &number), NULL, T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "max_timeouts", FR_ITEM_POINTER(FR_TYPE_INTEGER, &number), NULL, T_INVALID);
        if (rcode == 0) {
                if (number == 0) number = 1;
                if (number > 10) number = 10;
@@ -1544,14 +1544,14 @@ static int bfd_parse_ip_port(CONF_SECTION *cs, fr_ipaddr_t *ipaddr, uint16_t *po
         */
        memset(ipaddr, 0, sizeof(*ipaddr));
        ipaddr->addr.v4.s_addr = htonl(INADDR_NONE);
-       rcode = cf_pair_parse(NULL, cs, "ipaddr", FR_ITEM_POINTER(PW_TYPE_IPV4_ADDR, ipaddr), NULL, T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "ipaddr", FR_ITEM_POINTER(FR_TYPE_IPV4_ADDR, ipaddr), NULL, T_INVALID);
        if (rcode < 0) return -1;
 
        if (rcode == 0) { /* successfully parsed IPv4 */
                ipaddr->af = AF_INET;
 
        } else {        /* maybe IPv6? */
-               rcode = cf_pair_parse(NULL, cs, "ipv6addr", FR_ITEM_POINTER(PW_TYPE_IPV6_ADDR, ipaddr), NULL, T_INVALID);
+               rcode = cf_pair_parse(NULL, cs, "ipv6addr", FR_ITEM_POINTER(FR_TYPE_IPV6_ADDR, ipaddr), NULL, T_INVALID);
                if (rcode < 0) return -1;
 
                if (rcode == 1) {
@@ -1562,7 +1562,7 @@ static int bfd_parse_ip_port(CONF_SECTION *cs, fr_ipaddr_t *ipaddr, uint16_t *po
                ipaddr->af = AF_INET6;
        }
 
-       rcode = cf_pair_parse(NULL, cs, "port", FR_ITEM_POINTER(PW_TYPE_SHORT, port), "0", T_INVALID);
+       rcode = cf_pair_parse(NULL, cs, "port", FR_ITEM_POINTER(FR_TYPE_SHORT, port), "0", T_INVALID);
        if (rcode < 0) return -1;
 
        return 0;
@@ -1667,15 +1667,15 @@ static int bfd_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
        sock->my_ipaddr = ipaddr;
        sock->my_port = listen_port;
 
-       cf_pair_parse(sock, cs, "interface", FR_ITEM_POINTER(PW_TYPE_STRING, &sock->interface), NULL, T_INVALID);
+       cf_pair_parse(sock, cs, "interface", FR_ITEM_POINTER(FR_TYPE_STRING, &sock->interface), NULL, T_INVALID);
 
-       cf_pair_parse(sock, cs, "min_receive_interval", FR_ITEM_POINTER(PW_TYPE_INTEGER, &sock->min_rx_interval), "1000", T_BARE_WORD);
-       cf_pair_parse(sock, cs, "max_timeouts", FR_ITEM_POINTER(PW_TYPE_INTEGER, &sock->max_timeouts), "3", T_BARE_WORD);
-       cf_pair_parse(sock, cs, "demand", FR_ITEM_POINTER(PW_TYPE_BOOLEAN, &sock->demand), "no", T_DOUBLE_QUOTED_STRING);
-       cf_pair_parse(NULL, cs, "auth_type", FR_ITEM_POINTER(PW_TYPE_STRING, &auth_type_str), NULL, T_INVALID);
+       cf_pair_parse(sock, cs, "min_receive_interval", FR_ITEM_POINTER(FR_TYPE_INTEGER, &sock->min_rx_interval), "1000", T_BARE_WORD);
+       cf_pair_parse(sock, cs, "max_timeouts", FR_ITEM_POINTER(FR_TYPE_INTEGER, &sock->max_timeouts), "3", T_BARE_WORD);
+       cf_pair_parse(sock, cs, "demand", FR_ITEM_POINTER(FR_TYPE_BOOLEAN, &sock->demand), "no", T_DOUBLE_QUOTED_STRING);
+       cf_pair_parse(NULL, cs, "auth_type", FR_ITEM_POINTER(FR_TYPE_STRING, &auth_type_str), NULL, T_INVALID);
 
        if (!this->server) {
-               cf_pair_parse(sock, cs, "server", FR_ITEM_POINTER(PW_TYPE_STRING, &sock->server), NULL, T_INVALID);
+               cf_pair_parse(sock, cs, "server", FR_ITEM_POINTER(FR_TYPE_STRING, &sock->server), NULL, T_INVALID);
        } else {
                sock->server = this->server;
        }
index b31f5f44415359c8b06fb282e979f208e1cda607..a197f957792958a7c0eecc7f640a6ab003830be4 100644 (file)
@@ -1015,13 +1015,13 @@ static void *detail_handler_thread(void *arg)
 
 
 static const CONF_PARSER detail_config[] = {
-       { FR_CONF_OFFSET("detail", PW_TYPE_FILE_OUTPUT | PW_TYPE_DEPRECATED, listen_detail_t, filename) },
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_OUTPUT | PW_TYPE_REQUIRED, listen_detail_t, filename) },
-       { FR_CONF_OFFSET("load_factor", PW_TYPE_INTEGER, listen_detail_t, load_factor), .dflt = STRINGIFY(10) },
-       { FR_CONF_OFFSET("poll_interval", PW_TYPE_INTEGER, listen_detail_t, poll_interval), .dflt = STRINGIFY(1) },
-       { FR_CONF_OFFSET("retry_interval", PW_TYPE_INTEGER, listen_detail_t, retry_interval), .dflt = STRINGIFY(30) },
-       { FR_CONF_OFFSET("one_shot", PW_TYPE_BOOLEAN, listen_detail_t, one_shot), .dflt = "no" },
-       { FR_CONF_OFFSET("track", PW_TYPE_BOOLEAN, listen_detail_t, track), .dflt = "no" },
+       { FR_CONF_OFFSET("detail", FR_TYPE_FILE_OUTPUT | FR_TYPE_DEPRECATED, listen_detail_t, filename) },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_OUTPUT | FR_TYPE_REQUIRED, listen_detail_t, filename) },
+       { FR_CONF_OFFSET("load_factor", FR_TYPE_INTEGER, listen_detail_t, load_factor), .dflt = STRINGIFY(10) },
+       { FR_CONF_OFFSET("poll_interval", FR_TYPE_INTEGER, listen_detail_t, poll_interval), .dflt = STRINGIFY(1) },
+       { FR_CONF_OFFSET("retry_interval", FR_TYPE_INTEGER, listen_detail_t, retry_interval), .dflt = STRINGIFY(30) },
+       { FR_CONF_OFFSET("one_shot", FR_TYPE_BOOLEAN, listen_detail_t, one_shot), .dflt = "no" },
+       { FR_CONF_OFFSET("track", FR_TYPE_BOOLEAN, listen_detail_t, track), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index e7429433ec4968c5222a9933d82de430f970f1ca..db209601f3d02fae1d9a394e3b065efa7b392615 100644 (file)
@@ -693,24 +693,24 @@ static int fr_dhcp_array_members(size_t *out, size_t len, fr_dict_attr_t const *
         *      Could be an array of bytes, integers, etc.
         */
        if (da->flags.array) switch (da->type) {
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                num_entries = len;
                *out = 1;
                break;
 
-       case PW_TYPE_SHORT: /* ignore any trailing data */
+       case FR_TYPE_SHORT: /* ignore any trailing data */
                num_entries = len >> 1;
                *out = 2;
                break;
 
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_DATE: /* ignore any trailing data */
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_DATE: /* ignore any trailing data */
                num_entries = len >> 2;
                *out = 4;
                break;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                num_entries = len >> 4;
                *out = 16;
                break;
@@ -747,27 +747,27 @@ static ssize_t decode_value_internal(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
        if (da->flags.is_unknown) talloc_steal(vp, da);
 
        switch (da->type) {
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                if (data_len != 1) goto raw;
                vp->vp_byte = p[0];
                p++;
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                if (data_len != 2) goto raw;
                memcpy(&vp->vp_short, p, 2);
                vp->vp_short = ntohs(vp->vp_short);
                p += 2;
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                if (data_len != 4) goto raw;
                memcpy(&vp->vp_integer, p, 4);
                vp->vp_integer = ntohl(vp->vp_integer);
                p += 4;
                break;
 
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
                if (data_len != 4) goto raw;
                /*
                 *      Keep value in Network Order!
@@ -779,7 +779,7 @@ static ssize_t decode_value_internal(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
                p += 4;
                break;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                if (data_len != 16) goto raw;
                /*
                 *      Keep value in Network Order!
@@ -795,7 +795,7 @@ static ssize_t decode_value_internal(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
         *      In DHCPv4, string options which can also be arrays,
         *      have their values '\0' delimited.
         */
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
        {
                uint8_t const *q, *end;
 
@@ -832,7 +832,7 @@ static ssize_t decode_value_internal(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
        }
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                memcpy(vp->vp_ether, data, sizeof(vp->vp_ether));
                p += sizeof(vp->vp_ether);
                break;
@@ -845,7 +845,7 @@ static ssize_t decode_value_internal(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
                FR_PROTO_TRACE("decoding as unknown type");
                if (fr_pair_to_unknown(vp) < 0) return -1;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                if (data_len > UINT8_MAX) return -1;
                fr_pair_value_memcpy(vp, data, data_len);
                p += data_len;
@@ -994,7 +994,7 @@ static ssize_t decode_value(TALLOC_CTX *ctx, vp_cursor_t *cursor,
        /*
         *      TLVs can't be coalesced as they're variable length
         */
-       if (parent->type == PW_TYPE_TLV) return decode_tlv(ctx, cursor, parent, data, data_len);
+       if (parent->type == FR_TYPE_TLV) return decode_tlv(ctx, cursor, parent, data, data_len);
 
        /*
         *      Values with a fixed length may be coalesced into a single option
@@ -1167,24 +1167,24 @@ int fr_dhcp_decode(RADIUS_PACKET *packet)
                }
 
                switch (vp->vp_type) {
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        vp->vp_byte = p[0];
                        break;
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        vp->vp_short = (p[0] << 8) | p[1];
                        break;
 
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        memcpy(&vp->vp_integer, p, 4);
                        vp->vp_integer = ntohl(vp->vp_integer);
                        break;
 
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        memcpy(&vp->vp_ipv4addr, p, 4);
                        break;
 
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        /*
                         *      According to RFC 2131, these are null terminated strings.
                         *      We don't trust everyone to abide by the RFC, though.
@@ -1199,13 +1199,13 @@ int fr_dhcp_decode(RADIUS_PACKET *packet)
                        if (vp->vp_length == 0) fr_pair_list_free(&vp);
                        break;
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        if (packet->data[2] == 0) break;
 
                        fr_pair_value_memcpy(vp, p, packet->data[2]);
                        break;
 
-               case PW_TYPE_ETHERNET:
+               case FR_TYPE_ETHERNET:
                        memcpy(vp->vp_ether, p, sizeof(vp->vp_ether));
                        break;
 
@@ -1334,10 +1334,10 @@ int8_t fr_dhcp_attr_cmp(void const *a, void const *b)
        /*
         *      DHCP-Message-Type is first, for simplicity.
         */
-       if (((my_a->da->parent->type != PW_TYPE_TLV) && (my_a->da->attr == PW_DHCP_MESSAGE_TYPE)) &&
-           ((my_b->da->parent->type == PW_TYPE_TLV) || (my_b->da->attr != PW_DHCP_MESSAGE_TYPE))) return -1;
-       if (((my_a->da->parent->type == PW_TYPE_TLV) || (my_a->da->attr != PW_DHCP_MESSAGE_TYPE)) &&
-           ((my_b->da->parent->type != PW_TYPE_TLV) && (my_b->da->attr == PW_DHCP_MESSAGE_TYPE))) return +1;
+       if (((my_a->da->parent->type != FR_TYPE_TLV) && (my_a->da->attr == PW_DHCP_MESSAGE_TYPE)) &&
+           ((my_b->da->parent->type == FR_TYPE_TLV) || (my_b->da->attr != PW_DHCP_MESSAGE_TYPE))) return -1;
+       if (((my_a->da->parent->type == FR_TYPE_TLV) || (my_a->da->attr != PW_DHCP_MESSAGE_TYPE)) &&
+           ((my_b->da->parent->type != FR_TYPE_TLV) && (my_b->da->attr == PW_DHCP_MESSAGE_TYPE))) return +1;
 
        /*
         *      Relay-Agent is last.
@@ -1381,44 +1381,44 @@ static ssize_t encode_value(uint8_t *out, size_t outlen,
        if (outlen < vp->vp_length) return 0;
 
        switch (tlv_stack[depth]->type) {
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                p[0] = vp->vp_byte;
                p ++;
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                p[0] = (vp->vp_short >> 8) & 0xff;
                p[1] = vp->vp_short & 0xff;
                p += 2;
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                lvalue = htonl(vp->vp_integer);
                memcpy(p, &lvalue, 4);
                p += 4;
                break;
 
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
                memcpy(p, &vp->vp_ipv4addr, 4);
                p += 4;
                break;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                memcpy(p, &vp->vp_ipv6addr, 16);
                p += 16;
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                memcpy(p, vp->vp_ether, 6);
                p += 6;
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                memcpy(p, vp->vp_strvalue, vp->vp_length);
                p += vp->vp_length;
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                memcpy(p, vp->vp_octets, vp->vp_length);
                p += vp->vp_length;
                break;
@@ -1556,7 +1556,7 @@ static ssize_t encode_tlv_hdr(uint8_t *out, ssize_t outlen,
                /*
                 *      Determine the nested type and call the appropriate encoder
                 */
-               if (tlv_stack[depth + 1]->type == PW_TYPE_TLV) {
+               if (tlv_stack[depth + 1]->type == FR_TYPE_TLV) {
                        len = encode_tlv_hdr(p, outlen - out[1], tlv_stack, depth + 1, cursor);
                } else {
                        len = encode_rfc_hdr(p, outlen - out[1], tlv_stack, depth + 1, cursor);
@@ -1632,7 +1632,7 @@ ssize_t fr_dhcp_encode_option(uint8_t *out, size_t outlen, vp_cursor_t *cursor,
         *      We only have two types of options in DHCPv4
         */
        switch (tlv_stack[depth]->type) {
-       case PW_TYPE_TLV:
+       case FR_TYPE_TLV:
                len = encode_tlv_hdr(out, outlen, tlv_stack, depth, cursor);
                break;
 
@@ -1781,7 +1781,7 @@ int fr_dhcp_encode(RADIUS_PACKET *packet)
 
        /* DHCP-Client-Hardware-Address */
        if ((vp = fr_pair_find_by_num(packet->vps, DHCP_MAGIC_VENDOR, 267, TAG_ANY))) {
-               if (vp->vp_type == PW_TYPE_ETHERNET) {
+               if (vp->vp_type == FR_TYPE_ETHERNET) {
                        /*
                         *      Ensure that we mark the packet as being Ethernet.
                         *      This is mainly for DHCP-Lease-Query responses.
@@ -1901,13 +1901,13 @@ int fr_dhcp_add_arp_entry(int fd, char const *interface,
 #endif
 
        if (!fr_cond_assert(macaddr) ||
-           !fr_cond_assert((macaddr->vp_type == PW_TYPE_ETHERNET) || (macaddr->vp_type == PW_TYPE_OCTETS))) {
+           !fr_cond_assert((macaddr->vp_type == FR_TYPE_ETHERNET) || (macaddr->vp_type == FR_TYPE_OCTETS))) {
                fr_strerror_printf("Wrong VP type (%s) for chaddr",
                                   fr_int2str(dict_attr_types, macaddr->vp_type, "<invalid>"));
                return -1;
        }
 
-       if (macaddr->vp_type == PW_TYPE_OCTETS) {
+       if (macaddr->vp_type == FR_TYPE_OCTETS) {
                if (macaddr->vp_length > sizeof(req.arp_ha.sa_data)) {
                        fr_strerror_printf("arp sa_data field too small (%zu octets) to contain chaddr (%zu octets)",
                                           sizeof(req.arp_ha.sa_data), macaddr->vp_length);
@@ -1922,7 +1922,7 @@ int fr_dhcp_add_arp_entry(int fd, char const *interface,
 
        strlcpy(req.arp_dev, interface, sizeof(req.arp_dev));
 
-       if (macaddr->vp_type == PW_TYPE_ETHERNET) {
+       if (macaddr->vp_type == FR_TYPE_ETHERNET) {
                memcpy(&req.arp_ha.sa_data, macaddr->vp_ether, sizeof(macaddr->vp_ether));
        } else {
                memcpy(&req.arp_ha.sa_data, macaddr->vp_octets, macaddr->vp_length);
@@ -2001,7 +2001,7 @@ int fr_dhcp_send_raw_packet(int sockfd, struct sockaddr_ll *link_layer, RADIUS_P
        /* set ethernet source address to our MAC address (DHCP-Client-Hardware-Address). */
        uint8_t dhmac[ETH_ADDR_LEN] = { 0 };
        if ((vp = fr_pair_find_by_num(packet->vps, 267, DHCP_MAGIC_VENDOR, TAG_ANY))) {
-               if (vp->vp_type == PW_TYPE_ETHERNET) memcpy(dhmac, vp->vp_ether, sizeof(vp->vp_ether));
+               if (vp->vp_type == FR_TYPE_ETHERNET) memcpy(dhmac, vp->vp_ether, sizeof(vp->vp_ether));
        }
 
        /* fill in Ethernet layer (L2) */
@@ -2119,7 +2119,7 @@ RADIUS_PACKET *fr_dhcp_recv_raw_packet(int sockfd, struct sockaddr_ll *link_laye
         */
        if ((memcmp(&eth_bcast, &eth_hdr->ether_dst, ETH_ADDR_LEN) != 0) &&
            (vp = fr_pair_find_by_num(request->vps, 267, DHCP_MAGIC_VENDOR, TAG_ANY)) &&
-           ((vp->vp_type == PW_TYPE_ETHERNET) && (memcmp(vp->vp_ether, &eth_hdr->ether_dst, ETH_ADDR_LEN) != 0))) {
+           ((vp->vp_type == FR_TYPE_ETHERNET) && (memcmp(vp->vp_ether, &eth_hdr->ether_dst, ETH_ADDR_LEN) != 0))) {
                char eth_dest[17 + 1];
                char eth_req_src[17 + 1];
 
index 654f51c824afe25e722b785b82631de4e3366afd..f010f32abe81e6dcd63c99f53c1095577e53fe39 100644 (file)
@@ -736,14 +736,14 @@ static int dhcp_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
        cp = cf_pair_find(cs, "suppress_responses");
        if (cp) {
                rcode = cf_pair_parse(sock, cs, "suppress_responses",
-                                     FR_ITEM_POINTER(PW_TYPE_BOOLEAN, &sock->suppress_responses), NULL, T_INVALID);
+                                     FR_ITEM_POINTER(FR_TYPE_BOOLEAN, &sock->suppress_responses), NULL, T_INVALID);
                if (rcode < 0) return -1;
        }
 
        cp = cf_pair_find(cs, "src_interface");
        if (cp) {
                rcode = cf_pair_parse(sock, cs, "src_interface",
-                                     FR_ITEM_POINTER(PW_TYPE_STRING, &sock->src_interface), NULL, T_INVALID);
+                                     FR_ITEM_POINTER(FR_TYPE_STRING, &sock->src_interface), NULL, T_INVALID);
                if (rcode < 0) return -1;
        } else {
                sock->src_interface = sock->lsock.interface;
@@ -761,7 +761,7 @@ static int dhcp_socket_parse(CONF_SECTION *cs, rad_listen_t *this)
                memset(&sock->src_ipaddr, 0, sizeof(sock->src_ipaddr));
                sock->src_ipaddr.addr.v4.s_addr = htonl(INADDR_NONE);
                rcode = cf_pair_parse(sock, cs, "src_ipaddr",
-                                     FR_ITEM_POINTER(PW_TYPE_IPV4_ADDR, &sock->src_ipaddr), NULL, T_INVALID);
+                                     FR_ITEM_POINTER(FR_TYPE_IPV4_ADDR, &sock->src_ipaddr), NULL, T_INVALID);
                if (rcode < 0) return -1;
 
                sock->src_ipaddr.af = AF_INET;
index d98ace59bec05d9db97ce0cab1ea65e9488fe59f..a9b91a2192b085b11e442308dd771630d37fa39e 100644 (file)
@@ -73,7 +73,7 @@ static ssize_t dhcp_options_xlat(UNUSED TALLOC_CTX *ctx, char **out, size_t outl
                goto error;
        }
 
-       if (src->tmpl_da->type != PW_TYPE_OCTETS) {
+       if (src->tmpl_da->type != FR_TYPE_OCTETS) {
                REDEBUG("dhcp_options got a %s attribute needed octets",
                        fr_int2str(dict_attr_types, src->tmpl_da->type, "<INVALID>"));
                goto error;
index b3a8445181efad1fdd4f104e129c84e5c5e96c97..94dda6ad4bce4cdd2e9e88a90bac9cead32108f7 100644 (file)
@@ -98,55 +98,55 @@ static FR_NAME_NUMBER const ldap_sync_code_table[] = {
 };
 
 static CONF_PARSER sasl_mech_static[] = {
-       { FR_CONF_OFFSET("mech", PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, fr_ldap_sasl_t, mech) },
+       { FR_CONF_OFFSET("mech", FR_TYPE_STRING | FR_TYPE_NOT_EMPTY, fr_ldap_sasl_t, mech) },
 
-       { FR_CONF_OFFSET("proxy", PW_TYPE_STRING, fr_ldap_sasl_t, proxy) },
+       { FR_CONF_OFFSET("proxy", FR_TYPE_STRING, fr_ldap_sasl_t, proxy) },
 
-       { FR_CONF_OFFSET("realm", PW_TYPE_STRING, fr_ldap_sasl_t, realm) },
+       { FR_CONF_OFFSET("realm", FR_TYPE_STRING, fr_ldap_sasl_t, realm) },
 
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER ldap_sync_search_config[] = {
-       { FR_CONF_OFFSET("base_dn", PW_TYPE_STRING, sync_config_t, base_dn), .dflt = "", .quote = T_SINGLE_QUOTED_STRING },
+       { FR_CONF_OFFSET("base_dn", FR_TYPE_STRING, sync_config_t, base_dn), .dflt = "", .quote = T_SINGLE_QUOTED_STRING },
 
-       { FR_CONF_OFFSET("filter", PW_TYPE_STRING, sync_config_t, filter) },
+       { FR_CONF_OFFSET("filter", FR_TYPE_STRING, sync_config_t, filter) },
 
-       { FR_CONF_OFFSET("scope", PW_TYPE_STRING, sync_config_t, scope_str), .dflt = "sub" },
+       { FR_CONF_OFFSET("scope", FR_TYPE_STRING, sync_config_t, scope_str), .dflt = "sub" },
 
-       { FR_CONF_OFFSET("attrs", PW_TYPE_STRING | PW_TYPE_MULTI, sync_config_t, attrs) },
+       { FR_CONF_OFFSET("attrs", FR_TYPE_STRING | FR_TYPE_MULTI, sync_config_t, attrs) },
 
-       { FR_CONF_OFFSET("allow_refresh", PW_TYPE_BOOLEAN, sync_config_t, allow_refresh), .dflt = "no" },
+       { FR_CONF_OFFSET("allow_refresh", FR_TYPE_BOOLEAN, sync_config_t, allow_refresh), .dflt = "no" },
 
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER option_config[] = {
 #ifdef LDAP_OPT_X_KEEPALIVE_IDLE
-       { FR_CONF_OFFSET("idle", PW_TYPE_INTEGER, fr_ldap_handle_config_t, keepalive_idle), .dflt = "60" },
+       { FR_CONF_OFFSET("idle", FR_TYPE_INTEGER, fr_ldap_handle_config_t, keepalive_idle), .dflt = "60" },
 #endif
 #ifdef LDAP_OPT_X_KEEPALIVE_PROBES
-       { FR_CONF_OFFSET("probes", PW_TYPE_INTEGER, fr_ldap_handle_config_t, keepalive_probes), .dflt = "3" },
+       { FR_CONF_OFFSET("probes", FR_TYPE_INTEGER, fr_ldap_handle_config_t, keepalive_probes), .dflt = "3" },
 #endif
 #ifdef LDAP_OPT_X_KEEPALIVE_INTERVAL
-       { FR_CONF_OFFSET("interval", PW_TYPE_INTEGER, fr_ldap_handle_config_t, keepalive_interval), .dflt = "30" },
+       { FR_CONF_OFFSET("interval", FR_TYPE_INTEGER, fr_ldap_handle_config_t, keepalive_interval), .dflt = "30" },
 #endif
-       { FR_CONF_OFFSET("dereference", PW_TYPE_STRING, fr_ldap_handle_config_t, dereference_str) },
+       { FR_CONF_OFFSET("dereference", FR_TYPE_STRING, fr_ldap_handle_config_t, dereference_str) },
        /* allow server unlimited time for search (server-side limit) */
-       { FR_CONF_OFFSET("srv_timelimit", PW_TYPE_INTEGER, fr_ldap_handle_config_t, srv_timelimit), .dflt = "20" },
+       { FR_CONF_OFFSET("srv_timelimit", FR_TYPE_INTEGER, fr_ldap_handle_config_t, srv_timelimit), .dflt = "20" },
        /* timeout for search results */
-       { FR_CONF_OFFSET("res_timeout", PW_TYPE_TIMEVAL, fr_ldap_handle_config_t, res_timeout), .dflt = "20" },
+       { FR_CONF_OFFSET("res_timeout", FR_TYPE_TIMEVAL, fr_ldap_handle_config_t, res_timeout), .dflt = "20" },
 #ifdef LDAP_OPT_NETWORK_TIMEOUT
        /* timeout on network activity */
-       { FR_CONF_DEPRECATED("net_timeout", PW_TYPE_INTEGER, fr_ldap_handle_config_t, net_timeout), .dflt = "10" },
+       { FR_CONF_DEPRECATED("net_timeout", FR_TYPE_INTEGER, fr_ldap_handle_config_t, net_timeout), .dflt = "10" },
 #endif
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER global_config[] = {
-       { FR_CONF_OFFSET("random_file", PW_TYPE_FILE_EXISTS, proto_ldap_inst_t, tls_random_file) },
-       { FR_CONF_OFFSET("ldap_debug", PW_TYPE_INTEGER, proto_ldap_inst_t, ldap_debug), .dflt = "0x0000" },             /* Debugging flags to the server */
+       { FR_CONF_OFFSET("random_file", FR_TYPE_FILE_EXISTS, proto_ldap_inst_t, tls_random_file) },
+       { FR_CONF_OFFSET("ldap_debug", FR_TYPE_INTEGER, proto_ldap_inst_t, ldap_debug), .dflt = "0x0000" },             /* Debugging flags to the server */
 
        CONF_PARSER_TERMINATOR
 };
@@ -155,12 +155,12 @@ static const CONF_PARSER global_config[] = {
  *     TLS Configuration
  */
 static CONF_PARSER tls_config[] = {
-       { FR_CONF_OFFSET("ca_file", PW_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_ca_file) },
-       { FR_CONF_OFFSET("ca_path", PW_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_ca_path) },
-       { FR_CONF_OFFSET("certificate_file", PW_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_certificate_file) },
-       { FR_CONF_OFFSET("private_key_file", PW_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_private_key_file) },
-       { FR_CONF_OFFSET("start_tls", PW_TYPE_BOOLEAN, fr_ldap_handle_config_t, start_tls), .dflt = "no" },
-       { FR_CONF_OFFSET("require_cert", PW_TYPE_STRING, fr_ldap_handle_config_t, tls_require_cert_str) },
+       { FR_CONF_OFFSET("ca_file", FR_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_ca_file) },
+       { FR_CONF_OFFSET("ca_path", FR_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_ca_path) },
+       { FR_CONF_OFFSET("certificate_file", FR_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_certificate_file) },
+       { FR_CONF_OFFSET("private_key_file", FR_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_private_key_file) },
+       { FR_CONF_OFFSET("start_tls", FR_TYPE_BOOLEAN, fr_ldap_handle_config_t, start_tls), .dflt = "no" },
+       { FR_CONF_OFFSET("require_cert", FR_TYPE_STRING, fr_ldap_handle_config_t, tls_require_cert_str) },
 
        CONF_PARSER_TERMINATOR
 };
@@ -169,26 +169,26 @@ static const CONF_PARSER module_config[] = {
        /*
         *      LDAP server definition
         */
-       { FR_CONF_OFFSET("server", PW_TYPE_STRING | PW_TYPE_MULTI | PW_TYPE_REQUIRED, proto_ldap_inst_t, handle_config.server_str) },
-       { FR_CONF_OFFSET("port", PW_TYPE_SHORT, proto_ldap_inst_t, handle_config.port) },
-       { FR_CONF_OFFSET("identity", PW_TYPE_STRING, proto_ldap_inst_t, handle_config.admin_identity) },
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING | PW_TYPE_SECRET, proto_ldap_inst_t, handle_config.admin_password) },
-       { FR_CONF_OFFSET("sasl", PW_TYPE_SUBSECTION, proto_ldap_inst_t, handle_config.admin_sasl), .subcs = (void const *) sasl_mech_static },
+       { FR_CONF_OFFSET("server", FR_TYPE_STRING | FR_TYPE_MULTI | FR_TYPE_REQUIRED, proto_ldap_inst_t, handle_config.server_str) },
+       { FR_CONF_OFFSET("port", FR_TYPE_SHORT, proto_ldap_inst_t, handle_config.port) },
+       { FR_CONF_OFFSET("identity", FR_TYPE_STRING, proto_ldap_inst_t, handle_config.admin_identity) },
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING | FR_TYPE_SECRET, proto_ldap_inst_t, handle_config.admin_password) },
+       { FR_CONF_OFFSET("sasl", FR_TYPE_SUBSECTION, proto_ldap_inst_t, handle_config.admin_sasl), .subcs = (void const *) sasl_mech_static },
 
-       { FR_CONF_OFFSET("sync_retry_interval", PW_TYPE_TIMEVAL, proto_ldap_inst_t, sync_retry_interval), .dflt = "5" },
-       { FR_CONF_OFFSET("conn_retry_interval", PW_TYPE_TIMEVAL, proto_ldap_inst_t, conn_retry_interval), .dflt = "5" },
+       { FR_CONF_OFFSET("sync_retry_interval", FR_TYPE_TIMEVAL, proto_ldap_inst_t, sync_retry_interval), .dflt = "5" },
+       { FR_CONF_OFFSET("conn_retry_interval", FR_TYPE_TIMEVAL, proto_ldap_inst_t, conn_retry_interval), .dflt = "5" },
 
        /*
         *      Areas of the DIT to listen on
         */
-       { FR_CONF_SUBSECTION_MULTI("sync", PW_TYPE_SUBSECTION | PW_TYPE_MULTI | PW_TYPE_REQUIRED, proto_ldap_inst_t, sync_config, ldap_sync_search_config) },
+       { FR_CONF_SUBSECTION_MULTI("sync", FR_TYPE_SUBSECTION | FR_TYPE_MULTI | FR_TYPE_REQUIRED, proto_ldap_inst_t, sync_config, ldap_sync_search_config) },
 
        /*
         *      Extra configuration items
         */
-       { FR_CONF_POINTER("options", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) option_config },
-       { FR_CONF_POINTER("global", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) global_config },
-       { FR_CONF_OFFSET("tls", PW_TYPE_SUBSECTION, proto_ldap_inst_t, handle_config), .subcs = (void const *) tls_config },
+       { FR_CONF_POINTER("options", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) option_config },
+       { FR_CONF_POINTER("global", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) global_config },
+       { FR_CONF_OFFSET("tls", FR_TYPE_SUBSECTION, proto_ldap_inst_t, handle_config), .subcs = (void const *) tls_config },
 
        CONF_PARSER_TERMINATOR
 };
index e699b3f333b95847d65e107646a9a4a720cbd366..2bac44e7acd7363b51a98ab9d717410fd7ea6c71 100644 (file)
@@ -70,16 +70,16 @@ RCSID("$Id$")
 #define VQP_VERSION (1)
 #define VQP_MAX_ATTRIBUTES (12)
 
-static size_t const fr_vqp_attr_sizes[PW_TYPE_MAX + 1][2] = {
-       [PW_TYPE_INVALID]       = {~0, 0},      //!< Ensure array starts at 0 (umm?)
+static size_t const fr_vqp_attr_sizes[FR_TYPE_MAX + 1][2] = {
+       [FR_TYPE_INVALID]       = {~0, 0},      //!< Ensure array starts at 0 (umm?)
 
-       [PW_TYPE_STRING]        = {0, ~0},
-       [PW_TYPE_OCTETS]        = {0, ~0},
+       [FR_TYPE_STRING]        = {0, ~0},
+       [FR_TYPE_OCTETS]        = {0, ~0},
 
-       [PW_TYPE_IPV4_ADDR]     = {4, 4},
-       [PW_TYPE_ETHERNET]      = {6, 6},
+       [FR_TYPE_IPV4_ADDR]     = {4, 4},
+       [FR_TYPE_ETHERNET]      = {6, 6},
 
-       [PW_TYPE_MAX]           = {~0, 0}       //!< Ensure array covers all types.
+       [FR_TYPE_MAX]           = {~0, 0}       //!< Ensure array covers all types.
 };
 
 static ssize_t vqp_recv_header(int sockfd)
@@ -320,13 +320,13 @@ int vqp_decode(RADIUS_PACKET *packet)
                }
 
                switch (vp->vp_type) {
-               case PW_TYPE_ETHERNET:
+               case FR_TYPE_ETHERNET:
                        if (attr_len != fr_vqp_attr_sizes[vp->vp_type][0]) goto unknown;
 
                        memcpy(&vp->vp_ether, ptr, 6);
                        break;
 
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        if (attr_len == fr_vqp_attr_sizes[vp->vp_type][0]) {
                                memcpy(&vp->vp_ipv4addr, ptr, 4);
                                break;
@@ -343,11 +343,11 @@ int vqp_decode(RADIUS_PACKET *packet)
                        /* FALL-THROUGH */
 
                default:
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        fr_pair_value_memcpy(vp, ptr, attr_len);
                        break;
 
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        fr_pair_value_bstrncpy(vp, ptr, attr_len);
                        break;
                }
@@ -513,16 +513,16 @@ int vqp_encode(RADIUS_PACKET *packet, RADIUS_PACKET *original)
                debug_pair(vp);
 
                switch (vp->vp_type) {
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        len = fr_vqp_attr_sizes[vp->vp_type][0];
                        break;
 
-               case PW_TYPE_ETHERNET:
+               case FR_TYPE_ETHERNET:
                        len = fr_vqp_attr_sizes[vp->vp_type][0];
                        break;
 
-               case PW_TYPE_OCTETS:
-               case PW_TYPE_STRING:
+               case FR_TYPE_OCTETS:
+               case FR_TYPE_STRING:
                        len = vp->vp_length;
                        break;
 
@@ -548,18 +548,18 @@ int vqp_encode(RADIUS_PACKET *packet, RADIUS_PACKET *original)
 
                /* Data */
                switch (vp->vp_type) {
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        memcpy(out, &vp->vp_ipv4addr, len);
                        out += len;
                        break;
 
-               case PW_TYPE_ETHERNET:
+               case FR_TYPE_ETHERNET:
                        memcpy(out, vp->vp_ether, len);
                        out += len;
                        break;
 
-               case PW_TYPE_OCTETS:
-               case PW_TYPE_STRING:
+               case FR_TYPE_OCTETS:
+               case FR_TYPE_STRING:
                        memcpy(out, vp->vp_octets, len);
                        out += len;
                        break;
index 6508042f53c434fc17b18c69329bbdd22371bb51..c99e64c09430b70f724a0ffc18199c1715ed2818 100644 (file)
@@ -48,9 +48,9 @@ typedef struct rlm_always_t {
  *     A mapping of configuration file names to internal variables.
  */
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("rcode", PW_TYPE_STRING, rlm_always_t, rcode_str), .dflt = "fail" },
-       { FR_CONF_OFFSET("simulcount", PW_TYPE_INTEGER, rlm_always_t, simulcount), .dflt = "0" },
-       { FR_CONF_OFFSET("mpp", PW_TYPE_BOOLEAN, rlm_always_t, mpp), .dflt = "no" },
+       { FR_CONF_OFFSET("rcode", FR_TYPE_STRING, rlm_always_t, rcode_str), .dflt = "fail" },
+       { FR_CONF_OFFSET("simulcount", FR_TYPE_INTEGER, rlm_always_t, simulcount), .dflt = "0" },
+       { FR_CONF_OFFSET("mpp", FR_TYPE_BOOLEAN, rlm_always_t, mpp), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index d9d43632d71c166064c792c469293d11922ec40e..0a8d00740b05a9d852338fdbd8f6ce3a38075ec3 100644 (file)
@@ -45,9 +45,9 @@ typedef struct rlm_attr_filter {
 } rlm_attr_filter_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_attr_filter_t, filename) },
-       { FR_CONF_OFFSET("key", PW_TYPE_TMPL, rlm_attr_filter_t, key), .dflt = "&Realm", .quote = T_BARE_WORD },
-       { FR_CONF_OFFSET("relaxed", PW_TYPE_BOOLEAN, rlm_attr_filter_t, relaxed), .dflt = "no" },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT | FR_TYPE_REQUIRED, rlm_attr_filter_t, filename) },
+       { FR_CONF_OFFSET("key", FR_TYPE_TMPL, rlm_attr_filter_t, key), .dflt = "&Realm", .quote = T_BARE_WORD },
+       { FR_CONF_OFFSET("relaxed", FR_TYPE_BOOLEAN, rlm_attr_filter_t, relaxed), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index 7925d49d9bfe40dafc9b94a8529730ceaaa06506..5b20bf655d6a519f70967da4449e096078e76ddb 100644 (file)
@@ -43,7 +43,7 @@ typedef struct rlm_cache_memcached {
 } rlm_cache_memcached_t;
 
 static const CONF_PARSER driver_config[] = {
-       { FR_CONF_OFFSET("options", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_cache_memcached_t, options), .dflt = "--SERVER=localhost" },
+       { FR_CONF_OFFSET("options", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_cache_memcached_t, options), .dflt = "--SERVER=localhost" },
        CONF_PARSER_TERMINATOR
 };
 
index 4511f7525d2f1c687ce24279c3de600ecd306b15..cae75992abdf9a5ccd8391e2f48c96d50163a34f 100644 (file)
@@ -288,7 +288,7 @@ static cache_status_t cache_entry_insert(UNUSED rlm_cache_config_t const *config
         *      Encode the entry created date
         */
        tmpl_init(&created_value, TMPL_TYPE_DATA, "<TEMP>", 6, T_BARE_WORD);
-       created_value.tmpl_value_box_type = PW_TYPE_DATE;
+       created_value.tmpl_value_box_type = FR_TYPE_DATE;
        created_value.tmpl_value_box_datum.date = c->created;
 
        /*
@@ -298,7 +298,7 @@ static cache_status_t cache_entry_insert(UNUSED rlm_cache_config_t const *config
         *      to ignore entries that were created before the last epoch.
         */
        tmpl_init(&expires_value, TMPL_TYPE_DATA, "<TEMP>", 6, T_BARE_WORD);
-       expires_value.tmpl_value_box_type = PW_TYPE_DATE;
+       expires_value.tmpl_value_box_type = FR_TYPE_DATE;
        expires_value.tmpl_value_box_datum.date = c->expires;
        expires.next = c->maps; /* Head of the list */
 
index 5b9304155aed288b2721679ba178416d12256b3b..f87c2c5ddb0c7ba2b24a2da7736a667d9ccca18b 100644 (file)
@@ -37,14 +37,14 @@ RCSID("$Id$")
 extern rad_module_t rlm_cache;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("driver", PW_TYPE_STRING, rlm_cache_config_t, driver_name), .dflt = "rlm_cache_rbtree" },
-       { FR_CONF_OFFSET("key", PW_TYPE_TMPL | PW_TYPE_REQUIRED, rlm_cache_config_t, key) },
-       { FR_CONF_OFFSET("ttl", PW_TYPE_INTEGER, rlm_cache_config_t, ttl), .dflt = "500" },
-       { FR_CONF_OFFSET("max_entries", PW_TYPE_INTEGER, rlm_cache_config_t, max_entries), .dflt = "0" },
+       { FR_CONF_OFFSET("driver", FR_TYPE_STRING, rlm_cache_config_t, driver_name), .dflt = "rlm_cache_rbtree" },
+       { FR_CONF_OFFSET("key", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_cache_config_t, key) },
+       { FR_CONF_OFFSET("ttl", FR_TYPE_INTEGER, rlm_cache_config_t, ttl), .dflt = "500" },
+       { FR_CONF_OFFSET("max_entries", FR_TYPE_INTEGER, rlm_cache_config_t, max_entries), .dflt = "0" },
 
        /* Should be a type which matches time_t, @fixme before 2038 */
-       { FR_CONF_OFFSET("epoch", PW_TYPE_SIGNED, rlm_cache_config_t, epoch), .dflt = "0" },
-       { FR_CONF_OFFSET("add_stats", PW_TYPE_BOOLEAN, rlm_cache_config_t, stats), .dflt = "no" },
+       { FR_CONF_OFFSET("epoch", FR_TYPE_SIGNED, rlm_cache_config_t, epoch), .dflt = "0" },
+       { FR_CONF_OFFSET("add_stats", FR_TYPE_BOOLEAN, rlm_cache_config_t, stats), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
@@ -383,7 +383,7 @@ static rlm_rcode_t cache_insert(rlm_cache_t const *inst, REQUEST *request, rlm_c
                                        return RLM_MODULE_FAIL;
                                }
                                c_map->rhs->tmpl_value_box_type = vp->vp_type;
-                               if (vp->vp_type == PW_TYPE_STRING) {
+                               if (vp->vp_type == FR_TYPE_STRING) {
                                        c_map->rhs->quote = is_printable(vp->vp_strvalue, vp->vp_length) ?
                                                T_SINGLE_QUOTED_STRING : T_DOUBLE_QUOTED_STRING;
                                }
index 90655fba5e00b7026121eba0c75918534edbd770..96e3c631f98dd482ce92838e7a875c426b6a27eb 100644 (file)
@@ -389,15 +389,15 @@ json_object *mod_value_pair_to_json_object(REQUEST *request, VALUE_PAIR *vp)
                unsigned int i;
 
                switch (vp->vp_type) {
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        i = vp->vp_integer;
                        goto print_int;
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        i = vp->vp_short;
                        goto print_int;
 
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        i = vp->vp_byte;
 
                print_int:
@@ -415,7 +415,7 @@ json_object *mod_value_pair_to_json_object(REQUEST *request, VALUE_PAIR *vp)
                        return json_object_new_int(i);
 #endif
 
-               case PW_TYPE_SIGNED:
+               case FR_TYPE_SIGNED:
 #ifdef HAVE_JSON_OBJECT_NEW_INT64
                        /* debug */
                        RDEBUG3("creating new int64 for signed 32 bit integer '%s'", vp->da->name);
@@ -427,7 +427,7 @@ json_object *mod_value_pair_to_json_object(REQUEST *request, VALUE_PAIR *vp)
                        return json_object_new_int(vp->vp_signed);
 #endif
 
-               case PW_TYPE_INTEGER64:
+               case FR_TYPE_INTEGER64:
 #ifdef HAVE_JSON_OBJECT_NEW_INT64
                        /* debug */
                        RDEBUG3("creating new int64 for 64 bit integer '%s'", vp->da->name);
@@ -447,7 +447,7 @@ json_object *mod_value_pair_to_json_object(REQUEST *request, VALUE_PAIR *vp)
 
        /* keep going if not set above */
        switch (vp->vp_type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                /* debug */
                RDEBUG3("assigning string '%s' as string", vp->da->name);
                /* return string value */
index 55179d960afb142c19007e1862fdcd879a2a9372..576a3b02aa8355cb8f4ea872c8d1da30dfe23393 100644 (file)
@@ -43,7 +43,7 @@ RCSID("$Id$")
  * Client Configuration
  */
 static const CONF_PARSER client_config[] = {
-       { FR_CONF_OFFSET("view", PW_TYPE_STRING, rlm_couchbase_t, client_view), .dflt = "_design/client/_view/by_name" },
+       { FR_CONF_OFFSET("view", FR_TYPE_STRING, rlm_couchbase_t, client_view), .dflt = "_design/client/_view/by_name" },
        CONF_PARSER_TERMINATOR
 };
 
@@ -51,22 +51,22 @@ static const CONF_PARSER client_config[] = {
  * Module Configuration
  */
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("server", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_couchbase_t, server_raw) },
-       { FR_CONF_OFFSET("bucket", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_couchbase_t, bucket) },
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING, rlm_couchbase_t, password) },
+       { FR_CONF_OFFSET("server", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_couchbase_t, server_raw) },
+       { FR_CONF_OFFSET("bucket", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_couchbase_t, bucket) },
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING, rlm_couchbase_t, password) },
 #ifdef WITH_ACCOUNTING
-       { FR_CONF_OFFSET("acct_key", PW_TYPE_TMPL, rlm_couchbase_t, acct_key), .dflt = "radacct_%{%{Acct-Unique-Session-Id}:-%{Acct-Session-Id}}", .quote = T_DOUBLE_QUOTED_STRING },
-       { FR_CONF_OFFSET("doctype", PW_TYPE_STRING, rlm_couchbase_t, doctype), .dflt = "radacct" },
-       { FR_CONF_OFFSET("expire", PW_TYPE_INTEGER, rlm_couchbase_t, expire), .dflt = 0 },
+       { FR_CONF_OFFSET("acct_key", FR_TYPE_TMPL, rlm_couchbase_t, acct_key), .dflt = "radacct_%{%{Acct-Unique-Session-Id}:-%{Acct-Session-Id}}", .quote = T_DOUBLE_QUOTED_STRING },
+       { FR_CONF_OFFSET("doctype", FR_TYPE_STRING, rlm_couchbase_t, doctype), .dflt = "radacct" },
+       { FR_CONF_OFFSET("expire", FR_TYPE_INTEGER, rlm_couchbase_t, expire), .dflt = 0 },
 #endif
-       { FR_CONF_OFFSET("user_key", PW_TYPE_TMPL, rlm_couchbase_t, user_key), .dflt = "raduser_%{md5:%{tolower:%{%{Stripped-User-Name}:-%{User-Name}}}}", .quote = T_DOUBLE_QUOTED_STRING },
-       { FR_CONF_OFFSET("read_clients", PW_TYPE_BOOLEAN, rlm_couchbase_t, read_clients) }, /* NULL defaults to "no" */
-       { FR_CONF_POINTER("client", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) client_config },
+       { FR_CONF_OFFSET("user_key", FR_TYPE_TMPL, rlm_couchbase_t, user_key), .dflt = "raduser_%{md5:%{tolower:%{%{Stripped-User-Name}:-%{User-Name}}}}", .quote = T_DOUBLE_QUOTED_STRING },
+       { FR_CONF_OFFSET("read_clients", FR_TYPE_BOOLEAN, rlm_couchbase_t, read_clients) }, /* NULL defaults to "no" */
+       { FR_CONF_POINTER("client", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) client_config },
 #ifdef WITH_SESSION_MGMT
-       { FR_CONF_OFFSET("check_simul", PW_TYPE_BOOLEAN, rlm_couchbase_t, check_simul) }, /* NULL defaults to "no" */
-       { FR_CONF_OFFSET("simul_view", PW_TYPE_STRING, rlm_couchbase_t, simul_view), .dflt = "_design/acct/_view/by_user" },
-       { FR_CONF_OFFSET("simul_vkey", PW_TYPE_TMPL, rlm_couchbase_t, simul_vkey), .dflt = "%{tolower:%{%{Stripped-User-Name}:-%{User-Name}}}",  .quote = T_DOUBLE_QUOTED_STRING },
-       { FR_CONF_OFFSET("verify_simul", PW_TYPE_BOOLEAN, rlm_couchbase_t, verify_simul) }, /* NULL defaults to "no" */
+       { FR_CONF_OFFSET("check_simul", FR_TYPE_BOOLEAN, rlm_couchbase_t, check_simul) }, /* NULL defaults to "no" */
+       { FR_CONF_OFFSET("simul_view", FR_TYPE_STRING, rlm_couchbase_t, simul_view), .dflt = "_design/acct/_view/by_user" },
+       { FR_CONF_OFFSET("simul_vkey", FR_TYPE_TMPL, rlm_couchbase_t, simul_vkey), .dflt = "%{tolower:%{%{Stripped-User-Name}:-%{User-Name}}}",  .quote = T_DOUBLE_QUOTED_STRING },
+       { FR_CONF_OFFSET("verify_simul", FR_TYPE_BOOLEAN, rlm_couchbase_t, verify_simul) }, /* NULL defaults to "no" */
 #endif
        CONF_PARSER_TERMINATOR
 };
index d9deebf64016fbecd8bf2032cfc4563cccdfa603..0ef3aaf33611a0d8254db21ef1f58e1c780d451e 100644 (file)
@@ -66,10 +66,10 @@ typedef struct rlm_csv_entry_t {
  *     A mapping of configuration file names to internal variables.
  */
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED | PW_TYPE_NOT_EMPTY, rlm_csv_t, filename) },
-       { FR_CONF_OFFSET("delimiter", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_NOT_EMPTY, rlm_csv_t, delimiter), .dflt = "," },
-       { FR_CONF_OFFSET("header", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_NOT_EMPTY, rlm_csv_t, header) },
-       { FR_CONF_OFFSET("key_field", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_NOT_EMPTY, rlm_csv_t, key) },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT | FR_TYPE_REQUIRED | FR_TYPE_NOT_EMPTY, rlm_csv_t, filename) },
+       { FR_CONF_OFFSET("delimiter", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_NOT_EMPTY, rlm_csv_t, delimiter), .dflt = "," },
+       { FR_CONF_OFFSET("header", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_NOT_EMPTY, rlm_csv_t, header) },
+       { FR_CONF_OFFSET("key_field", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_NOT_EMPTY, rlm_csv_t, key) },
        CONF_PARSER_TERMINATOR
 };
 
index b5f152db1da4ce8337e7800d5553e928b805e2b3..83a033859238495d47a45f64199d261db6ae7bc2 100644 (file)
@@ -35,7 +35,7 @@ typedef struct rlm_date_t {
 } rlm_date_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("format", PW_TYPE_STRING, rlm_date_t, fmt), .dflt = "%b %e %Y %H:%M:%S %Z" },
+       { FR_CONF_OFFSET("format", FR_TYPE_STRING, rlm_date_t, fmt), .dflt = "%b %e %Y %H:%M:%S %Z" },
        CONF_PARSER_TERMINATOR
 };
 
@@ -59,12 +59,12 @@ static ssize_t xlat_date_convert(UNUSED TALLOC_CTX *ctx, char **out, size_t outl
         *      to a time structure, and then output it in the specified
         *      format as a string.
         */
-       case PW_TYPE_DATE:
+       case FR_TYPE_DATE:
                date = vp->vp_date;
                goto encode;
 
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_INTEGER64:
                date = (time_t) vp->vp_integer;
 
        encode:
@@ -79,7 +79,7 @@ static ssize_t xlat_date_convert(UNUSED TALLOC_CTX *ctx, char **out, size_t outl
         *      into a time structure, and then output it as an integer
         *      unix timestamp.
         */
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                if (strptime(vp->vp_strvalue, inst->fmt, &tminfo) == NULL) {
                        REDEBUG("Failed to parse time string \"%s\" as format '%s'", vp->vp_strvalue, inst->fmt);
                        goto error;
index fa0ce8554984e87db20d7fc2f791e50a97907b95..9ed9c534a7ea494a2ce806862808c263d26d03ec 100644 (file)
@@ -40,9 +40,9 @@ typedef struct rlm_delay_t {
  *     A mapping of configuration file names to internal variables.
  */
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("delay", PW_TYPE_TMPL, rlm_delay_t, delay) },
-       { FR_CONF_OFFSET("relative", PW_TYPE_BOOLEAN, rlm_delay_t, relative), .dflt = "no" },
-       { FR_CONF_OFFSET("force_reschedule", PW_TYPE_BOOLEAN, rlm_delay_t, force_reschedule), .dflt = "no" },
+       { FR_CONF_OFFSET("delay", FR_TYPE_TMPL, rlm_delay_t, delay) },
+       { FR_CONF_OFFSET("relative", FR_TYPE_BOOLEAN, rlm_delay_t, relative), .dflt = "no" },
+       { FR_CONF_OFFSET("force_reschedule", FR_TYPE_BOOLEAN, rlm_delay_t, force_reschedule), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index 2d732b5faed8d549433334c278159a6276b4bcbd..51318172f6fa4a89683ebe935e8a6527c05bebab 100644 (file)
@@ -75,13 +75,13 @@ typedef struct detail_instance {
 } rlm_detail_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_OUTPUT | PW_TYPE_REQUIRED | PW_TYPE_XLAT, rlm_detail_t, filename), .dflt = "%A/%{Client-IP-Address}/detail" },
-       { FR_CONF_OFFSET("header", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_detail_t, header), .dflt = "%t" },
-       { FR_CONF_OFFSET("permissions", PW_TYPE_INTEGER, rlm_detail_t, perm), .dflt = "0600" },
-       { FR_CONF_OFFSET("group", PW_TYPE_STRING, rlm_detail_t, group) },
-       { FR_CONF_OFFSET("locking", PW_TYPE_BOOLEAN, rlm_detail_t, locking), .dflt = "no" },
-       { FR_CONF_OFFSET("escape_filenames", PW_TYPE_BOOLEAN, rlm_detail_t, escape), .dflt = "no" },
-       { FR_CONF_OFFSET("log_packet_header", PW_TYPE_BOOLEAN, rlm_detail_t, log_srcdst), .dflt = "no" },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_OUTPUT | FR_TYPE_REQUIRED | FR_TYPE_XLAT, rlm_detail_t, filename), .dflt = "%A/%{Client-IP-Address}/detail" },
+       { FR_CONF_OFFSET("header", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_detail_t, header), .dflt = "%t" },
+       { FR_CONF_OFFSET("permissions", FR_TYPE_INTEGER, rlm_detail_t, perm), .dflt = "0600" },
+       { FR_CONF_OFFSET("group", FR_TYPE_STRING, rlm_detail_t, group) },
+       { FR_CONF_OFFSET("locking", FR_TYPE_BOOLEAN, rlm_detail_t, locking), .dflt = "no" },
+       { FR_CONF_OFFSET("escape_filenames", FR_TYPE_BOOLEAN, rlm_detail_t, escape), .dflt = "no" },
+       { FR_CONF_OFFSET("log_packet_header", FR_TYPE_BOOLEAN, rlm_detail_t, log_srcdst), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index bc4bc8da5197f414d22f78e22e97f4ffb927d70e..6d91460782a139d372a5bc7a10983b4ec01520a1 100644 (file)
@@ -244,7 +244,7 @@ static int fr_sim_array_members(size_t *out, size_t len, fr_dict_attr_t const *d
         *      Could be an array of bytes, integers, etc.
         */
        switch (da->type) {
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                if (da->flags.length == 0) return 1;
                element_len = da->flags.length;
                break;
@@ -418,7 +418,7 @@ static ssize_t sim_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
         *      block cipher (16 in the case of AES-128-CBC).
         */
        case PW_SIM_PADDING:
-               if (!parent->parent || (parent->parent->type != PW_TYPE_TLV) || (!parent->parent->flags.encrypt)) {
+               if (!parent->parent || (parent->parent->type != FR_TYPE_TLV) || (!parent->parent->flags.encrypt)) {
                        fr_strerror_printf("%s: Found padding attribute outside of an encrypted TLV", __FUNCTION__);
                        return -1;
                }
@@ -450,15 +450,15 @@ static ssize_t sim_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
 
        FR_PROTO_TRACE("Type \"%s\" (%u)", fr_int2str(dict_attr_types, parent->type, "?Unknown?"), parent->type);
        switch (parent->type) {
-       case PW_TYPE_STRING:
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_STRING:
+       case FR_TYPE_OCTETS:
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                if (attr_len != 2) goto raw;
                break;
 
-       case PW_TYPE_TLV:
+       case FR_TYPE_TLV:
                /*
                 *      We presume that the TLVs all fit into one
                 *      attribute, OR they've already been grouped
@@ -500,7 +500,7 @@ static ssize_t sim_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
         *      Strings have a two byte 'real length' field in front of the
         *      actual value, and that gives us the length of the string value.
         */
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
        {
                uint16_t str_len = (p[0] << 8) | p[1];
 
@@ -514,7 +514,7 @@ static ssize_t sim_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
        }
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                fr_pair_value_memcpy(vp, p, attr_len);
                vp->vp_length = attr_len;
                break;
@@ -529,11 +529,11 @@ static ssize_t sim_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_di
         *      |   AT_<BOOL>   | Length = 1    |           Reserved            |
         *      +---------------+---------------+-------------------------------+
         */
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BOOLEAN:
                vp->vp_bool = true;
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                vp->vp_short = (p[0] << 8) | p[1];
                break;
 
@@ -795,7 +795,7 @@ ssize_t fr_sim_encode(REQUEST *request, fr_dict_attr_t const *parent, uint8_t ty
                /*
                 *      String attributes have a 16bit "Actual Length" field at the start.
                 */
-               } else if (vp->vp_type == PW_TYPE_STRING) {
+               } else if (vp->vp_type == FR_TYPE_STRING) {
                        vp_len = vp->vp_length + 2;
                /*
                 *      All other attributes we trust the length.
@@ -852,7 +852,7 @@ ssize_t fr_sim_encode(REQUEST *request, fr_dict_attr_t const *parent, uint8_t ty
                /*
                 *      For strings we have an 'actual' value field.
                 */
-               if (vp->vp_type == PW_TYPE_STRING) {
+               if (vp->vp_type == FR_TYPE_STRING) {
                        vp_len = vp->vp_length + 2;
                /*
                 *      All other attributes we trust the length.
@@ -871,7 +871,7 @@ ssize_t fr_sim_encode(REQUEST *request, fr_dict_attr_t const *parent, uint8_t ty
                p[1] = rounded_len >> 2;
 
                switch (vp->vp_type) {
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        memcpy(&p[2], vp->vp_octets, vp->vp_length);
                        break;
 
@@ -892,7 +892,7 @@ ssize_t fr_sim_encode(REQUEST *request, fr_dict_attr_t const *parent, uint8_t ty
                 *      |                                                               |
                 *      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                 */
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                {
                        uint16_t actual_len = htons((vp->vp_length & UINT16_MAX));
 
@@ -912,7 +912,7 @@ ssize_t fr_sim_encode(REQUEST *request, fr_dict_attr_t const *parent, uint8_t ty
                 *      |   AT_<BOOL>   | Length = 1    |           Reserved            |
                 *      +---------------+---------------+-------------------------------+
                 */
-               case PW_TYPE_BOOLEAN:
+               case FR_TYPE_BOOLEAN:
                        break;
 
                /*
@@ -927,11 +927,11 @@ ssize_t fr_sim_encode(REQUEST *request, fr_dict_attr_t const *parent, uint8_t ty
                 *      |   AT_<SHORT>  | Length = 1    |    Short 1    |    Short 2    |
                 *      +---------------+---------------+-------------------------------+
                 */
-               case PW_TYPE_BYTE:                      //!< 8 Bit unsigned integer.
-               case PW_TYPE_SHORT:                     //!< 16 Bit unsigned integer.
-               case PW_TYPE_INTEGER:                   //!< 32 Bit unsigned integer.
-               case PW_TYPE_INTEGER64:                 //!< 64 Bit unsigned integer.
-               case PW_TYPE_SIGNED:                    //!< 32 Bit signed integer.
+               case FR_TYPE_BYTE:                      //!< 8 Bit unsigned integer.
+               case FR_TYPE_SHORT:                     //!< 16 Bit unsigned integer.
+               case FR_TYPE_INTEGER:                   //!< 32 Bit unsigned integer.
+               case FR_TYPE_INTEGER64:                 //!< 64 Bit unsigned integer.
+               case FR_TYPE_SIGNED:                    //!< 32 Bit signed integer.
                {
                        value_box_t data;
 
index e45d9f55ec7354b4c9a8ff94d07dca0397cf0017..499b083dd4a4bba115e17e28657e6f78ddc65e4c 100644 (file)
@@ -36,12 +36,12 @@ RCSID("$Id$")
 extern rad_module_t rlm_eap;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("default_eap_type", PW_TYPE_STRING, rlm_eap_config_t, default_method_name), .dflt = "md5" },
-       { FR_CONF_DEPRECATED("timer_expire", PW_TYPE_INTEGER, rlm_eap_config_t, timer_limit), .dflt = "60" },
-       { FR_CONF_OFFSET("ignore_unknown_eap_types", PW_TYPE_BOOLEAN, rlm_eap_config_t, ignore_unknown_types), .dflt = "no" },
-       { FR_CONF_OFFSET("cisco_accounting_username_bug", PW_TYPE_BOOLEAN, rlm_eap_config_t,
+       { FR_CONF_OFFSET("default_eap_type", FR_TYPE_STRING, rlm_eap_config_t, default_method_name), .dflt = "md5" },
+       { FR_CONF_DEPRECATED("timer_expire", FR_TYPE_INTEGER, rlm_eap_config_t, timer_limit), .dflt = "60" },
+       { FR_CONF_OFFSET("ignore_unknown_eap_types", FR_TYPE_BOOLEAN, rlm_eap_config_t, ignore_unknown_types), .dflt = "no" },
+       { FR_CONF_OFFSET("cisco_accounting_username_bug", FR_TYPE_BOOLEAN, rlm_eap_config_t,
                         cisco_accounting_username_bug), .dflt = "no" },
-       { FR_CONF_DEPRECATED("max_sessions", PW_TYPE_INTEGER, rlm_eap_config_t, max_sessions), .dflt = "2048" },
+       { FR_CONF_DEPRECATED("max_sessions", FR_TYPE_INTEGER, rlm_eap_config_t, max_sessions), .dflt = "2048" },
        CONF_PARSER_TERMINATOR
 };
 
index e61239f8bed051d0a7e5da759cbfea2f11f3bf3c..b11915fba24981ab7c1bc10a95d98c2f408770a8 100644 (file)
@@ -464,7 +464,7 @@ VALUE_PAIR *eap_fast_fast2vp(REQUEST *request, SSL *ssl, uint8_t const *data, si
                da = fr_dict_attr_child_by_num(fast_da, attr);
                if (!da) goto next_attr;
 
-               if (da->type == PW_TYPE_TLV) {
+               if (da->type == FR_TYPE_TLV) {
                        eap_fast_fast2vp(request, ssl, data, length, da, out);
                        goto next_attr;
                }
index 17d81957a2eefa433e6717fa694c6ca25c60f89a..2a59ecac6e49d6df109b08c910a8be8d3553bcb7 100644 (file)
@@ -53,17 +53,17 @@ typedef struct rlm_eap_fast_t {
 
 
 static CONF_PARSER submodule_config[] = {
-       { FR_CONF_OFFSET("tls", PW_TYPE_STRING, rlm_eap_fast_t, tls_conf_name) },
+       { FR_CONF_OFFSET("tls", FR_TYPE_STRING, rlm_eap_fast_t, tls_conf_name) },
 
-       { FR_CONF_OFFSET("default_provisioning_eap_type", PW_TYPE_STRING, rlm_eap_fast_t, default_provisioning_method_name), .dflt = "mschapv2" },
+       { FR_CONF_OFFSET("default_provisioning_eap_type", FR_TYPE_STRING, rlm_eap_fast_t, default_provisioning_method_name), .dflt = "mschapv2" },
 
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_NOT_EMPTY, rlm_eap_fast_t, virtual_server) },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_NOT_EMPTY, rlm_eap_fast_t, virtual_server) },
 
-       { FR_CONF_OFFSET("require_client_cert", PW_TYPE_BOOLEAN, rlm_eap_fast_t, req_client_cert), .dflt = "no" },
+       { FR_CONF_OFFSET("require_client_cert", FR_TYPE_BOOLEAN, rlm_eap_fast_t, req_client_cert), .dflt = "no" },
 
-       { FR_CONF_OFFSET("pac_lifetime", PW_TYPE_INTEGER, rlm_eap_fast_t, pac_lifetime), .dflt = "604800" },
-       { FR_CONF_OFFSET("authority_identity", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_eap_fast_t, authority_identity) },
-       { FR_CONF_OFFSET("pac_opaque_key", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_eap_fast_t, pac_opaque_key) },
+       { FR_CONF_OFFSET("pac_lifetime", FR_TYPE_INTEGER, rlm_eap_fast_t, pac_lifetime), .dflt = "604800" },
+       { FR_CONF_OFFSET("authority_identity", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_eap_fast_t, authority_identity) },
+       { FR_CONF_OFFSET("pac_opaque_key", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_eap_fast_t, pac_opaque_key) },
 
        CONF_PARSER_TERMINATOR
 };
index 16be72798d5f91c1f52370d1bd2cbb856657d7bb..f9be5c5e4fa232ef4eb122376399c08248f74646 100644 (file)
@@ -43,8 +43,8 @@ typedef struct rlm_eap_gtc_t {
 } rlm_eap_gtc_t;
 
 static CONF_PARSER submodule_config[] = {
-       { FR_CONF_OFFSET("challenge", PW_TYPE_STRING, rlm_eap_gtc_t, challenge), .dflt = "Password: " },
-       { FR_CONF_OFFSET("auth_type", PW_TYPE_STRING, rlm_eap_gtc_t, auth_type_name), .dflt = "PAP" },
+       { FR_CONF_OFFSET("challenge", FR_TYPE_STRING, rlm_eap_gtc_t, challenge), .dflt = "Password: " },
+       { FR_CONF_OFFSET("auth_type", FR_TYPE_STRING, rlm_eap_gtc_t, auth_type_name), .dflt = "PAP" },
        CONF_PARSER_TERMINATOR
 };
 
index 30051a15714490d45ff8e0657d6778973287abcf..29b0f874d52e7abdda1de8785be3b8262a63f944 100644 (file)
@@ -37,10 +37,10 @@ typedef struct rlm_eap_mschapv2_t {
 } rlm_eap_mschapv2_t;
 
 static CONF_PARSER submodule_config[] = {
-       { FR_CONF_OFFSET("with_ntdomain_hack", PW_TYPE_BOOLEAN, rlm_eap_mschapv2_t, with_ntdomain_hack), .dflt = "no" },
+       { FR_CONF_OFFSET("with_ntdomain_hack", FR_TYPE_BOOLEAN, rlm_eap_mschapv2_t, with_ntdomain_hack), .dflt = "no" },
 
-       { FR_CONF_OFFSET("send_error", PW_TYPE_BOOLEAN, rlm_eap_mschapv2_t, send_error), .dflt = "no" },
-       { FR_CONF_OFFSET("identity", PW_TYPE_STRING, rlm_eap_mschapv2_t, identity) },
+       { FR_CONF_OFFSET("send_error", FR_TYPE_BOOLEAN, rlm_eap_mschapv2_t, send_error), .dflt = "no" },
+       { FR_CONF_OFFSET("identity", FR_TYPE_STRING, rlm_eap_mschapv2_t, identity) },
        CONF_PARSER_TERMINATOR
 };
 
index 9dac20d368a23fec04638945bee21833698133fb..1a04d2486b467c9e151778a8fd94e9beb7583994 100644 (file)
@@ -50,25 +50,25 @@ typedef struct rlm_eap_peap_t {
 
 
 static CONF_PARSER submodule_config[] = {
-       { FR_CONF_OFFSET("tls", PW_TYPE_STRING, rlm_eap_peap_t, tls_conf_name) },
+       { FR_CONF_OFFSET("tls", FR_TYPE_STRING, rlm_eap_peap_t, tls_conf_name) },
 
-       { FR_CONF_OFFSET("inner_eap_module", PW_TYPE_STRING, rlm_eap_peap_t, inner_eap_module), },
+       { FR_CONF_OFFSET("inner_eap_module", FR_TYPE_STRING, rlm_eap_peap_t, inner_eap_module), },
 
-       { FR_CONF_DEPRECATED("copy_request_to_tunnel", PW_TYPE_BOOLEAN, rlm_eap_peap_t, NULL), .dflt = "no" },
+       { FR_CONF_DEPRECATED("copy_request_to_tunnel", FR_TYPE_BOOLEAN, rlm_eap_peap_t, NULL), .dflt = "no" },
 
-       { FR_CONF_DEPRECATED("use_tunneled_reply", PW_TYPE_BOOLEAN, rlm_eap_peap_t, NULL), .dflt = "no" },
+       { FR_CONF_DEPRECATED("use_tunneled_reply", FR_TYPE_BOOLEAN, rlm_eap_peap_t, NULL), .dflt = "no" },
 
 #ifdef WITH_PROXY
-       { FR_CONF_OFFSET("proxy_tunneled_request_as_eap", PW_TYPE_BOOLEAN, rlm_eap_peap_t, proxy_tunneled_request_as_eap), .dflt = "yes" },
+       { FR_CONF_OFFSET("proxy_tunneled_request_as_eap", FR_TYPE_BOOLEAN, rlm_eap_peap_t, proxy_tunneled_request_as_eap), .dflt = "yes" },
 #endif
 
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_NOT_EMPTY, rlm_eap_peap_t, virtual_server) },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_NOT_EMPTY, rlm_eap_peap_t, virtual_server) },
 
-       { FR_CONF_OFFSET("soh", PW_TYPE_BOOLEAN, rlm_eap_peap_t, soh), .dflt = "no" },
+       { FR_CONF_OFFSET("soh", FR_TYPE_BOOLEAN, rlm_eap_peap_t, soh), .dflt = "no" },
 
-       { FR_CONF_OFFSET("require_client_cert", PW_TYPE_BOOLEAN, rlm_eap_peap_t, req_client_cert), .dflt = "no" },
+       { FR_CONF_OFFSET("require_client_cert", FR_TYPE_BOOLEAN, rlm_eap_peap_t, req_client_cert), .dflt = "no" },
 
-       { FR_CONF_OFFSET("soh_virtual_server", PW_TYPE_STRING, rlm_eap_peap_t, soh_virtual_server) },
+       { FR_CONF_OFFSET("soh_virtual_server", FR_TYPE_STRING, rlm_eap_peap_t, soh_virtual_server) },
        CONF_PARSER_TERMINATOR
 };
 
index 34e8f19bb47c51ddc8ab491ce2872124fe206a2c..de465b58367c3bdea265eb9933e470becd1801c7 100644 (file)
@@ -43,9 +43,9 @@ USES_APPLE_DEPRECATED_API     /* OpenSSL API has been deprecated by Apple */
 #define MSK_EMSK_LEN    (2 * MPPE_KEY_LEN)
 
 static CONF_PARSER submodule_config[] = {
-       { FR_CONF_OFFSET("group", PW_TYPE_INTEGER, rlm_eap_pwd_t, group), .dflt = "19" },
-       { FR_CONF_OFFSET("fragment_size", PW_TYPE_INTEGER, rlm_eap_pwd_t, fragment_size), .dflt = "1020" },
-       { FR_CONF_OFFSET("server_id", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_eap_pwd_t, server_id) },
+       { FR_CONF_OFFSET("group", FR_TYPE_INTEGER, rlm_eap_pwd_t, group), .dflt = "19" },
+       { FR_CONF_OFFSET("fragment_size", FR_TYPE_INTEGER, rlm_eap_pwd_t, fragment_size), .dflt = "1020" },
+       { FR_CONF_OFFSET("server_id", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_eap_pwd_t, server_id) },
        CONF_PARSER_TERMINATOR
 };
 
index 8975c96c6c16cf30fdc53a2f2ffbe1bc3e50dd43..d53809343e52613b22c74ee02d82e11a2bfa693c 100644 (file)
@@ -42,11 +42,11 @@ USES_APPLE_DEPRECATED_API   /* OpenSSL API has been deprecated by Apple */
 #endif
 
 static CONF_PARSER submodule_config[] = {
-       { FR_CONF_OFFSET("tls", PW_TYPE_STRING, rlm_eap_tls_t, tls_conf_name) },
+       { FR_CONF_OFFSET("tls", FR_TYPE_STRING, rlm_eap_tls_t, tls_conf_name) },
 
-       { FR_CONF_OFFSET("require_client_cert", PW_TYPE_BOOLEAN, rlm_eap_tls_t, req_client_cert), .dflt = "yes" },
-       { FR_CONF_OFFSET("include_length", PW_TYPE_BOOLEAN, rlm_eap_tls_t, include_length), .dflt = "yes" },
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING, rlm_eap_tls_t, virtual_server) },
+       { FR_CONF_OFFSET("require_client_cert", FR_TYPE_BOOLEAN, rlm_eap_tls_t, req_client_cert), .dflt = "yes" },
+       { FR_CONF_OFFSET("include_length", FR_TYPE_BOOLEAN, rlm_eap_tls_t, include_length), .dflt = "yes" },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING, rlm_eap_tls_t, virtual_server) },
        CONF_PARSER_TERMINATOR
 };
 
index 5dc6636bf1462eeaeb9eb74b4bf1a1dcaf0b53a4..be53d4ef45f7824890011b5acecbd6845f97cd63 100644 (file)
@@ -59,12 +59,12 @@ typedef struct rlm_eap_ttls {
 
 
 static CONF_PARSER submodule_config[] = {
-       { FR_CONF_OFFSET("tls", PW_TYPE_STRING, rlm_eap_ttls_t, tls_conf_name) },
-       { FR_CONF_DEPRECATED("copy_request_to_tunnel", PW_TYPE_BOOLEAN, rlm_eap_ttls_t, NULL), .dflt = "no" },
-       { FR_CONF_DEPRECATED("use_tunneled_reply", PW_TYPE_BOOLEAN, rlm_eap_ttls_t, NULL), .dflt = "no" },
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_NOT_EMPTY, rlm_eap_ttls_t, virtual_server) },
-       { FR_CONF_OFFSET("include_length", PW_TYPE_BOOLEAN, rlm_eap_ttls_t, include_length), .dflt = "yes" },
-       { FR_CONF_OFFSET("require_client_cert", PW_TYPE_BOOLEAN, rlm_eap_ttls_t, req_client_cert), .dflt = "no" },
+       { FR_CONF_OFFSET("tls", FR_TYPE_STRING, rlm_eap_ttls_t, tls_conf_name) },
+       { FR_CONF_DEPRECATED("copy_request_to_tunnel", FR_TYPE_BOOLEAN, rlm_eap_ttls_t, NULL), .dflt = "no" },
+       { FR_CONF_DEPRECATED("use_tunneled_reply", FR_TYPE_BOOLEAN, rlm_eap_ttls_t, NULL), .dflt = "no" },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_NOT_EMPTY, rlm_eap_ttls_t, virtual_server) },
+       { FR_CONF_OFFSET("include_length", FR_TYPE_BOOLEAN, rlm_eap_ttls_t, include_length), .dflt = "yes" },
+       { FR_CONF_OFFSET("require_client_cert", FR_TYPE_BOOLEAN, rlm_eap_ttls_t, req_client_cert), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index 79f4ee4b9c3af05cdde78a172b947acba556f685..38d359a4fa5571b6e9a7081542322f987977a6c4 100644 (file)
@@ -279,7 +279,7 @@ static VALUE_PAIR *diameter2vp(REQUEST *request, REQUEST *fake, SSL *ssl,
                /*
                 *      Diameter pads strings (i.e. User-Password) with trailing zeros.
                 */
-               if (vp->vp_type == PW_TYPE_STRING) {
+               if (vp->vp_type == FR_TYPE_STRING) {
                        fr_pair_value_strcpy(vp, vp->vp_strvalue);
                }
 
@@ -396,26 +396,26 @@ static int vp2diameter(REQUEST *request, tls_session_t *tls_session, VALUE_PAIR
                }
 
                switch (vp->vp_type) {
-               case PW_TYPE_INTEGER:
-               case PW_TYPE_DATE:
+               case FR_TYPE_INTEGER:
+               case FR_TYPE_DATE:
                        attr = htonl(vp->vp_integer); /* stored in host order */
                        memcpy(p, &attr, sizeof(attr));
                        length = 4;
                        break;
 
-               case PW_TYPE_INTEGER64:
+               case FR_TYPE_INTEGER64:
                        attr64 = htonll(vp->vp_integer64); /* stored in host order */
                        memcpy(p, &attr64, sizeof(attr64));
                        length = 8;
                        break;
 
-               case PW_TYPE_IPV4_ADDR:
+               case FR_TYPE_IPV4_ADDR:
                        memcpy(p, &vp->vp_ipv4addr, 4); /* network order */
                        length = 4;
                        break;
 
-               case PW_TYPE_STRING:
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_STRING:
+               case FR_TYPE_OCTETS:
                default:
                        memcpy(p, vp->vp_strvalue, vp->vp_length);
                        length = vp->vp_length;
index 8b1529120fe7148098b9851aa105897f53c35775..2693c7224ece7e86000842861f33cb5ef4851e93 100644 (file)
@@ -46,17 +46,17 @@ typedef struct rlm_example_t {
  *     A mapping of configuration file names to internal variables.
  */
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("integer", PW_TYPE_INTEGER, rlm_example_t, value), .dflt = "1" },
-       { FR_CONF_OFFSET("boolean", PW_TYPE_BOOLEAN, rlm_example_t, boolean), .dflt = "no" },
-       { FR_CONF_OFFSET("string", PW_TYPE_STRING, rlm_example_t, string) },
-       { FR_CONF_OFFSET("ipaddr", PW_TYPE_IPV4_ADDR, rlm_example_t, ipaddr), .dflt = "*" },
+       { FR_CONF_OFFSET("integer", FR_TYPE_INTEGER, rlm_example_t, value), .dflt = "1" },
+       { FR_CONF_OFFSET("boolean", FR_TYPE_BOOLEAN, rlm_example_t, boolean), .dflt = "no" },
+       { FR_CONF_OFFSET("string", FR_TYPE_STRING, rlm_example_t, string) },
+       { FR_CONF_OFFSET("ipaddr", FR_TYPE_IPV4_ADDR, rlm_example_t, ipaddr), .dflt = "*" },
        CONF_PARSER_TERMINATOR
 };
 
 static int rlm_example_cmp(UNUSED void *instance, REQUEST *request, UNUSED VALUE_PAIR *thing, VALUE_PAIR *check,
                           UNUSED VALUE_PAIR *check_pairs, UNUSED VALUE_PAIR **reply_pairs)
 {
-       rad_assert(check->vp_type == PW_TYPE_STRING);
+       rad_assert(check->vp_type == FR_TYPE_STRING);
 
        RINFO("Example-Paircmp called with \"%s\"", check->vp_strvalue);
 
index e27c39680e6d8f5532b9e691af6a2aa10174c635..e905bc254352a5b86be0be4c802b3d40b5d0a6c9 100644 (file)
@@ -50,13 +50,13 @@ typedef struct rlm_exec_t {
 } rlm_exec_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("wait", PW_TYPE_BOOLEAN, rlm_exec_t, wait), .dflt = "yes" },
-       { FR_CONF_OFFSET("program", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_exec_t, program) },
-       { FR_CONF_OFFSET("input_pairs", PW_TYPE_STRING, rlm_exec_t, input) },
-       { FR_CONF_OFFSET("output_pairs", PW_TYPE_STRING, rlm_exec_t, output) },
-       { FR_CONF_OFFSET("packet_type", PW_TYPE_STRING, rlm_exec_t, packet_type) },
-       { FR_CONF_OFFSET("shell_escape", PW_TYPE_BOOLEAN, rlm_exec_t, shell_escape), .dflt = "yes" },
-       { FR_CONF_OFFSET("timeout", PW_TYPE_INTEGER, rlm_exec_t, timeout) },
+       { FR_CONF_OFFSET("wait", FR_TYPE_BOOLEAN, rlm_exec_t, wait), .dflt = "yes" },
+       { FR_CONF_OFFSET("program", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_exec_t, program) },
+       { FR_CONF_OFFSET("input_pairs", FR_TYPE_STRING, rlm_exec_t, input) },
+       { FR_CONF_OFFSET("output_pairs", FR_TYPE_STRING, rlm_exec_t, output) },
+       { FR_CONF_OFFSET("packet_type", FR_TYPE_STRING, rlm_exec_t, packet_type) },
+       { FR_CONF_OFFSET("shell_escape", FR_TYPE_BOOLEAN, rlm_exec_t, shell_escape), .dflt = "yes" },
+       { FR_CONF_OFFSET("timeout", FR_TYPE_INTEGER, rlm_exec_t, timeout) },
        CONF_PARSER_TERMINATOR
 };
 
index c07746af85d345706a46a85de10179dfa2758662..8896387703f0d7957b356bb93c2897b37b3c8dcc 100644 (file)
@@ -74,7 +74,7 @@ static int presufcmp(UNUSED void *instance,
 
        VERIFY_VP(req);
        VERIFY_VP(check);
-       rad_assert(req->vp_type == PW_TYPE_STRING);
+       rad_assert(req->vp_type == FR_TYPE_STRING);
 
        name = req->vp_strvalue;
 
index ef0fb6143b0d59741206cf49d1b3a222f4f6196a..64e82886ff057dfe13a631a585347742a38de89b 100644 (file)
@@ -49,7 +49,7 @@ typedef struct rlm_expr_t {
 } rlm_expr_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("safe_characters", PW_TYPE_STRING, rlm_expr_t, allowed_chars), .dflt = "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /" },
+       { FR_CONF_OFFSET("safe_characters", FR_TYPE_STRING, rlm_expr_t, allowed_chars), .dflt = "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /" },
        CONF_PARSER_TERMINATOR
 };
 
@@ -257,10 +257,10 @@ static bool get_number(REQUEST *request, char const **string, int64_t *answer)
                     i++, vp = tmpl_cursor_next(&cursor, vpt)) {
                        int64_t y;
 
-                       if (vp->vp_type != PW_TYPE_INTEGER64) {
+                       if (vp->vp_type != FR_TYPE_INTEGER64) {
                                value_box_t     value;
 
-                               if (value_box_cast(vp, &value, PW_TYPE_INTEGER64, NULL, &vp->data) < 0) {
+                               if (value_box_cast(vp, &value, FR_TYPE_INTEGER64, NULL, &vp->data) < 0) {
                                        REDEBUG("Failed converting &%.*s to an integer value: %s", (int) vpt->len,
                                                vpt->name, fr_strerror());
                                        return false;
@@ -991,7 +991,7 @@ static int value_box_from_fmt(value_box_t *out, REQUEST *request, char const *fm
                memset(out, 0, sizeof(*out));
                out->datum.strvalue = fmt;
                out->datum.length = talloc_array_length(fmt) - 1;
-               out->type = PW_TYPE_STRING;
+               out->type = FR_TYPE_STRING;
                return 0;
        }
 
@@ -1016,14 +1016,14 @@ static int value_box_to_bin(TALLOC_CTX *ctx, REQUEST *request, uint8_t **out, si
        value_box_t bin;
 
        switch (in->type) {
-       case PW_TYPE_STRING:
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_STRING:
+       case FR_TYPE_OCTETS:
                memcpy(out, &in->datum.ptr, sizeof(in));
                *outlen = in->datum.length;
                return 0;
 
        default:
-               if (value_box_cast(ctx, &bin, PW_TYPE_OCTETS, NULL, in) < 0) {
+               if (value_box_cast(ctx, &bin, FR_TYPE_OCTETS, NULL, in) < 0) {
                        RPERROR("Failed casting xlat input to 'octets'");
                        return -1;
                }
@@ -1443,8 +1443,8 @@ static ssize_t explode_xlat(TALLOC_CTX *ctx, char **out, size_t outlen,
                 *      so we need to check the type of each attribute.
                 */
                switch (vp->vp_type) {
-               case PW_TYPE_OCTETS:
-               case PW_TYPE_STRING:
+               case FR_TYPE_OCTETS:
+               case FR_TYPE_STRING:
                        break;
 
                default:
@@ -1475,7 +1475,7 @@ static ssize_t explode_xlat(TALLOC_CTX *ctx, char **out, size_t outlen,
                        new->tag = vp->tag;
 
                        switch (vp->vp_type) {
-                       case PW_TYPE_OCTETS:
+                       case FR_TYPE_OCTETS:
                        {
                                uint8_t *buff;
 
@@ -1485,7 +1485,7 @@ static ssize_t explode_xlat(TALLOC_CTX *ctx, char **out, size_t outlen,
                        }
                                break;
 
-                       case PW_TYPE_STRING:
+                       case FR_TYPE_STRING:
                        {
                                char *buff;
 
index aac24dbd165d72f8f9e9b72c596f835d7cadbff7..9ce6eb4d3d411f1bdb4a9525327af0f8d4002ccd 100644 (file)
@@ -77,16 +77,16 @@ static int fall_through(VALUE_PAIR *vp)
 }
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT, rlm_files_t, filename) },
-       { FR_CONF_OFFSET("usersfile", PW_TYPE_FILE_INPUT, rlm_files_t, usersfile) },
-       { FR_CONF_OFFSET("acctusersfile", PW_TYPE_FILE_INPUT, rlm_files_t, acct_usersfile) },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT, rlm_files_t, filename) },
+       { FR_CONF_OFFSET("usersfile", FR_TYPE_FILE_INPUT, rlm_files_t, usersfile) },
+       { FR_CONF_OFFSET("acctusersfile", FR_TYPE_FILE_INPUT, rlm_files_t, acct_usersfile) },
 #ifdef WITH_PROXY
-       { FR_CONF_OFFSET("preproxy_usersfile", PW_TYPE_FILE_INPUT, rlm_files_t, preproxy_usersfile) },
-       { FR_CONF_OFFSET("postproxy_usersfile", PW_TYPE_FILE_INPUT, rlm_files_t, postproxy_usersfile) },
+       { FR_CONF_OFFSET("preproxy_usersfile", FR_TYPE_FILE_INPUT, rlm_files_t, preproxy_usersfile) },
+       { FR_CONF_OFFSET("postproxy_usersfile", FR_TYPE_FILE_INPUT, rlm_files_t, postproxy_usersfile) },
 #endif
-       { FR_CONF_OFFSET("auth_usersfile", PW_TYPE_FILE_INPUT, rlm_files_t, auth_usersfile) },
-       { FR_CONF_OFFSET("postauth_usersfile", PW_TYPE_FILE_INPUT, rlm_files_t, postauth_usersfile) },
-       { FR_CONF_OFFSET("key", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_files_t, key) },
+       { FR_CONF_OFFSET("auth_usersfile", FR_TYPE_FILE_INPUT, rlm_files_t, auth_usersfile) },
+       { FR_CONF_OFFSET("postauth_usersfile", FR_TYPE_FILE_INPUT, rlm_files_t, postauth_usersfile) },
+       { FR_CONF_OFFSET("key", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_files_t, key) },
        CONF_PARSER_TERMINATOR
 };
 
index 4a59438d21d3219871e22acddad6d4874689449a..dc2c582121729f95e05998cf1264a9063cdb2347 100644 (file)
@@ -82,8 +82,8 @@ static const CONF_PARSER mod_config[] = {
         *      be used.
         */
 
-       { FR_CONF_OFFSET("allow_unassigned", PW_TYPE_BOOLEAN, rlm_idn_t, allow_unassigned), .dflt = "no" },
-       { FR_CONF_OFFSET("use_std3_ascii_rules", PW_TYPE_BOOLEAN, rlm_idn_t, use_std3_ascii_rules), .dflt = "yes" },
+       { FR_CONF_OFFSET("allow_unassigned", FR_TYPE_BOOLEAN, rlm_idn_t, allow_unassigned), .dflt = "no" },
+       { FR_CONF_OFFSET("use_std3_ascii_rules", FR_TYPE_BOOLEAN, rlm_idn_t, use_std3_ascii_rules), .dflt = "yes" },
        CONF_PARSER_TERMINATOR
 };
 
index 2b565a3267480578237783192ef4ba18eeaee457..4a5ad2cc2b749476c379b1da48b820f1aefebd5e 100644 (file)
@@ -143,7 +143,7 @@ size_t fr_jpath_escape_func(UNUSED REQUEST *request, char *out, size_t outlen, c
  *     - -1 on error.
  */
 static int jpath_evaluate(TALLOC_CTX *ctx, value_box_t ***tail,
-                         PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                         fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                          json_object *object, fr_jpath_node_t const *jpath)
 {
        value_box_t             *value;
@@ -377,7 +377,7 @@ static int jpath_evaluate(TALLOC_CTX *ctx, value_box_t ***tail,
  *     - -1 on error.
  */
 int fr_jpath_evaluate_leaf(TALLOC_CTX *ctx, value_box_t **out,
-                          PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                          fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                           json_object *root, fr_jpath_node_t const *jpath)
 {
        value_box_t **tail = out;
index f2c1597799525da0cd4faf2420e6a5f9ae7de9af..7a1542d9ff68449735ef63f93dcdfc3a191f2d36 100644 (file)
@@ -40,7 +40,7 @@
  *     - -1 on failure.
  */
 int fr_json_object_to_value_box(TALLOC_CTX *ctx, value_box_t *out, json_object *object,
-                               PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv)
+                               fr_type_t dst_type, fr_dict_attr_t const *dst_enumv)
 {
        value_box_t in;
 
@@ -48,13 +48,13 @@ int fr_json_object_to_value_box(TALLOC_CTX *ctx, value_box_t *out, json_object *
 
        switch (fr_json_object_get_type(object)) {
        case json_type_string:
-               in.type = PW_TYPE_STRING;
+               in.type = FR_TYPE_STRING;
                in.datum.strvalue = json_object_get_string(object);
                in.datum.length = json_object_get_string_len(object);
                break;
 
        case json_type_double:
-               in.type = PW_TYPE_DECIMAL;
+               in.type = FR_TYPE_DECIMAL;
                in.datum.decimal = json_object_get_double(object);
                break;
 
@@ -66,7 +66,7 @@ int fr_json_object_to_value_box(TALLOC_CTX *ctx, value_box_t *out, json_object *
                int32_t num;
 #endif
 #ifndef HAVE_JSON_OBJECT_GET_INT64
-               if (dst_type == PW_TYPE_INTEGER64) {
+               if (dst_type == FR_TYPE_INTEGER64) {
                        fr_strerror_printf("64bit integers are not supported by linked json-c.  "
                                           "Upgrade to json-c > 0.10 to use this feature");
                        return -1;
@@ -82,35 +82,35 @@ int fr_json_object_to_value_box(TALLOC_CTX *ctx, value_box_t *out, json_object *
                        return -1;
                }
                if (num > UINT32_MAX) {         /* 64bit unsigned (supported) */
-                       in.type = PW_TYPE_INTEGER64;
+                       in.type = FR_TYPE_INTEGER64;
                        in.datum.integer64 = (uint64_t) num;
                } else
 #endif
                if (num < 0) {                  /* 32bit signed (supported) */
-                       in.type = PW_TYPE_SIGNED;
+                       in.type = FR_TYPE_SIGNED;
                        in.datum.sinteger = num;
                } else if (num > UINT16_MAX) {  /* 32bit unsigned (supported) */
-                       in.type = PW_TYPE_INTEGER;
+                       in.type = FR_TYPE_INTEGER;
                        in.datum.integer = (uint32_t) num;
                } else if (num > UINT8_MAX) {   /* 16bit unsigned (supported) */
-                       in.type = PW_TYPE_SHORT;
+                       in.type = FR_TYPE_SHORT;
                        in.datum.ushort = (uint16_t) num;
                } else {                /* 8bit unsigned (supported) */
-                       in.type = PW_TYPE_BYTE;
+                       in.type = FR_TYPE_BYTE;
                        in.datum.byte = (uint8_t) num;
                }
        }
                break;
 
        case json_type_boolean:
-               in.type = PW_TYPE_BOOLEAN;
+               in.type = FR_TYPE_BOOLEAN;
                in.datum.boolean = json_object_get_boolean(object);
                break;
 
        case json_type_null:
        case json_type_array:
        case json_type_object:
-               in.type = PW_TYPE_STRING;
+               in.type = FR_TYPE_STRING;
                in.datum.strvalue = json_object_to_json_string(object);
                in.datum.length = strlen(in.datum.strvalue);
                break;
@@ -144,23 +144,23 @@ json_object *json_object_from_value_box(TALLOC_CTX *ctx, value_box_t const *data
                return obj;
        }
 
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BOOLEAN:
                return json_object_new_boolean(data->datum.byte);
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                return json_object_new_int(data->datum.byte);
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                return json_object_new_int(data->datum.ushort);
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                return json_object_new_int64((int64_t)data->datum.integer64);   /* uint32_t (max) > int32_t (max) */
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                if (data->datum.integer64 > INT64_MAX) goto do_string;
                return json_object_new_int64(data->datum.integer64);
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
                return json_object_new_int(data->datum.sinteger);
        }
 }
@@ -214,22 +214,22 @@ size_t fr_json_from_pair(char *out, size_t outlen, VALUE_PAIR const *vp)
 
        if (!vp->da->flags.has_tag) {
                switch (vp->vp_type) {
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        if (vp->da->flags.has_value) break;
 
                        return snprintf(out, freespace, "%u", vp->vp_integer);
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        if (vp->da->flags.has_value) break;
 
                        return snprintf(out, freespace, "%u", (unsigned int) vp->vp_short);
 
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        if (vp->da->flags.has_value) break;
 
                        return snprintf(out, freespace, "%u", (unsigned int) vp->vp_byte);
 
-               case PW_TYPE_SIGNED:
+               case FR_TYPE_SIGNED:
                        return snprintf(out, freespace, "%d", vp->vp_signed);
 
                default:
@@ -237,7 +237,7 @@ size_t fr_json_from_pair(char *out, size_t outlen, VALUE_PAIR const *vp)
                }
        }
 
-       if (vp->vp_type == PW_TYPE_STRING) {
+       if (vp->vp_type == FR_TYPE_STRING) {
                char *tmp = fr_json_from_string(NULL, vp->vp_strvalue, true);
 
                /* Indicate truncation */
index 9e73061205fcd6cc460822ced024d07029f91a2d..b0a5011cf534e19ab8ee58e1cf4ea010720a96cc 100644 (file)
@@ -50,7 +50,7 @@ size_t                fr_jpath_escape_func(UNUSED REQUEST *request, char *out, size_t outlen,
                                     char const *in, UNUSED void *arg);
 
 int            fr_jpath_evaluate_leaf(TALLOC_CTX *ctx, value_box_t **out,
-                                      PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv,
+                                      fr_type_t dst_type, fr_dict_attr_t const *dst_enumv,
                                       json_object *root, fr_jpath_node_t const *jpath);
 
 char           *fr_jpath_asprint(TALLOC_CTX *ctx, fr_jpath_node_t const *head);
@@ -59,7 +59,7 @@ ssize_t               fr_jpath_parse(TALLOC_CTX *ctx, fr_jpath_node_t **head, char const *in,
 
 /* json.c */
 int            fr_json_object_to_value_box(TALLOC_CTX *ctx, value_box_t *out, json_object *object,
-                                           PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv);
+                                           fr_type_t dst_type, fr_dict_attr_t const *dst_enumv);
 
 json_object    *json_object_from_value_box(TALLOC_CTX *ctx, value_box_t const *data);
 
index 86886d54ebf3d0ef5c898be2f11fa577555e8fe6..fb80015a30975a5afb2a00738b168d86941999fd 100644 (file)
@@ -135,7 +135,7 @@ static int mod_map_proc_instantiate(CONF_SECTION *cs, UNUSED void *mod_inst, voi
                char const      *p;
 
 #ifndef HAVE_JSON_OBJECT_GET_INT64
-               if ((map->lhs->type == TMPL_TYPE_ATTR) && (map->lhs->tmpl_da->type == PW_TYPE_INTEGER64)) {
+               if ((map->lhs->type == TMPL_TYPE_ATTR) && (map->lhs->tmpl_da->type == FR_TYPE_INTEGER64)) {
                        cf_log_err_cp(cp, "64bit integers are not supported by linked json-c.  "
                                      "Upgrade to json-c >= 0.10 to use this feature");
                        return -1;
@@ -163,7 +163,7 @@ static int mod_map_proc_instantiate(CONF_SECTION *cs, UNUSED void *mod_inst, voi
                        break;
 
                case TMPL_TYPE_DATA:
-                       if (map->rhs->tmpl_value_box_type != PW_TYPE_STRING) {
+                       if (map->rhs->tmpl_value_box_type != FR_TYPE_STRING) {
                                cf_log_err_cp(cp, "Right side of map must be a string");
                                return -1;
                        }
index b00ed5ee6ed839f9166b1d091da5d3d6526e92fc..4962d224dc39ff93b23797a2569a184a088462b1 100644 (file)
@@ -35,8 +35,8 @@ RCSID("$Id$")
 #include "krb5.h"
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("keytab", PW_TYPE_STRING, rlm_krb5_t, keytabname) },
-       { FR_CONF_OFFSET("service_principal", PW_TYPE_STRING, rlm_krb5_t, service_princ) },
+       { FR_CONF_OFFSET("keytab", FR_TYPE_STRING, rlm_krb5_t, keytabname) },
+       { FR_CONF_OFFSET("service_principal", FR_TYPE_STRING, rlm_krb5_t, service_princ) },
        CONF_PARSER_TERMINATOR
 };
 
index 7ca4a3239fb58b81414c4073b1f65874029b59f9..e8b8ca9c74846da12f493ced629463849d8f6b1a 100644 (file)
@@ -36,16 +36,16 @@ RCSID("$Id$")
 #include <freeradius-devel/map_proc.h>
 
 static CONF_PARSER sasl_mech_dynamic[] = {
-       { FR_CONF_OFFSET("mech", PW_TYPE_TMPL | PW_TYPE_NOT_EMPTY, fr_ldap_sasl_t_dynamic_t, mech) },
-       { FR_CONF_OFFSET("proxy", PW_TYPE_TMPL, fr_ldap_sasl_t_dynamic_t, proxy) },
-       { FR_CONF_OFFSET("realm", PW_TYPE_TMPL, fr_ldap_sasl_t_dynamic_t, realm) },
+       { FR_CONF_OFFSET("mech", FR_TYPE_TMPL | FR_TYPE_NOT_EMPTY, fr_ldap_sasl_t_dynamic_t, mech) },
+       { FR_CONF_OFFSET("proxy", FR_TYPE_TMPL, fr_ldap_sasl_t_dynamic_t, proxy) },
+       { FR_CONF_OFFSET("realm", FR_TYPE_TMPL, fr_ldap_sasl_t_dynamic_t, realm) },
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER sasl_mech_static[] = {
-       { FR_CONF_OFFSET("mech", PW_TYPE_STRING | PW_TYPE_NOT_EMPTY, fr_ldap_sasl_t, mech) },
-       { FR_CONF_OFFSET("proxy", PW_TYPE_STRING, fr_ldap_sasl_t, proxy) },
-       { FR_CONF_OFFSET("realm", PW_TYPE_STRING, fr_ldap_sasl_t, realm) },
+       { FR_CONF_OFFSET("mech", FR_TYPE_STRING | FR_TYPE_NOT_EMPTY, fr_ldap_sasl_t, mech) },
+       { FR_CONF_OFFSET("proxy", FR_TYPE_STRING, fr_ldap_sasl_t, proxy) },
+       { FR_CONF_OFFSET("realm", FR_TYPE_STRING, fr_ldap_sasl_t, realm) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -56,29 +56,29 @@ static CONF_PARSER tls_config[] = {
        /*
         *      Deprecated attributes
         */
-       { FR_CONF_OFFSET("ca_file", PW_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_ca_file) },
+       { FR_CONF_OFFSET("ca_file", FR_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_ca_file) },
 
-       { FR_CONF_OFFSET("ca_path", PW_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_ca_path) },
+       { FR_CONF_OFFSET("ca_path", FR_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_ca_path) },
 
-       { FR_CONF_OFFSET("certificate_file", PW_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_certificate_file) },
+       { FR_CONF_OFFSET("certificate_file", FR_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_certificate_file) },
 
-       { FR_CONF_OFFSET("private_key_file", PW_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_private_key_file) },
+       { FR_CONF_OFFSET("private_key_file", FR_TYPE_FILE_INPUT, fr_ldap_handle_config_t, tls_private_key_file) },
 
        /*
         *      LDAP Specific TLS attributes
         */
-       { FR_CONF_OFFSET("start_tls", PW_TYPE_BOOLEAN, fr_ldap_handle_config_t, start_tls), .dflt = "no" },
+       { FR_CONF_OFFSET("start_tls", FR_TYPE_BOOLEAN, fr_ldap_handle_config_t, start_tls), .dflt = "no" },
 
-       { FR_CONF_OFFSET("require_cert", PW_TYPE_STRING, fr_ldap_handle_config_t, tls_require_cert_str) },
+       { FR_CONF_OFFSET("require_cert", FR_TYPE_STRING, fr_ldap_handle_config_t, tls_require_cert_str) },
 
        CONF_PARSER_TERMINATOR
 };
 
 
 static CONF_PARSER profile_config[] = {
-       { FR_CONF_OFFSET("filter", PW_TYPE_TMPL, rlm_ldap_t, profile_filter), .dflt = "(&)", .quote = T_SINGLE_QUOTED_STRING }, //!< Correct filter for when the DN is known.
-       { FR_CONF_OFFSET("attribute", PW_TYPE_STRING, rlm_ldap_t, profile_attr) },
-       { FR_CONF_OFFSET("default", PW_TYPE_TMPL, rlm_ldap_t, default_profile) },
+       { FR_CONF_OFFSET("filter", FR_TYPE_TMPL, rlm_ldap_t, profile_filter), .dflt = "(&)", .quote = T_SINGLE_QUOTED_STRING }, //!< Correct filter for when the DN is known.
+       { FR_CONF_OFFSET("attribute", FR_TYPE_STRING, rlm_ldap_t, profile_attr) },
+       { FR_CONF_OFFSET("default", FR_TYPE_TMPL, rlm_ldap_t, default_profile) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -86,16 +86,16 @@ static CONF_PARSER profile_config[] = {
  *     User configuration
  */
 static CONF_PARSER user_config[] = {
-       { FR_CONF_OFFSET("filter", PW_TYPE_TMPL, rlm_ldap_t, userobj_filter) },
-       { FR_CONF_OFFSET("scope", PW_TYPE_STRING, rlm_ldap_t, userobj_scope_str), .dflt = "sub" },
-       { FR_CONF_OFFSET("base_dn", PW_TYPE_TMPL, rlm_ldap_t, userobj_base_dn), .dflt = "", .quote = T_SINGLE_QUOTED_STRING },
-       { FR_CONF_OFFSET("sort_by", PW_TYPE_STRING, rlm_ldap_t, userobj_sort_by) },
+       { FR_CONF_OFFSET("filter", FR_TYPE_TMPL, rlm_ldap_t, userobj_filter) },
+       { FR_CONF_OFFSET("scope", FR_TYPE_STRING, rlm_ldap_t, userobj_scope_str), .dflt = "sub" },
+       { FR_CONF_OFFSET("base_dn", FR_TYPE_TMPL, rlm_ldap_t, userobj_base_dn), .dflt = "", .quote = T_SINGLE_QUOTED_STRING },
+       { FR_CONF_OFFSET("sort_by", FR_TYPE_STRING, rlm_ldap_t, userobj_sort_by) },
 
-       { FR_CONF_OFFSET("access_attribute", PW_TYPE_STRING, rlm_ldap_t, userobj_access_attr) },
-       { FR_CONF_OFFSET("access_positive", PW_TYPE_BOOLEAN, rlm_ldap_t, access_positive), .dflt = "yes" },
+       { FR_CONF_OFFSET("access_attribute", FR_TYPE_STRING, rlm_ldap_t, userobj_access_attr) },
+       { FR_CONF_OFFSET("access_positive", FR_TYPE_BOOLEAN, rlm_ldap_t, access_positive), .dflt = "yes" },
 
        /* Should be deprecated */
-       { FR_CONF_OFFSET("sasl", PW_TYPE_SUBSECTION, rlm_ldap_t, user_sasl), .subcs = (void const *) sasl_mech_dynamic },
+       { FR_CONF_OFFSET("sasl", FR_TYPE_SUBSECTION, rlm_ldap_t, user_sasl), .subcs = (void const *) sasl_mech_dynamic },
        CONF_PARSER_TERMINATOR
 };
 
@@ -103,24 +103,24 @@ static CONF_PARSER user_config[] = {
  *     Group configuration
  */
 static CONF_PARSER group_config[] = {
-       { FR_CONF_OFFSET("filter", PW_TYPE_STRING, rlm_ldap_t, groupobj_filter) },
-       { FR_CONF_OFFSET("scope", PW_TYPE_STRING, rlm_ldap_t, groupobj_scope_str), .dflt = "sub" },
-       { FR_CONF_OFFSET("base_dn", PW_TYPE_TMPL, rlm_ldap_t, groupobj_base_dn), .dflt = "", .quote = T_SINGLE_QUOTED_STRING },
-
-       { FR_CONF_OFFSET("name_attribute", PW_TYPE_STRING, rlm_ldap_t, groupobj_name_attr), .dflt = "cn" },
-       { FR_CONF_OFFSET("membership_attribute", PW_TYPE_STRING, rlm_ldap_t, userobj_membership_attr) },
-       { FR_CONF_OFFSET("membership_filter", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_ldap_t, groupobj_membership_filter) },
-       { FR_CONF_OFFSET("cacheable_name", PW_TYPE_BOOLEAN, rlm_ldap_t, cacheable_group_name), .dflt = "no" },
-       { FR_CONF_OFFSET("cacheable_dn", PW_TYPE_BOOLEAN, rlm_ldap_t, cacheable_group_dn), .dflt = "no" },
-       { FR_CONF_OFFSET("cache_attribute", PW_TYPE_STRING, rlm_ldap_t, cache_attribute) },
-       { FR_CONF_OFFSET("group_attribute", PW_TYPE_STRING, rlm_ldap_t, group_attribute) },
+       { FR_CONF_OFFSET("filter", FR_TYPE_STRING, rlm_ldap_t, groupobj_filter) },
+       { FR_CONF_OFFSET("scope", FR_TYPE_STRING, rlm_ldap_t, groupobj_scope_str), .dflt = "sub" },
+       { FR_CONF_OFFSET("base_dn", FR_TYPE_TMPL, rlm_ldap_t, groupobj_base_dn), .dflt = "", .quote = T_SINGLE_QUOTED_STRING },
+
+       { FR_CONF_OFFSET("name_attribute", FR_TYPE_STRING, rlm_ldap_t, groupobj_name_attr), .dflt = "cn" },
+       { FR_CONF_OFFSET("membership_attribute", FR_TYPE_STRING, rlm_ldap_t, userobj_membership_attr) },
+       { FR_CONF_OFFSET("membership_filter", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_ldap_t, groupobj_membership_filter) },
+       { FR_CONF_OFFSET("cacheable_name", FR_TYPE_BOOLEAN, rlm_ldap_t, cacheable_group_name), .dflt = "no" },
+       { FR_CONF_OFFSET("cacheable_dn", FR_TYPE_BOOLEAN, rlm_ldap_t, cacheable_group_dn), .dflt = "no" },
+       { FR_CONF_OFFSET("cache_attribute", FR_TYPE_STRING, rlm_ldap_t, cache_attribute) },
+       { FR_CONF_OFFSET("group_attribute", FR_TYPE_STRING, rlm_ldap_t, group_attribute) },
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER client_config[] = {
-       { FR_CONF_OFFSET("filter", PW_TYPE_STRING, rlm_ldap_t, clientobj_filter) },
-       { FR_CONF_OFFSET("scope", PW_TYPE_STRING, rlm_ldap_t, clientobj_scope_str), .dflt = "sub" },
-       { FR_CONF_OFFSET("base_dn", PW_TYPE_STRING, rlm_ldap_t, clientobj_base_dn), .dflt = "" },
+       { FR_CONF_OFFSET("filter", FR_TYPE_STRING, rlm_ldap_t, clientobj_filter) },
+       { FR_CONF_OFFSET("scope", FR_TYPE_STRING, rlm_ldap_t, clientobj_scope_str), .dflt = "sub" },
+       { FR_CONF_OFFSET("base_dn", FR_TYPE_STRING, rlm_ldap_t, clientobj_base_dn), .dflt = "" },
        CONF_PARSER_TERMINATOR
 };
 
@@ -128,7 +128,7 @@ static CONF_PARSER client_config[] = {
  *     Reference for accounting updates
  */
 static const CONF_PARSER acct_section_config[] = {
-       { FR_CONF_OFFSET("reference", PW_TYPE_STRING | PW_TYPE_XLAT, ldap_acct_section_t, reference), .dflt = "." },
+       { FR_CONF_OFFSET("reference", FR_TYPE_STRING | FR_TYPE_XLAT, ldap_acct_section_t, reference), .dflt = "." },
        CONF_PARSER_TERMINATOR
 };
 
@@ -141,45 +141,45 @@ static CONF_PARSER option_config[] = {
        /*
         *      Pool config items
         */
-       { FR_CONF_OFFSET("chase_referrals", PW_TYPE_BOOLEAN, rlm_ldap_t, handle_config.chase_referrals) },
+       { FR_CONF_OFFSET("chase_referrals", FR_TYPE_BOOLEAN, rlm_ldap_t, handle_config.chase_referrals) },
 
-       { FR_CONF_OFFSET("use_referral_credentials", PW_TYPE_BOOLEAN, rlm_ldap_t, handle_config.use_referral_credentials), .dflt = "no" },
+       { FR_CONF_OFFSET("use_referral_credentials", FR_TYPE_BOOLEAN, rlm_ldap_t, handle_config.use_referral_credentials), .dflt = "no" },
 
-       { FR_CONF_OFFSET("rebind", PW_TYPE_BOOLEAN, rlm_ldap_t, handle_config.rebind) },
+       { FR_CONF_OFFSET("rebind", FR_TYPE_BOOLEAN, rlm_ldap_t, handle_config.rebind) },
 
 #ifdef LDAP_OPT_NETWORK_TIMEOUT
        /* timeout on network activity */
-       { FR_CONF_DEPRECATED("net_timeout", PW_TYPE_INTEGER, rlm_ldap_t, handle_config.net_timeout), .dflt = "10" },
+       { FR_CONF_DEPRECATED("net_timeout", FR_TYPE_INTEGER, rlm_ldap_t, handle_config.net_timeout), .dflt = "10" },
 #endif
 
 #ifdef LDAP_OPT_X_KEEPALIVE_IDLE
-       { FR_CONF_OFFSET("idle", PW_TYPE_INTEGER, rlm_ldap_t, handle_config.keepalive_idle), .dflt = "60" },
+       { FR_CONF_OFFSET("idle", FR_TYPE_INTEGER, rlm_ldap_t, handle_config.keepalive_idle), .dflt = "60" },
 #endif
 #ifdef LDAP_OPT_X_KEEPALIVE_PROBES
-       { FR_CONF_OFFSET("probes", PW_TYPE_INTEGER, rlm_ldap_t, handle_config.keepalive_probes), .dflt = "3" },
+       { FR_CONF_OFFSET("probes", FR_TYPE_INTEGER, rlm_ldap_t, handle_config.keepalive_probes), .dflt = "3" },
 #endif
 #ifdef LDAP_OPT_X_KEEPALIVE_INTERVAL
-       { FR_CONF_OFFSET("interval", PW_TYPE_INTEGER, rlm_ldap_t, handle_config.keepalive_interval), .dflt = "30" },
+       { FR_CONF_OFFSET("interval", FR_TYPE_INTEGER, rlm_ldap_t, handle_config.keepalive_interval), .dflt = "30" },
 #endif
 
-       { FR_CONF_OFFSET("dereference", PW_TYPE_STRING, rlm_ldap_t, handle_config.dereference_str) },
+       { FR_CONF_OFFSET("dereference", FR_TYPE_STRING, rlm_ldap_t, handle_config.dereference_str) },
 
        /* allow server unlimited time for search (server-side limit) */
-       { FR_CONF_OFFSET("srv_timelimit", PW_TYPE_INTEGER, rlm_ldap_t, handle_config.srv_timelimit), .dflt = "20" },
+       { FR_CONF_OFFSET("srv_timelimit", FR_TYPE_INTEGER, rlm_ldap_t, handle_config.srv_timelimit), .dflt = "20" },
 
        /*
         *      Instance config items
         */
        /* timeout for search results */
-       { FR_CONF_OFFSET("res_timeout", PW_TYPE_TIMEVAL, rlm_ldap_t, handle_config.res_timeout), .dflt = "20" },
+       { FR_CONF_OFFSET("res_timeout", FR_TYPE_TIMEVAL, rlm_ldap_t, handle_config.res_timeout), .dflt = "20" },
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER global_config[] = {
-       { FR_CONF_OFFSET("random_file", PW_TYPE_FILE_EXISTS, rlm_ldap_t, tls_random_file) },
+       { FR_CONF_OFFSET("random_file", FR_TYPE_FILE_EXISTS, rlm_ldap_t, tls_random_file) },
 
-       { FR_CONF_OFFSET("ldap_debug", PW_TYPE_INTEGER, rlm_ldap_t, ldap_debug), .dflt = "0x0000" },            /* Debugging flags to the server */
+       { FR_CONF_OFFSET("ldap_debug", FR_TYPE_INTEGER, rlm_ldap_t, ldap_debug), .dflt = "0x0000" },            /* Debugging flags to the server */
 
        CONF_PARSER_TERMINATOR
 };
@@ -188,47 +188,47 @@ static const CONF_PARSER module_config[] = {
        /*
         *      Pool config items
         */
-       { FR_CONF_OFFSET("server", PW_TYPE_STRING | PW_TYPE_MULTI, rlm_ldap_t, handle_config.server_str) },     /* Do not set to required */
+       { FR_CONF_OFFSET("server", FR_TYPE_STRING | FR_TYPE_MULTI, rlm_ldap_t, handle_config.server_str) },     /* Do not set to required */
 
-       { FR_CONF_OFFSET("port", PW_TYPE_SHORT, rlm_ldap_t, handle_config.port) },
+       { FR_CONF_OFFSET("port", FR_TYPE_SHORT, rlm_ldap_t, handle_config.port) },
 
-       { FR_CONF_OFFSET("identity", PW_TYPE_STRING, rlm_ldap_t, handle_config.admin_identity) },
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING | PW_TYPE_SECRET, rlm_ldap_t, handle_config.admin_password) },
+       { FR_CONF_OFFSET("identity", FR_TYPE_STRING, rlm_ldap_t, handle_config.admin_identity) },
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING | FR_TYPE_SECRET, rlm_ldap_t, handle_config.admin_password) },
 
-       { FR_CONF_OFFSET("sasl", PW_TYPE_SUBSECTION, rlm_ldap_t, handle_config.admin_sasl), .subcs = (void const *) sasl_mech_static },
+       { FR_CONF_OFFSET("sasl", FR_TYPE_SUBSECTION, rlm_ldap_t, handle_config.admin_sasl), .subcs = (void const *) sasl_mech_static },
 
-       { FR_CONF_OFFSET("valuepair_attribute", PW_TYPE_STRING, rlm_ldap_t, valuepair_attr) },
+       { FR_CONF_OFFSET("valuepair_attribute", FR_TYPE_STRING, rlm_ldap_t, valuepair_attr) },
 
 #ifdef LDAP_CONTROL_X_SESSION_TRACKING
-       { FR_CONF_OFFSET("session_tracking", PW_TYPE_BOOLEAN, rlm_ldap_t, session_tracking), .dflt = "no" },
+       { FR_CONF_OFFSET("session_tracking", FR_TYPE_BOOLEAN, rlm_ldap_t, session_tracking), .dflt = "no" },
 #endif
 
 #ifdef WITH_EDIR
        /* support for eDirectory Universal Password */
-       { FR_CONF_OFFSET("edir", PW_TYPE_BOOLEAN, rlm_ldap_t, edir) }, /* NULL defaults to "no" */
+       { FR_CONF_OFFSET("edir", FR_TYPE_BOOLEAN, rlm_ldap_t, edir) }, /* NULL defaults to "no" */
 
        /*
         *      Attempt to bind with the cleartext password we got from eDirectory
         *      Universal password for additional authorization checks.
         */
-       { FR_CONF_OFFSET("edir_autz", PW_TYPE_BOOLEAN, rlm_ldap_t, edir_autz) }, /* NULL defaults to "no" */
+       { FR_CONF_OFFSET("edir_autz", FR_TYPE_BOOLEAN, rlm_ldap_t, edir_autz) }, /* NULL defaults to "no" */
 #endif
 
-       { FR_CONF_OFFSET("read_clients", PW_TYPE_BOOLEAN, rlm_ldap_t, do_clients) }, /* NULL defaults to "no" */
+       { FR_CONF_OFFSET("read_clients", FR_TYPE_BOOLEAN, rlm_ldap_t, do_clients) }, /* NULL defaults to "no" */
 
-       { FR_CONF_POINTER("user", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) user_config },
+       { FR_CONF_POINTER("user", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) user_config },
 
-       { FR_CONF_POINTER("group", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) group_config },
+       { FR_CONF_POINTER("group", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) group_config },
 
-       { FR_CONF_POINTER("client", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) client_config },
+       { FR_CONF_POINTER("client", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) client_config },
 
-       { FR_CONF_POINTER("profile", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) profile_config },
+       { FR_CONF_POINTER("profile", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) profile_config },
 
-       { FR_CONF_POINTER("options", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) option_config },
+       { FR_CONF_POINTER("options", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) option_config },
 
-       { FR_CONF_POINTER("global", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) global_config },
+       { FR_CONF_POINTER("global", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) global_config },
 
-       { FR_CONF_OFFSET("tls", PW_TYPE_SUBSECTION, rlm_ldap_t, handle_config), .subcs = (void const *) tls_config },
+       { FR_CONF_OFFSET("tls", FR_TYPE_SUBSECTION, rlm_ldap_t, handle_config), .subcs = (void const *) tls_config },
        CONF_PARSER_TERMINATOR
 };
 
@@ -1454,7 +1454,7 @@ static int mod_bootstrap(CONF_SECTION *conf, void *instance)
                fr_dict_attr_flags_t flags;
 
                memset(&flags, 0, sizeof(flags));
-               if (fr_dict_attr_add(NULL, fr_dict_root(fr_dict_internal), inst->cache_attribute, -1, PW_TYPE_STRING,
+               if (fr_dict_attr_add(NULL, fr_dict_root(fr_dict_internal), inst->cache_attribute, -1, FR_TYPE_STRING,
                                     flags) < 0) {
                        PERROR("Error creating cache attribute");
                error:
index 609d9a56daf7e9da909c36be5234e31581f6941b..9f98ca23dd55613372010c1e6bc2f0978a4d3319 100644 (file)
@@ -125,63 +125,63 @@ typedef struct linelog_conn {
 
 
 static const CONF_PARSER file_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_OUTPUT | PW_TYPE_XLAT, linelog_instance_t, file.name) },
-       { FR_CONF_OFFSET("permissions", PW_TYPE_INTEGER, linelog_instance_t, file.permissions), .dflt = "0600" },
-       { FR_CONF_OFFSET("group", PW_TYPE_STRING, linelog_instance_t, file.group_str) },
-       { FR_CONF_OFFSET("escape_filenames", PW_TYPE_BOOLEAN, linelog_instance_t, file.escape), .dflt = "no" },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_OUTPUT | FR_TYPE_XLAT, linelog_instance_t, file.name) },
+       { FR_CONF_OFFSET("permissions", FR_TYPE_INTEGER, linelog_instance_t, file.permissions), .dflt = "0600" },
+       { FR_CONF_OFFSET("group", FR_TYPE_STRING, linelog_instance_t, file.group_str) },
+       { FR_CONF_OFFSET("escape_filenames", FR_TYPE_BOOLEAN, linelog_instance_t, file.escape), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER syslog_config[] = {
-       { FR_CONF_OFFSET("facility", PW_TYPE_STRING, linelog_instance_t, syslog.facility) },
-       { FR_CONF_OFFSET("severity", PW_TYPE_STRING, linelog_instance_t, syslog.severity), .dflt = "info" },
+       { FR_CONF_OFFSET("facility", FR_TYPE_STRING, linelog_instance_t, syslog.facility) },
+       { FR_CONF_OFFSET("severity", FR_TYPE_STRING, linelog_instance_t, syslog.severity), .dflt = "info" },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER unix_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT, linelog_instance_t, unix_sock.path) },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT, linelog_instance_t, unix_sock.path) },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER udp_config[] = {
-       { FR_CONF_OFFSET("server", PW_TYPE_COMBO_IP_ADDR, linelog_net_t, dst_ipaddr) },
-       { FR_CONF_OFFSET("port", PW_TYPE_SHORT, linelog_net_t, port) },
-       { FR_CONF_OFFSET("timeout", PW_TYPE_TIMEVAL, linelog_net_t, timeout), .dflt = "1000" },
+       { FR_CONF_OFFSET("server", FR_TYPE_COMBO_IP_ADDR, linelog_net_t, dst_ipaddr) },
+       { FR_CONF_OFFSET("port", FR_TYPE_SHORT, linelog_net_t, port) },
+       { FR_CONF_OFFSET("timeout", FR_TYPE_TIMEVAL, linelog_net_t, timeout), .dflt = "1000" },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER tcp_config[] = {
-       { FR_CONF_OFFSET("server", PW_TYPE_COMBO_IP_ADDR, linelog_net_t, dst_ipaddr) },
-       { FR_CONF_OFFSET("port", PW_TYPE_SHORT, linelog_net_t, port) },
-       { FR_CONF_OFFSET("timeout", PW_TYPE_TIMEVAL, linelog_net_t, timeout), .dflt = "1000" },
+       { FR_CONF_OFFSET("server", FR_TYPE_COMBO_IP_ADDR, linelog_net_t, dst_ipaddr) },
+       { FR_CONF_OFFSET("port", FR_TYPE_SHORT, linelog_net_t, port) },
+       { FR_CONF_OFFSET("timeout", FR_TYPE_TIMEVAL, linelog_net_t, timeout), .dflt = "1000" },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("destination", PW_TYPE_STRING | PW_TYPE_REQUIRED, linelog_instance_t, log_dst_str) },
+       { FR_CONF_OFFSET("destination", FR_TYPE_STRING | FR_TYPE_REQUIRED, linelog_instance_t, log_dst_str) },
 
-       { FR_CONF_OFFSET("delimiter", PW_TYPE_STRING, linelog_instance_t, delimiter), .dflt = "\n" },
-       { FR_CONF_OFFSET("format", PW_TYPE_TMPL, linelog_instance_t, log_src) },
-       { FR_CONF_OFFSET("reference", PW_TYPE_TMPL, linelog_instance_t, log_ref) },
+       { FR_CONF_OFFSET("delimiter", FR_TYPE_STRING, linelog_instance_t, delimiter), .dflt = "\n" },
+       { FR_CONF_OFFSET("format", FR_TYPE_TMPL, linelog_instance_t, log_src) },
+       { FR_CONF_OFFSET("reference", FR_TYPE_TMPL, linelog_instance_t, log_ref) },
 
        /*
         *      Log destinations
         */
-       { FR_CONF_POINTER("file", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) file_config },
-       { FR_CONF_POINTER("syslog", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) syslog_config },
-       { FR_CONF_POINTER("unix", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) unix_config },
-       { FR_CONF_OFFSET("tcp", PW_TYPE_SUBSECTION, linelog_instance_t, tcp), .subcs= (void const *) tcp_config },
-       { FR_CONF_OFFSET("udp", PW_TYPE_SUBSECTION, linelog_instance_t, udp), .subcs = (void const *) udp_config },
+       { FR_CONF_POINTER("file", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) file_config },
+       { FR_CONF_POINTER("syslog", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) syslog_config },
+       { FR_CONF_POINTER("unix", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) unix_config },
+       { FR_CONF_OFFSET("tcp", FR_TYPE_SUBSECTION, linelog_instance_t, tcp), .subcs= (void const *) tcp_config },
+       { FR_CONF_OFFSET("udp", FR_TYPE_SUBSECTION, linelog_instance_t, udp), .subcs = (void const *) udp_config },
 
        /*
         *      Deprecated config items
         */
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_OUTPUT | PW_TYPE_DEPRECATED, linelog_instance_t, file.name) },
-       { FR_CONF_OFFSET("permissions", PW_TYPE_INTEGER | PW_TYPE_DEPRECATED, linelog_instance_t, file.permissions) },
-       { FR_CONF_OFFSET("group", PW_TYPE_STRING | PW_TYPE_DEPRECATED, linelog_instance_t, file.group_str) },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_OUTPUT | FR_TYPE_DEPRECATED, linelog_instance_t, file.name) },
+       { FR_CONF_OFFSET("permissions", FR_TYPE_INTEGER | FR_TYPE_DEPRECATED, linelog_instance_t, file.permissions) },
+       { FR_CONF_OFFSET("group", FR_TYPE_STRING | FR_TYPE_DEPRECATED, linelog_instance_t, file.group_str) },
 
-       { FR_CONF_OFFSET("syslog_facility", PW_TYPE_STRING | PW_TYPE_DEPRECATED, linelog_instance_t, syslog.facility) },
-       { FR_CONF_OFFSET("syslog_severity", PW_TYPE_STRING | PW_TYPE_DEPRECATED, linelog_instance_t, syslog.severity) },
+       { FR_CONF_OFFSET("syslog_facility", FR_TYPE_STRING | FR_TYPE_DEPRECATED, linelog_instance_t, syslog.facility) },
+       { FR_CONF_OFFSET("syslog_severity", FR_TYPE_STRING | FR_TYPE_DEPRECATED, linelog_instance_t, syslog.severity) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -585,8 +585,8 @@ build_vector:
                        }
 
                        switch (vp->vp_type) {
-                       case PW_TYPE_OCTETS:
-                       case PW_TYPE_STRING:
+                       case FR_TYPE_OCTETS:
+                       case FR_TYPE_STRING:
                                vector[i].iov_base = vp->vp_ptr;
                                vector[i].iov_len = vp->vp_length;
                                break;
index 8c988cce565e5fc224c24dae3cd9693bf40d94a7..76e8dd89d3b388b731eb27e0d51fd90fa7c84c0c 100644 (file)
@@ -44,7 +44,7 @@ typedef struct rlm_logintime_t {
 } rlm_logintime_t;
 
 static const CONF_PARSER module_config[] = {
-  { FR_CONF_OFFSET("minimum_timeout", PW_TYPE_INTEGER, rlm_logintime_t, min_time), .dflt = "60" },
+  { FR_CONF_OFFSET("minimum_timeout", FR_TYPE_INTEGER, rlm_logintime_t, min_time), .dflt = "60" },
        CONF_PARSER_TERMINATOR
 };
 
index c57ea438ae100d66c441ed6f192c87ac1d860497..d4bc2b2c7f06af62e140fa0e812768eff1f6a2cd 100644 (file)
@@ -54,31 +54,31 @@ static int rlm_lua_marshall(lua_State *L, VALUE_PAIR const *vp)
        if (!vp) return -1;
 
        switch (vp->vp_type) {
-       case PW_TYPE_DATE:
-       case PW_TYPE_ETHERNET:
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV4_PREFIX:
-       case PW_TYPE_IPV6_PREFIX:
-       case PW_TYPE_IFID:
-       case PW_TYPE_TLV:
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_DATE:
+       case FR_TYPE_ETHERNET:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IFID:
+       case FR_TYPE_TLV:
+       case FR_TYPE_INTEGER64:
                fr_pair_value_snprint(buffer, sizeof(buffer), vp, '\0');
                lua_pushstring(L, buffer);
                break;
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                lua_pushlstring(L, vp->vp_strvalue, vp->vp_length);
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                lua_pushlstring(L, (char const *)vp->vp_octets, vp->vp_length); /* lstring variant is embedded NULL safe */
                break;
 
-       case PW_TYPE_BYTE:
-       case PW_TYPE_SHORT:
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_BYTE:
+       case FR_TYPE_SHORT:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_SIGNED:
                lua_pushinteger(L, vp->vp_integer);
                break;
 
@@ -108,7 +108,7 @@ static int rlm_lua_unmarshall(VALUE_PAIR **out, REQUEST *request, lua_State *L,
        switch (lua_type(L, -1)) {
        case LUA_TNUMBER:
                switch (vp->vp_type) {
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                {
                        char *p;
                        p = talloc_asprintf(vp, "%f", lua_tonumber(L, -1));
@@ -116,39 +116,39 @@ static int rlm_lua_unmarshall(VALUE_PAIR **out, REQUEST *request, lua_State *L,
                        break;
                }
 
-               case PW_TYPE_INTEGER:
+               case FR_TYPE_INTEGER:
                        vp->vp_integer = (uint32_t) lua_tointeger(L, -1);
                        break;
 
-               case PW_TYPE_IPV4_ADDR:
-               case PW_TYPE_COMBO_IP_ADDR:
+               case FR_TYPE_IPV4_ADDR:
+               case FR_TYPE_COMBO_IP_ADDR:
                        vp->vp_ipv4addr = (uint32_t) lua_tointeger(L, -1);
                        break;
 
-               case PW_TYPE_DATE:
+               case FR_TYPE_DATE:
                        vp->vp_date = (uint32_t) lua_tointeger(L, -1);
                        break;
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                {
                        lua_Number number = lua_tonumber(L, -1);
                        fr_pair_value_memcpy(vp, (uint8_t*) &number, sizeof(number));
                }
                        break;
 
-               case PW_TYPE_BYTE:
+               case FR_TYPE_BYTE:
                        vp->vp_byte = (uint8_t) lua_tointeger(L, -1);
                        break;
 
-               case PW_TYPE_SHORT:
+               case FR_TYPE_SHORT:
                        vp->vp_short = (uint16_t) lua_tointeger(L, -1);
                        break;
 
-               case PW_TYPE_SIGNED:
+               case FR_TYPE_SIGNED:
                        vp->vp_signed = (int32_t) lua_tointeger(L, -1);
                        break;
 
-               case PW_TYPE_INTEGER64:
+               case FR_TYPE_INTEGER64:
                        vp->vp_integer64 = (uint64_t) lua_tointeger(L, -1);
                        break;
 
@@ -165,7 +165,7 @@ static int rlm_lua_unmarshall(VALUE_PAIR **out, REQUEST *request, lua_State *L,
                 *      any other unprintable chars any different from those in a plaintext
                 *      string.
                 */
-               if (da->type == PW_TYPE_OCTETS) {
+               if (da->type == FR_TYPE_OCTETS) {
                        uint8_t const *p;
                        size_t len;
 
index a344facb4286680007af8b07c8fbc082c1146ad2..471aa32f080cf8d142ffcb8b9b3234db7eeb8eb4 100644 (file)
@@ -41,26 +41,26 @@ RCSID("$Id$")
  *     buffer over-flows.
  */
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_lua_t, module), NULL},
-       { FR_CONF_OFFSET("threads", PW_TYPE_BOOLEAN, rlm_lua_t, threads), .dflt = "no"},
-       { FR_CONF_OFFSET("func_instantiate", PW_TYPE_STRING, rlm_lua_t, func_instantiate), NULL},
-       { FR_CONF_OFFSET("func_detach", PW_TYPE_STRING, rlm_lua_t, func_detach), NULL},
-       { FR_CONF_OFFSET("func_authorize", PW_TYPE_STRING, rlm_lua_t, func_authorize), NULL},
-       { FR_CONF_OFFSET("func_authenticate", PW_TYPE_STRING, rlm_lua_t, func_authenticate), NULL},
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT | FR_TYPE_REQUIRED, rlm_lua_t, module), NULL},
+       { FR_CONF_OFFSET("threads", FR_TYPE_BOOLEAN, rlm_lua_t, threads), .dflt = "no"},
+       { FR_CONF_OFFSET("func_instantiate", FR_TYPE_STRING, rlm_lua_t, func_instantiate), NULL},
+       { FR_CONF_OFFSET("func_detach", FR_TYPE_STRING, rlm_lua_t, func_detach), NULL},
+       { FR_CONF_OFFSET("func_authorize", FR_TYPE_STRING, rlm_lua_t, func_authorize), NULL},
+       { FR_CONF_OFFSET("func_authenticate", FR_TYPE_STRING, rlm_lua_t, func_authenticate), NULL},
 #ifdef WITH_ACCOUNTING
-       { FR_CONF_OFFSET("func_accounting", PW_TYPE_STRING, rlm_lua_t, func_accounting), NULL},
-       { FR_CONF_OFFSET("func_preacct", PW_TYPE_STRING, rlm_lua_t, func_preacct), NULL},
+       { FR_CONF_OFFSET("func_accounting", FR_TYPE_STRING, rlm_lua_t, func_accounting), NULL},
+       { FR_CONF_OFFSET("func_preacct", FR_TYPE_STRING, rlm_lua_t, func_preacct), NULL},
 #endif
-       { FR_CONF_OFFSET("func_checksimul", PW_TYPE_STRING, rlm_lua_t, func_checksimul), NULL},
-       { FR_CONF_OFFSET("func_xlat", PW_TYPE_STRING, rlm_lua_t, func_xlat), NULL},
+       { FR_CONF_OFFSET("func_checksimul", FR_TYPE_STRING, rlm_lua_t, func_checksimul), NULL},
+       { FR_CONF_OFFSET("func_xlat", FR_TYPE_STRING, rlm_lua_t, func_xlat), NULL},
 #ifdef WITH_PROXY
-       { FR_CONF_OFFSET("func_pre_proxy", PW_TYPE_STRING, rlm_lua_t, func_pre_proxy), NULL},
-       { FR_CONF_OFFSET("func_post_proxy", PW_TYPE_STRING, rlm_lua_t, func_post_proxy), NULL},
+       { FR_CONF_OFFSET("func_pre_proxy", FR_TYPE_STRING, rlm_lua_t, func_pre_proxy), NULL},
+       { FR_CONF_OFFSET("func_post_proxy", FR_TYPE_STRING, rlm_lua_t, func_post_proxy), NULL},
 #endif
-       { FR_CONF_OFFSET("func_post_auth", PW_TYPE_STRING, rlm_lua_t, func_post_auth), NULL},
+       { FR_CONF_OFFSET("func_post_auth", FR_TYPE_STRING, rlm_lua_t, func_post_auth), NULL},
 #ifdef WITH_COA
-       { FR_CONF_OFFSET("func_recv_coa", PW_TYPE_STRING, rlm_lua_t, func_recv_coa), NULL},
-       { FR_CONF_OFFSET("func_send_coa", PW_TYPE_STRING, rlm_lua_t, func_send_coa), NULL},
+       { FR_CONF_OFFSET("func_recv_coa", FR_TYPE_STRING, rlm_lua_t, func_recv_coa), NULL},
+       { FR_CONF_OFFSET("func_send_coa", FR_TYPE_STRING, rlm_lua_t, func_send_coa), NULL},
 #endif
 
        CONF_PARSER_TERMINATOR
index c85a89b48b17350682223100e8001fc70dc16d6e..84ca73b9c36bdc36a9a808a7fe1c708c61531c6e 100644 (file)
@@ -541,10 +541,10 @@ static void *mod_conn_create(TALLOC_CTX *ctx, UNUSED void *instance, UNUSED stru
 
 
 static const CONF_PARSER passchange_config[] = {
-       { FR_CONF_OFFSET("ntlm_auth", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_mschap_t, ntlm_cpw) },
-       { FR_CONF_OFFSET("ntlm_auth_username", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_mschap_t, ntlm_cpw_username) },
-       { FR_CONF_OFFSET("ntlm_auth_domain", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_mschap_t, ntlm_cpw_domain) },
-       { FR_CONF_OFFSET("local_cpw", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_mschap_t, local_cpw) },
+       { FR_CONF_OFFSET("ntlm_auth", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_mschap_t, ntlm_cpw) },
+       { FR_CONF_OFFSET("ntlm_auth_username", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_mschap_t, ntlm_cpw_username) },
+       { FR_CONF_OFFSET("ntlm_auth_domain", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_mschap_t, ntlm_cpw_domain) },
+       { FR_CONF_OFFSET("local_cpw", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_mschap_t, local_cpw) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -552,22 +552,22 @@ static const CONF_PARSER module_config[] = {
        /*
         *      Cache the password by default.
         */
-       { FR_CONF_OFFSET("use_mppe", PW_TYPE_BOOLEAN, rlm_mschap_t, use_mppe), .dflt = "yes" },
-       { FR_CONF_OFFSET("require_encryption", PW_TYPE_BOOLEAN, rlm_mschap_t, require_encryption), .dflt = "no" },
-       { FR_CONF_OFFSET("require_strong", PW_TYPE_BOOLEAN, rlm_mschap_t, require_strong), .dflt = "no" },
-       { FR_CONF_OFFSET("with_ntdomain_hack", PW_TYPE_BOOLEAN, rlm_mschap_t, with_ntdomain_hack), .dflt = "yes" },
-       { FR_CONF_OFFSET("ntlm_auth", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_mschap_t, ntlm_auth) },
-       { FR_CONF_OFFSET("ntlm_auth_timeout", PW_TYPE_INTEGER, rlm_mschap_t, ntlm_auth_timeout) },
-       { FR_CONF_POINTER("passchange", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) passchange_config },
-       { FR_CONF_OFFSET("allow_retry", PW_TYPE_BOOLEAN, rlm_mschap_t, allow_retry), .dflt = "yes" },
-       { FR_CONF_OFFSET("retry_msg", PW_TYPE_STRING, rlm_mschap_t, retry_msg) },
-       { FR_CONF_OFFSET("winbind_username", PW_TYPE_TMPL, rlm_mschap_t, wb_username) },
-       { FR_CONF_OFFSET("winbind_domain", PW_TYPE_TMPL, rlm_mschap_t, wb_domain) },
+       { FR_CONF_OFFSET("use_mppe", FR_TYPE_BOOLEAN, rlm_mschap_t, use_mppe), .dflt = "yes" },
+       { FR_CONF_OFFSET("require_encryption", FR_TYPE_BOOLEAN, rlm_mschap_t, require_encryption), .dflt = "no" },
+       { FR_CONF_OFFSET("require_strong", FR_TYPE_BOOLEAN, rlm_mschap_t, require_strong), .dflt = "no" },
+       { FR_CONF_OFFSET("with_ntdomain_hack", FR_TYPE_BOOLEAN, rlm_mschap_t, with_ntdomain_hack), .dflt = "yes" },
+       { FR_CONF_OFFSET("ntlm_auth", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_mschap_t, ntlm_auth) },
+       { FR_CONF_OFFSET("ntlm_auth_timeout", FR_TYPE_INTEGER, rlm_mschap_t, ntlm_auth_timeout) },
+       { FR_CONF_POINTER("passchange", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) passchange_config },
+       { FR_CONF_OFFSET("allow_retry", FR_TYPE_BOOLEAN, rlm_mschap_t, allow_retry), .dflt = "yes" },
+       { FR_CONF_OFFSET("retry_msg", FR_TYPE_STRING, rlm_mschap_t, retry_msg) },
+       { FR_CONF_OFFSET("winbind_username", FR_TYPE_TMPL, rlm_mschap_t, wb_username) },
+       { FR_CONF_OFFSET("winbind_domain", FR_TYPE_TMPL, rlm_mschap_t, wb_domain) },
 #ifdef WITH_AUTH_WINBIND
-       { FR_CONF_OFFSET("winbind_retry_with_normalised_username", PW_TYPE_BOOLEAN, rlm_mschap_t, wb_retry_with_normalised_username), .dflt = "no" },
+       { FR_CONF_OFFSET("winbind_retry_with_normalised_username", FR_TYPE_BOOLEAN, rlm_mschap_t, wb_retry_with_normalised_username), .dflt = "no" },
 #endif
 #ifdef __APPLE__
-       { FR_CONF_OFFSET("use_open_directory", PW_TYPE_BOOLEAN, rlm_mschap_t, open_directory), .dflt = "yes" },
+       { FR_CONF_OFFSET("use_open_directory", FR_TYPE_BOOLEAN, rlm_mschap_t, open_directory), .dflt = "yes" },
 #endif
        CONF_PARSER_TERMINATOR
 };
@@ -694,7 +694,7 @@ void mschap_add_reply(REQUEST *request, uint8_t ident,
                return;
        }
 
-       if (vp->vp_type == PW_TYPE_STRING) {
+       if (vp->vp_type == FR_TYPE_STRING) {
                char *p;
 
                p = talloc_array(vp, char, len + 1 + 1);        /* Account for the ident byte */
index 48c4109371155d2eaddbd1d6a227fa18cb3c1240..40057806cc2443f5aed42ea690ead44a500f7287 100644 (file)
@@ -52,7 +52,7 @@ typedef struct rlm_pam_t {
 } rlm_pam_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("pam_auth", PW_TYPE_STRING, rlm_pam_t, pam_auth_name) },
+       { FR_CONF_OFFSET("pam_auth", FR_TYPE_STRING, rlm_pam_t, pam_auth_name) },
        CONF_PARSER_TERMINATOR
 };
 
index db47e9e42fbd22ab45e1626e2c1f695b048db4c3..d0d5c2254dbcfe0c6465f0ea93c7c0addcf37edd 100644 (file)
@@ -54,7 +54,7 @@ typedef struct rlm_pap_t {
 } rlm_pap_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("normalise", PW_TYPE_BOOLEAN, rlm_pap_t, normify), .dflt = "yes" },
+       { FR_CONF_OFFSET("normalise", FR_TYPE_BOOLEAN, rlm_pap_t, normify), .dflt = "yes" },
        CONF_PARSER_TERMINATOR
 };
 
@@ -140,7 +140,7 @@ static void normify(REQUEST *request, VALUE_PAIR *vp, size_t min_len)
 
        if (min_len >= sizeof(buffer)) return; /* paranoia */
 
-       rad_assert((vp->da->type == PW_TYPE_OCTETS) || (vp->da->type == PW_TYPE_STRING));
+       rad_assert((vp->da->type == FR_TYPE_OCTETS) || (vp->da->type == FR_TYPE_STRING));
 
        /*
         *      Hex encoding. Length is even, and it's greater than
@@ -212,7 +212,7 @@ static VALUE_PAIR *normify_with_header(REQUEST *request, VALUE_PAIR *vp)
         *      Ensure this is only ever called with a
         *      string type attribute.
         */
-       rad_assert(vp->da->type == PW_TYPE_STRING);
+       rad_assert(vp->da->type == FR_TYPE_STRING);
 
 redo:
        p = vp->vp_strvalue;
@@ -253,7 +253,7 @@ redo:
                 *      we ensure that there's a trailing zero, too.
                 */
                new = fr_pair_afrom_num(request, 0, attr);
-               if (new->da->type == PW_TYPE_OCTETS) {
+               if (new->da->type == FR_TYPE_OCTETS) {
                        fr_pair_value_memcpy(new, (uint8_t const *) q + 1, (len - hlen) + 1);
                        new->vp_length = (len - hlen);  /* lie about the length */
                } else {
index 2f9466acf5455029a297023dfcc451ad831f30d0..0cab650ef0c7b613134eab9cc4a4114aa6cf041e 100644 (file)
@@ -364,17 +364,17 @@ typedef struct rlm_passwd_t {
 } rlm_passwd_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_passwd_t, filename) },
-       { FR_CONF_OFFSET("format", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_passwd_t, format) },
-       { FR_CONF_OFFSET("delimiter", PW_TYPE_STRING, rlm_passwd_t, delimiter), .dflt = ":" },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT | FR_TYPE_REQUIRED, rlm_passwd_t, filename) },
+       { FR_CONF_OFFSET("format", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_passwd_t, format) },
+       { FR_CONF_OFFSET("delimiter", FR_TYPE_STRING, rlm_passwd_t, delimiter), .dflt = ":" },
 
-       { FR_CONF_OFFSET("ignore_nislike", PW_TYPE_BOOLEAN, rlm_passwd_t, ignore_nislike), .dflt = "yes" },
+       { FR_CONF_OFFSET("ignore_nislike", FR_TYPE_BOOLEAN, rlm_passwd_t, ignore_nislike), .dflt = "yes" },
 
-       { FR_CONF_OFFSET("ignore_empty", PW_TYPE_BOOLEAN, rlm_passwd_t, ignore_empty), .dflt = "yes" },
+       { FR_CONF_OFFSET("ignore_empty", FR_TYPE_BOOLEAN, rlm_passwd_t, ignore_empty), .dflt = "yes" },
 
-       { FR_CONF_OFFSET("allow_multiple_keys", PW_TYPE_BOOLEAN, rlm_passwd_t, allow_multiple), .dflt = "no" },
+       { FR_CONF_OFFSET("allow_multiple_keys", FR_TYPE_BOOLEAN, rlm_passwd_t, allow_multiple), .dflt = "no" },
 
-       { FR_CONF_OFFSET("hash_size", PW_TYPE_INTEGER, rlm_passwd_t, hash_size), .dflt = "100" },
+       { FR_CONF_OFFSET("hash_size", FR_TYPE_INTEGER, rlm_passwd_t, hash_size), .dflt = "100" },
        CONF_PARSER_TERMINATOR
 };
 
index aac165f29b29be9fc36cd903268b18a31a9c8d1a..df7dddbdabd5f6fa666fe82f1b1a2e566d8feff8 100644 (file)
@@ -89,11 +89,11 @@ typedef struct rlm_perl_t {
 /*
  *     A mapping of configuration file names to internal variables.
  */
-#define RLM_PERL_CONF(_x) { FR_CONF_OFFSET("func_" STRINGIFY(_x), PW_TYPE_STRING, rlm_perl_t, func_##_x), \
+#define RLM_PERL_CONF(_x) { FR_CONF_OFFSET("func_" STRINGIFY(_x), FR_TYPE_STRING, rlm_perl_t, func_##_x), \
                           .data = NULL, .dflt = STRINGIFY(_x), .quote = T_INVALID }
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_perl_t, module) },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT | FR_TYPE_REQUIRED, rlm_perl_t, module) },
 
        RLM_PERL_CONF(authorize),
        RLM_PERL_CONF(authenticate),
@@ -112,11 +112,11 @@ static const CONF_PARSER module_config[] = {
        RLM_PERL_CONF(recv_coa),
        RLM_PERL_CONF(send_coa),
 #endif
-       { FR_CONF_OFFSET("perl_flags", PW_TYPE_STRING, rlm_perl_t, perl_flags) },
+       { FR_CONF_OFFSET("perl_flags", FR_TYPE_STRING, rlm_perl_t, perl_flags) },
 
-       { FR_CONF_OFFSET("func_start_accounting", PW_TYPE_STRING, rlm_perl_t, func_start_accounting) },
+       { FR_CONF_OFFSET("func_start_accounting", FR_TYPE_STRING, rlm_perl_t, func_start_accounting) },
 
-       { FR_CONF_OFFSET("func_stop_accounting", PW_TYPE_STRING, rlm_perl_t, func_stop_accounting) },
+       { FR_CONF_OFFSET("func_stop_accounting", FR_TYPE_STRING, rlm_perl_t, func_stop_accounting) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -625,13 +625,13 @@ static void perl_vp_to_svpvn_element(REQUEST *request, AV *av, VALUE_PAIR const
        char buffer[1024];
 
        switch (vp->vp_type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                RDEBUG("$%s{'%s'}[%i] = &%s:%s -> '%s'", hash_name, vp->da->name, *i,
                       list_name, vp->da->name, vp->vp_strvalue);
                av_push(av, newSVpvn(vp->vp_strvalue, vp->vp_length));
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                if (RDEBUG_ENABLED) {
                        char *hex;
 
@@ -716,13 +716,13 @@ static void perl_store_vps(UNUSED TALLOC_CTX *ctx, REQUEST *request, VALUE_PAIR
                 *      It's a normal single valued attribute
                 */
                switch (vp->vp_type) {
-               case PW_TYPE_STRING:
+               case FR_TYPE_STRING:
                        RDEBUG("$%s{'%s'} = &%s:%s -> '%s'", hash_name, vp->da->name, list_name,
                               vp->da->name, vp->vp_strvalue);
                        (void)hv_store(rad_hv, name, strlen(name), newSVpvn(vp->vp_strvalue, vp->vp_length), 0);
                        break;
 
-               case PW_TYPE_OCTETS:
+               case FR_TYPE_OCTETS:
                        if (RDEBUG_ENABLED) {
                                char *hex;
 
@@ -772,11 +772,11 @@ static int pairadd_sv(TALLOC_CTX *ctx, REQUEST *request, VALUE_PAIR **vps, char
        }
 
        switch (vp->vp_type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                fr_pair_value_bstrncpy(vp, val, len);
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                fr_pair_value_memcpy(vp, (uint8_t const *)val, len);
                break;
 
index 4b28fda1aae8f04296ccedc036faf432c05e7da9..ac29a5690f31734845e289fec89f88700f822f3b 100644 (file)
@@ -46,15 +46,15 @@ typedef struct rlm_preprocess_t {
 } rlm_preprocess_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("huntgroups", PW_TYPE_FILE_INPUT, rlm_preprocess_t, huntgroup_file) },
-       { FR_CONF_OFFSET("hints", PW_TYPE_FILE_INPUT, rlm_preprocess_t, hints_file) },
-       { FR_CONF_OFFSET("with_ascend_hack", PW_TYPE_BOOLEAN, rlm_preprocess_t, with_ascend_hack), .dflt = "no" },
-       { FR_CONF_OFFSET("ascend_channels_per_line", PW_TYPE_INTEGER, rlm_preprocess_t, ascend_channels_per_line), .dflt = "23" },
+       { FR_CONF_OFFSET("huntgroups", FR_TYPE_FILE_INPUT, rlm_preprocess_t, huntgroup_file) },
+       { FR_CONF_OFFSET("hints", FR_TYPE_FILE_INPUT, rlm_preprocess_t, hints_file) },
+       { FR_CONF_OFFSET("with_ascend_hack", FR_TYPE_BOOLEAN, rlm_preprocess_t, with_ascend_hack), .dflt = "no" },
+       { FR_CONF_OFFSET("ascend_channels_per_line", FR_TYPE_INTEGER, rlm_preprocess_t, ascend_channels_per_line), .dflt = "23" },
 
-       { FR_CONF_OFFSET("with_ntdomain_hack", PW_TYPE_BOOLEAN, rlm_preprocess_t, with_ntdomain_hack), .dflt = "no" },
-       { FR_CONF_OFFSET("with_specialix_jetstream_hack", PW_TYPE_BOOLEAN, rlm_preprocess_t, with_specialix_jetstream_hack), .dflt = "no" },
-       { FR_CONF_OFFSET("with_cisco_vsa_hack", PW_TYPE_BOOLEAN, rlm_preprocess_t, with_cisco_vsa_hack), .dflt = "no" },
-       { FR_CONF_OFFSET("with_alvarion_vsa_hack", PW_TYPE_BOOLEAN, rlm_preprocess_t, with_alvarion_vsa_hack), .dflt = "no" },
+       { FR_CONF_OFFSET("with_ntdomain_hack", FR_TYPE_BOOLEAN, rlm_preprocess_t, with_ntdomain_hack), .dflt = "no" },
+       { FR_CONF_OFFSET("with_specialix_jetstream_hack", FR_TYPE_BOOLEAN, rlm_preprocess_t, with_specialix_jetstream_hack), .dflt = "no" },
+       { FR_CONF_OFFSET("with_cisco_vsa_hack", FR_TYPE_BOOLEAN, rlm_preprocess_t, with_cisco_vsa_hack), .dflt = "no" },
+       { FR_CONF_OFFSET("with_alvarion_vsa_hack", FR_TYPE_BOOLEAN, rlm_preprocess_t, with_alvarion_vsa_hack), .dflt = "no" },
 
        CONF_PARSER_TERMINATOR
 };
@@ -116,7 +116,7 @@ static void cisco_vsa_hack(REQUEST *request)
                        continue; /* not a Cisco or Quintum VSA, continue */
                }
 
-               if (vp->vp_type != PW_TYPE_STRING) continue;
+               if (vp->vp_type != FR_TYPE_STRING) continue;
 
                /*
                 *  No weird packing.  Ignore it.
@@ -173,7 +173,7 @@ static void alvarion_vsa_hack(VALUE_PAIR *vp)
 
                if (vp->da->vendor != 12394) continue;
 
-               if (vp->vp_type != PW_TYPE_STRING) continue;
+               if (vp->vp_type != FR_TYPE_STRING) continue;
 
                da = fr_dict_attr_by_num(NULL, 12394, number);
                if (!da) continue;
index 0638c399f775afc90d6efa23c19e03921bf9db1f..f80c7c582d7fc6805bfb8c408ff0291b7d5957b1 100644 (file)
@@ -100,8 +100,8 @@ typedef struct python_thread_state {
  */
 static CONF_PARSER module_config[] = {
 
-#define A(x) { FR_CONF_OFFSET("mod_" #x, PW_TYPE_STRING, rlm_python_t, x.module_name), .dflt = "${.module}" }, \
-       { FR_CONF_OFFSET("func_" #x, PW_TYPE_STRING, rlm_python_t, x.function_name) },
+#define A(x) { FR_CONF_OFFSET("mod_" #x, FR_TYPE_STRING, rlm_python_t, x.module_name), .dflt = "${.module}" }, \
+       { FR_CONF_OFFSET("func_" #x, FR_TYPE_STRING, rlm_python_t, x.function_name) },
 
        A(instantiate)
        A(authorize)
@@ -120,8 +120,8 @@ static CONF_PARSER module_config[] = {
 
 #undef A
 
-       { FR_CONF_OFFSET("python_path", PW_TYPE_STRING, rlm_python_t, python_path) },
-       { FR_CONF_OFFSET("cext_compat", PW_TYPE_BOOLEAN, rlm_python_t, cext_compat), .dflt = false },
+       { FR_CONF_OFFSET("python_path", FR_TYPE_STRING, rlm_python_t, python_path) },
+       { FR_CONF_OFFSET("cext_compat", FR_TYPE_BOOLEAN, rlm_python_t, cext_compat), .dflt = false },
 
        CONF_PARSER_TERMINATOR
 };
@@ -357,57 +357,57 @@ static int mod_populate_vptuple(PyObject *pp, VALUE_PAIR *vp)
        PyTuple_SET_ITEM(pp, 0, attribute);
 
        switch (vp->vp_type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                value = PyUnicode_FromStringAndSize(vp->vp_strvalue, vp->vp_length);
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                value = PyString_FromStringAndSize((char const *)vp->vp_octets, vp->vp_length);
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                value = PyLong_FromUnsignedLong(vp->vp_integer);
                break;
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                value = PyLong_FromUnsignedLong(vp->vp_byte);
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                value =  PyLong_FromUnsignedLong(vp->vp_short);
                break;
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
                value = PyLong_FromLong(vp->vp_signed);
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                value = PyLong_FromUnsignedLongLong(vp->vp_integer64);
                break;
 
-       case PW_TYPE_SIZE:
+       case FR_TYPE_SIZE:
                value = PyLong_FromUnsignedLongLong((unsigned long long)vp->vp_size);
                break;
 
-       case PW_TYPE_DECIMAL:
+       case FR_TYPE_DECIMAL:
                value = PyFloat_FromDouble(vp->vp_decimal);
                break;
 
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BOOLEAN:
                value = PyBool_FromLong(vp->vp_bool);
                break;
 
-       case PW_TYPE_TIMEVAL:
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_DATE:
-       case PW_TYPE_ABINARY:
-       case PW_TYPE_IFID:
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV6_PREFIX:
-       case PW_TYPE_ETHERNET:
-       case PW_TYPE_COMBO_IP_ADDR:
-       case PW_TYPE_IPV4_PREFIX:
-       case PW_TYPE_COMBO_IP_PREFIX:
+       case FR_TYPE_TIMEVAL:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_DATE:
+       case FR_TYPE_ABINARY:
+       case FR_TYPE_IFID:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_PREFIX:
+       case FR_TYPE_ETHERNET:
+       case FR_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_IPV4_PREFIX:
+       case FR_TYPE_COMBO_IP_PREFIX:
        {
                size_t len;
                char buffer[256];
@@ -417,8 +417,8 @@ static int mod_populate_vptuple(PyObject *pp, VALUE_PAIR *vp)
        }
                break;
 
-       case PW_TYPE_STRUCTURAL:
-       case PW_TYPE_BAD:
+       case FR_TYPE_STRUCTURAL:
+       case FR_TYPE_BAD:
                rad_assert(0);
                return -1;
        }
index 21b8c2843c76192e6cd114072302673804a1fdfb..7daceef52e269656065711808fb4654fa5e3873e 100644 (file)
@@ -42,14 +42,14 @@ typedef struct radius_client_instance {
 } rlm_radius_client_instance_t;
 
 static const CONF_PARSER listen_config[] = {
-       { FR_CONF_OFFSET("ipaddr", PW_TYPE_IPV4_ADDR, rlm_radius_client_instance_t, src_ipaddr) },
+       { FR_CONF_OFFSET("ipaddr", FR_TYPE_IPV4_ADDR, rlm_radius_client_instance_t, src_ipaddr) },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_POINTER("listen", PW_TYPE_SUBSECTION, NULL), .dflt = (void const *) listen_config },
+       { FR_CONF_POINTER("listen", FR_TYPE_SUBSECTION, NULL), .dflt = (void const *) listen_config },
 
-       { FR_CONF_OFFSET("virtual_server", PW_TYPE_STRING, rlm_radius_client_instance_t, virtual_server) },
+       { FR_CONF_OFFSET("virtual_server", FR_TYPE_STRING, rlm_radius_client_instance_t, virtual_server) },
        CONF_PARSER_TERMINATOR
 };
 
index c3e60dc342d7b65ca7a13487642aad7faa4c8c58..1c17ad237d6f257b7c654281b0bab0504dc7b7b1 100644 (file)
@@ -58,12 +58,12 @@ typedef struct rlm_radutmp_t {
 } rlm_radutmp_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_OUTPUT | PW_TYPE_REQUIRED, rlm_radutmp_t, filename), .dflt = RADUTMP },
-       { FR_CONF_OFFSET("username", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_XLAT, rlm_radutmp_t, username), .dflt = "%{User-Name}" },
-       { FR_CONF_OFFSET("case_sensitive", PW_TYPE_BOOLEAN, rlm_radutmp_t, case_sensitive), .dflt = "yes" },
-       { FR_CONF_OFFSET("check_with_nas", PW_TYPE_BOOLEAN, rlm_radutmp_t, check_nas), .dflt = "yes" },
-       { FR_CONF_OFFSET("permissions", PW_TYPE_INTEGER, rlm_radutmp_t, permission), .dflt = "0644" },
-       { FR_CONF_OFFSET("caller_id", PW_TYPE_BOOLEAN, rlm_radutmp_t, caller_id_ok), .dflt = "no" },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_OUTPUT | FR_TYPE_REQUIRED, rlm_radutmp_t, filename), .dflt = RADUTMP },
+       { FR_CONF_OFFSET("username", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_XLAT, rlm_radutmp_t, username), .dflt = "%{User-Name}" },
+       { FR_CONF_OFFSET("case_sensitive", FR_TYPE_BOOLEAN, rlm_radutmp_t, case_sensitive), .dflt = "yes" },
+       { FR_CONF_OFFSET("check_with_nas", FR_TYPE_BOOLEAN, rlm_radutmp_t, check_nas), .dflt = "yes" },
+       { FR_CONF_OFFSET("permissions", FR_TYPE_INTEGER, rlm_radutmp_t, permission), .dflt = "0644" },
+       { FR_CONF_OFFSET("caller_id", FR_TYPE_BOOLEAN, rlm_radutmp_t, caller_id_ok), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index ce63bfe6e3060175177e020ff71aa447ed72e210..bec20bf211c55881324dd5686171362107889e45 100644 (file)
@@ -47,16 +47,16 @@ typedef struct rlm_realm_t {
 } rlm_realm_t;
 
 static CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("format", PW_TYPE_STRING, rlm_realm_t, format_string), .dflt = "suffix" },
-       { FR_CONF_OFFSET("delimiter", PW_TYPE_STRING, rlm_realm_t, delim), .dflt = "@" },
-       { FR_CONF_OFFSET("ignore_default", PW_TYPE_BOOLEAN, rlm_realm_t, ignore_default), .dflt = "no" },
-       { FR_CONF_OFFSET("ignore_null", PW_TYPE_BOOLEAN, rlm_realm_t, ignore_null), .dflt = "no" },
+       { FR_CONF_OFFSET("format", FR_TYPE_STRING, rlm_realm_t, format_string), .dflt = "suffix" },
+       { FR_CONF_OFFSET("delimiter", FR_TYPE_STRING, rlm_realm_t, delim), .dflt = "@" },
+       { FR_CONF_OFFSET("ignore_default", FR_TYPE_BOOLEAN, rlm_realm_t, ignore_default), .dflt = "no" },
+       { FR_CONF_OFFSET("ignore_null", FR_TYPE_BOOLEAN, rlm_realm_t, ignore_null), .dflt = "no" },
 
 #ifdef HAVE_TRUST_ROUTER_TR_DH_H
-       { FR_CONF_OFFSET("default_community", PW_TYPE_STRING, rlm_realm_t, default_community) },
-       { FR_CONF_OFFSET("rp_realm", PW_TYPE_STRING, rlm_realm_t, rp_realm) },
-       { FR_CONF_OFFSET("trust_router", PW_TYPE_STRING, rlm_realm_t, trust_router) },
-       { FR_CONF_OFFSET("tr_port", PW_TYPE_INTEGER, rlm_realm_t, tr_port), .dflt = "0" },
+       { FR_CONF_OFFSET("default_community", FR_TYPE_STRING, rlm_realm_t, default_community) },
+       { FR_CONF_OFFSET("rp_realm", FR_TYPE_STRING, rlm_realm_t, rp_realm) },
+       { FR_CONF_OFFSET("trust_router", FR_TYPE_STRING, rlm_realm_t, trust_router) },
+       { FR_CONF_OFFSET("tr_port", FR_TYPE_INTEGER, rlm_realm_t, tr_port), .dflt = "0" },
 #endif
        CONF_PARSER_TERMINATOR
 };
@@ -481,7 +481,7 @@ static rlm_rcode_t mod_realm_recv_coa(UNUSED void *instance, UNUSED void *thread
        /*
         *      Catch the case of broken dictionaries.
         */
-       if (vp->vp_type != PW_TYPE_STRING) return RLM_MODULE_NOOP;
+       if (vp->vp_type != FR_TYPE_STRING) return RLM_MODULE_NOOP;
 
        /*
         *      The string is too short.
index 01057a29737ab99c663f586731345b2b6ce7c8e6..9cbb8f96d245b591c132f455c317964144d89faa 100644 (file)
@@ -170,9 +170,9 @@ void fr_redis_reply_print(log_lvl_t lvl, redisReply *reply, REQUEST *request, in
 
 /** Convert a string or integer type to #value_box_t of specified type
  *
- * Will work with REDIS_REPLY_STRING (which is converted to #PW_TYPE_STRING
+ * Will work with REDIS_REPLY_STRING (which is converted to #FR_TYPE_STRING
  * then cast to dst_type), or REDIS_REPLY_INTEGER (which is converted to
- * #PW_TYPE_INTEGER64, then cast to dst_type).
+ * #FR_TYPE_INTEGER64, then cast to dst_type).
  *
  * @note Any unsupported types will trigger an assert. You must check the
  *     reply type prior to calling this function.
@@ -189,7 +189,7 @@ void fr_redis_reply_print(log_lvl_t lvl, redisReply *reply, REQUEST *request, in
  *     - -1 on cast or parse failure.
  */
 int fr_redis_reply_to_value_box(TALLOC_CTX *ctx, value_box_t *out, redisReply *reply,
-                                PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv)
+                                fr_type_t dst_type, fr_dict_attr_t const *dst_enumv)
 {
        value_box_t     in;
 
@@ -210,29 +210,29 @@ int fr_redis_reply_to_value_box(TALLOC_CTX *ctx, value_box_t *out, redisReply *r
                        return -1;
                }
                if (reply->integer < 0) {               /* 32bit signed (supported) */
-                       in.type = PW_TYPE_SIGNED;
+                       in.type = FR_TYPE_SIGNED;
                        in.datum.sinteger = (int32_t) reply->integer;
                }
                else if (reply->integer > UINT32_MAX) { /* 64bit unsigned (supported) */
-                       in.type = PW_TYPE_INTEGER64;
+                       in.type = FR_TYPE_INTEGER64;
                        in.datum.integer64 = (uint64_t) reply->integer;
                }
                else if (reply->integer > UINT16_MAX) { /* 32bit unsigned (supported) */
-                       in.type = PW_TYPE_INTEGER;
+                       in.type = FR_TYPE_INTEGER;
                        in.datum.integer = (uint32_t) reply->integer;
                }
                else if (reply->integer > UINT8_MAX) {  /* 16bit unsigned (supported) */
-                       in.type = PW_TYPE_SHORT;
+                       in.type = FR_TYPE_SHORT;
                        in.datum.ushort = (uint16_t) reply->integer;
                }
                else {          /* 8bit unsigned (supported) */
-                       in.type = PW_TYPE_BYTE;
+                       in.type = FR_TYPE_BYTE;
                        in.datum.byte = (uint8_t) reply->integer;
                }
                break;
 
        case REDIS_REPLY_STRING:
-               in.type = PW_TYPE_STRING;
+               in.type = FR_TYPE_STRING;
                in.datum.ptr = reply->str;
                in.datum.length = reply->len;
                break;
@@ -379,8 +379,8 @@ int fr_redis_tuple_from_map(TALLOC_CTX *pool, char const *out[], size_t out_len[
        if (!key) return -1;
 
        switch (map->rhs->tmpl_value_box_type) {
-       case PW_TYPE_STRING:
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_STRING:
+       case FR_TYPE_OCTETS:
                out[2] = map->rhs->tmpl_value_box_datum.ptr;
                out_len[2] = map->rhs->tmpl_value_box_length;
                break;
index 9f5f9cbe2988961eb5b4624b39ee8f77d9446133..5b013bb1195b2df7b9b7d7e56d6c8adc752f767d 100644 (file)
@@ -102,13 +102,13 @@ typedef struct redis_common_conf {
 } fr_redis_conf_t;
 
 #define REDIS_COMMON_CONFIG \
-       { FR_CONF_OFFSET("server", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_MULTI, fr_redis_conf_t, hostname) }, \
-       { FR_CONF_OFFSET("port", PW_TYPE_SHORT, fr_redis_conf_t, port), .dflt = "6379" }, \
-       { FR_CONF_OFFSET("database", PW_TYPE_INTEGER, fr_redis_conf_t, database), .dflt = "0" }, \
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING | PW_TYPE_SECRET, fr_redis_conf_t, password) }, \
-       { FR_CONF_OFFSET("max_nodes", PW_TYPE_BYTE, fr_redis_conf_t, max_nodes), .dflt = "20" }, \
-       { FR_CONF_OFFSET("max_alt", PW_TYPE_INTEGER, fr_redis_conf_t, max_alt), .dflt = "3" }, \
-       { FR_CONF_OFFSET("max_redirects", PW_TYPE_INTEGER, fr_redis_conf_t, max_redirects), .dflt = "2" }
+       { FR_CONF_OFFSET("server", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_MULTI, fr_redis_conf_t, hostname) }, \
+       { FR_CONF_OFFSET("port", FR_TYPE_SHORT, fr_redis_conf_t, port), .dflt = "6379" }, \
+       { FR_CONF_OFFSET("database", FR_TYPE_INTEGER, fr_redis_conf_t, database), .dflt = "0" }, \
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING | FR_TYPE_SECRET, fr_redis_conf_t, password) }, \
+       { FR_CONF_OFFSET("max_nodes", FR_TYPE_BYTE, fr_redis_conf_t, max_nodes), .dflt = "20" }, \
+       { FR_CONF_OFFSET("max_alt", FR_TYPE_INTEGER, fr_redis_conf_t, max_alt), .dflt = "3" }, \
+       { FR_CONF_OFFSET("max_redirects", FR_TYPE_INTEGER, fr_redis_conf_t, max_redirects), .dflt = "2" }
 
 void           fr_redis_version_print(void);
 
@@ -120,7 +120,7 @@ fr_redis_rcode_t    fr_redis_command_status(fr_redis_conn_t *conn, redisReply *repl
 void                   fr_redis_reply_print(log_lvl_t lvl, redisReply *reply, REQUEST *request, int idx);
 
 int                    fr_redis_reply_to_value_box(TALLOC_CTX *ctx, value_box_t *out, redisReply *reply,
-                                                   PW_TYPE dst_type, fr_dict_attr_t const *dst_enumv);
+                                                   fr_type_t dst_type, fr_dict_attr_t const *dst_enumv);
 
 int                    fr_redis_reply_to_map(TALLOC_CTX *ctx, vp_map_t **out,
                                              REQUEST *request, redisReply *key, redisReply *op, redisReply *value);
index 86fd34d77a383843ad7d115e2eed1c2015242190..18699f49e989bffdd7575aeef334943b1510c933 100644 (file)
@@ -102,34 +102,34 @@ static CONF_PARSER redis_config[] = {
 };
 
 static CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("pool_name", PW_TYPE_TMPL | PW_TYPE_REQUIRED, rlm_redis_ippool_t, pool_name) },
+       { FR_CONF_OFFSET("pool_name", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, pool_name) },
 
-       { FR_CONF_OFFSET("device", PW_TYPE_TMPL | PW_TYPE_REQUIRED, rlm_redis_ippool_t, device_id) },
-       { FR_CONF_OFFSET("gateway", PW_TYPE_TMPL, rlm_redis_ippool_t, gateway_id) },\
+       { FR_CONF_OFFSET("device", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, device_id) },
+       { FR_CONF_OFFSET("gateway", FR_TYPE_TMPL, rlm_redis_ippool_t, gateway_id) },\
 
-       { FR_CONF_OFFSET("offer_time", PW_TYPE_TMPL, rlm_redis_ippool_t, offer_time) },
-       { FR_CONF_OFFSET("lease_time", PW_TYPE_TMPL | PW_TYPE_REQUIRED, rlm_redis_ippool_t, lease_time) },
+       { FR_CONF_OFFSET("offer_time", FR_TYPE_TMPL, rlm_redis_ippool_t, offer_time) },
+       { FR_CONF_OFFSET("lease_time", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, lease_time) },
 
-       { FR_CONF_OFFSET("wait_num", PW_TYPE_INTEGER, rlm_redis_ippool_t, wait_num) },
-       { FR_CONF_OFFSET("wait_timeout", PW_TYPE_TIMEVAL, rlm_redis_ippool_t, wait_timeout) },
+       { FR_CONF_OFFSET("wait_num", FR_TYPE_INTEGER, rlm_redis_ippool_t, wait_num) },
+       { FR_CONF_OFFSET("wait_timeout", FR_TYPE_TIMEVAL, rlm_redis_ippool_t, wait_timeout) },
 
-       { FR_CONF_OFFSET("requested_address", PW_TYPE_TMPL | PW_TYPE_REQUIRED, rlm_redis_ippool_t, requested_address), .dflt = "%{%{DHCP-Requested-IP-Address}:-%{DHCP-Client-IP-Address}}", .quote = T_DOUBLE_QUOTED_STRING },
-       { FR_CONF_DEPRECATED("ip_address", PW_TYPE_TMPL | PW_TYPE_REQUIRED, rlm_redis_ippool_t, NULL) },
+       { FR_CONF_OFFSET("requested_address", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, requested_address), .dflt = "%{%{DHCP-Requested-IP-Address}:-%{DHCP-Client-IP-Address}}", .quote = T_DOUBLE_QUOTED_STRING },
+       { FR_CONF_DEPRECATED("ip_address", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_redis_ippool_t, NULL) },
 
-       { FR_CONF_OFFSET("allocated_address_attr", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE | PW_TYPE_REQUIRED, rlm_redis_ippool_t, allocated_address_attr), .dflt = "&reply:DHCP-Your-IP-Address", .quote = T_BARE_WORD },
-       { FR_CONF_DEPRECATED("reply_attr", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE | PW_TYPE_REQUIRED, rlm_redis_ippool_t, NULL) },
+       { FR_CONF_OFFSET("allocated_address_attr", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE | FR_TYPE_REQUIRED, rlm_redis_ippool_t, allocated_address_attr), .dflt = "&reply:DHCP-Your-IP-Address", .quote = T_BARE_WORD },
+       { FR_CONF_DEPRECATED("reply_attr", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE | FR_TYPE_REQUIRED, rlm_redis_ippool_t, NULL) },
 
-       { FR_CONF_OFFSET("range_attr", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE | PW_TYPE_REQUIRED, rlm_redis_ippool_t, range_attr), .dflt = "&reply:Pool-Range", .quote = T_BARE_WORD },
-       { FR_CONF_OFFSET("expiry_attr", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE, rlm_redis_ippool_t, expiry_attr) },
+       { FR_CONF_OFFSET("range_attr", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE | FR_TYPE_REQUIRED, rlm_redis_ippool_t, range_attr), .dflt = "&reply:Pool-Range", .quote = T_BARE_WORD },
+       { FR_CONF_OFFSET("expiry_attr", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE, rlm_redis_ippool_t, expiry_attr) },
 
-       { FR_CONF_OFFSET("ipv4_integer", PW_TYPE_BOOLEAN, rlm_redis_ippool_t, ipv4_integer) },
-       { FR_CONF_OFFSET("copy_on_update", PW_TYPE_BOOLEAN, rlm_redis_ippool_t, copy_on_update), .dflt = "yes", .quote = T_BARE_WORD },
+       { FR_CONF_OFFSET("ipv4_integer", FR_TYPE_BOOLEAN, rlm_redis_ippool_t, ipv4_integer) },
+       { FR_CONF_OFFSET("copy_on_update", FR_TYPE_BOOLEAN, rlm_redis_ippool_t, copy_on_update), .dflt = "yes", .quote = T_BARE_WORD },
 
        /*
         *      Split out to allow conversion to universal ippool module with
         *      minimum of config changes.
         */
-       { FR_CONF_POINTER("redis", PW_TYPE_SUBSECTION, NULL), .subcs = redis_config },
+       { FR_CONF_POINTER("redis", FR_TYPE_SUBSECTION, NULL), .subcs = redis_config },
        CONF_PARSER_TERMINATOR
 };
 
@@ -619,7 +619,7 @@ static ippool_rcode_t redis_ippool_allocate(rlm_redis_ippool_t const *inst, REQU
        if (reply->elements > 1) {
                vp_tmpl_t ip_rhs = {
                        .type = TMPL_TYPE_DATA,
-                       .tmpl_value_box_type = PW_TYPE_STRING
+                       .tmpl_value_box_type = FR_TYPE_STRING
                };
                vp_map_t ip_map = {
                        .lhs = inst->allocated_address_attr,
@@ -636,15 +636,15 @@ static ippool_rcode_t redis_ippool_allocate(rlm_redis_ippool_t const *inst, REQU
                 */
                case REDIS_REPLY_INTEGER:
                {
-                       if (ip_map.lhs->tmpl_da->type != PW_TYPE_IPV4_ADDR) {
+                       if (ip_map.lhs->tmpl_da->type != FR_TYPE_IPV4_ADDR) {
                                value_box_t tmp;
 
                                memset(&tmp, 0, sizeof(tmp));
 
                                tmp.datum.integer = ntohl((uint32_t)reply->element[1]->integer);
-                               tmp.type = PW_TYPE_INTEGER;
+                               tmp.type = FR_TYPE_INTEGER;
 
-                               if (value_box_cast(NULL, &ip_map.rhs->tmpl_value_box, PW_TYPE_IPV4_ADDR,
+                               if (value_box_cast(NULL, &ip_map.rhs->tmpl_value_box, FR_TYPE_IPV4_ADDR,
                                                    NULL, &tmp)) {
                                        RPEDEBUG("Failed converting integer to IPv4 address");
                                        ret = IPPOOL_RCODE_FAIL;
@@ -652,7 +652,7 @@ static ippool_rcode_t redis_ippool_allocate(rlm_redis_ippool_t const *inst, REQU
                                }
                        } else {
                                ip_map.rhs->tmpl_value_box_datum.integer = ntohl((uint32_t)reply->element[1]->integer);
-                               ip_map.rhs->tmpl_value_box_type = PW_TYPE_INTEGER;
+                               ip_map.rhs->tmpl_value_box_type = FR_TYPE_INTEGER;
                        }
                }
                        goto do_ip_map;
@@ -660,7 +660,7 @@ static ippool_rcode_t redis_ippool_allocate(rlm_redis_ippool_t const *inst, REQU
                case REDIS_REPLY_STRING:
                        ip_map.rhs->tmpl_value_box_datum.strvalue = reply->element[1]->str;
                        ip_map.rhs->tmpl_value_box_length = reply->element[1]->len;
-                       ip_map.rhs->tmpl_value_box_type = PW_TYPE_STRING;
+                       ip_map.rhs->tmpl_value_box_type = FR_TYPE_STRING;
 
                do_ip_map:
                        if (map_to_request(request, &ip_map, map_to_vp, NULL) < 0) {
@@ -690,7 +690,7 @@ static ippool_rcode_t redis_ippool_allocate(rlm_redis_ippool_t const *inst, REQU
                        vp_tmpl_t range_rhs = {
                                .name = "",
                                .type = TMPL_TYPE_DATA,
-                               .tmpl_value_box_type = PW_TYPE_STRING,
+                               .tmpl_value_box_type = FR_TYPE_STRING,
                                .quote = T_DOUBLE_QUOTED_STRING
                        };
                        vp_map_t range_map = {
@@ -701,7 +701,7 @@ static ippool_rcode_t redis_ippool_allocate(rlm_redis_ippool_t const *inst, REQU
 
                        range_map.rhs->tmpl_value_box_datum.strvalue = reply->element[2]->str;
                        range_map.rhs->tmpl_value_box_length = reply->element[2]->len;
-                       range_map.rhs->tmpl_value_box_type = PW_TYPE_STRING;
+                       range_map.rhs->tmpl_value_box_type = FR_TYPE_STRING;
                        if (map_to_request(request, &range_map, map_to_vp, NULL) < 0) {
                                ret = IPPOOL_RCODE_FAIL;
                                goto finish;
@@ -727,7 +727,7 @@ static ippool_rcode_t redis_ippool_allocate(rlm_redis_ippool_t const *inst, REQU
                vp_tmpl_t expiry_rhs = {
                        .name = "",
                        .type = TMPL_TYPE_DATA,
-                       .tmpl_value_box_type = PW_TYPE_STRING,
+                       .tmpl_value_box_type = FR_TYPE_STRING,
                        .quote = T_DOUBLE_QUOTED_STRING
                };
                vp_map_t expiry_map = {
@@ -744,7 +744,7 @@ static ippool_rcode_t redis_ippool_allocate(rlm_redis_ippool_t const *inst, REQU
                }
 
                expiry_map.rhs->tmpl_value_box_datum.integer = reply->element[3]->integer;
-               expiry_map.rhs->tmpl_value_box_type = PW_TYPE_INTEGER;
+               expiry_map.rhs->tmpl_value_box_type = FR_TYPE_INTEGER;
                if (map_to_request(request, &expiry_map, map_to_vp, NULL) < 0) {
                        ret = IPPOOL_RCODE_FAIL;
                        goto finish;
@@ -771,7 +771,7 @@ static ippool_rcode_t redis_ippool_update(rlm_redis_ippool_t const *inst, REQUES
        fr_redis_rcode_t        status;
        ippool_rcode_t          ret = IPPOOL_RCODE_SUCCESS;
 
-       vp_tmpl_t               range_rhs = { .name = "", .type = TMPL_TYPE_DATA, .tmpl_value_box_type = PW_TYPE_STRING, .quote = T_DOUBLE_QUOTED_STRING };
+       vp_tmpl_t               range_rhs = { .name = "", .type = TMPL_TYPE_DATA, .tmpl_value_box_type = FR_TYPE_STRING, .quote = T_DOUBLE_QUOTED_STRING };
        vp_map_t                range_map = { .lhs = inst->range_attr, .op = T_OP_SET, .rhs = &range_rhs };
 
        gettimeofday(&now, NULL);
@@ -851,7 +851,7 @@ static ippool_rcode_t redis_ippool_update(rlm_redis_ippool_t const *inst, REQUES
                case REDIS_REPLY_STRING:
                        range_map.rhs->tmpl_value_box_datum.strvalue = reply->element[1]->str;
                        range_map.rhs->tmpl_value_box_length = reply->element[1]->len;
-                       range_map.rhs->tmpl_value_box_type = PW_TYPE_STRING;
+                       range_map.rhs->tmpl_value_box_type = FR_TYPE_STRING;
                        if (map_to_request(request, &range_map, map_to_vp, NULL) < 0) {
                                ret = IPPOOL_RCODE_FAIL;
                                goto finish;
@@ -876,7 +876,7 @@ static ippool_rcode_t redis_ippool_update(rlm_redis_ippool_t const *inst, REQUES
                vp_tmpl_t expiry_rhs = {
                        .name = "",
                        .type = TMPL_TYPE_DATA,
-                       .tmpl_value_box_type = PW_TYPE_STRING,
+                       .tmpl_value_box_type = FR_TYPE_STRING,
                        .quote = T_DOUBLE_QUOTED_STRING
                };
                vp_map_t expiry_map = {
@@ -886,7 +886,7 @@ static ippool_rcode_t redis_ippool_update(rlm_redis_ippool_t const *inst, REQUES
                };
 
                expiry_map.rhs->tmpl_value_box_datum.integer = expires;
-               expiry_map.rhs->tmpl_value_box_type = PW_TYPE_INTEGER;
+               expiry_map.rhs->tmpl_value_box_type = FR_TYPE_INTEGER;
                if (map_to_request(request, &expiry_map, map_to_vp, NULL) < 0) {
                        ret = IPPOOL_RCODE_FAIL;
                        goto finish;
@@ -1144,7 +1144,7 @@ static rlm_rcode_t mod_action(rlm_redis_ippool_t const *inst, REQUEST *request,
 
                                ip_rhs.tmpl_value_box_length = strlen(ip_str);
                                ip_rhs.tmpl_value_box_datum.strvalue = ip_str;
-                               ip_rhs.tmpl_value_box_type = PW_TYPE_STRING;
+                               ip_rhs.tmpl_value_box_type = FR_TYPE_STRING;
 
                                if (map_to_request(request, &ip_map, map_to_vp, NULL) < 0) return RLM_MODULE_FAIL;
                        }
index 3051ddd39a5631604a58c4648c5f0943421a3c9b..d736b4a896363524d5b2bd88fc78b681f7edb603 100644 (file)
@@ -54,24 +54,24 @@ typedef struct rlm_rediswho {
 } rlm_rediswho_t;
 
 static CONF_PARSER section_config[] = {
-       { FR_CONF_OFFSET("insert", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_XLAT, rlm_rediswho_t, insert) },
-       { FR_CONF_OFFSET("trim", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_rediswho_t, trim) }, /* required only if trim_count > 0 */
-       { FR_CONF_OFFSET("expire", PW_TYPE_STRING | PW_TYPE_REQUIRED | PW_TYPE_XLAT, rlm_rediswho_t, expire) },
+       { FR_CONF_OFFSET("insert", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_XLAT, rlm_rediswho_t, insert) },
+       { FR_CONF_OFFSET("trim", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_rediswho_t, trim) }, /* required only if trim_count > 0 */
+       { FR_CONF_OFFSET("expire", FR_TYPE_STRING | FR_TYPE_REQUIRED | FR_TYPE_XLAT, rlm_rediswho_t, expire) },
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER module_config[] = {
        REDIS_COMMON_CONFIG,
 
-       { FR_CONF_OFFSET("trim_count", PW_TYPE_SIGNED, rlm_rediswho_t, trim_count), .dflt = "-1" },
+       { FR_CONF_OFFSET("trim_count", FR_TYPE_SIGNED, rlm_rediswho_t, trim_count), .dflt = "-1" },
 
        /*
         *      These all smash the same variables, because we don't care about them right now.
         *      In 3.1, we should have a way of saying "parse a set of sub-sections according to a template"
         */
-       { FR_CONF_POINTER("Start", PW_TYPE_SUBSECTION, NULL), .subcs = section_config },
-       { FR_CONF_POINTER("Interim-Update", PW_TYPE_SUBSECTION, NULL), .subcs = section_config },
-       { FR_CONF_POINTER("Stop", PW_TYPE_SUBSECTION, NULL), .subcs = section_config },
+       { FR_CONF_POINTER("Start", FR_TYPE_SUBSECTION, NULL), .subcs = section_config },
+       { FR_CONF_POINTER("Interim-Update", FR_TYPE_SUBSECTION, NULL), .subcs = section_config },
+       { FR_CONF_POINTER("Stop", FR_TYPE_SUBSECTION, NULL), .subcs = section_config },
 
        CONF_PARSER_TERMINATOR
 };
index fd4292900d51f6151589adec8684748bbb7c2649..64b755aa5f7e227e5c481d9b876420999f800f86 100644 (file)
@@ -920,13 +920,13 @@ static VALUE_PAIR *json_pair_make_leaf(UNUSED rlm_rest_t const *instance, UNUSED
        case json_type_int:
                if (flags->do_xlat) RWDEBUG("Ignoring do_xlat on 'int', attribute \"%s\"", da->name);
                src.datum.sinteger = json_object_get_int(leaf);
-               src.type = PW_TYPE_SIGNED;
+               src.type = FR_TYPE_SIGNED;
                break;
 
        case json_type_double:
                if (flags->do_xlat) RWDEBUG("Ignoring do_xlat on 'double', attribute \"%s\"", da->name);
                src.datum.decimal = json_object_get_double(leaf);
-               src.type = PW_TYPE_DECIMAL;
+               src.type = FR_TYPE_DECIMAL;
                break;
 
        case json_type_string:
@@ -939,7 +939,7 @@ static VALUE_PAIR *json_pair_make_leaf(UNUSED rlm_rest_t const *instance, UNUSED
                        src.datum.strvalue = value;
                        src.datum.length = json_object_get_string_len(leaf);
                }
-               src.type = PW_TYPE_STRING;
+               src.type = FR_TYPE_STRING;
 
                break;
 
@@ -957,7 +957,7 @@ static VALUE_PAIR *json_pair_make_leaf(UNUSED rlm_rest_t const *instance, UNUSED
 
                        return NULL;
                }
-               src.type = PW_TYPE_STRING;
+               src.type = FR_TYPE_STRING;
                src.datum.length = strlen(src.datum.strvalue);
        }
 
index a4b3740f4852171d4911db463583f441d7d455dc..191c17b822536c144f3873f21efbd1d21f938b29 100644 (file)
@@ -35,62 +35,62 @@ RCSID("$Id$")
  *     TLS Configuration
  */
 static CONF_PARSER tls_config[] = {
-       { FR_CONF_OFFSET("ca_file", PW_TYPE_FILE_INPUT, rlm_rest_section_t, tls_ca_file) },
-       { FR_CONF_OFFSET("ca_path", PW_TYPE_FILE_INPUT, rlm_rest_section_t, tls_ca_path) },
-       { FR_CONF_OFFSET("certificate_file", PW_TYPE_FILE_INPUT, rlm_rest_section_t, tls_certificate_file) },
-       { FR_CONF_OFFSET("private_key_file", PW_TYPE_FILE_INPUT, rlm_rest_section_t, tls_private_key_file) },
-       { FR_CONF_OFFSET("private_key_password", PW_TYPE_STRING | PW_TYPE_SECRET, rlm_rest_section_t, tls_private_key_password) },
-       { FR_CONF_OFFSET("random_file", PW_TYPE_STRING, rlm_rest_section_t, tls_random_file) },
-       { FR_CONF_OFFSET("check_cert", PW_TYPE_BOOLEAN, rlm_rest_section_t, tls_check_cert), .dflt = "yes" },
-       { FR_CONF_OFFSET("check_cert_cn", PW_TYPE_BOOLEAN, rlm_rest_section_t, tls_check_cert_cn), .dflt = "yes" },
-       { FR_CONF_OFFSET("extract_cert_attrs", PW_TYPE_BOOLEAN, rlm_rest_section_t, tls_extract_cert_attrs), .dflt = "no" },
+       { FR_CONF_OFFSET("ca_file", FR_TYPE_FILE_INPUT, rlm_rest_section_t, tls_ca_file) },
+       { FR_CONF_OFFSET("ca_path", FR_TYPE_FILE_INPUT, rlm_rest_section_t, tls_ca_path) },
+       { FR_CONF_OFFSET("certificate_file", FR_TYPE_FILE_INPUT, rlm_rest_section_t, tls_certificate_file) },
+       { FR_CONF_OFFSET("private_key_file", FR_TYPE_FILE_INPUT, rlm_rest_section_t, tls_private_key_file) },
+       { FR_CONF_OFFSET("private_key_password", FR_TYPE_STRING | FR_TYPE_SECRET, rlm_rest_section_t, tls_private_key_password) },
+       { FR_CONF_OFFSET("random_file", FR_TYPE_STRING, rlm_rest_section_t, tls_random_file) },
+       { FR_CONF_OFFSET("check_cert", FR_TYPE_BOOLEAN, rlm_rest_section_t, tls_check_cert), .dflt = "yes" },
+       { FR_CONF_OFFSET("check_cert_cn", FR_TYPE_BOOLEAN, rlm_rest_section_t, tls_check_cert_cn), .dflt = "yes" },
+       { FR_CONF_OFFSET("extract_cert_attrs", FR_TYPE_BOOLEAN, rlm_rest_section_t, tls_extract_cert_attrs), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER section_config[] = {
-       { FR_CONF_OFFSET("uri", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_rest_section_t, uri), .dflt = "" },
-       { FR_CONF_OFFSET("proxy", PW_TYPE_STRING, rlm_rest_section_t, proxy) },
-       { FR_CONF_OFFSET("method", PW_TYPE_STRING, rlm_rest_section_t, method_str), .dflt = "GET" },
-       { FR_CONF_OFFSET("body", PW_TYPE_STRING, rlm_rest_section_t, body_str), .dflt = "none" },
-       { FR_CONF_OFFSET("data", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_rest_section_t, data) },
-       { FR_CONF_OFFSET("force_to", PW_TYPE_STRING, rlm_rest_section_t, force_to_str) },
+       { FR_CONF_OFFSET("uri", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_rest_section_t, uri), .dflt = "" },
+       { FR_CONF_OFFSET("proxy", FR_TYPE_STRING, rlm_rest_section_t, proxy) },
+       { FR_CONF_OFFSET("method", FR_TYPE_STRING, rlm_rest_section_t, method_str), .dflt = "GET" },
+       { FR_CONF_OFFSET("body", FR_TYPE_STRING, rlm_rest_section_t, body_str), .dflt = "none" },
+       { FR_CONF_OFFSET("data", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_rest_section_t, data) },
+       { FR_CONF_OFFSET("force_to", FR_TYPE_STRING, rlm_rest_section_t, force_to_str) },
 
        /* User authentication */
-       { FR_CONF_OFFSET("auth", PW_TYPE_STRING, rlm_rest_section_t, auth_str), .dflt = "none" },
-       { FR_CONF_OFFSET("username", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_rest_section_t, username) },
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_rest_section_t, password) },
-       { FR_CONF_OFFSET("require_auth", PW_TYPE_BOOLEAN, rlm_rest_section_t, require_auth), .dflt = "no" },
+       { FR_CONF_OFFSET("auth", FR_TYPE_STRING, rlm_rest_section_t, auth_str), .dflt = "none" },
+       { FR_CONF_OFFSET("username", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_rest_section_t, username) },
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_rest_section_t, password) },
+       { FR_CONF_OFFSET("require_auth", FR_TYPE_BOOLEAN, rlm_rest_section_t, require_auth), .dflt = "no" },
 
        /* Transfer configuration */
-       { FR_CONF_OFFSET("timeout", PW_TYPE_TIMEVAL, rlm_rest_section_t, timeout_tv), .dflt = "4.0" },
-       { FR_CONF_OFFSET("chunk", PW_TYPE_INTEGER, rlm_rest_section_t, chunk), .dflt = "0" },
+       { FR_CONF_OFFSET("timeout", FR_TYPE_TIMEVAL, rlm_rest_section_t, timeout_tv), .dflt = "4.0" },
+       { FR_CONF_OFFSET("chunk", FR_TYPE_INTEGER, rlm_rest_section_t, chunk), .dflt = "0" },
 
        /* TLS Parameters */
-       { FR_CONF_POINTER("tls", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) tls_config },
+       { FR_CONF_POINTER("tls", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) tls_config },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER xlat_config[] = {
-       { FR_CONF_OFFSET("proxy", PW_TYPE_STRING, rlm_rest_section_t, proxy) },
+       { FR_CONF_OFFSET("proxy", FR_TYPE_STRING, rlm_rest_section_t, proxy) },
 
        /* User authentication */
-       { FR_CONF_OFFSET("auth", PW_TYPE_STRING, rlm_rest_section_t, auth_str), .dflt = "none" },
-       { FR_CONF_OFFSET("username", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_rest_section_t, username) },
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_rest_section_t, password) },
-       { FR_CONF_OFFSET("require_auth", PW_TYPE_BOOLEAN, rlm_rest_section_t, require_auth), .dflt = "no" },
+       { FR_CONF_OFFSET("auth", FR_TYPE_STRING, rlm_rest_section_t, auth_str), .dflt = "none" },
+       { FR_CONF_OFFSET("username", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_rest_section_t, username) },
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_rest_section_t, password) },
+       { FR_CONF_OFFSET("require_auth", FR_TYPE_BOOLEAN, rlm_rest_section_t, require_auth), .dflt = "no" },
 
        /* Transfer configuration */
-       { FR_CONF_OFFSET("timeout", PW_TYPE_TIMEVAL, rlm_rest_section_t, timeout_tv), .dflt = "4.0" },
-       { FR_CONF_OFFSET("chunk", PW_TYPE_INTEGER, rlm_rest_section_t, chunk), .dflt = "0" },
+       { FR_CONF_OFFSET("timeout", FR_TYPE_TIMEVAL, rlm_rest_section_t, timeout_tv), .dflt = "4.0" },
+       { FR_CONF_OFFSET("chunk", FR_TYPE_INTEGER, rlm_rest_section_t, chunk), .dflt = "0" },
 
        /* TLS Parameters */
-       { FR_CONF_POINTER("tls", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) tls_config },
+       { FR_CONF_POINTER("tls", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) tls_config },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_DEPRECATED("connect_timeout", PW_TYPE_TIMEVAL, rlm_rest_t, connect_timeout) },
-       { FR_CONF_OFFSET("connect_proxy", PW_TYPE_STRING, rlm_rest_t, connect_proxy) },
+       { FR_CONF_DEPRECATED("connect_timeout", FR_TYPE_TIMEVAL, rlm_rest_t, connect_timeout) },
+       { FR_CONF_OFFSET("connect_proxy", FR_TYPE_STRING, rlm_rest_t, connect_proxy) },
        CONF_PARSER_TERMINATOR
 };
 
index b421a6fece0835703d6d543f85362700d608feda..56eca1cd2f487c81a6578f968f2de0967a740aa1 100644 (file)
@@ -80,8 +80,8 @@ typedef struct rlm_ruby_t {
 } rlm_ruby_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, struct rlm_ruby_t, filename) },
-       { FR_CONF_OFFSET("module", PW_TYPE_STRING, struct rlm_ruby_t, module_name), .dflt = "Radiusd" },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT | FR_TYPE_REQUIRED, struct rlm_ruby_t, filename) },
+       { FR_CONF_OFFSET("module", FR_TYPE_STRING, struct rlm_ruby_t, module_name), .dflt = "Radiusd" },
        CONF_PARSER_TERMINATOR
 };
 
index f5e687faf38d922f0bca75bc60fdafaf0981d03d..e6d2078b0db761ec033286c09c2ec2f6cf93b592 100644 (file)
@@ -42,10 +42,10 @@ typedef enum {
 
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("timer_expire", PW_TYPE_INTEGER, rlm_securid_t, timer_limit), .dflt = "600" },
-       { FR_CONF_OFFSET("max_sessions", PW_TYPE_INTEGER, rlm_securid_t, max_sessions), .dflt = "2048" },
-       { FR_CONF_OFFSET("max_trips_per_session", PW_TYPE_INTEGER, rlm_securid_t, max_trips_per_session) },
-       { FR_CONF_OFFSET("max_round_trips", PW_TYPE_INTEGER, rlm_securid_t, max_trips_per_session), .dflt = "6" },
+       { FR_CONF_OFFSET("timer_expire", FR_TYPE_INTEGER, rlm_securid_t, timer_limit), .dflt = "600" },
+       { FR_CONF_OFFSET("max_sessions", FR_TYPE_INTEGER, rlm_securid_t, max_sessions), .dflt = "2048" },
+       { FR_CONF_OFFSET("max_trips_per_session", FR_TYPE_INTEGER, rlm_securid_t, max_trips_per_session) },
+       { FR_CONF_OFFSET("max_round_trips", FR_TYPE_INTEGER, rlm_securid_t, max_trips_per_session), .dflt = "6" },
        CONF_PARSER_TERMINATOR
 };
 
index 90bce2f5cf2af79255ffd9f282bb8a81780179b7..7ced7125fa99959dee26be35b13c54fee25c4a55 100644 (file)
@@ -72,86 +72,86 @@ static const FR_NAME_NUMBER m3ua_traffic_mode_table[] = {
 };
 
 static const CONF_PARSER sctp_config[] = {
-       { FR_CONF_OFFSET("server", PW_TYPE_COMBO_IP_ADDR, rlm_sigtran_t, conn_conf.sctp_dst_ipaddr) },
-       { FR_CONF_OFFSET("port", PW_TYPE_SHORT, rlm_sigtran_t, conn_conf.sctp_dst_port), .dflt = "2905" },
+       { FR_CONF_OFFSET("server", FR_TYPE_COMBO_IP_ADDR, rlm_sigtran_t, conn_conf.sctp_dst_ipaddr) },
+       { FR_CONF_OFFSET("port", FR_TYPE_SHORT, rlm_sigtran_t, conn_conf.sctp_dst_port), .dflt = "2905" },
 
-       { FR_CONF_OFFSET("src_ipaddr", PW_TYPE_COMBO_IP_ADDR, rlm_sigtran_t, conn_conf.sctp_src_ipaddr ) },
-       { FR_CONF_OFFSET("src_port", PW_TYPE_SHORT, rlm_sigtran_t, conn_conf.sctp_src_port), .dflt = "0" },
+       { FR_CONF_OFFSET("src_ipaddr", FR_TYPE_COMBO_IP_ADDR, rlm_sigtran_t, conn_conf.sctp_src_ipaddr ) },
+       { FR_CONF_OFFSET("src_port", FR_TYPE_SHORT, rlm_sigtran_t, conn_conf.sctp_src_port), .dflt = "0" },
 
-       { FR_CONF_OFFSET("timeout", PW_TYPE_INTEGER, rlm_sigtran_t, conn_conf.sctp_timeout), .dflt = "5" },
+       { FR_CONF_OFFSET("timeout", FR_TYPE_INTEGER, rlm_sigtran_t, conn_conf.sctp_timeout), .dflt = "5" },
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER m3ua_route[] = {
-       { FR_CONF_IS_SET_OFFSET("dpc", PW_TYPE_INTEGER, sigtran_m3ua_route_t, dpc) },
-       { FR_CONF_OFFSET("opc", PW_TYPE_INTEGER | PW_TYPE_MULTI, sigtran_m3ua_route_t, opc) },
-       { FR_CONF_OFFSET("si", PW_TYPE_INTEGER | PW_TYPE_MULTI, sigtran_m3ua_route_t, si) },
+       { FR_CONF_IS_SET_OFFSET("dpc", FR_TYPE_INTEGER, sigtran_m3ua_route_t, dpc) },
+       { FR_CONF_OFFSET("opc", FR_TYPE_INTEGER | FR_TYPE_MULTI, sigtran_m3ua_route_t, opc) },
+       { FR_CONF_OFFSET("si", FR_TYPE_INTEGER | FR_TYPE_MULTI, sigtran_m3ua_route_t, si) },
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER m3ua_config[] = {
-       { FR_CONF_OFFSET("link_index", PW_TYPE_SHORT, rlm_sigtran_t, conn_conf.m3ua_link_index) },
-       { FR_CONF_OFFSET("routing_ctx", PW_TYPE_SHORT, rlm_sigtran_t, conn_conf.m3ua_routing_context) },
-       { FR_CONF_OFFSET("traffic_mode", PW_TYPE_STRING, rlm_sigtran_t, conn_conf.m3ua_traffic_mode_str), .dflt = "loadshare" },
-       { FR_CONF_OFFSET("ack_timeout", PW_TYPE_INTEGER, rlm_sigtran_t, conn_conf.m3ua_ack_timeout), .dflt = "2" },
-       { FR_CONF_OFFSET("beat_interval", PW_TYPE_INTEGER, rlm_sigtran_t, conn_conf.m3ua_beat_interval), .dflt = "0" },
+       { FR_CONF_OFFSET("link_index", FR_TYPE_SHORT, rlm_sigtran_t, conn_conf.m3ua_link_index) },
+       { FR_CONF_OFFSET("routing_ctx", FR_TYPE_SHORT, rlm_sigtran_t, conn_conf.m3ua_routing_context) },
+       { FR_CONF_OFFSET("traffic_mode", FR_TYPE_STRING, rlm_sigtran_t, conn_conf.m3ua_traffic_mode_str), .dflt = "loadshare" },
+       { FR_CONF_OFFSET("ack_timeout", FR_TYPE_INTEGER, rlm_sigtran_t, conn_conf.m3ua_ack_timeout), .dflt = "2" },
+       { FR_CONF_OFFSET("beat_interval", FR_TYPE_INTEGER, rlm_sigtran_t, conn_conf.m3ua_beat_interval), .dflt = "0" },
 
-       { FR_CONF_IS_SET_OFFSET("route", PW_TYPE_SUBSECTION, rlm_sigtran_t, conn_conf.m3ua_routes), .subcs = (void const *) m3ua_route },
+       { FR_CONF_IS_SET_OFFSET("route", FR_TYPE_SUBSECTION, rlm_sigtran_t, conn_conf.m3ua_routes), .subcs = (void const *) m3ua_route },
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER mtp3_config[] = {
-       { FR_CONF_OFFSET("dpc", PW_TYPE_INTEGER | PW_TYPE_REQUIRED, rlm_sigtran_t, conn_conf.mtp3_dpc) },
-       { FR_CONF_OFFSET("opc", PW_TYPE_INTEGER | PW_TYPE_REQUIRED, rlm_sigtran_t, conn_conf.mtp3_opc) },
+       { FR_CONF_OFFSET("dpc", FR_TYPE_INTEGER | FR_TYPE_REQUIRED, rlm_sigtran_t, conn_conf.mtp3_dpc) },
+       { FR_CONF_OFFSET("opc", FR_TYPE_INTEGER | FR_TYPE_REQUIRED, rlm_sigtran_t, conn_conf.mtp3_opc) },
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER sccp_global_title[] = {
-       { FR_CONF_OFFSET("address", PW_TYPE_STRING, sigtran_sccp_global_title_t, address) },
-       { FR_CONF_IS_SET_OFFSET("tt", PW_TYPE_BYTE, sigtran_sccp_global_title_t, tt) },
-       { FR_CONF_IS_SET_OFFSET("nai", PW_TYPE_BYTE, sigtran_sccp_global_title_t, nai) },
-       { FR_CONF_IS_SET_OFFSET("np", PW_TYPE_BYTE, sigtran_sccp_global_title_t, np) },
-       { FR_CONF_IS_SET_OFFSET("es", PW_TYPE_BYTE, sigtran_sccp_global_title_t, es) },
+       { FR_CONF_OFFSET("address", FR_TYPE_STRING, sigtran_sccp_global_title_t, address) },
+       { FR_CONF_IS_SET_OFFSET("tt", FR_TYPE_BYTE, sigtran_sccp_global_title_t, tt) },
+       { FR_CONF_IS_SET_OFFSET("nai", FR_TYPE_BYTE, sigtran_sccp_global_title_t, nai) },
+       { FR_CONF_IS_SET_OFFSET("np", FR_TYPE_BYTE, sigtran_sccp_global_title_t, np) },
+       { FR_CONF_IS_SET_OFFSET("es", FR_TYPE_BYTE, sigtran_sccp_global_title_t, es) },
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER sccp_address[] = {
-       { FR_CONF_IS_SET_OFFSET("pc", PW_TYPE_INTEGER, sigtran_sccp_address_t, pc) },
-       { FR_CONF_IS_SET_OFFSET("ssn", PW_TYPE_BYTE, sigtran_sccp_address_t, ssn) },
-       { FR_CONF_IS_SET_OFFSET("gt", PW_TYPE_SUBSECTION, sigtran_sccp_address_t, gt), .subcs = (void const *) sccp_global_title },
+       { FR_CONF_IS_SET_OFFSET("pc", FR_TYPE_INTEGER, sigtran_sccp_address_t, pc) },
+       { FR_CONF_IS_SET_OFFSET("ssn", FR_TYPE_BYTE, sigtran_sccp_address_t, ssn) },
+       { FR_CONF_IS_SET_OFFSET("gt", FR_TYPE_SUBSECTION, sigtran_sccp_address_t, gt), .subcs = (void const *) sccp_global_title },
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER sccp_config[] = {
-       { FR_CONF_OFFSET("ai8", PW_TYPE_BOOLEAN, rlm_sigtran_t, conn_conf.sccp_ai8) },
-       { FR_CONF_OFFSET("route_on_ssn", PW_TYPE_BOOLEAN, rlm_sigtran_t, conn_conf.sccp_route_on_ssn) },
+       { FR_CONF_OFFSET("ai8", FR_TYPE_BOOLEAN, rlm_sigtran_t, conn_conf.sccp_ai8) },
+       { FR_CONF_OFFSET("route_on_ssn", FR_TYPE_BOOLEAN, rlm_sigtran_t, conn_conf.sccp_route_on_ssn) },
 
-       { FR_CONF_OFFSET("called", PW_TYPE_SUBSECTION, rlm_sigtran_t, conn_conf.sccp_called), .subcs = (void const *) sccp_address },
-       { FR_CONF_OFFSET("calling", PW_TYPE_SUBSECTION, rlm_sigtran_t, conn_conf.sccp_calling), .subcs = (void const *) sccp_address },
+       { FR_CONF_OFFSET("called", FR_TYPE_SUBSECTION, rlm_sigtran_t, conn_conf.sccp_called), .subcs = (void const *) sccp_address },
+       { FR_CONF_OFFSET("calling", FR_TYPE_SUBSECTION, rlm_sigtran_t, conn_conf.sccp_calling), .subcs = (void const *) sccp_address },
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER map_config[] = {
-       { FR_CONF_OFFSET("version", PW_TYPE_TMPL, rlm_sigtran_t, conn_conf.map_version), .dflt = "2", .quote = T_BARE_WORD},
+       { FR_CONF_OFFSET("version", FR_TYPE_TMPL, rlm_sigtran_t, conn_conf.map_version), .dflt = "2", .quote = T_BARE_WORD},
 
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_POINTER("sctp", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) sctp_config },
-       { FR_CONF_POINTER("m3ua", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) m3ua_config },
-       { FR_CONF_POINTER("mtp3", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) mtp3_config },
-       { FR_CONF_POINTER("sccp", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) sccp_config },
-       { FR_CONF_POINTER("map", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) map_config },
+       { FR_CONF_POINTER("sctp", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) sctp_config },
+       { FR_CONF_POINTER("m3ua", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) m3ua_config },
+       { FR_CONF_POINTER("mtp3", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) mtp3_config },
+       { FR_CONF_POINTER("sccp", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) sccp_config },
+       { FR_CONF_POINTER("map", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) map_config },
 
-       { FR_CONF_OFFSET("imsi", PW_TYPE_TMPL | PW_TYPE_REQUIRED, rlm_sigtran_t, imsi) },
+       { FR_CONF_OFFSET("imsi", FR_TYPE_TMPL | FR_TYPE_REQUIRED, rlm_sigtran_t, imsi) },
 
        CONF_PARSER_TERMINATOR
 };
index 62b32189fbce3fbd0a71790596f4584e21801d18..1aff75669fee5f571c5ee9843b01b3216eefe62b 100644 (file)
@@ -101,7 +101,7 @@ static const CONF_PARSER module_config[] = {
        /*
         * Do SoH over DHCP?
         */
-       { FR_CONF_OFFSET("dhcp", PW_TYPE_BOOLEAN, rlm_soh_t, dhcp), .dflt = "no" },
+       { FR_CONF_OFFSET("dhcp", FR_TYPE_BOOLEAN, rlm_soh_t, dhcp), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index 68e16c1969954748279a0b64a3cd128fc0241877..f94de20351060d96749afcdc447ee05d25eadd02 100644 (file)
@@ -40,10 +40,10 @@ typedef struct rlm_sometimes_t {
 } rlm_sometimes_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("rcode", PW_TYPE_STRING, rlm_sometimes_t, rcode_str), .dflt = "fail" },
-       { FR_CONF_OFFSET("key", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE, rlm_sometimes_t, key), .dflt = "&User-Name", .quote = T_BARE_WORD },
-       { FR_CONF_OFFSET("start", PW_TYPE_INTEGER, rlm_sometimes_t, start), .dflt = "0" },
-       { FR_CONF_OFFSET("end", PW_TYPE_INTEGER, rlm_sometimes_t, end), .dflt = "127" },
+       { FR_CONF_OFFSET("rcode", FR_TYPE_STRING, rlm_sometimes_t, rcode_str), .dflt = "fail" },
+       { FR_CONF_OFFSET("key", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE, rlm_sometimes_t, key), .dflt = "&User-Name", .quote = T_BARE_WORD },
+       { FR_CONF_OFFSET("start", FR_TYPE_INTEGER, rlm_sometimes_t, start), .dflt = "0" },
+       { FR_CONF_OFFSET("end", FR_TYPE_INTEGER, rlm_sometimes_t, end), .dflt = "127" },
        CONF_PARSER_TERMINATOR
 };
 
@@ -85,16 +85,16 @@ static rlm_rcode_t sometimes_return(void const *instance, REQUEST *request, RADI
        if (!vp) return RLM_MODULE_NOOP;
 
        switch (vp->vp_type) {
-       case PW_TYPE_OCTETS:
-       case PW_TYPE_STRING:
+       case FR_TYPE_OCTETS:
+       case FR_TYPE_STRING:
                hash = fr_hash(vp->data.datum.ptr, vp->vp_length);
                break;
 
-       case PW_TYPE_ABINARY:
+       case FR_TYPE_ABINARY:
                hash = fr_hash(vp->vp_filter, vp->vp_length);
                break;
 
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                return RLM_MODULE_FAIL;
 
        default:
index 0375fb905adea63dfdfd0d77eb78f06ded641977..874458a029682daadca5edc727a5086eb4a178ce 100644 (file)
@@ -185,64 +185,64 @@ static const FR_NAME_NUMBER verify_cert_table[] = {
 };
 
 static CONF_PARSER load_balance_dc_aware_config[] = {
-       { FR_CONF_OFFSET("local_dc", PW_TYPE_STRING, rlm_sql_cassandra_t, lbdc_local_dc) },
-       { FR_CONF_OFFSET("hosts_per_remote_dc", PW_TYPE_INTEGER, rlm_sql_cassandra_t, lbdc_hosts_per_remote_dc), .dflt = "0" },
-       { FR_CONF_OFFSET("allow_remote_dcs_for_local_cl", PW_TYPE_BOOLEAN, rlm_sql_cassandra_t, lbdc_allow_remote_dcs_for_local_cl), .dflt = "no" },
+       { FR_CONF_OFFSET("local_dc", FR_TYPE_STRING, rlm_sql_cassandra_t, lbdc_local_dc) },
+       { FR_CONF_OFFSET("hosts_per_remote_dc", FR_TYPE_INTEGER, rlm_sql_cassandra_t, lbdc_hosts_per_remote_dc), .dflt = "0" },
+       { FR_CONF_OFFSET("allow_remote_dcs_for_local_cl", FR_TYPE_BOOLEAN, rlm_sql_cassandra_t, lbdc_allow_remote_dcs_for_local_cl), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER latency_aware_routing_config[] = {
-       { FR_CONF_OFFSET("exclusion_threshold", PW_TYPE_TIMEVAL, rlm_sql_cassandra_t, lar_exclusion_threshold), .dflt = "2.0" },
-       { FR_CONF_OFFSET("scale", PW_TYPE_TIMEVAL, rlm_sql_cassandra_t, lar_scale), .dflt = "0.1" },
-       { FR_CONF_OFFSET("retry_period", PW_TYPE_TIMEVAL, rlm_sql_cassandra_t, lar_retry_period), .dflt = "10" },
-       { FR_CONF_OFFSET("update_rate", PW_TYPE_TIMEVAL, rlm_sql_cassandra_t, lar_update_rate), .dflt = "0.1" },
-       { FR_CONF_OFFSET("min_measured", PW_TYPE_INTEGER64, rlm_sql_cassandra_t, lar_min_measured), .dflt = "50" },
+       { FR_CONF_OFFSET("exclusion_threshold", FR_TYPE_TIMEVAL, rlm_sql_cassandra_t, lar_exclusion_threshold), .dflt = "2.0" },
+       { FR_CONF_OFFSET("scale", FR_TYPE_TIMEVAL, rlm_sql_cassandra_t, lar_scale), .dflt = "0.1" },
+       { FR_CONF_OFFSET("retry_period", FR_TYPE_TIMEVAL, rlm_sql_cassandra_t, lar_retry_period), .dflt = "10" },
+       { FR_CONF_OFFSET("update_rate", FR_TYPE_TIMEVAL, rlm_sql_cassandra_t, lar_update_rate), .dflt = "0.1" },
+       { FR_CONF_OFFSET("min_measured", FR_TYPE_INTEGER64, rlm_sql_cassandra_t, lar_min_measured), .dflt = "50" },
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER tls_config[] = {
-       { FR_CONF_OFFSET("ca_file", PW_TYPE_FILE_INPUT, rlm_sql_cassandra_t, tls_ca_file) },
-       { FR_CONF_OFFSET("certificate_file", PW_TYPE_FILE_INPUT, rlm_sql_cassandra_t, tls_certificate_file) },
-       { FR_CONF_OFFSET("private_key_file", PW_TYPE_FILE_INPUT, rlm_sql_cassandra_t, tls_private_key_file) },
-       { FR_CONF_OFFSET("private_key_password", PW_TYPE_STRING | PW_TYPE_SECRET, rlm_sql_cassandra_t, tls_private_key_password) },
+       { FR_CONF_OFFSET("ca_file", FR_TYPE_FILE_INPUT, rlm_sql_cassandra_t, tls_ca_file) },
+       { FR_CONF_OFFSET("certificate_file", FR_TYPE_FILE_INPUT, rlm_sql_cassandra_t, tls_certificate_file) },
+       { FR_CONF_OFFSET("private_key_file", FR_TYPE_FILE_INPUT, rlm_sql_cassandra_t, tls_private_key_file) },
+       { FR_CONF_OFFSET("private_key_password", FR_TYPE_STRING | FR_TYPE_SECRET, rlm_sql_cassandra_t, tls_private_key_password) },
 
-       { FR_CONF_OFFSET("verify_cert", PW_TYPE_STRING, rlm_sql_cassandra_t, tls_verify_cert_str) },
+       { FR_CONF_OFFSET("verify_cert", FR_TYPE_STRING, rlm_sql_cassandra_t, tls_verify_cert_str) },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER driver_config[] = {
-       { FR_CONF_OFFSET("consistency", PW_TYPE_STRING, rlm_sql_cassandra_t, consistency_str), .dflt = "quorum" },
+       { FR_CONF_OFFSET("consistency", FR_TYPE_STRING, rlm_sql_cassandra_t, consistency_str), .dflt = "quorum" },
 
-       { FR_CONF_OFFSET("protocol_version", PW_TYPE_INTEGER, rlm_sql_cassandra_t, protocol_version) },
+       { FR_CONF_OFFSET("protocol_version", FR_TYPE_INTEGER, rlm_sql_cassandra_t, protocol_version) },
 
-       { FR_CONF_OFFSET("connections_per_host", PW_TYPE_INTEGER, rlm_sql_cassandra_t, connections_per_host) },
-       { FR_CONF_OFFSET("connections_per_host_max", PW_TYPE_INTEGER, rlm_sql_cassandra_t, connections_per_host_max) },
+       { FR_CONF_OFFSET("connections_per_host", FR_TYPE_INTEGER, rlm_sql_cassandra_t, connections_per_host) },
+       { FR_CONF_OFFSET("connections_per_host_max", FR_TYPE_INTEGER, rlm_sql_cassandra_t, connections_per_host_max) },
 
-       { FR_CONF_OFFSET("io_threads", PW_TYPE_INTEGER, rlm_sql_cassandra_t, io_threads) },
-       { FR_CONF_OFFSET("io_queue_size", PW_TYPE_INTEGER, rlm_sql_cassandra_t, io_queue_size) },
-       { FR_CONF_OFFSET("io_flush_requests_max", PW_TYPE_INTEGER, rlm_sql_cassandra_t, io_flush_requests_max) },
+       { FR_CONF_OFFSET("io_threads", FR_TYPE_INTEGER, rlm_sql_cassandra_t, io_threads) },
+       { FR_CONF_OFFSET("io_queue_size", FR_TYPE_INTEGER, rlm_sql_cassandra_t, io_queue_size) },
+       { FR_CONF_OFFSET("io_flush_requests_max", FR_TYPE_INTEGER, rlm_sql_cassandra_t, io_flush_requests_max) },
 
-       { FR_CONF_OFFSET("pending_requests_high", PW_TYPE_INTEGER, rlm_sql_cassandra_t, pending_requests_high) },
-       { FR_CONF_OFFSET("pending_requests_low", PW_TYPE_INTEGER, rlm_sql_cassandra_t, pending_requests_low) },
-       { FR_CONF_OFFSET("write_bytes_high", PW_TYPE_INTEGER, rlm_sql_cassandra_t, write_bytes_high) },
-       { FR_CONF_OFFSET("write_bytes_low", PW_TYPE_INTEGER, rlm_sql_cassandra_t, write_bytes_low) },
+       { FR_CONF_OFFSET("pending_requests_high", FR_TYPE_INTEGER, rlm_sql_cassandra_t, pending_requests_high) },
+       { FR_CONF_OFFSET("pending_requests_low", FR_TYPE_INTEGER, rlm_sql_cassandra_t, pending_requests_low) },
+       { FR_CONF_OFFSET("write_bytes_high", FR_TYPE_INTEGER, rlm_sql_cassandra_t, write_bytes_high) },
+       { FR_CONF_OFFSET("write_bytes_low", FR_TYPE_INTEGER, rlm_sql_cassandra_t, write_bytes_low) },
 
-       { FR_CONF_OFFSET("event_queue_size", PW_TYPE_INTEGER, rlm_sql_cassandra_t, event_queue_size) },
+       { FR_CONF_OFFSET("event_queue_size", FR_TYPE_INTEGER, rlm_sql_cassandra_t, event_queue_size) },
 
-       { FR_CONF_OFFSET("spawn_threshold", PW_TYPE_INTEGER, rlm_sql_cassandra_t, spawn_threshold) },
-       { FR_CONF_OFFSET("spawn_max", PW_TYPE_INTEGER, rlm_sql_cassandra_t, spawn_max) },
-       { FR_CONF_OFFSET("spawn_retry_delay", PW_TYPE_TIMEVAL, rlm_sql_cassandra_t, spawn_retry_delay) },
+       { FR_CONF_OFFSET("spawn_threshold", FR_TYPE_INTEGER, rlm_sql_cassandra_t, spawn_threshold) },
+       { FR_CONF_OFFSET("spawn_max", FR_TYPE_INTEGER, rlm_sql_cassandra_t, spawn_max) },
+       { FR_CONF_OFFSET("spawn_retry_delay", FR_TYPE_TIMEVAL, rlm_sql_cassandra_t, spawn_retry_delay) },
 
-       { FR_CONF_POINTER("load_balance_dc_aware", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) load_balance_dc_aware_config },
-       { FR_CONF_OFFSET("load_balance_round_robin", PW_TYPE_BOOLEAN, rlm_sql_cassandra_t, load_balance_round_robin), .dflt = "no" },
+       { FR_CONF_POINTER("load_balance_dc_aware", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) load_balance_dc_aware_config },
+       { FR_CONF_OFFSET("load_balance_round_robin", FR_TYPE_BOOLEAN, rlm_sql_cassandra_t, load_balance_round_robin), .dflt = "no" },
 
-       { FR_CONF_OFFSET("token_aware_routing", PW_TYPE_BOOLEAN, rlm_sql_cassandra_t, token_aware_routing), .dflt = "yes" },
-       { FR_CONF_POINTER("latency_aware_routing", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) latency_aware_routing_config },
+       { FR_CONF_OFFSET("token_aware_routing", FR_TYPE_BOOLEAN, rlm_sql_cassandra_t, token_aware_routing), .dflt = "yes" },
+       { FR_CONF_POINTER("latency_aware_routing", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) latency_aware_routing_config },
 
-       { FR_CONF_OFFSET("tcp_keepalive", PW_TYPE_INTEGER, rlm_sql_cassandra_t, tcp_keepalive) },
-       { FR_CONF_OFFSET("tcp_nodelay", PW_TYPE_BOOLEAN, rlm_sql_cassandra_t, tcp_nodelay), .dflt = "no" },
+       { FR_CONF_OFFSET("tcp_keepalive", FR_TYPE_INTEGER, rlm_sql_cassandra_t, tcp_keepalive) },
+       { FR_CONF_OFFSET("tcp_nodelay", FR_TYPE_BOOLEAN, rlm_sql_cassandra_t, tcp_nodelay), .dflt = "no" },
 
-       { FR_CONF_POINTER("tls", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) tls_config },
+       { FR_CONF_POINTER("tls", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) tls_config },
        CONF_PARSER_TERMINATOR
 };
 
index 1ed89dc2dfcb5aecf955f71633e3fccfba80ae15..a574cae88fedd687b4501ef2e919aa728e8141ec 100644 (file)
@@ -82,22 +82,22 @@ typedef struct rlm_sql_mysql_config {
 } rlm_sql_mysql_t;
 
 static CONF_PARSER tls_config[] = {
-       { FR_CONF_OFFSET("ca_file", PW_TYPE_FILE_INPUT, rlm_sql_mysql_t, tls_ca_file) },
-       { FR_CONF_OFFSET("ca_path", PW_TYPE_FILE_INPUT, rlm_sql_mysql_t, tls_ca_path) },
-       { FR_CONF_OFFSET("certificate_file", PW_TYPE_FILE_INPUT, rlm_sql_mysql_t, tls_certificate_file) },
-       { FR_CONF_OFFSET("private_key_file", PW_TYPE_FILE_INPUT, rlm_sql_mysql_t, tls_private_key_file) },
+       { FR_CONF_OFFSET("ca_file", FR_TYPE_FILE_INPUT, rlm_sql_mysql_t, tls_ca_file) },
+       { FR_CONF_OFFSET("ca_path", FR_TYPE_FILE_INPUT, rlm_sql_mysql_t, tls_ca_path) },
+       { FR_CONF_OFFSET("certificate_file", FR_TYPE_FILE_INPUT, rlm_sql_mysql_t, tls_certificate_file) },
+       { FR_CONF_OFFSET("private_key_file", FR_TYPE_FILE_INPUT, rlm_sql_mysql_t, tls_private_key_file) },
 
        /*
         *      MySQL Specific TLS attributes
         */
-       { FR_CONF_OFFSET("cipher", PW_TYPE_STRING, rlm_sql_mysql_t, tls_cipher) },
+       { FR_CONF_OFFSET("cipher", FR_TYPE_STRING, rlm_sql_mysql_t, tls_cipher) },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER driver_config[] = {
-       { FR_CONF_POINTER("tls", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) tls_config },
+       { FR_CONF_POINTER("tls", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) tls_config },
 
-       { FR_CONF_OFFSET("warnings", PW_TYPE_STRING, rlm_sql_mysql_t, warnings_str), .dflt = "auto" },
+       { FR_CONF_OFFSET("warnings", FR_TYPE_STRING, rlm_sql_mysql_t, warnings_str), .dflt = "auto" },
        CONF_PARSER_TERMINATOR
 };
 
index c4b7df27336003c3ab302d6d59d0015fb8fb0046..d5afe27fa222df1b79e500970c8d6f796816ecb0 100644 (file)
@@ -72,7 +72,7 @@ typedef struct rlm_sql_postgres_conn {
 } rlm_sql_postgres_conn_t;
 
 static CONF_PARSER driver_config[] = {
-       { FR_CONF_OFFSET("send_application_name", PW_TYPE_BOOLEAN, rlm_sql_postgres_t, send_application_name), .dflt = "no" },
+       { FR_CONF_OFFSET("send_application_name", FR_TYPE_BOOLEAN, rlm_sql_postgres_t, send_application_name), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index 6997b3e1bd4d53cc51e73841fa763bd3f2f75b49..47021f096de321bd14e08a3f4b3333537ab80e36 100644 (file)
@@ -61,8 +61,8 @@ typedef struct rlm_sql_sqlite {
 } rlm_sql_sqlite_t;
 
 static const CONF_PARSER driver_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_OUTPUT | PW_TYPE_REQUIRED, rlm_sql_sqlite_t, filename) },
-       { FR_CONF_OFFSET("busy_timeout", PW_TYPE_INTEGER, rlm_sql_sqlite_t, busy_timeout), .dflt = "200" },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_OUTPUT | FR_TYPE_REQUIRED, rlm_sql_sqlite_t, filename) },
+       { FR_CONF_OFFSET("busy_timeout", FR_TYPE_INTEGER, rlm_sql_sqlite_t, busy_timeout), .dflt = "200" },
        CONF_PARSER_TERMINATOR
 };
 
index 54684a014f721034c061109a1d99796b9223ef3a..2b456986389826db031e2bcd3816efca6056ccbd 100644 (file)
@@ -48,7 +48,7 @@ extern rad_module_t rlm_sql;
  *     So we can do pass2 xlat checks on the queries.
  */
 static const CONF_PARSER query_config[] = {
-       { FR_CONF_OFFSET("query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_MULTI, rlm_sql_config_t, accounting.query) },
+       { FR_CONF_OFFSET("query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_MULTI, rlm_sql_config_t, accounting.query) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -57,68 +57,68 @@ static const CONF_PARSER query_config[] = {
  *     helps the average case.
  */
 static const CONF_PARSER type_config[] = {
-       { FR_CONF_POINTER("accounting-on", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
-       { FR_CONF_POINTER("accounting-off", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
-       { FR_CONF_POINTER("start", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
-       { FR_CONF_POINTER("interim-update", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
-       { FR_CONF_POINTER("stop", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
+       { FR_CONF_POINTER("accounting-on", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
+       { FR_CONF_POINTER("accounting-off", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
+       { FR_CONF_POINTER("start", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
+       { FR_CONF_POINTER("interim-update", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
+       { FR_CONF_POINTER("stop", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) query_config },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER acct_config[] = {
-       { FR_CONF_OFFSET("reference", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sql_config_t, accounting.reference), .dflt = ".query" },
-       { FR_CONF_OFFSET("logfile", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sql_config_t, accounting.logfile) },
+       { FR_CONF_OFFSET("reference", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sql_config_t, accounting.reference), .dflt = ".query" },
+       { FR_CONF_OFFSET("logfile", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sql_config_t, accounting.logfile) },
 
-       { FR_CONF_POINTER("type", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) type_config },
+       { FR_CONF_POINTER("type", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) type_config },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER postauth_config[] = {
-       { FR_CONF_OFFSET("reference", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sql_config_t, postauth.reference), .dflt = ".query" },
-       { FR_CONF_OFFSET("logfile", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sql_config_t, postauth.logfile) },
+       { FR_CONF_OFFSET("reference", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sql_config_t, postauth.reference), .dflt = ".query" },
+       { FR_CONF_OFFSET("logfile", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sql_config_t, postauth.logfile) },
 
-       { FR_CONF_OFFSET("query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_MULTI, rlm_sql_config_t, postauth.query) },
+       { FR_CONF_OFFSET("query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_MULTI, rlm_sql_config_t, postauth.query) },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("driver", PW_TYPE_STRING, rlm_sql_config_t, sql_driver_name), .dflt = "rlm_sql_null" },
-       { FR_CONF_OFFSET("server", PW_TYPE_STRING, rlm_sql_config_t, sql_server), .dflt = "" }, /* Must be zero length so drivers can determine if it was set */
-       { FR_CONF_OFFSET("port", PW_TYPE_INTEGER, rlm_sql_config_t, sql_port), .dflt = "0" },
-       { FR_CONF_OFFSET("login", PW_TYPE_STRING, rlm_sql_config_t, sql_login), .dflt = "" },
-       { FR_CONF_OFFSET("password", PW_TYPE_STRING | PW_TYPE_SECRET, rlm_sql_config_t, sql_password), .dflt = "" },
-       { FR_CONF_OFFSET("radius_db", PW_TYPE_STRING, rlm_sql_config_t, sql_db), .dflt = "radius" },
-       { FR_CONF_OFFSET("read_groups", PW_TYPE_BOOLEAN, rlm_sql_config_t, read_groups), .dflt = "yes" },
-       { FR_CONF_OFFSET("read_profiles", PW_TYPE_BOOLEAN, rlm_sql_config_t, read_profiles), .dflt = "yes" },
-       { FR_CONF_OFFSET("read_clients", PW_TYPE_BOOLEAN, rlm_sql_config_t, do_clients), .dflt = "no" },
-       { FR_CONF_OFFSET("delete_stale_sessions", PW_TYPE_BOOLEAN, rlm_sql_config_t, delete_stale_sessions), .dflt = "yes" },
-       { FR_CONF_OFFSET("sql_user_name", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sql_config_t, query_user), .dflt = "" },
-       { FR_CONF_OFFSET("group_attribute", PW_TYPE_STRING, rlm_sql_config_t, group_attribute) },
-       { FR_CONF_OFFSET("logfile", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sql_config_t, logfile) },
-       { FR_CONF_OFFSET("default_user_profile", PW_TYPE_STRING, rlm_sql_config_t, default_profile), .dflt = "" },
-       { FR_CONF_OFFSET("client_query", PW_TYPE_STRING, rlm_sql_config_t, client_query), .dflt = "SELECT id,nasname,shortname,type,secret FROM nas" },
-       { FR_CONF_OFFSET("open_query", PW_TYPE_STRING, rlm_sql_config_t, connect_query) },
-
-       { FR_CONF_OFFSET("authorize_check_query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_NOT_EMPTY, rlm_sql_config_t, authorize_check_query) },
-       { FR_CONF_OFFSET("authorize_reply_query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_NOT_EMPTY, rlm_sql_config_t, authorize_reply_query) },
-
-       { FR_CONF_OFFSET("authorize_group_check_query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_NOT_EMPTY, rlm_sql_config_t, authorize_group_check_query) },
-       { FR_CONF_OFFSET("authorize_group_reply_query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_NOT_EMPTY, rlm_sql_config_t, authorize_group_reply_query) },
-       { FR_CONF_OFFSET("group_membership_query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_NOT_EMPTY, rlm_sql_config_t, groupmemb_query) },
+       { FR_CONF_OFFSET("driver", FR_TYPE_STRING, rlm_sql_config_t, sql_driver_name), .dflt = "rlm_sql_null" },
+       { FR_CONF_OFFSET("server", FR_TYPE_STRING, rlm_sql_config_t, sql_server), .dflt = "" }, /* Must be zero length so drivers can determine if it was set */
+       { FR_CONF_OFFSET("port", FR_TYPE_INTEGER, rlm_sql_config_t, sql_port), .dflt = "0" },
+       { FR_CONF_OFFSET("login", FR_TYPE_STRING, rlm_sql_config_t, sql_login), .dflt = "" },
+       { FR_CONF_OFFSET("password", FR_TYPE_STRING | FR_TYPE_SECRET, rlm_sql_config_t, sql_password), .dflt = "" },
+       { FR_CONF_OFFSET("radius_db", FR_TYPE_STRING, rlm_sql_config_t, sql_db), .dflt = "radius" },
+       { FR_CONF_OFFSET("read_groups", FR_TYPE_BOOLEAN, rlm_sql_config_t, read_groups), .dflt = "yes" },
+       { FR_CONF_OFFSET("read_profiles", FR_TYPE_BOOLEAN, rlm_sql_config_t, read_profiles), .dflt = "yes" },
+       { FR_CONF_OFFSET("read_clients", FR_TYPE_BOOLEAN, rlm_sql_config_t, do_clients), .dflt = "no" },
+       { FR_CONF_OFFSET("delete_stale_sessions", FR_TYPE_BOOLEAN, rlm_sql_config_t, delete_stale_sessions), .dflt = "yes" },
+       { FR_CONF_OFFSET("sql_user_name", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sql_config_t, query_user), .dflt = "" },
+       { FR_CONF_OFFSET("group_attribute", FR_TYPE_STRING, rlm_sql_config_t, group_attribute) },
+       { FR_CONF_OFFSET("logfile", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sql_config_t, logfile) },
+       { FR_CONF_OFFSET("default_user_profile", FR_TYPE_STRING, rlm_sql_config_t, default_profile), .dflt = "" },
+       { FR_CONF_OFFSET("client_query", FR_TYPE_STRING, rlm_sql_config_t, client_query), .dflt = "SELECT id,nasname,shortname,type,secret FROM nas" },
+       { FR_CONF_OFFSET("open_query", FR_TYPE_STRING, rlm_sql_config_t, connect_query) },
+
+       { FR_CONF_OFFSET("authorize_check_query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_NOT_EMPTY, rlm_sql_config_t, authorize_check_query) },
+       { FR_CONF_OFFSET("authorize_reply_query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_NOT_EMPTY, rlm_sql_config_t, authorize_reply_query) },
+
+       { FR_CONF_OFFSET("authorize_group_check_query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_NOT_EMPTY, rlm_sql_config_t, authorize_group_check_query) },
+       { FR_CONF_OFFSET("authorize_group_reply_query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_NOT_EMPTY, rlm_sql_config_t, authorize_group_reply_query) },
+       { FR_CONF_OFFSET("group_membership_query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_NOT_EMPTY, rlm_sql_config_t, groupmemb_query) },
 #ifdef WITH_SESSION_MGMT
-       { FR_CONF_OFFSET("simul_count_query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_NOT_EMPTY, rlm_sql_config_t, simul_count_query) },
-       { FR_CONF_OFFSET("simul_verify_query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_NOT_EMPTY, rlm_sql_config_t, simul_verify_query) },
+       { FR_CONF_OFFSET("simul_count_query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_NOT_EMPTY, rlm_sql_config_t, simul_count_query) },
+       { FR_CONF_OFFSET("simul_verify_query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_NOT_EMPTY, rlm_sql_config_t, simul_verify_query) },
 #endif
-       { FR_CONF_OFFSET("safe_characters", PW_TYPE_STRING, rlm_sql_config_t, allowed_chars), .dflt = "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /" },
+       { FR_CONF_OFFSET("safe_characters", FR_TYPE_STRING, rlm_sql_config_t, allowed_chars), .dflt = "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_: /" },
 
        /*
         *      This only works for a few drivers.
         */
-       { FR_CONF_OFFSET("query_timeout", PW_TYPE_INTEGER, rlm_sql_config_t, query_timeout) },
+       { FR_CONF_OFFSET("query_timeout", FR_TYPE_INTEGER, rlm_sql_config_t, query_timeout) },
 
-       { FR_CONF_POINTER("accounting", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) acct_config },
+       { FR_CONF_POINTER("accounting", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) acct_config },
 
-       { FR_CONF_POINTER("post-auth", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) postauth_config },
+       { FR_CONF_POINTER("post-auth", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) postauth_config },
        CONF_PARSER_TERMINATOR
 };
 
index b5f4e7cb2545b96f05d074feb4c705f46b4d4dfd..595262c3b70a24e795915419dd409e2d3625da0d 100644 (file)
@@ -74,20 +74,20 @@ typedef struct rlm_sqlcounter_t {
 } rlm_sqlcounter_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("sql_module_instance", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_sqlcounter_t, sqlmod_inst) },
+       { FR_CONF_OFFSET("sql_module_instance", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_sqlcounter_t, sqlmod_inst) },
 
 
-       { FR_CONF_OFFSET("query", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_REQUIRED, rlm_sqlcounter_t, query) },
-       { FR_CONF_OFFSET("reset", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_sqlcounter_t, reset) },
+       { FR_CONF_OFFSET("query", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_REQUIRED, rlm_sqlcounter_t, query) },
+       { FR_CONF_OFFSET("reset", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_sqlcounter_t, reset) },
 
-       { FR_CONF_OFFSET("key", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE, rlm_sqlcounter_t, key_attr), .dflt = "&request:User-Name", .quote = T_BARE_WORD },
+       { FR_CONF_OFFSET("key", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE, rlm_sqlcounter_t, key_attr), .dflt = "&request:User-Name", .quote = T_BARE_WORD },
 
        /* Just used to register a paircompare against */
-       { FR_CONF_OFFSET("counter_name", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE | PW_TYPE_REQUIRED, rlm_sqlcounter_t, paircmp_attr) },
-       { FR_CONF_OFFSET("check_name", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE | PW_TYPE_REQUIRED, rlm_sqlcounter_t, limit_attr) },
+       { FR_CONF_OFFSET("counter_name", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE | FR_TYPE_REQUIRED, rlm_sqlcounter_t, paircmp_attr) },
+       { FR_CONF_OFFSET("check_name", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE | FR_TYPE_REQUIRED, rlm_sqlcounter_t, limit_attr) },
 
        /* Attribute to write remaining session to */
-       { FR_CONF_OFFSET("reply_name", PW_TYPE_TMPL | PW_TYPE_ATTRIBUTE, rlm_sqlcounter_t, reply_attr) },
+       { FR_CONF_OFFSET("reply_name", FR_TYPE_TMPL | FR_TYPE_ATTRIBUTE, rlm_sqlcounter_t, reply_attr) },
        CONF_PARSER_TERMINATOR
 };
 
@@ -576,18 +576,18 @@ static int mod_bootstrap(CONF_SECTION *conf, void *instance)
 
        memset(&flags, 0, sizeof(flags));
        flags.compare = 1;      /* ugly hack */
-       if (tmpl_define_undefined_attr(inst->paircmp_attr, PW_TYPE_INTEGER64, &flags) < 0) {
+       if (tmpl_define_undefined_attr(inst->paircmp_attr, FR_TYPE_INTEGER64, &flags) < 0) {
                cf_log_err_cs(conf, "Failed defining counter attribute: %s", fr_strerror());
                return -1;
        }
 
        flags.compare = 0;
-       if (tmpl_define_undefined_attr(inst->limit_attr, PW_TYPE_INTEGER64, &flags) < 0) {
+       if (tmpl_define_undefined_attr(inst->limit_attr, FR_TYPE_INTEGER64, &flags) < 0) {
                cf_log_err_cs(conf, "Failed defining check attribute: %s", fr_strerror());
                return -1;
        }
 
-       if (inst->paircmp_attr->tmpl_da->type != PW_TYPE_INTEGER64) {
+       if (inst->paircmp_attr->tmpl_da->type != FR_TYPE_INTEGER64) {
                cf_log_err_cs(conf, "Counter attribute %s MUST be integer64",
                              inst->paircmp_attr->tmpl_da->name);
                return -1;
@@ -599,7 +599,7 @@ static int mod_bootstrap(CONF_SECTION *conf, void *instance)
                return -1;
        }
 
-       if (inst->limit_attr->tmpl_da->type != PW_TYPE_INTEGER64) {
+       if (inst->limit_attr->tmpl_da->type != FR_TYPE_INTEGER64) {
                cf_log_err_cs(conf, "Check attribute %s MUST be integer64",
                              inst->limit_attr->tmpl_da->name);
                return -1;
index 78828a4d0898c95cd26222f7dd8814ef299ef53c..35f4792ef4aacf3aa0ba93564d7d7d044d226abf 100644 (file)
@@ -71,11 +71,11 @@ typedef struct rlm_sqlhpwippool_t {
 /* char *name, int type,
  * size_t offset, void *data, char *dflt */
 static CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("sql_module_instance", PW_TYPE_STRING, rlm_sqlhpwippool_t, sql_instance_name), .dflt = "sql" },
-       { FR_CONF_OFFSET("db_name", PW_TYPE_STRING, rlm_sqlhpwippool_t, db_name), .dflt = "netvim" },
-       { FR_CONF_OFFSET("no_free_fail", PW_TYPE_BOOLEAN, rlm_sqlhpwippool_t, no_free_fail), .dflt = "yes" },
-       { FR_CONF_OFFSET("free_after", PW_TYPE_INTEGER, rlm_sqlhpwippool_t, free_after), .dflt = "300" },
-       { FR_CONF_OFFSET("sync_after", PW_TYPE_INTEGER, rlm_sqlhpwippool_t, sync_after), .dflt = "25" },
+       { FR_CONF_OFFSET("sql_module_instance", FR_TYPE_STRING, rlm_sqlhpwippool_t, sql_instance_name), .dflt = "sql" },
+       { FR_CONF_OFFSET("db_name", FR_TYPE_STRING, rlm_sqlhpwippool_t, db_name), .dflt = "netvim" },
+       { FR_CONF_OFFSET("no_free_fail", FR_TYPE_BOOLEAN, rlm_sqlhpwippool_t, no_free_fail), .dflt = "yes" },
+       { FR_CONF_OFFSET("free_after", FR_TYPE_INTEGER, rlm_sqlhpwippool_t, free_after), .dflt = "300" },
+       { FR_CONF_OFFSET("sync_after", FR_TYPE_INTEGER, rlm_sqlhpwippool_t, sync_after), .dflt = "25" },
        CONF_PARSER_TERMINATOR
 };
 
index 7b43c49daddf031256dc2b7573b96f4ab366b3bb..0efd8be2f44245ea1e87f9d0d1d0433a781606eb 100644 (file)
@@ -97,75 +97,75 @@ typedef struct rlm_sqlippool_t {
 } rlm_sqlippool_t;
 
 static CONF_PARSER message_config[] = {
-       { FR_CONF_OFFSET("exists", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_exists) },
-       { FR_CONF_OFFSET("success", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_success) },
-       { FR_CONF_OFFSET("clear", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_clear) },
-       { FR_CONF_OFFSET("failed", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_failed) },
-       { FR_CONF_OFFSET("nopool", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, log_nopool) },
+       { FR_CONF_OFFSET("exists", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, log_exists) },
+       { FR_CONF_OFFSET("success", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, log_success) },
+       { FR_CONF_OFFSET("clear", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, log_clear) },
+       { FR_CONF_OFFSET("failed", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, log_failed) },
+       { FR_CONF_OFFSET("nopool", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, log_nopool) },
        CONF_PARSER_TERMINATOR
 };
 
 static CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("sql_module_instance", PW_TYPE_STRING | PW_TYPE_REQUIRED, rlm_sqlippool_t, sql_instance_name), .dflt = "sql" },
+       { FR_CONF_OFFSET("sql_module_instance", FR_TYPE_STRING | FR_TYPE_REQUIRED, rlm_sqlippool_t, sql_instance_name), .dflt = "sql" },
 
-       { FR_CONF_OFFSET("lease_duration", PW_TYPE_INTEGER, rlm_sqlippool_t, lease_duration), .dflt = "86400" },
+       { FR_CONF_OFFSET("lease_duration", FR_TYPE_INTEGER, rlm_sqlippool_t, lease_duration), .dflt = "86400" },
 
-       { FR_CONF_OFFSET("pool_name", PW_TYPE_STRING, rlm_sqlippool_t, pool_name), .dflt = "" },
+       { FR_CONF_OFFSET("pool_name", FR_TYPE_STRING, rlm_sqlippool_t, pool_name), .dflt = "" },
 
-       { FR_CONF_OFFSET("default_pool", PW_TYPE_STRING, rlm_sqlippool_t, defaultpool), .dflt = "main_pool" },
+       { FR_CONF_OFFSET("default_pool", FR_TYPE_STRING, rlm_sqlippool_t, defaultpool), .dflt = "main_pool" },
 
 
-       { FR_CONF_OFFSET("ipv6", PW_TYPE_BOOLEAN, rlm_sqlippool_t, ipv6) },
+       { FR_CONF_OFFSET("ipv6", FR_TYPE_BOOLEAN, rlm_sqlippool_t, ipv6) },
 
-       { FR_CONF_OFFSET("allocate_begin", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, allocate_begin), .dflt = "START TRANSACTION" },
+       { FR_CONF_OFFSET("allocate_begin", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, allocate_begin), .dflt = "START TRANSACTION" },
 
-       { FR_CONF_OFFSET("allocate_clear", PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, allocate_clear), .dflt = "" },
+       { FR_CONF_OFFSET("allocate_clear", FR_TYPE_STRING | FR_TYPE_XLAT , rlm_sqlippool_t, allocate_clear), .dflt = "" },
 
-       { FR_CONF_OFFSET("allocate_find", PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_REQUIRED, rlm_sqlippool_t, allocate_find), .dflt = "" },
+       { FR_CONF_OFFSET("allocate_find", FR_TYPE_STRING | FR_TYPE_XLAT | FR_TYPE_REQUIRED, rlm_sqlippool_t, allocate_find), .dflt = "" },
 
-       { FR_CONF_OFFSET("allocate_update", PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, allocate_update), .dflt = "" },
+       { FR_CONF_OFFSET("allocate_update", FR_TYPE_STRING | FR_TYPE_XLAT , rlm_sqlippool_t, allocate_update), .dflt = "" },
 
-       { FR_CONF_OFFSET("allocate_commit", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, allocate_commit), .dflt = "COMMIT" },
+       { FR_CONF_OFFSET("allocate_commit", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, allocate_commit), .dflt = "COMMIT" },
 
 
-       { FR_CONF_OFFSET("pool_check", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, pool_check), .dflt = "" },
+       { FR_CONF_OFFSET("pool_check", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, pool_check), .dflt = "" },
 
 
-       { FR_CONF_OFFSET("start_begin", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, start_begin), .dflt = "START TRANSACTION" },
+       { FR_CONF_OFFSET("start_begin", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, start_begin), .dflt = "START TRANSACTION" },
 
-       { FR_CONF_OFFSET("start_update", PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, start_update), .dflt = "" },
+       { FR_CONF_OFFSET("start_update", FR_TYPE_STRING | FR_TYPE_XLAT , rlm_sqlippool_t, start_update), .dflt = "" },
 
-       { FR_CONF_OFFSET("start_commit", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, start_commit), .dflt = "COMMIT" },
+       { FR_CONF_OFFSET("start_commit", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, start_commit), .dflt = "COMMIT" },
 
 
-       { FR_CONF_OFFSET("alive_begin", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, alive_begin), .dflt = "START TRANSACTION" },
+       { FR_CONF_OFFSET("alive_begin", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, alive_begin), .dflt = "START TRANSACTION" },
 
-       { FR_CONF_OFFSET("alive_update", PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, alive_update), .dflt = "" },
+       { FR_CONF_OFFSET("alive_update", FR_TYPE_STRING | FR_TYPE_XLAT , rlm_sqlippool_t, alive_update), .dflt = "" },
 
-       { FR_CONF_OFFSET("alive_commit", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, alive_commit), .dflt = "COMMIT" },
+       { FR_CONF_OFFSET("alive_commit", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, alive_commit), .dflt = "COMMIT" },
 
 
-       { FR_CONF_OFFSET("stop_begin", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, stop_begin), .dflt = "START TRANSACTION" },
+       { FR_CONF_OFFSET("stop_begin", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, stop_begin), .dflt = "START TRANSACTION" },
 
-       { FR_CONF_OFFSET("stop_clear", PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, stop_clear), .dflt = "" },
+       { FR_CONF_OFFSET("stop_clear", FR_TYPE_STRING | FR_TYPE_XLAT , rlm_sqlippool_t, stop_clear), .dflt = "" },
 
-       { FR_CONF_OFFSET("stop_commit", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, stop_commit), .dflt = "COMMIT" },
+       { FR_CONF_OFFSET("stop_commit", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, stop_commit), .dflt = "COMMIT" },
 
 
-       { FR_CONF_OFFSET("on_begin", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, on_begin), .dflt = "START TRANSACTION" },
+       { FR_CONF_OFFSET("on_begin", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, on_begin), .dflt = "START TRANSACTION" },
 
-       { FR_CONF_OFFSET("on_clear", PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, on_clear), .dflt = "" },
+       { FR_CONF_OFFSET("on_clear", FR_TYPE_STRING | FR_TYPE_XLAT , rlm_sqlippool_t, on_clear), .dflt = "" },
 
-       { FR_CONF_OFFSET("on_commit", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, on_commit), .dflt = "COMMIT" },
+       { FR_CONF_OFFSET("on_commit", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, on_commit), .dflt = "COMMIT" },
 
 
-       { FR_CONF_OFFSET("off_begin", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, off_begin), .dflt = "START TRANSACTION" },
+       { FR_CONF_OFFSET("off_begin", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, off_begin), .dflt = "START TRANSACTION" },
 
-       { FR_CONF_OFFSET("off_clear", PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, off_clear), .dflt = "" },
+       { FR_CONF_OFFSET("off_clear", FR_TYPE_STRING | FR_TYPE_XLAT , rlm_sqlippool_t, off_clear), .dflt = "" },
 
-       { FR_CONF_OFFSET("off_commit", PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, off_commit), .dflt = "COMMIT" },
+       { FR_CONF_OFFSET("off_commit", FR_TYPE_STRING | FR_TYPE_XLAT, rlm_sqlippool_t, off_commit), .dflt = "COMMIT" },
 
-       { FR_CONF_POINTER("messages", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) message_config },
+       { FR_CONF_POINTER("messages", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) message_config },
        CONF_PARSER_TERMINATOR
 };
 
index f18ad86e35ed7861f079101302e03f662676f161..d3948b8151f43f423a8d478f5b91cfbf8978c11c 100644 (file)
@@ -106,62 +106,62 @@ typedef struct {
  *     A mapping of configuration file names to internal variables.
  */
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("tmpl", PW_TYPE_TMPL, rlm_test_t, tmpl), .dflt = "&User-Name", .quote = T_BARE_WORD },
-       { FR_CONF_OFFSET("tmpl_m", PW_TYPE_TMPL | PW_TYPE_MULTI, rlm_test_t, tmpl_m), .dflt = "%{User-Name}", .quote = T_DOUBLE_QUOTED_STRING },
+       { FR_CONF_OFFSET("tmpl", FR_TYPE_TMPL, rlm_test_t, tmpl), .dflt = "&User-Name", .quote = T_BARE_WORD },
+       { FR_CONF_OFFSET("tmpl_m", FR_TYPE_TMPL | FR_TYPE_MULTI, rlm_test_t, tmpl_m), .dflt = "%{User-Name}", .quote = T_DOUBLE_QUOTED_STRING },
 
-       { FR_CONF_OFFSET("string", PW_TYPE_STRING, rlm_test_t, string) },
-       { FR_CONF_OFFSET("string_m", PW_TYPE_STRING | PW_TYPE_MULTI, rlm_test_t, string_m) },
+       { FR_CONF_OFFSET("string", FR_TYPE_STRING, rlm_test_t, string) },
+       { FR_CONF_OFFSET("string_m", FR_TYPE_STRING | FR_TYPE_MULTI, rlm_test_t, string_m) },
 
-       { FR_CONF_OFFSET("boolean", PW_TYPE_BOOLEAN, rlm_test_t, boolean), .dflt = "no" },
-       { FR_CONF_OFFSET("boolean_m", PW_TYPE_BOOLEAN | PW_TYPE_MULTI, rlm_test_t, boolean_m), .dflt = "no" },
+       { FR_CONF_OFFSET("boolean", FR_TYPE_BOOLEAN, rlm_test_t, boolean), .dflt = "no" },
+       { FR_CONF_OFFSET("boolean_m", FR_TYPE_BOOLEAN | FR_TYPE_MULTI, rlm_test_t, boolean_m), .dflt = "no" },
 
-       { FR_CONF_OFFSET("integer", PW_TYPE_INTEGER, rlm_test_t, integer), .dflt = "1" },
-       { FR_CONF_OFFSET("integer_m", PW_TYPE_INTEGER | PW_TYPE_MULTI, rlm_test_t, integer_m), .dflt = "2" },
+       { FR_CONF_OFFSET("integer", FR_TYPE_INTEGER, rlm_test_t, integer), .dflt = "1" },
+       { FR_CONF_OFFSET("integer_m", FR_TYPE_INTEGER | FR_TYPE_MULTI, rlm_test_t, integer_m), .dflt = "2" },
 
-       { FR_CONF_OFFSET("ipv4_addr", PW_TYPE_IPV4_ADDR, rlm_test_t, ipv4_addr), .dflt = "*" },
-       { FR_CONF_OFFSET("ipv4_addr_m", PW_TYPE_IPV4_ADDR | PW_TYPE_MULTI, rlm_test_t, ipv4_addr_m), .dflt = "*" },
+       { FR_CONF_OFFSET("ipv4_addr", FR_TYPE_IPV4_ADDR, rlm_test_t, ipv4_addr), .dflt = "*" },
+       { FR_CONF_OFFSET("ipv4_addr_m", FR_TYPE_IPV4_ADDR | FR_TYPE_MULTI, rlm_test_t, ipv4_addr_m), .dflt = "*" },
 
-       { FR_CONF_OFFSET("ipv4_prefix", PW_TYPE_IPV4_PREFIX, rlm_test_t, ipv4_addr), .dflt = "192.168.0.1/24" },
-       { FR_CONF_OFFSET("ipv4_prefix_m", PW_TYPE_IPV4_PREFIX | PW_TYPE_MULTI, rlm_test_t, ipv4_addr_m), .dflt = "192.168.0.1/24" },
+       { FR_CONF_OFFSET("ipv4_prefix", FR_TYPE_IPV4_PREFIX, rlm_test_t, ipv4_addr), .dflt = "192.168.0.1/24" },
+       { FR_CONF_OFFSET("ipv4_prefix_m", FR_TYPE_IPV4_PREFIX | FR_TYPE_MULTI, rlm_test_t, ipv4_addr_m), .dflt = "192.168.0.1/24" },
 
-       { FR_CONF_OFFSET("ipv6_addr", PW_TYPE_IPV6_ADDR, rlm_test_t, ipv6_addr), .dflt = "*" },
-       { FR_CONF_OFFSET("ipv6_addr_m", PW_TYPE_IPV6_ADDR | PW_TYPE_MULTI, rlm_test_t, ipv6_addr_m), .dflt = "*" },
+       { FR_CONF_OFFSET("ipv6_addr", FR_TYPE_IPV6_ADDR, rlm_test_t, ipv6_addr), .dflt = "*" },
+       { FR_CONF_OFFSET("ipv6_addr_m", FR_TYPE_IPV6_ADDR | FR_TYPE_MULTI, rlm_test_t, ipv6_addr_m), .dflt = "*" },
 
-       { FR_CONF_OFFSET("ipv6_prefix", PW_TYPE_IPV6_PREFIX, rlm_test_t, ipv6_prefix), .dflt = "::1/128" },
-       { FR_CONF_OFFSET("ipv6_prefix_m", PW_TYPE_IPV6_PREFIX | PW_TYPE_MULTI, rlm_test_t, ipv6_prefix_m), .dflt = "::1/128" },
+       { FR_CONF_OFFSET("ipv6_prefix", FR_TYPE_IPV6_PREFIX, rlm_test_t, ipv6_prefix), .dflt = "::1/128" },
+       { FR_CONF_OFFSET("ipv6_prefix_m", FR_TYPE_IPV6_PREFIX | FR_TYPE_MULTI, rlm_test_t, ipv6_prefix_m), .dflt = "::1/128" },
 
-       { FR_CONF_OFFSET("combo", PW_TYPE_COMBO_IP_ADDR, rlm_test_t, combo_ipaddr), .dflt = "::1/128" },
-       { FR_CONF_OFFSET("combo_m", PW_TYPE_COMBO_IP_ADDR | PW_TYPE_MULTI, rlm_test_t, combo_ipaddr_m), .dflt = "::1/128" },
+       { FR_CONF_OFFSET("combo", FR_TYPE_COMBO_IP_ADDR, rlm_test_t, combo_ipaddr), .dflt = "::1/128" },
+       { FR_CONF_OFFSET("combo_m", FR_TYPE_COMBO_IP_ADDR | FR_TYPE_MULTI, rlm_test_t, combo_ipaddr_m), .dflt = "::1/128" },
 
-       { FR_CONF_OFFSET("date", PW_TYPE_DATE, rlm_test_t, date) },
-       { FR_CONF_OFFSET("date_m", PW_TYPE_DATE | PW_TYPE_MULTI, rlm_test_t, date_m) },
+       { FR_CONF_OFFSET("date", FR_TYPE_DATE, rlm_test_t, date) },
+       { FR_CONF_OFFSET("date_m", FR_TYPE_DATE | FR_TYPE_MULTI, rlm_test_t, date_m) },
 
-       { FR_CONF_OFFSET("abinary", PW_TYPE_ABINARY, rlm_test_t, abinary) },
-       { FR_CONF_OFFSET("abinary_m", PW_TYPE_ABINARY | PW_TYPE_MULTI, rlm_test_t, abinary_m) },
+       { FR_CONF_OFFSET("abinary", FR_TYPE_ABINARY, rlm_test_t, abinary) },
+       { FR_CONF_OFFSET("abinary_m", FR_TYPE_ABINARY | FR_TYPE_MULTI, rlm_test_t, abinary_m) },
 
-       { FR_CONF_OFFSET("octets", PW_TYPE_OCTETS, rlm_test_t, octets) },
-       { FR_CONF_OFFSET("octets_m", PW_TYPE_OCTETS | PW_TYPE_MULTI, rlm_test_t, octets_m) },
+       { FR_CONF_OFFSET("octets", FR_TYPE_OCTETS, rlm_test_t, octets) },
+       { FR_CONF_OFFSET("octets_m", FR_TYPE_OCTETS | FR_TYPE_MULTI, rlm_test_t, octets_m) },
 
-       { FR_CONF_OFFSET("bytes", PW_TYPE_BYTE, rlm_test_t, byte) },
-       { FR_CONF_OFFSET("bytes_m", PW_TYPE_BYTE | PW_TYPE_MULTI, rlm_test_t, byte_m) },
+       { FR_CONF_OFFSET("bytes", FR_TYPE_BYTE, rlm_test_t, byte) },
+       { FR_CONF_OFFSET("bytes_m", FR_TYPE_BYTE | FR_TYPE_MULTI, rlm_test_t, byte_m) },
 
-       { FR_CONF_OFFSET("ifid", PW_TYPE_IFID, rlm_test_t, ifid) },
-       { FR_CONF_OFFSET("ifid_m", PW_TYPE_IFID | PW_TYPE_MULTI, rlm_test_t, ifid_m) },
+       { FR_CONF_OFFSET("ifid", FR_TYPE_IFID, rlm_test_t, ifid) },
+       { FR_CONF_OFFSET("ifid_m", FR_TYPE_IFID | FR_TYPE_MULTI, rlm_test_t, ifid_m) },
 
-       { FR_CONF_OFFSET("short", PW_TYPE_SHORT, rlm_test_t, shortint) },
-       { FR_CONF_OFFSET("short_m", PW_TYPE_SHORT | PW_TYPE_MULTI, rlm_test_t, shortint_m) },
+       { FR_CONF_OFFSET("short", FR_TYPE_SHORT, rlm_test_t, shortint) },
+       { FR_CONF_OFFSET("short_m", FR_TYPE_SHORT | FR_TYPE_MULTI, rlm_test_t, shortint_m) },
 
-       { FR_CONF_OFFSET("ethernet", PW_TYPE_ETHERNET, rlm_test_t, ethernet) },
-       { FR_CONF_OFFSET("ethernet_m", PW_TYPE_ETHERNET | PW_TYPE_MULTI, rlm_test_t, ethernet_m) },
+       { FR_CONF_OFFSET("ethernet", FR_TYPE_ETHERNET, rlm_test_t, ethernet) },
+       { FR_CONF_OFFSET("ethernet_m", FR_TYPE_ETHERNET | FR_TYPE_MULTI, rlm_test_t, ethernet_m) },
 
-       { FR_CONF_OFFSET("signed", PW_TYPE_SIGNED, rlm_test_t, sinteger) },
-       { FR_CONF_OFFSET("signed_m", PW_TYPE_SIGNED | PW_TYPE_MULTI, rlm_test_t, sinteger_m) },
+       { FR_CONF_OFFSET("signed", FR_TYPE_SIGNED, rlm_test_t, sinteger) },
+       { FR_CONF_OFFSET("signed_m", FR_TYPE_SIGNED | FR_TYPE_MULTI, rlm_test_t, sinteger_m) },
 
-       { FR_CONF_OFFSET("uint64", PW_TYPE_INTEGER64, rlm_test_t, integer64) },
-       { FR_CONF_OFFSET("uint64_m", PW_TYPE_INTEGER64 | PW_TYPE_MULTI, rlm_test_t, integer64_m) },
+       { FR_CONF_OFFSET("uint64", FR_TYPE_INTEGER64, rlm_test_t, integer64) },
+       { FR_CONF_OFFSET("uint64_m", FR_TYPE_INTEGER64 | FR_TYPE_MULTI, rlm_test_t, integer64_m) },
 
-       { FR_CONF_OFFSET("timeval", PW_TYPE_TIMEVAL, rlm_test_t, timeval) },
-       { FR_CONF_OFFSET("timeval_m", PW_TYPE_TIMEVAL | PW_TYPE_MULTI, rlm_test_t, timeval_m) },
+       { FR_CONF_OFFSET("timeval", FR_TYPE_TIMEVAL, rlm_test_t, timeval) },
+       { FR_CONF_OFFSET("timeval_m", FR_TYPE_TIMEVAL | FR_TYPE_MULTI, rlm_test_t, timeval_m) },
 
        CONF_PARSER_TERMINATOR
 };
@@ -169,7 +169,7 @@ static const CONF_PARSER module_config[] = {
 static int rlm_test_cmp(UNUSED void *instance, REQUEST *request, UNUSED VALUE_PAIR *thing, VALUE_PAIR *check,
                        UNUSED VALUE_PAIR *check_pairs, UNUSED VALUE_PAIR **reply_pairs)
 {
-       rad_assert(check->vp_type == PW_TYPE_STRING);
+       rad_assert(check->vp_type == FR_TYPE_STRING);
 
        RINFO("test-Paircmp called with \"%s\"", check->vp_strvalue);
 
index ff86c1eb5381ba94915f51335589a456c8ecdeca..eb5e0ba6bb5bf3ecdf5a8547b5448f79227dddef 100644 (file)
@@ -57,8 +57,8 @@ typedef struct rlm_unbound_t {
  *     A mapping of configuration file names to internal variables.
  */
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("filename", PW_TYPE_FILE_INPUT | PW_TYPE_REQUIRED, rlm_unbound_t, filename), .dflt = "${modconfdir}/unbound/default.conf" },
-       { FR_CONF_OFFSET("timeout", PW_TYPE_INTEGER, rlm_unbound_t, timeout), .dflt = "3000" },
+       { FR_CONF_OFFSET("filename", FR_TYPE_FILE_INPUT | FR_TYPE_REQUIRED, rlm_unbound_t, filename), .dflt = "${modconfdir}/unbound/default.conf" },
+       { FR_CONF_OFFSET("timeout", FR_TYPE_INTEGER, rlm_unbound_t, timeout), .dflt = "3000" },
        CONF_PARSER_TERMINATOR
 };
 
index 928cb286b8d75624ec7fdb52a31be24961c9d7d5..0c27c00ce6d2f0108f7e8e829a4bde8266127674 100644 (file)
@@ -67,7 +67,7 @@ typedef struct rlm_unix {
 } rlm_unix_t;
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("radwtmp", PW_TYPE_FILE_OUTPUT | PW_TYPE_REQUIRED, rlm_unix_t, radwtmp), .dflt = "NULL" },
+       { FR_CONF_OFFSET("radwtmp", FR_TYPE_FILE_OUTPUT | FR_TYPE_REQUIRED, rlm_unix_t, radwtmp), .dflt = "NULL" },
        CONF_PARSER_TERMINATOR
 };
 
index c9fa9dd1b1e0d29d5eb8fb55b828d2bb4445e873..0419532100fa95eefeb3ee8c741a3b48cc49584e 100644 (file)
@@ -44,7 +44,7 @@ static ssize_t unpack_xlat(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
        char *p;
        size_t len, input_len;
        int offset;
-       PW_TYPE type;
+       fr_type_t type;
        fr_dict_attr_t const *da;
        VALUE_PAIR *vp, *cast;
        uint8_t const *input;
@@ -92,8 +92,8 @@ static ssize_t unpack_xlat(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
        if (*data_name == '&') {
                if (radius_get_vp(&vp, request, data_name) < 0) goto nothing;
 
-               if ((vp->vp_type != PW_TYPE_OCTETS) &&
-                   (vp->vp_type != PW_TYPE_STRING)) {
+               if ((vp->vp_type != FR_TYPE_OCTETS) &&
+                   (vp->vp_type != FR_TYPE_STRING)) {
                        REDEBUG("unpack requires the input attribute to be 'string' or 'octets'");
                        goto nothing;
                }
@@ -122,8 +122,8 @@ static ssize_t unpack_xlat(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
                goto nothing;
        }
 
-       type = fr_str2int(dict_attr_types, data_type, PW_TYPE_INVALID);
-       if (type == PW_TYPE_INVALID) {
+       type = fr_str2int(dict_attr_types, data_type, FR_TYPE_INVALID);
+       if (type == FR_TYPE_INVALID) {
                REDEBUG("Invalid data type '%s'", data_type);
                goto nothing;
        }
@@ -157,17 +157,17 @@ static ssize_t unpack_xlat(UNUSED TALLOC_CTX *ctx, char **out, size_t outlen,
         *      Hacks
         */
        switch (type) {
-       case PW_TYPE_SIGNED:
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_DATE:
+       case FR_TYPE_SIGNED:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_DATE:
                cast->vp_integer = ntohl(cast->vp_integer);
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                cast->vp_short = ((input[offset] << 8) | input[offset + 1]);
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                cast->vp_integer64 = ntohll(cast->vp_integer64);
                break;
 
index d34b073a60794758f4986072f3e9e117bc610a4f..d6489f0a6b140f8ff58185f9b1a10f36e355d488 100644 (file)
@@ -38,7 +38,7 @@ static rlm_rcode_t CC_HINT(nonnull) mod_utf8_clean(UNUSED void *instance, UNUSED
        for (vp = fr_pair_cursor_init(&cursor, &request->packet->vps);
             vp;
             vp = fr_pair_cursor_next(&cursor)) {
-               if (vp->vp_type != PW_TYPE_STRING) continue;
+               if (vp->vp_type != FR_TYPE_STRING) continue;
 
                for (i = 0; i < vp->vp_length; i += len) {
                        len = fr_utf8_char(&vp->vp_octets[i], -1);
index cd9461743e19c37980bcc40ac64266f56f539d8c..2cfd4e23aaa674b4ee6e4709cd8d9f7d8238b353 100644 (file)
@@ -42,7 +42,7 @@ typedef struct rlm_wimax_t {
 } rlm_wimax_t;
 
 static const CONF_PARSER module_config[] = {
-  { FR_CONF_OFFSET("delete_mppe_keys", PW_TYPE_BOOLEAN, rlm_wimax_t, delete_mppe_keys), .dflt = "no" },
+  { FR_CONF_OFFSET("delete_mppe_keys", FR_TYPE_BOOLEAN, rlm_wimax_t, delete_mppe_keys), .dflt = "no" },
        CONF_PARSER_TERMINATOR
 };
 
index 1673d008e1d28172c1044739c09f37169ad5a65f..4bd13fb8e10b8559d9cbb4700846c86b3251ef82 100644 (file)
@@ -37,16 +37,16 @@ RCSID("$Id$")
 #include <wbclient.h>
 
 static const CONF_PARSER group_config[] = {
-       { FR_CONF_OFFSET("group_search_username", PW_TYPE_TMPL, rlm_winbind_t, group_username) },
-       { FR_CONF_OFFSET("group_add_domain", PW_TYPE_BOOLEAN, rlm_winbind_t, group_add_domain), .dflt = "yes" },
-       { FR_CONF_OFFSET("group_attribute", PW_TYPE_STRING, rlm_winbind_t, group_attribute) },
+       { FR_CONF_OFFSET("group_search_username", FR_TYPE_TMPL, rlm_winbind_t, group_username) },
+       { FR_CONF_OFFSET("group_add_domain", FR_TYPE_BOOLEAN, rlm_winbind_t, group_add_domain), .dflt = "yes" },
+       { FR_CONF_OFFSET("group_attribute", FR_TYPE_STRING, rlm_winbind_t, group_attribute) },
        CONF_PARSER_TERMINATOR
 };
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("winbind_username", PW_TYPE_TMPL, rlm_winbind_t, wb_username) },
-       { FR_CONF_OFFSET("winbind_domain", PW_TYPE_TMPL, rlm_winbind_t, wb_domain) },
-       { FR_CONF_POINTER("group", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) group_config },
+       { FR_CONF_OFFSET("winbind_username", FR_TYPE_TMPL, rlm_winbind_t, wb_username) },
+       { FR_CONF_OFFSET("winbind_domain", FR_TYPE_TMPL, rlm_winbind_t, wb_domain) },
+       { FR_CONF_POINTER("group", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) group_config },
        CONF_PARSER_TERMINATOR
 };
 
index 773bf2447b2c3671f003a5f82db99715333a3632..98960988dd22a0dc8a67093e61303029fc6be4b4 100644 (file)
@@ -29,19 +29,19 @@ RCSID("$Id$")
 
 #ifdef HAVE_YKCLIENT
 static const CONF_PARSER validation_config[] = {
-       { FR_CONF_OFFSET("client_id", PW_TYPE_INTEGER, rlm_yubikey_t, client_id), .dflt = 0 },
-       { FR_CONF_OFFSET("api_key", PW_TYPE_STRING | PW_TYPE_SECRET, rlm_yubikey_t, api_key) },
+       { FR_CONF_OFFSET("client_id", FR_TYPE_INTEGER, rlm_yubikey_t, client_id), .dflt = 0 },
+       { FR_CONF_OFFSET("api_key", FR_TYPE_STRING | FR_TYPE_SECRET, rlm_yubikey_t, api_key) },
        CONF_PARSER_TERMINATOR
 };
 #endif
 
 static const CONF_PARSER module_config[] = {
-       { FR_CONF_OFFSET("id_length", PW_TYPE_INTEGER, rlm_yubikey_t, id_len), .dflt = "12" },
-       { FR_CONF_OFFSET("split", PW_TYPE_BOOLEAN, rlm_yubikey_t, split), .dflt = "yes" },
-       { FR_CONF_OFFSET("decrypt", PW_TYPE_BOOLEAN, rlm_yubikey_t, decrypt), .dflt = "no" },
-       { FR_CONF_OFFSET("validate", PW_TYPE_BOOLEAN, rlm_yubikey_t, validate), .dflt = "no" },
+       { FR_CONF_OFFSET("id_length", FR_TYPE_INTEGER, rlm_yubikey_t, id_len), .dflt = "12" },
+       { FR_CONF_OFFSET("split", FR_TYPE_BOOLEAN, rlm_yubikey_t, split), .dflt = "yes" },
+       { FR_CONF_OFFSET("decrypt", FR_TYPE_BOOLEAN, rlm_yubikey_t, decrypt), .dflt = "no" },
+       { FR_CONF_OFFSET("validate", FR_TYPE_BOOLEAN, rlm_yubikey_t, validate), .dflt = "no" },
 #ifdef HAVE_YKCLIENT
-       { FR_CONF_POINTER("validation", PW_TYPE_SUBSECTION, NULL), .subcs = (void const *) validation_config },
+       { FR_CONF_POINTER("validation", FR_TYPE_SUBSECTION, NULL), .subcs = (void const *) validation_config },
 #endif
        CONF_PARSER_TERMINATOR
 };
index 1397d09db8c7d11de1514c771d1239b161978af4..dbeeb85c389ced11962cb93ead52c25e70cb71b5 100644 (file)
@@ -41,39 +41,39 @@ RCSID("$Id$")
  * These sizes may be different than the sizes of INTERNAL formats, PRESENTATION
  * formats and generic NETWORK formats.
  */
-size_t const fr_radius_attr_sizes[PW_TYPE_MAX + 1][2] = {
-       [PW_TYPE_INVALID]       = {~0, 0},      //!< Ensure array starts at 0 (umm?)
+size_t const fr_radius_attr_sizes[FR_TYPE_MAX + 1][2] = {
+       [FR_TYPE_INVALID]       = {~0, 0},      //!< Ensure array starts at 0 (umm?)
 
-       [PW_TYPE_STRING]        = {0, ~0},
-       [PW_TYPE_OCTETS]        = {0, ~0},
+       [FR_TYPE_STRING]        = {0, ~0},
+       [FR_TYPE_OCTETS]        = {0, ~0},
 
-       [PW_TYPE_IPV4_ADDR]     = {4, 4},
-       [PW_TYPE_IPV4_PREFIX]   = {6, 6},
-       [PW_TYPE_IPV6_ADDR]     = {16, 16},
-       [PW_TYPE_IPV6_PREFIX]   = {2, 18},
-       [PW_TYPE_COMBO_IP_ADDR] = {4, 16},
-       [PW_TYPE_IFID]          = {8, 8},
-       [PW_TYPE_ETHERNET]      = {6, 6},
+       [FR_TYPE_IPV4_ADDR]     = {4, 4},
+       [FR_TYPE_IPV4_PREFIX]   = {6, 6},
+       [FR_TYPE_IPV6_ADDR]     = {16, 16},
+       [FR_TYPE_IPV6_PREFIX]   = {2, 18},
+       [FR_TYPE_COMBO_IP_ADDR] = {4, 16},
+       [FR_TYPE_IFID]          = {8, 8},
+       [FR_TYPE_ETHERNET]      = {6, 6},
 
-       [PW_TYPE_BOOLEAN]       = {1, 1},
-       [PW_TYPE_BYTE]          = {1, 1},
-       [PW_TYPE_SHORT]         = {2, 2},
-       [PW_TYPE_INTEGER]       = {4, 4},
-       [PW_TYPE_INTEGER64]     = {8, 8},
+       [FR_TYPE_BOOLEAN]       = {1, 1},
+       [FR_TYPE_BYTE]          = {1, 1},
+       [FR_TYPE_SHORT]         = {2, 2},
+       [FR_TYPE_INTEGER]       = {4, 4},
+       [FR_TYPE_INTEGER64]     = {8, 8},
 
-       [PW_TYPE_DATE]          = {4, 4},
-       [PW_TYPE_ABINARY]       = {32, ~0},
+       [FR_TYPE_DATE]          = {4, 4},
+       [FR_TYPE_ABINARY]       = {32, ~0},
 
-       [PW_TYPE_TLV]           = {2, ~0},
-       [PW_TYPE_STRUCT]        = {1, ~0},
+       [FR_TYPE_TLV]           = {2, ~0},
+       [FR_TYPE_STRUCT]        = {1, ~0},
 
-       [PW_TYPE_EXTENDED]      = {2, ~0},
-       [PW_TYPE_LONG_EXTENDED] = {3, ~0},
+       [FR_TYPE_EXTENDED]      = {2, ~0},
+       [FR_TYPE_LONG_EXTENDED] = {3, ~0},
 
-       [PW_TYPE_VSA]           = {4, ~0},
-       [PW_TYPE_EVS]           = {6, ~0},
+       [FR_TYPE_VSA]           = {4, ~0},
+       [FR_TYPE_EVS]           = {6, ~0},
 
-       [PW_TYPE_MAX]           = {~0, 0}       //!< Ensure array covers all types.
+       [FR_TYPE_MAX]           = {~0, 0}       //!< Ensure array covers all types.
 };
 
 /*
@@ -170,13 +170,13 @@ char const *fr_packet_codes[FR_MAX_PACKET_CODE] = {
 size_t fr_radius_attr_len(VALUE_PAIR const *vp)
 {
        switch (vp->vp_type) {
-       case PW_TYPE_VARIABLE_SIZE:
+       case FR_TYPE_VARIABLE_SIZE:
                return vp->vp_length;
 
        default:
                return fr_radius_attr_sizes[vp->vp_type][0];
 
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                if (!fr_cond_assert(0)) return 0;
        }
 }
index 629acc0dcb9e34d4088f681de8c87bb39a6f1239..52262f178577967b2973926a0e48f0e26dc4f105 100644 (file)
@@ -505,7 +505,7 @@ static ssize_t decode_vsa_internal(TALLOC_CTX *ctx, vp_cursor_t *cursor,
        /*
         *      Parent must be a vendor
         */
-       if (!fr_cond_assert(parent->type == PW_TYPE_VENDOR)) {
+       if (!fr_cond_assert(parent->type == FR_TYPE_VENDOR)) {
                fr_strerror_printf("%s: Internal sanity check failed", __FUNCTION__);
                return -1;
        }
@@ -776,7 +776,7 @@ static ssize_t decode_vsa(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dict_attr_t c
        /*
         *      Container must be a VSA
         */
-       if (!fr_cond_assert(parent->type == PW_TYPE_VSA)) return -1;
+       if (!fr_cond_assert(parent->type == FR_TYPE_VSA)) return -1;
 
        if (attr_len > packet_len) return -1;
        if (attr_len < 5) return -1; /* vid, value */
@@ -945,12 +945,12 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                 */
                if (data_len >= sizeof(buffer)) return -1;
 
-               if (parent->type == PW_TYPE_STRING) {
+               if (parent->type == FR_TYPE_STRING) {
                        memcpy(buffer, p + 1, data_len - 1);
                        tag = p[0];
                        data_len -= 1;
 
-               } else if (parent->type == PW_TYPE_INTEGER) {
+               } else if (parent->type == FR_TYPE_INTEGER) {
                        memcpy(buffer, p, attr_len);
                        tag = buffer[0];
                        buffer[0] = 0;
@@ -1035,7 +1035,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                        /*
                         *      Chop the attribute to its maximum length.
                         */
-                       if ((parent->type == PW_TYPE_OCTETS) &&
+                       if ((parent->type == FR_TYPE_OCTETS) &&
                            (parent->flags.length && (data_len > parent->flags.length))) {
                                    data_len = parent->flags.length;
                            }
@@ -1049,31 +1049,31 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
         */
        FR_PROTO_TRACE("Type \"%s\" (%u)", fr_int2str(dict_attr_types, parent->type, "?Unknown?"), parent->type);
        switch (parent->type) {
-       case PW_TYPE_STRING:
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_STRING:
+       case FR_TYPE_OCTETS:
                break;
 
-       case PW_TYPE_ABINARY:
+       case FR_TYPE_ABINARY:
                if (data_len > sizeof(vp->vp_filter)) goto raw;
                break;
 
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_DATE:
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_DATE:
+       case FR_TYPE_SIGNED:
                if (data_len != 4) goto raw;
                break;
 
-       case PW_TYPE_INTEGER64:
-       case PW_TYPE_IFID:
+       case FR_TYPE_INTEGER64:
+       case FR_TYPE_IFID:
                if (data_len != 8) goto raw;
                break;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                if (data_len != 16) goto raw;
                break;
 
-       case PW_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
                if (data_len != 6) goto raw;
                if (p[0] != 0) goto raw;
                if ((p[1] & 0x3f) > 32) goto raw;
@@ -1091,7 +1091,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                if (memcmp(p + 2, (uint8_t *)&tmp_prefix.addr.v4.s_addr, data_len - 2) != 0) goto raw;
                break;
 
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
        {
                if ((data_len < 2) || (data_len > 18)) goto raw;
                if (p[0] != 0) goto raw;        /* First byte is always 0 */
@@ -1117,23 +1117,23 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
        }
                break;
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                if (data_len != 1) goto raw;
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                if (data_len != 2) goto raw;
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                if (data_len != 6) goto raw;
                break;
 
-       case PW_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_COMBO_IP_ADDR:
                if (data_len == 4) {
-                       child = fr_dict_attr_by_type(parent, PW_TYPE_IPV4_ADDR);
+                       child = fr_dict_attr_by_type(parent, FR_TYPE_IPV4_ADDR);
                } else if (data_len == 16) {
-                       child = fr_dict_attr_by_type(parent, PW_TYPE_IPV6_ADDR);
+                       child = fr_dict_attr_by_type(parent, FR_TYPE_IPV6_ADDR);
                } else {
                        goto raw;
                }
@@ -1146,7 +1146,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                 *      recursion!  Ask yourself, "is recursion OK?"
                 */
 
-       case PW_TYPE_EXTENDED:
+       case FR_TYPE_EXTENDED:
                if (data_len < 2) goto raw; /* etype, value */
 
                child = fr_dict_attr_child_by_num(parent, p[0]);
@@ -1164,7 +1164,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                if (rcode < 0) goto raw;
                return 1 + rcode;
 
-       case PW_TYPE_LONG_EXTENDED:
+       case FR_TYPE_LONG_EXTENDED:
                if (data_len < 3) goto raw; /* etype, flags, value */
 
                child = fr_dict_attr_child_by_num(parent, p[0]);
@@ -1207,7 +1207,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                 */
                return decode_extended(ctx, cursor, child, data, attr_len, packet_len, decoder_ctx);
 
-       case PW_TYPE_EVS:
+       case FR_TYPE_EVS:
        {
                fr_dict_attr_t const *vendor_child;
 
@@ -1263,7 +1263,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                return 5 + rcode;
        }
 
-       case PW_TYPE_TLV:
+       case FR_TYPE_TLV:
                /*
                 *      We presume that the TLVs all fit into one
                 *      attribute, OR they've already been grouped
@@ -1273,7 +1273,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                if (rcode < 0) goto raw;
                return rcode;
 
-       case PW_TYPE_STRUCT:
+       case FR_TYPE_STRUCT:
                /*
                 *      We presume that the struct fits into one
                 *      attribute, OR it's already been grouped
@@ -1283,7 +1283,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                if (rcode < 0) goto raw;
                return rcode;
 
-       case PW_TYPE_VSA:
+       case FR_TYPE_VSA:
                /*
                 *      VSAs can be WiMAX, in which case they don't
                 *      fit into one attribute.
@@ -1309,7 +1309,7 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
                /*
                 *      Fix for Coverity.
                 */
-               if (parent->type != PW_TYPE_OCTETS) {
+               if (parent->type != FR_TYPE_OCTETS) {
                        fr_dict_unknown_free(&parent);
                        return -1;
                }
@@ -1326,71 +1326,71 @@ ssize_t fr_radius_decode_pair_value(TALLOC_CTX *ctx, vp_cursor_t *cursor, fr_dic
        vp->tag = tag;
 
        switch (parent->type) {
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                fr_pair_value_bstrncpy(vp, p, data_len);        /* sets vp_length */
                break;
 
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                fr_pair_value_memcpy(vp, p, data_len);          /* sets vp_length */
                break;
 
-       case PW_TYPE_ABINARY:
+       case FR_TYPE_ABINARY:
                if (data_len > sizeof(vp->vp_filter)) data_len = sizeof(vp->vp_filter);
                memcpy(vp->vp_filter, p, data_len);
                vp->vp_length = data_len;
                break;
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                vp->vp_byte = p[0];
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                vp->vp_short = (p[0] << 8) | p[1];
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                memcpy(&vp->vp_integer, p, 4);
                vp->vp_integer = ntohl(vp->vp_integer);
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                memcpy(&vp->vp_integer64, p, 8);
                vp->vp_integer64 = ntohll(vp->vp_integer64);
                break;
 
-       case PW_TYPE_DATE:
+       case FR_TYPE_DATE:
                memcpy(&vp->vp_date, p, 4);
                vp->vp_date = ntohl(vp->vp_date);
                break;
 
-       case PW_TYPE_ETHERNET:
+       case FR_TYPE_ETHERNET:
                memcpy(vp->vp_ether, p, 6);
                break;
 
-       case PW_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV4_ADDR:
                vp->vp_ip.af = AF_INET;
                vp->vp_ip.prefix = 32;
                vp->vp_ip.scope_id = 0;
                memcpy(&vp->vp_ipv4addr, p, 4);
                break;
 
-       case PW_TYPE_IFID:
+       case FR_TYPE_IFID:
                memcpy(vp->vp_ifid, p, 8);
                break;
 
-       case PW_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_ADDR:
                vp->vp_ip.af = AF_INET6;
                vp->vp_ip.prefix = 128;
                vp->vp_ip.scope_id = 0;
                memcpy(&vp->vp_ipv6addr, p, 16);
                break;
 
-       case PW_TYPE_IPV4_PREFIX:
-       case PW_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
+       case FR_TYPE_IPV6_PREFIX:
                memcpy(&vp->vp_ip, &tmp_prefix, sizeof(vp->vp_ip));
                break;
 
-       case PW_TYPE_SIGNED:    /* overloaded with vp_integer */
+       case FR_TYPE_SIGNED:    /* overloaded with vp_integer */
                memcpy(&vp->vp_integer, p, 4);
                vp->vp_integer = ntohl(vp->vp_integer);
                break;
index 2967e404574730f23a54e717b1bdfa8a15f8dcd7..5db5cc7a81d038402af826dc140d3588dc243791 100644 (file)
@@ -437,73 +437,73 @@ ssize_t fr_radius_encode_value_hton(uint8_t *out, size_t outlen, VALUE_PAIR cons
        if (outlen > len) outlen = len;
 
        switch (vp->vp_type) {
-       case PW_TYPE_STRING:
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_STRING:
+       case FR_TYPE_OCTETS:
                memcpy(out, vp->vp_ptr, outlen);
                return outlen;
 
                /*
                 *      All of these values are at the same location.
                 */
-       case PW_TYPE_IFID:
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV6_PREFIX:
-       case PW_TYPE_IPV4_PREFIX:
-       case PW_TYPE_ABINARY:
-       case PW_TYPE_ETHERNET:
-       case PW_TYPE_COMBO_IP_ADDR:
+       case FR_TYPE_IFID:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
+       case FR_TYPE_ABINARY:
+       case FR_TYPE_ETHERNET:
+       case FR_TYPE_COMBO_IP_ADDR:
                memcpy(out, &vp->data.datum, outlen);
                break;
 
-       case PW_TYPE_BOOLEAN:
+       case FR_TYPE_BOOLEAN:
                out[0] = vp->vp_byte & 0x01;
                break;
 
-       case PW_TYPE_BYTE:
+       case FR_TYPE_BYTE:
                out[0] = vp->vp_byte & 0xff;
                break;
 
-       case PW_TYPE_SHORT:
+       case FR_TYPE_SHORT:
                out[0] = (vp->vp_short >> 8) & 0xff;
                out[1] = vp->vp_short & 0xff;
                break;
 
-       case PW_TYPE_INTEGER:
+       case FR_TYPE_INTEGER:
                lvalue = htonl(vp->vp_integer);
                memcpy(out, &lvalue, sizeof(lvalue));
                break;
 
-       case PW_TYPE_INTEGER64:
+       case FR_TYPE_INTEGER64:
                lvalue64 = htonll(vp->vp_integer64);
                memcpy(out, &lvalue64, sizeof(lvalue64));
                break;
 
-       case PW_TYPE_DATE:
+       case FR_TYPE_DATE:
                lvalue = htonl(vp->vp_date);
                memcpy(out, &lvalue, sizeof(lvalue));
                break;
 
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_SIGNED:
        {
                int32_t slvalue = htonl(vp->vp_signed);
                memcpy(out, &slvalue, sizeof(slvalue));
                break;
        }
 
-       case PW_TYPE_INVALID:
-       case PW_TYPE_EXTENDED:
-       case PW_TYPE_LONG_EXTENDED:
-       case PW_TYPE_COMBO_IP_PREFIX:
-       case PW_TYPE_EVS:
-       case PW_TYPE_VSA:
-       case PW_TYPE_VENDOR:
-       case PW_TYPE_TLV:
-       case PW_TYPE_STRUCT:
-       case PW_TYPE_SIZE:
-       case PW_TYPE_TIMEVAL:
-       case PW_TYPE_DECIMAL:
-       case PW_TYPE_MAX:
+       case FR_TYPE_INVALID:
+       case FR_TYPE_EXTENDED:
+       case FR_TYPE_LONG_EXTENDED:
+       case FR_TYPE_COMBO_IP_PREFIX:
+       case FR_TYPE_EVS:
+       case FR_TYPE_VSA:
+       case FR_TYPE_VENDOR:
+       case FR_TYPE_TLV:
+       case FR_TYPE_STRUCT:
+       case FR_TYPE_SIZE:
+       case FR_TYPE_TIMEVAL:
+       case FR_TYPE_DECIMAL:
+       case FR_TYPE_MAX:
                fr_strerror_printf("Cannot get data for VALUE_PAIR type %i", vp->vp_type);
                return -1;
 
@@ -526,7 +526,7 @@ static ssize_t encode_struct(uint8_t *out, size_t outlen,
        VERIFY_VP(fr_pair_cursor_current(cursor));
        FR_PROTO_STACK_PRINT(tlv_stack, depth);
 
-       if (tlv_stack[depth]->type != PW_TYPE_STRUCT) {
+       if (tlv_stack[depth]->type != FR_TYPE_STRUCT) {
                fr_strerror_printf("%s: Expected type \"struct\" got \"%s\"", __FUNCTION__,
                                   fr_int2str(dict_attr_types, tlv_stack[depth]->type, "?Unknown?"));
                return -1;
@@ -617,7 +617,7 @@ static ssize_t encode_tlv_hdr_internal(uint8_t *out, size_t outlen,
                /*
                 *      Determine the nested type and call the appropriate encoder
                 */
-               if (tlv_stack[depth + 1]->type == PW_TYPE_TLV) {
+               if (tlv_stack[depth + 1]->type == FR_TYPE_TLV) {
                        len = encode_tlv_hdr(p, sublen, tlv_stack, depth + 1, cursor, encoder_ctx);
                } else {
                        len = encode_rfc_hdr_internal(p, sublen, tlv_stack, depth + 1, cursor, encoder_ctx);
@@ -656,7 +656,7 @@ static ssize_t encode_tlv_hdr(uint8_t *out, size_t outlen,
        VERIFY_VP(fr_pair_cursor_current(cursor));
        FR_PROTO_STACK_PRINT(tlv_stack, depth);
 
-       if (tlv_stack[depth]->type != PW_TYPE_TLV) {
+       if (tlv_stack[depth]->type != FR_TYPE_TLV) {
                fr_strerror_printf("%s: Expected type \"tlv\" got \"%s\"", __FUNCTION__,
                                   fr_int2str(dict_attr_types, tlv_stack[depth]->type, "?Unknown?"));
                return -1;
@@ -712,14 +712,14 @@ static ssize_t encode_value(uint8_t *out, size_t outlen,
         *      It's a little weird to consider a TLV as a value,
         *      but it seems to work OK.
         */
-       if (da->type == PW_TYPE_TLV) {
+       if (da->type == FR_TYPE_TLV) {
                return encode_tlv_hdr(out, outlen, tlv_stack, depth, cursor, encoder_ctx);
        }
 
        /*
         *      This has special requirements.
         */
-       if (da->type == PW_TYPE_STRUCT) {
+       if (da->type == FR_TYPE_STRUCT) {
                len = encode_struct(out, outlen, tlv_stack, depth, cursor, encoder_ctx);
                if (len < 0) return len;
 
@@ -743,7 +743,7 @@ static ssize_t encode_value(uint8_t *out, size_t outlen,
        }
 
        switch (da->type) {
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                fr_strerror_printf("%s: Called with structural type %s", __FUNCTION__,
                                   fr_int2str(dict_attr_types, tlv_stack[depth]->type, "?Unknown?"));
                return -1;
@@ -758,7 +758,7 @@ static ssize_t encode_value(uint8_t *out, size_t outlen,
        len = fr_radius_attr_len(vp);
 
        switch (da->type) {
-       case PW_TYPE_OCTETS:
+       case FR_TYPE_OCTETS:
                /*
                 *      If asked to encode more data than allowed, we
                 *      encode only the allowed data.
@@ -768,7 +768,7 @@ static ssize_t encode_value(uint8_t *out, size_t outlen,
                }
                /* FALL-THROUGH */
 
-       case PW_TYPE_STRING:
+       case FR_TYPE_STRING:
                data = vp->vp_ptr;
                if (!data) {
                        fr_strerror_printf("ERROR: Cannot encode NULL data");
@@ -779,20 +779,20 @@ static ssize_t encode_value(uint8_t *out, size_t outlen,
                /*
                 *      Simple data types use the common encoder.
                 */
-       case PW_TYPE_IFID:
-       case PW_TYPE_IPV4_ADDR:
-       case PW_TYPE_IPV6_ADDR:
-       case PW_TYPE_IPV6_PREFIX:
-       case PW_TYPE_IPV4_PREFIX:
-       case PW_TYPE_ABINARY:
-       case PW_TYPE_ETHERNET:  /* just in case */
-       case PW_TYPE_BYTE:
-       case PW_TYPE_BOOLEAN:
-       case PW_TYPE_SHORT:
-       case PW_TYPE_INTEGER:
-       case PW_TYPE_INTEGER64:
-       case PW_TYPE_DATE:
-       case PW_TYPE_SIGNED:
+       case FR_TYPE_IFID:
+       case FR_TYPE_IPV4_ADDR:
+       case FR_TYPE_IPV6_ADDR:
+       case FR_TYPE_IPV6_PREFIX:
+       case FR_TYPE_IPV4_PREFIX:
+       case FR_TYPE_ABINARY:
+       case FR_TYPE_ETHERNET:  /* just in case */
+       case FR_TYPE_BYTE:
+       case FR_TYPE_BOOLEAN:
+       case FR_TYPE_SHORT:
+       case FR_TYPE_INTEGER:
+       case FR_TYPE_INTEGER64:
+       case FR_TYPE_DATE:
+       case FR_TYPE_SIGNED:
                len = fr_radius_encode_value_hton(buffer, sizeof(buffer), vp);
                if (len < 0) return -1;
                data = buffer;
@@ -827,7 +827,7 @@ static ssize_t encode_value(uint8_t *out, size_t outlen,
         *      Attributes with encrypted values MUST be less than
         *      128 bytes long.
         */
-       if (da->type != PW_TYPE_STRUCT) switch (vp->da->flags.encrypt) {
+       if (da->type != FR_TYPE_STRUCT) switch (vp->da->flags.encrypt) {
        case FLAG_ENCRYPT_USER_PASSWORD:
                encode_password(ptr, &len, data, len, packet_ctx->secret, packet_ctx->vector);
                break;
@@ -865,11 +865,11 @@ static ssize_t encode_value(uint8_t *out, size_t outlen,
 
        default:
                if (vp->da->flags.has_tag && TAG_VALID(vp->tag)) {
-                       if (vp->vp_type == PW_TYPE_STRING) {
+                       if (vp->vp_type == FR_TYPE_STRING) {
                                if (len > ((ssize_t) (outlen - 1))) len = outlen - 1;
                                ptr[0] = vp->tag;
                                ptr++;
-                       } else if (vp->vp_type == PW_TYPE_INTEGER) {
+                       } else if (vp->vp_type == FR_TYPE_INTEGER) {
                                buffer[0] = vp->tag;
                        } /* else it can't be any other type */
                }
@@ -949,9 +949,9 @@ static int encode_extended_hdr(uint8_t *out, size_t outlen,
                               vp_cursor_t *cursor, void *encoder_ctx)
 {
        int                     len;
-       PW_TYPE                 attr_type;
+       fr_type_t                       attr_type;
 #ifndef NDEBUG
-       PW_TYPE                 vsa_type;
+       fr_type_t                       vsa_type;
 #endif
        uint8_t                 *start = out;
        VALUE_PAIR const        *vp = fr_pair_cursor_current(cursor);
@@ -959,7 +959,7 @@ static int encode_extended_hdr(uint8_t *out, size_t outlen,
        VERIFY_VP(vp);
        FR_PROTO_STACK_PRINT(tlv_stack, depth);
 
-       if ((tlv_stack[depth]->type != PW_TYPE_EXTENDED) && (tlv_stack[depth]->type != PW_TYPE_LONG_EXTENDED)) {
+       if ((tlv_stack[depth]->type != FR_TYPE_EXTENDED) && (tlv_stack[depth]->type != FR_TYPE_LONG_EXTENDED)) {
                fr_strerror_printf("%s : Called for non-extended attribute type %s",
                                   __FUNCTION__, fr_int2str(dict_attr_types, tlv_stack[depth]->type, "?Unknown?"));
                return -1;
@@ -981,7 +981,7 @@ static int encode_extended_hdr(uint8_t *out, size_t outlen,
        /*
         *      Encode the header for "short" or "long" attributes
         */
-       if (attr_type == PW_TYPE_EXTENDED) {
+       if (attr_type == FR_TYPE_EXTENDED) {
                if (outlen < 3) return 0;
 
                out[1] = 3;
@@ -1001,7 +1001,7 @@ static int encode_extended_hdr(uint8_t *out, size_t outlen,
        /*
         *      Handle EVS
         */
-       if (tlv_stack[depth]->type == PW_TYPE_EVS) {
+       if (tlv_stack[depth]->type == FR_TYPE_EVS) {
                uint8_t *evs = out + out[1];
                uint32_t lvalue;
 
@@ -1025,9 +1025,9 @@ static int encode_extended_hdr(uint8_t *out, size_t outlen,
         *      "outlen" can be larger than 255 here, but only for the
         *      "long" extended type.
         */
-       if ((attr_type == PW_TYPE_EXTENDED) && (outlen > 255)) outlen = 255;
+       if ((attr_type == FR_TYPE_EXTENDED) && (outlen > 255)) outlen = 255;
 
-       if (tlv_stack[depth]->type == PW_TYPE_TLV) {
+       if (tlv_stack[depth]->type == FR_TYPE_TLV) {
                len = encode_tlv_hdr_internal(out + out[1], outlen - out[1], tlv_stack, depth, cursor, encoder_ctx);
        } else {
                len = encode_value(out + out[1], outlen - out[1], tlv_stack, depth, cursor, encoder_ctx);
@@ -1051,7 +1051,7 @@ static int encode_extended_hdr(uint8_t *out, size_t outlen,
                int jump = 3;
 
                fprintf(fr_log_fp, "\t\t%02x %02x  ", out[0], out[1]);
-               if (attr_type == PW_TYPE_EXTENDED) {
+               if (attr_type == FR_TYPE_EXTENDED) {
                        fprintf(fr_log_fp, "%02x  ", out[2]);
 
                } else {
@@ -1059,7 +1059,7 @@ static int encode_extended_hdr(uint8_t *out, size_t outlen,
                        jump = 4;
                }
 
-               if (vsa_type == PW_TYPE_EVS) {
+               if (vsa_type == FR_TYPE_EVS) {
                        fprintf(fr_log_fp, "%02x%02x%02x%02x (%u)  %02x  ",
                                out[jump], out[jump + 1],
                                out[jump + 2], out[jump + 3],
@@ -1151,7 +1151,7 @@ static ssize_t encode_rfc_hdr_internal(uint8_t *out, size_t outlen,
        FR_PROTO_STACK_PRINT(tlv_stack, depth);
 
        switch (tlv_stack[depth]->type) {
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                fr_strerror_printf("%s: Called with structural type %s", __FUNCTION__,
                                   fr_int2str(dict_attr_types, tlv_stack[depth]->type, "?Unknown?"));
                return -1;
@@ -1205,14 +1205,14 @@ static ssize_t encode_vendor_attr_hdr(uint8_t *out, size_t outlen,
 
        dv = tlv_stack[depth++];
 
-       if (dv->type != PW_TYPE_VENDOR) {
+       if (dv->type != FR_TYPE_VENDOR) {
                fr_strerror_printf("Expected Vendor");
                return -1;
        }
 
        da = tlv_stack[depth];
 
-       if ((da->type != PW_TYPE_TLV) && (dv->flags.type_size == 1) && (dv->flags.length == 1)) {
+       if ((da->type != FR_TYPE_TLV) && (dv->flags.type_size == 1) && (dv->flags.length == 1)) {
                return encode_rfc_hdr_internal(out, outlen, tlv_stack, depth, cursor, encoder_ctx);
        }
 
@@ -1270,7 +1270,7 @@ static ssize_t encode_vendor_attr_hdr(uint8_t *out, size_t outlen,
         *      if this is a TLV, we must process it via the
         *      internal tlv function, else we get a double TLV header.
         */
-       if (tlv_stack[depth]->type == PW_TYPE_TLV) {
+       if (tlv_stack[depth]->type == FR_TYPE_TLV) {
                len = encode_tlv_hdr_internal(out + hdr_len, outlen - hdr_len, tlv_stack, depth, cursor, encoder_ctx);
        } else {
                len = encode_value(out + hdr_len, outlen - hdr_len, tlv_stack, depth, cursor, encoder_ctx);
@@ -1378,7 +1378,7 @@ static int encode_wimax_hdr(uint8_t *out, size_t outlen,
         *      "outlen" can be larger than 255 because of the "continuation" byte.
         */
 
-       if (tlv_stack[depth]->type == PW_TYPE_TLV) {
+       if (tlv_stack[depth]->type == FR_TYPE_TLV) {
                len = encode_tlv_hdr_internal(out + out[1], outlen - out[1], tlv_stack, depth, cursor, encoder_ctx);
                if (len <= 0) return len;
        } else {
@@ -1426,7 +1426,7 @@ static int encode_vsa_hdr(uint8_t *out, size_t outlen,
 
        FR_PROTO_STACK_PRINT(tlv_stack, depth);
 
-       if (da->type != PW_TYPE_VSA) {
+       if (da->type != FR_TYPE_VSA) {
                fr_strerror_printf("%s: Expected type \"vsa\" got \"%s\"", __FUNCTION__,
                                   fr_int2str(dict_attr_types, da->type, "?Unknown?"));
                return -1;
@@ -1454,7 +1454,7 @@ static int encode_vsa_hdr(uint8_t *out, size_t outlen,
        da = tlv_stack[++depth];
        FR_PROTO_STACK_PRINT(tlv_stack, depth);
 
-       if (da->type != PW_TYPE_VENDOR) {
+       if (da->type != FR_TYPE_VENDOR) {
                fr_strerror_printf("%s: Expected type \"vsa\" got \"%s\"", __FUNCTION__,
                                   fr_int2str(dict_attr_types, da->type, "?Unknown?"));
                return -1;
@@ -1497,7 +1497,7 @@ static int encode_rfc_hdr(uint8_t *out, size_t outlen, fr_dict_attr_t const **tl
        FR_PROTO_STACK_PRINT(tlv_stack, depth);
 
        switch (tlv_stack[depth]->type) {
-       case PW_TYPE_STRUCTURAL:
+       case FR_TYPE_STRUCTURAL:
                fr_strerror_printf("%s: Expected leaf type got \"%s\"", __FUNCTION__,
                                   fr_int2str(dict_attr_types, tlv_stack[depth]->type, "?Unknown?"));
                return -1;
@@ -1611,7 +1611,7 @@ ssize_t fr_radius_encode_pair(uint8_t *out, size_t outlen, vp_cursor_t *cursor,
        /*
         *      Fast path for the common case.
         */
-       if (vp->da->parent->flags.is_root && !vp->da->flags.concat && (vp->vp_type != PW_TYPE_TLV)) {
+       if (vp->da->parent->flags.is_root && !vp->da->flags.concat && (vp->vp_type != FR_TYPE_TLV)) {
                tlv_stack[0] = vp->da;
                tlv_stack[1] = NULL;
                FR_PROTO_STACK_PRINT(tlv_stack, 0);
@@ -1640,7 +1640,7 @@ ssize_t fr_radius_encode_pair(uint8_t *out, size_t outlen, vp_cursor_t *cursor,
                ret = encode_rfc_hdr(out, attr_len, tlv_stack, 0, cursor, encoder_ctx);
                break;
 
-       case PW_TYPE_VSA:
+       case FR_TYPE_VSA:
                if (vp->da->vendor == VENDORPEC_WIMAX) {
                        /*
                         *      WiMAX has a non-standard format for
@@ -1654,15 +1654,15 @@ ssize_t fr_radius_encode_pair(uint8_t *out, size_t outlen, vp_cursor_t *cursor,
                ret = encode_vsa_hdr(out, attr_len, tlv_stack, 0, cursor, encoder_ctx);
                break;
 
-       case PW_TYPE_TLV:
+       case FR_TYPE_TLV:
                ret = encode_tlv_hdr(out, attr_len, tlv_stack, 0, cursor, encoder_ctx);
                break;
 
-       case PW_TYPE_EXTENDED:
+       case FR_TYPE_EXTENDED:
                ret = encode_extended_hdr(out, attr_len, tlv_stack, 0, cursor, encoder_ctx);
                break;
 
-       case PW_TYPE_LONG_EXTENDED:
+       case FR_TYPE_LONG_EXTENDED:
                /*
                 *      These attributes can be longer than 253
                 *      octets.  We therefore fragment the data across
@@ -1671,12 +1671,12 @@ ssize_t fr_radius_encode_pair(uint8_t *out, size_t outlen, vp_cursor_t *cursor,
                ret = encode_extended_hdr(out, outlen, tlv_stack, 0, cursor, encoder_ctx);
                break;
 
-       case PW_TYPE_INVALID:
-       case PW_TYPE_VENDOR:
-       case PW_TYPE_TIMEVAL:
-       case PW_TYPE_DECIMAL:
-       case PW_TYPE_EVS:
-       case PW_TYPE_MAX:
+       case FR_TYPE_INVALID:
+       case FR_TYPE_VENDOR:
+       case FR_TYPE_TIMEVAL:
+       case FR_TYPE_DECIMAL:
+       case FR_TYPE_EVS:
+       case FR_TYPE_MAX:
                fr_strerror_printf("%s: Cannot encode attribute %s", __FUNCTION__, vp->da->name);
                return -1;
        }
index d50207b9ce90d91620e7b24fe8955957ac9d3b8f..29b042eaa14f4f96ba7baf5d8fa88efbd064c07a 100644 (file)
@@ -46,7 +46,7 @@
 #define AUTH_PASS_LEN (AUTH_VECTOR_LEN)
 #define MAX_PASS_LEN (128)
 #define        FR_TUNNEL_PW_ENC_LENGTH(_x) (2 + 1 + _x + PAD(_x + 1, 16))
-extern size_t const fr_radius_attr_sizes[PW_TYPE_MAX + 1][2];
+extern size_t const fr_radius_attr_sizes[FR_TYPE_MAX + 1][2];
 extern FR_NAME_NUMBER const fr_request_types[];
 
 typedef enum {