Age | Commit message (Collapse) | Author |
|
The intent here seems to have been to ignore lines with too few
arguments to be valid, but since strtok() returns NULL at the end of the
string, if you only have "verb noun", you'd be falsely rejected.
Since we've kept a count anyway, just check the count.
|
|
I don't _think_ that can happen with the .dep files since they're
machine-generated, but the config files can and do contain empty lines
to aid readability.
(Not found on Android, so I haven't tested this, but the code already
even contained a special case for empty lines. I haven't touched the
/proc/modules loop because the kernel definitely isn't going to insert
empty lines, and that code _would_ need to be modified to cope with
empty lines, and since I can't test this, that would be not just
pointless but also irresponsible!)
|
|
I need to set up a test environment for this...
|
|
I accidentally added a tab in xargs.c, so as penance I'll clean up all
the tabs.
|
|
Without this change, a successful modprobe on Android exits with status 1
because Android doesn't have /etc/modprobe.conf or /etc/modprobe.d/ ---
neither of which seem to be required on desktop Linux either.
|
|
Otherwise in verbose mode we output bogus errors instead of `Success`.
|
|
modprobe was failing if you `modprobe a.ko`, then `modprobe b.ko` where b.ko
depends on a.ko --- b.ko will fail to load because a.ko is already loaded.
The code to handle this was incorrectly checking `rc` rather than `errno`
against EEXIST.
(We should pull the insmod.c equivalent of `ins_mod` out into lib/
and reuse it in modprobe.c, but I didn't want to get bogged down.)
Bug: https://issuetracker.google.com/112069618
Reported-by: Wen Xie <xiewen3@motorola.com>
|
|
|
|
The finit_module() system call, introduced in Linux 3.8, reads the
module from a supplied file descriptor. This allows the kernel to do
security checks based on the file's location.
|
|
While most systems have their kernel modules, modules.dep etc located at
/lib/modules/`uname -r` this is not always the case.
The -d option may be used to specify a nonstandard path for these files.
It may be used more than once to specify multiple directories where
these files may be found.
|
|
sizeof(int) != sizeof(size_t) for LP64, leading to hilarity^Wcrashes.
|
|
add xopenro() that takes one argument and understands "-" means stdin,
and switch over lots of users.
|
|
both did it) so use getbasename instead.
|
|
|
|
|
|
|
|
Given modprobe -a, it's important to not exit early for a failure to
load a module; additionally, the rest of the code presumes that this
can fail without exiting.
|
|
|
|
portability.h.patch - it is for O_CLOEXEC, as compiler complained of it.
Makefile.patch - for cleaning generated/*.o files and libopts.dat file
[Fixup to uniq.c from Rob.]
|
|
some whitespace and bracket cleanups.
|
|
Move <fnmatch.h> to toys.h, since it's POSIX.
Avoid duplicating code in an if/else block.
Terser error messages, spelling.
Don't always print the state.
|
|
|