Merge "libmodprobe: Fail when modules.dep lacks colon" am: 8013cc3d85
am: a9e131f50b
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1465891 Change-Id: Iadf3a6927ca45acb3dccfacc80b589f7fd2d272a
This commit is contained in:
commit
a29e1f0fac
2 changed files with 14 additions and 0 deletions
|
@ -66,6 +66,7 @@ bool Modprobe::ParseDepCallback(const std::string& base_path,
|
|||
deps.emplace_back(prefix + args[0].substr(0, pos));
|
||||
} else {
|
||||
LOG(ERROR) << "dependency lines must start with name followed by ':'";
|
||||
return false;
|
||||
}
|
||||
|
||||
// Remaining items are dependencies of our module
|
||||
|
|
|
@ -179,3 +179,16 @@ TEST(libmodprobe, Test) {
|
|||
m.EnableBlocklist(true);
|
||||
EXPECT_FALSE(m.LoadWithAliases("test4", true));
|
||||
}
|
||||
|
||||
TEST(libmodprobe, ModuleDepLineWithoutColonIsSkipped) {
|
||||
TemporaryDir dir;
|
||||
auto dir_path = std::string(dir.path);
|
||||
ASSERT_TRUE(android::base::WriteStringToFile(
|
||||
"no_colon.ko no_colon.ko\n", dir_path + "/modules.dep", 0600, getuid(), getgid()));
|
||||
|
||||
kernel_cmdline = "";
|
||||
test_modules = {dir_path + "/no_colon.ko"};
|
||||
|
||||
Modprobe m({dir.path});
|
||||
EXPECT_FALSE(m.LoadWithAliases("no_colon", true));
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue