]>
Commit | Line | Data |
---|---|---|
185589bc JR |
1 | diff -ur kmod-12/libkmod/libkmod.c kmod-12-modprobe.d-kver/libkmod/libkmod.c |
2 | --- kmod-12/libkmod/libkmod.c 2012-11-08 04:59:03.663747793 +0100 | |
3 | +++ kmod-12-modprobe.d-kver/libkmod/libkmod.c 2012-12-12 19:43:19.385242679 +0100 | |
4 | @@ -58,7 +58,9 @@ | |
5 | [KMOD_INDEX_MODULES_BUILTIN] = { .fn = "modules.builtin", .prefix = ""}, | |
6 | }; | |
7 | ||
8 | +static char kver_config_path[PATH_MAX] = SYSCONFDIR "/modprobe.d/X.Y.Z"; | |
7cac58cd | 9 | static const char *const default_config_paths[] = { |
185589bc JR |
10 | + kver_config_path, |
11 | SYSCONFDIR "/modprobe.d", | |
12 | "/run/modprobe.d", | |
2f9bc8fe | 13 | "/usr/local/lib/modprobe.d", |
185589bc | 14 | @@ -258,8 +260,16 @@ |
7cac58cd JP |
15 | |
16 | ctx->kernel_compression = get_kernel_compression(ctx); | |
185589bc JR |
17 | |
18 | - if (config_paths == NULL) | |
19 | - config_paths = default_config_paths; | |
20 | + if (config_paths == NULL) { | |
21 | + struct utsname u; | |
22 | + | |
23 | + if (uname(&u) < 0) { | |
24 | + config_paths = &default_config_paths[1]; | |
25 | + } else { | |
26 | + snprintf(kver_config_path, PATH_MAX, SYSCONFDIR "/modprobe.d/%s", u.release); | |
27 | + config_paths = default_config_paths; | |
28 | + } | |
29 | + } | |
30 | err = kmod_config_new(ctx, &ctx->config, config_paths); | |
31 | if (err < 0) { | |
32 | ERR(ctx, "could not create config\n"); |