wifi: ieee80211: correctly mark FTM frames non-bufferable
[carl9170fw.git] / config / confdata.c
index cc18bc408397812ea125d1009da576a3cd897ec7..99664fd2de23bb15dc29dd6d1897a0dcc1a6f60a 100644 (file)
@@ -5,6 +5,7 @@
 
 #include <sys/mman.h>
 #include <sys/stat.h>
+#include <sys/types.h>
 #include <ctype.h>
 #include <errno.h>
 #include <fcntl.h>
@@ -1380,7 +1381,7 @@ bool conf_set_all_new_symbols(enum conf_def_mode mode)
 
                sym_calc_value(csym);
                if (mode == def_random)
-                       has_changed = randomize_choice_values(csym);
+                       has_changed |= randomize_choice_values(csym);
                else {
                        set_all_choice_values(csym);
                        has_changed = true;
@@ -1389,3 +1390,18 @@ bool conf_set_all_new_symbols(enum conf_def_mode mode)
 
        return has_changed;
 }
+
+void conf_rewrite_mod_or_yes(enum conf_def_mode mode)
+{
+       struct symbol *sym;
+       int i;
+       tristate old_val = (mode == def_y2m) ? yes : mod;
+       tristate new_val = (mode == def_y2m) ? mod : yes;
+
+       for_all_symbols(i, sym) {
+               if (sym_get_type(sym) == S_TRISTATE &&
+                   sym->def[S_DEF_USER].tri == old_val)
+                       sym->def[S_DEF_USER].tri = new_val;
+       }
+       sym_clear_all_valid();
+}