Patch: Elm ME+ 2.5 PLalpha53 -> Elm ME+ 2.5 PLalpha54 [2/2] (2/5)
From
Kari Hurtta@21:1/5 to
All on Sat May 1 19:23:25 2021
[continued from previous message]
static void free_name_result P_((struct name_result **ptr));
static void free_name_result(ptr)
***************
*** 3105,3110 ****
--- 3126,3133 ----
return found;
}
+ static void free_cache_items P_((void));
+
static struct resolv_cache * query_resolv_cache P_((const char * name,
ns_type q_type,
/* use search -- real search result --
***************
*** 3191,3196 ****
--- 3214,3234 ----
*search_name = NULL;
}
+ if (pending_interface_change) {
+ int need_clear = dt_flag_is_set(&interface_change,intch_clear_cache_flag);
+
+ DPRINT(Debug,7,(&Debug,
+ "query_resolv_cache: Have pending_interface_change%s\n",
+ need_clear ? ", need clear cache" : ""));
+
+ if (need_clear) {
+ free_cache_items();
+ }
+
+ pending_interface_change = 0;
+ }
+
+
f = fill_query_resolv_cache(ret,name,now,
q_type,
search,
***************
*** 3804,3809 ****
--- 3842,3850 ----
struct schedule_timelimit max_valid_until;
int set_valid_until = 1;
+ int nee