]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
use fr_time_delta_t for lifetimes and timeouts
authorAlan T. DeKok <aland@freeradius.org>
Wed, 22 Sep 2021 16:09:59 +0000 (12:09 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Wed, 22 Sep 2021 16:09:59 +0000 (12:09 -0400)
src/lib/server/client.c
src/lib/server/socket.h

index 813792d1d04e1ab5a42a3d70e885c0ed52708143..75f2f2e2afe4420dd890ac03f1020d8282bdbf4b 100644 (file)
@@ -426,9 +426,9 @@ static char const *hs_proto = NULL;
 static CONF_PARSER limit_config[] = {
        { FR_CONF_OFFSET("max_connections", FR_TYPE_UINT32, RADCLIENT, limit.max_connections), .dflt = "16" },
 
-       { FR_CONF_OFFSET("lifetime", FR_TYPE_UINT32, RADCLIENT, limit.lifetime), .dflt = "0" },
+       { FR_CONF_OFFSET("lifetime", FR_TYPE_TIME_DELTA, RADCLIENT, limit.lifetime), .dflt = "0" },
 
-       { FR_CONF_OFFSET("idle_timeout", FR_TYPE_UINT32, RADCLIENT, limit.idle_timeout), .dflt = "30" },
+       { FR_CONF_OFFSET("idle_timeout", FR_TYPE_TIME_DELTA, RADCLIENT, limit.idle_timeout), .dflt = "30s" },
        CONF_PARSER_TERMINATOR
 };
 
@@ -878,10 +878,10 @@ RADCLIENT *client_afrom_cs(TALLOC_CTX *ctx, CONF_SECTION *cs, CONF_SECTION *serv
 #endif
 
        if ((c->proto == IPPROTO_TCP) || (c->proto == IPPROTO_IP)) {
-               if ((c->limit.idle_timeout > 0) && (c->limit.idle_timeout < 5))
-                       c->limit.idle_timeout = 5;
-               if ((c->limit.lifetime > 0) && (c->limit.lifetime < 5))
-                       c->limit.lifetime = 5;
+               if ((c->limit.idle_timeout > 0) && (c->limit.idle_timeout < fr_time_delta_from_sec(5)))
+                       c->limit.idle_timeout = fr_time_delta_from_sec(5);
+               if ((c->limit.lifetime > 0) && (c->limit.lifetime < fr_time_delta_from_sec(5)))
+                       c->limit.lifetime = fr_time_delta_from_sec(5);
                if ((c->limit.lifetime > 0) && (c->limit.idle_timeout > c->limit.lifetime))
                        c->limit.idle_timeout = 0;
        }
index 427572e9aceea6cf8337b2aa6b7b3eb08b44bc32..2ca00f8da495b9a9369c580463b3ceda5d588b04 100644 (file)
@@ -34,8 +34,8 @@ typedef struct {
        uint32_t        num_connections;
        uint32_t        max_requests;
        uint32_t        num_requests;
-       uint32_t        lifetime;
-       uint32_t        idle_timeout;
+       fr_time_delta_t lifetime;
+       fr_time_delta_t idle_timeout;
 } fr_socket_limit_t;
 
 #ifdef __cplusplus