Radish alpha
H
HardenedBSD Package Manager
Radicle
Git (anonymous pull)
Log in to clone via SSH
Add check to ensure user is root before peforming an add or delete operation.
Eitan committed 15 years ago
commit 404d2275b6e69ab84c9fba17d0053b12fa66379e
parent a7693d687b1737857f1c2099aa4cffa2d69c461d
2 files changed +12 -0
modified pkg/add.c
@@ -3,6 +3,8 @@
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
+
#include <sysexits.h>
+
#include <unistd.h>

#include <pkg.h>

@@ -57,6 +59,11 @@ exec_add(int argc, char **argv)
		return (-1);
	}

+
	if (geteuid() != 0) {
+
		pkg_error_warn("adding packages can only be done as root");
+
		return EX_NOPERM;
+
	}
+

	if (pkgdb_open(&db) != EPKG_OK) {
		pkg_error_warn("can not open database");
		return (1);
modified pkg/delete.c
@@ -47,6 +47,11 @@ exec_delete(int argc, char **argv)
		return (EX_USAGE);
	}

+
	if (geteuid() != 0) {
+
		pkg_error_warn("deleting packages can only be done as root");
+
		return EX_NOPERM;
+
	}
+
	
	if (pkgdb_open(&db) != EPKG_OK) {
		pkg_error_warn("can not open database");
		pkgdb_close(db);