@@ -80,9 +80,9 @@ const char *oidc_cmd_cache_type_set(cmd_parms *cmd, void *ptr, const char *arg)
8080 return OIDC_CONFIG_DIR_RV (cmd , rv );
8181}
8282
83- #define OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET (member , type , def_val ) \
83+ #define OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET (member , type , def_val , unset_val ) \
8484 type oidc_cfg_cache_##member##_get(oidc_cfg_t *cfg) { \
85- if (cfg->cache.member == OIDC_CONFIG_POS_INT_UNSET) \
85+ if (cfg->cache.member == unset_val) \
8686 return def_val; \
8787 return cfg->cache.member; \
8888 }
@@ -97,27 +97,29 @@ const char *oidc_cmd_cache_type_set(cmd_parms *cmd, void *ptr, const char *arg)
9797 return OIDC_CONFIG_DIR_RV(cmd, rv); \
9898 }
9999
100- #define OIDC_CFG_MEMBER_FUNCS_CACHE_PARSE (member , type , parse , def_val ) \
100+ #define OIDC_CFG_MEMBER_FUNCS_CACHE_PARSE (member , type , parse , def_val , unset_val ) \
101101 const char *oidc_cmd_cache_##member##_set(cmd_parms *cmd, void *ptr, const char *arg) { \
102102 oidc_cfg_t *cfg = \
103103 (oidc_cfg_t *)ap_get_module_config(cmd->server->module_config, &auth_openidc_module); \
104- type v = -1; \
104+ type v = -1; \
105105 const char *rv = parse; \
106106 if (rv == NULL) \
107107 cfg->cache.member = v; \
108108 return OIDC_CONFIG_DIR_RV(cmd, rv); \
109109 } \
110110 \
111- OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET(member, type, def_val)
111+ OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET(member, type, def_val, unset_val )
112112
113- #define OIDC_CFG_MEMBER_FUNCS_CACHE_INT_EXT (member , parse , def_val ) \
114- OIDC_CFG_MEMBER_FUNCS_CACHE_PARSE(member, int, parse, def_val)
113+ #define OIDC_CFG_MEMBER_FUNCS_CACHE_INT_EXT (member , parse , def_val ) \
114+ OIDC_CFG_MEMBER_FUNCS_CACHE_PARSE(member, int, parse, def_val, OIDC_CONFIG_POS_INT_UNSET )
115115
116116#define OIDC_CFG_MEMBER_FUNCS_CACHE_INT (member , min , max , def_val ) \
117117 OIDC_CFG_MEMBER_FUNCS_CACHE_INT_EXT(member, oidc_cfg_parse_int_min_max(cmd->pool, arg, &v, min, max), def_val)
118118
119- #define OIDC_CFG_MEMBER_FUNCS_CACHE_TIMEOUT (member , min , max , def_val ) \
120- OIDC_CFG_MEMBER_FUNCS_CACHE_PARSE(member, apr_interval_time_t, oidc_cfg_parse_timeout_min_max(cmd->pool, arg, &v, min, max), def_val)
119+ #define OIDC_CFG_MEMBER_FUNCS_CACHE_TIMEOUT (member , min , max , def_val ) \
120+ OIDC_CFG_MEMBER_FUNCS_CACHE_PARSE(member, apr_interval_time_t, \
121+ oidc_cfg_parse_timeout_min_max(cmd->pool, arg, &v, min, max), def_val, \
122+ OIDC_CONFIG_POS_TIMEOUT_UNSET)
121123
122124#define OIDC_CFG_MEMBER_FUNCS_CACHE_BOOL (member , def_val ) \
123125 OIDC_CFG_MEMBER_FUNCS_CACHE_INT_EXT(member, oidc_cfg_parse_boolean(cmd->pool, arg, &v), def_val)
@@ -165,7 +167,8 @@ const char *oidc_cmd_cache_shm_entry_size_max_set(cmd_parms *cmd, void *ptr, con
165167 return OIDC_CONFIG_DIR_RV (cmd , rv );
166168}
167169
168- OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET (shm_entry_size_max , int , OIDC_DEFAULT_CACHE_SHM_ENTRY_SIZE_MAX )
170+ OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET (shm_entry_size_max , int , OIDC_DEFAULT_CACHE_SHM_ENTRY_SIZE_MAX ,
171+ OIDC_CONFIG_POS_INT_UNSET )
169172
170173static void oidc_cfg_cache_shm_create_server_config (oidc_cfg_t * c ) {
171174 c -> cache .shm_size_max = OIDC_DEFAULT_CACHE_SHM_SIZE ;
@@ -252,7 +255,8 @@ OIDC_CFG_MEMBER_FUNCS_CACHE_INT(memcache_hmax, OIDC_CACHE_MEMCACHE_CONNECTIONS_H
252255#define OIDC_DEFAULT_CACHE_MEMCACHE_CONNECTIONS_TTL apr_time_from_sec(60)
253256
254257OIDC_CFG_MEMBER_FUNCS_CACHE_TIMEOUT (memcache_ttl , OIDC_CACHE_MEMCACHE_CONNECTIONS_TTL_MIN ,
255- OIDC_CACHE_MEMCACHE_CONNECTIONS_TTL_MAX , OIDC_DEFAULT_CACHE_MEMCACHE_CONNECTIONS_TTL )
258+ OIDC_CACHE_MEMCACHE_CONNECTIONS_TTL_MAX ,
259+ OIDC_DEFAULT_CACHE_MEMCACHE_CONNECTIONS_TTL )
256260
257261static void oidc_cfg_cache_memcache_create_server_config (oidc_cfg_t * c ) {
258262 c -> cache .memcache_servers = NULL ;
@@ -271,8 +275,8 @@ static void oidc_cfg_cache_memcache_merge_server_config(oidc_cfg_t *c, oidc_cfg_
271275 : base -> cache .memcache_smax ;
272276 c -> cache .memcache_hmax = add -> cache .memcache_hmax != OIDC_CONFIG_POS_INT_UNSET ? add -> cache .memcache_hmax
273277 : base -> cache .memcache_hmax ;
274- c -> cache .memcache_ttl =
275- add -> cache . memcache_ttl != OIDC_CONFIG_POS_TIMEOUT_UNSET ? add -> cache . memcache_ttl : base -> cache .memcache_ttl ;
278+ c -> cache .memcache_ttl = add -> cache . memcache_ttl != OIDC_CONFIG_POS_TIMEOUT_UNSET ? add -> cache . memcache_ttl
279+ : base -> cache .memcache_ttl ;
276280}
277281
278282#endif
@@ -313,8 +317,8 @@ const char *oidc_cmd_cache_redis_connect_timeout_set(cmd_parms *cmd, void *struc
313317 return OIDC_CONFIG_DIR_RV (cmd , rv );
314318}
315319
316- OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET (redis_connect_timeout , int , OIDC_CONFIG_POS_INT_UNSET )
317- OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET (redis_keepalive , int , OIDC_CONFIG_POS_INT_UNSET )
320+ OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET (redis_connect_timeout , int , OIDC_CONFIG_POS_INT_UNSET , OIDC_CONFIG_POS_INT_UNSET )
321+ OIDC_CFG_MEMBER_FUNC_CACHE_TYPE_GET (redis_keepalive , int , OIDC_CONFIG_POS_INT_UNSET , OIDC_CONFIG_POS_INT_UNSET )
318322
319323#define OIDC_REDIS_TIMEOUT_MIN 1
320324#define OIDC_REDIS_TIMEOUT_MAX 3600
0 commit comments