From: Lucas De Marchi Date: Thu, 7 Nov 2019 07:27:28 +0000 (-0800) Subject: modprobe: use flags rather than bool args X-Git-Tag: v27~8 X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fkmod.git;a=commitdiff_plain;h=a6b540deaacd0f24f7ff22f1413f75ee82327622 modprobe: use flags rather than bool args It's easier to know what the caller is doing when we pass a named flag rather than a list of bools. --- diff --git a/tools/modprobe.c b/tools/modprobe.c index 44cd15c..9387537 100644 --- a/tools/modprobe.c +++ b/tools/modprobe.c @@ -353,8 +353,9 @@ static int rmmod_do_remove_module(struct kmod_module *mod) return err; } -static int rmmod_do_module(struct kmod_module *mod, bool do_dependencies, - bool ignore_builtin); +#define RMMOD_FLAG_DO_DEPENDENCIES 0x1 +#define RMMOD_FLAG_IGNORE_BUILTIN 0x2 +static int rmmod_do_module(struct kmod_module *mod, int flags); static int rmmod_do_deps_list(struct kmod_list *list, bool stop_on_errors) { @@ -362,7 +363,7 @@ static int rmmod_do_deps_list(struct kmod_list *list, bool stop_on_errors) kmod_list_foreach_reverse(l, list) { struct kmod_module *m = kmod_module_get_module(l); - int r = rmmod_do_module(m, false, true); + int r = rmmod_do_module(m, RMMOD_FLAG_IGNORE_BUILTIN); kmod_module_unref(m); if (r < 0 && stop_on_errors) @@ -372,8 +373,7 @@ static int rmmod_do_deps_list(struct kmod_list *list, bool stop_on_errors) return 0; } -static int rmmod_do_module(struct kmod_module *mod, bool do_dependencies, - bool ignore_builtin) +static int rmmod_do_module(struct kmod_module *mod, int flags) { const char *modname = kmod_module_get_name(mod); struct kmod_list *pre = NULL, *post = NULL; @@ -403,7 +403,7 @@ static int rmmod_do_module(struct kmod_module *mod, bool do_dependencies, } goto error; } else if (state == KMOD_MODULE_BUILTIN) { - if (ignore_builtin) { + if (flags & RMMOD_FLAG_IGNORE_BUILTIN) { err = 0; } else { LOG("Module %s is builtin.\n", modname); @@ -415,7 +415,7 @@ static int rmmod_do_module(struct kmod_module *mod, bool do_dependencies, rmmod_do_deps_list(post, false); - if (do_dependencies && remove_dependencies) { + if ((flags & RMMOD_FLAG_DO_DEPENDENCIES) && remove_dependencies) { struct kmod_list *deps = kmod_module_get_dependencies(mod); err = rmmod_do_deps_list(deps, true); @@ -468,7 +468,7 @@ static int rmmod(struct kmod_ctx *ctx, const char *alias) kmod_list_foreach(l, list) { struct kmod_module *mod = kmod_module_get_module(l); - err = rmmod_do_module(mod, true, false); + err = rmmod_do_module(mod, RMMOD_FLAG_DO_DEPENDENCIES); kmod_module_unref(mod); if (err < 0) break;