allow --monitor to be run by non-privileged use.

Providing --no-sharing is given, monitoring should be permitted.

Unfortunately the kernel current rejects GET_DISK_INFO and
GET_ARRAY_INFO for non-privileged users which is unjustified.
The info is available in sysfs and we could get it from there,
but for now, require the kernel to be fixed.

Reported-by: Raphael Hertzog <hertzog@debian.org>
Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2011-12-23 07:42:23 +11:00
parent 3e9df86add
commit ba3903d416
1 changed files with 2 additions and 1 deletions

View File

@ -1209,7 +1209,8 @@ int main(int argc, char *argv[])
require_homehost = 0;
}
if ((mode != MISC || devmode != 'E') &&
if (!((mode == MISC && devmode == 'E')
|| (mode == MONITOR && spare_sharing == 0)) &&
geteuid() != 0) {
fprintf(stderr, Name ": must be super-user to perform this action\n");
exit(1);