]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Fix FR_TIME_DELTA_BOUND_CHECK to take NSEC, so we can easily pass other fr_time_delta...
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 24 May 2019 02:11:18 +0000 (22:11 -0400)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Fri, 24 May 2019 02:11:18 +0000 (22:11 -0400)
src/lib/server/cf_parse.h
src/modules/proto_control/proto_control.c
src/modules/proto_dhcpv4/proto_dhcpv4.c
src/modules/proto_radius/proto_radius.c
src/modules/proto_vmps/proto_vmps.c
src/modules/rlm_radius/rlm_radius.c

index 38be7a54836d024435ca329eb461bd195c949c20..8262c9aedbd11918dd3e2d6a48e4d1f49b615b5e 100644 (file)
@@ -353,13 +353,12 @@ do {\
        }\
 } while (0)
 
-#define FR_TIME_DELTA_BOUND_CHECK(_name, _var, _op, _bound_sec, _bound_usec)\
+#define FR_TIME_DELTA_BOUND_CHECK(_name, _var, _op, _bound)\
 do {\
-       fr_time_delta_t _bound = ((fr_time_delta_t) _bound_sec) * NSEC + ((fr_time_delta_t) _bound_usec) * 1000;\
        if (!(_var _op _bound)) { \
-               WARN("Ignoring \"" _name " = %d.%.06d\", forcing to \"" _name " = %d.%06d\"",\
-                    (int)(_var / NSEC), ((int)(_var % NSEC)) / 1000,\
-                    (int)_bound_sec, (int)_bound_usec);\
+               WARN("Ignoring \"" _name " = %pV\", forcing to \"" _name " = %pV\"",\
+                    fr_box_time_delta(_var),\
+                    fr_box_time_delta(_bound));\
                _var = _bound;\
        }\
 } while (0)
index 8d15e4fff1fefee2aa9dc47a4d016651c778ff07..37bf4cd4c436a9f93199ec739602118099c73e9c 100644 (file)
@@ -501,11 +501,11 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
        /*
         *      These timers are usually protocol specific.
         */
-       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, <=, fr_time_delta_from_sec(600));
 
-       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, <=, fr_time_delta_from_sec(600));
 
        /*
         *      Tell the master handler about the main protocol instance.
index d96b5ac11d3ad36c4e9b42b9c60dc9229a6b1136..a7ca03f7d20aceb0736678186075090cd8421a28 100644 (file)
@@ -576,11 +576,11 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
        /*
         *      These timers are usually protocol specific.
         */
-       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, <=, fr_time_delta_from_sec(600));
 
-       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, <=, fr_time_delta_from_sec(600));
 
        /*
         *      Tell the master handler about the main protocol instance.
index 341cf7d29da1369c173e167c7e2944985368e12c..7cce1819074a773ec78990a4a240df634d6bc582 100644 (file)
@@ -687,13 +687,13 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
        /*
         *      These timers are usually protocol specific.
         */
-       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, <=, fr_time_delta_from_sec(600));
 
-       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, <=, fr_time_delta_from_sec(600));
 
-       FR_TIME_DELTA_BOUND_CHECK("cleanup_delay", inst->io.cleanup_delay, <=, 30, 0);
+       FR_TIME_DELTA_BOUND_CHECK("cleanup_delay", inst->io.cleanup_delay, <=, fr_time_delta_from_sec(30));
 
        /*
         *      No Access-Request packets, then no cleanup delay.
index f3dd14d2d4b361236a11d7177afb3ad1b9d8a0cc..d0f1d1bca24151a6ecef0cba60093254efc53de3 100644 (file)
@@ -544,11 +544,11 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
        /*
         *      These timers are usually protocol specific.
         */
-       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("idle_timeout", inst->io.idle_timeout, <=, fr_time_delta_from_sec(600));
 
-       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("nak_lifetime", inst->io.nak_lifetime, <=, fr_time_delta_from_sec(600));
 
        /*
         *      Tell the master handler about the main protocol instance.
index 2dbb860319bfb43bebdf219aa8845284ebd6fd0f..4b4ad0b6d87e3149050d40af37b58412f76b08bd 100644 (file)
@@ -549,17 +549,17 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
        inst->name = cf_section_name2(conf);
        if (!inst->name) inst->name = cf_section_name1(conf);
 
-       FR_TIME_DELTA_BOUND_CHECK("connection.connect_timeout", inst->connection_timeout, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("connection.connect_timeout", inst->connection_timeout, <=, 30, 0);
+       FR_TIME_DELTA_BOUND_CHECK("connection.connect_timeout", inst->connection_timeout, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("connection.connect_timeout", inst->connection_timeout, <=, fr_time_delta_from_sec(30));
 
-       FR_TIME_DELTA_BOUND_CHECK("connection.reconnect_delay", inst->reconnection_delay, >=, 5, 0);
-       FR_TIME_DELTA_BOUND_CHECK("connection.reconnect_delay", inst->reconnection_delay, <=, 300, 0);
+       FR_TIME_DELTA_BOUND_CHECK("connection.reconnect_delay", inst->reconnection_delay, >=, fr_time_delta_from_sec(5));
+       FR_TIME_DELTA_BOUND_CHECK("connection.reconnect_delay", inst->reconnection_delay, <=, fr_time_delta_from_sec(300));
 
-       FR_TIME_DELTA_BOUND_CHECK("connection.idle_timeout", inst->idle_timeout, >=, 5, 0);
-       FR_TIME_DELTA_BOUND_CHECK("connection.idle_timeout", inst->idle_timeout, <=, 600, 0);
+       FR_TIME_DELTA_BOUND_CHECK("connection.idle_timeout", inst->idle_timeout, >=, fr_time_delta_from_sec(5));
+       FR_TIME_DELTA_BOUND_CHECK("connection.idle_timeout", inst->idle_timeout, <=, fr_time_delta_from_sec(600));
 
-       FR_TIME_DELTA_BOUND_CHECK("connection.zombie_period", inst->zombie_period, >=, 1, 0);
-       FR_TIME_DELTA_BOUND_CHECK("connection.zombie_period", inst->zombie_period, <=, 120, 0);
+       FR_TIME_DELTA_BOUND_CHECK("connection.zombie_period", inst->zombie_period, >=, fr_time_delta_from_sec(1));
+       FR_TIME_DELTA_BOUND_CHECK("connection.zombie_period", inst->zombie_period, <=, fr_time_delta_from_sec(120));
 
        num_types = talloc_array_length(inst->types);
        rad_assert(num_types > 0);