Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Get rid of the magic numbers used for return codes
Marin Atanasov Nikolov committed 14 years ago
commit b8d4eb8cf501b98292050282c928883fd812e6fe
parent 05c7c95
13 files changed +54 -52
modified pkg/add.c
@@ -43,7 +43,7 @@ exec_add(int argc, char **argv)

	if (argc < 2) {
		usage_add();
-
		return (-1);
+
		return (EX_USAGE);
	}

	if (geteuid() != 0) {
@@ -77,6 +77,6 @@ exec_add(int argc, char **argv)
	cleanup:
	pkgdb_close(db);

-
	return (retcode == EPKG_OK ? 0 : 1);
+
	return (retcode == EPKG_OK ? EX_OK : 1);
}

modified pkg/autoremove.c
@@ -46,14 +46,14 @@ exec_autoremove(int argc, char **argv)
	struct pkgdb *db = NULL;
	struct pkgdb_it *it;
	struct pkg *pkg = NULL;
-
	int retcode = 0;
+
	int retcode = EPKG_OK;
	int64_t oldsize = 0, newsize = 0;
	char size[7];

	(void) argv;
	if (argc != 1) {
		usage_autoremove();
-
		return (-1);
+
		return (EX_USAGE);
	}

	if (geteuid() != 0) {
@@ -63,11 +63,12 @@ exec_autoremove(int argc, char **argv)

	if (pkgdb_open(&db, PKGDB_DEFAULT) != EPKG_OK) {
		pkg_error_warn("can not open database");
-
		return (1);
+
		return (EX_IOERR);
	}

	if ((it = pkgdb_query_autoremove(db)) == NULL) {
		pkg_error_warn("can not query database");
+
		retcode = EPKG_FATAL;
		goto cleanup;
	}

@@ -102,8 +103,10 @@ exec_autoremove(int argc, char **argv)
		printf("Aborted\n");
	}

-
	if (pkgdb_compact(db) != EPKG_OK)
+
	if (pkgdb_compact(db) != EPKG_OK) { 
		pkg_error_warn("can not compact database");
+
		retcode = EPKG_FATAL;
+
	}

	cleanup:
	pkg_free(pkg);
modified pkg/create.c
@@ -22,7 +22,7 @@ usage_create(void)
static int
pkg_create_matches(int argc, char **argv, match_t match, pkg_formats fmt, const char *outdir, const char *rootdir)
{
-
	int i, ret = 0, retcode = 0;
+
	int i, ret = EPKG_OK, retcode = EPKG_OK;
	struct pkgdb *db = NULL;
	struct pkgdb_it *it = NULL;
	struct pkg *pkg = NULL;
@@ -33,7 +33,7 @@ pkg_create_matches(int argc, char **argv, match_t match, pkg_formats fmt, const
	if (pkgdb_open(&db, PKGDB_DEFAULT) != EPKG_OK) {
		pkg_error_warn("can not open database");
		pkgdb_close(db);
-
		return (-1);
+
		return (EX_IOERR);
	}

	if (match != MATCH_ALL) {
@@ -76,7 +76,7 @@ cleanup:
	pkgdb_it_free(it);
	pkgdb_close(db);

-
	return retcode;
+
	return (retcode);
}

/*
modified pkg/delete.c
@@ -98,5 +98,6 @@ exec_delete(int argc, char **argv)
	pkgdb_it_free(it);
	pkgdb_close(db);
	pkg_jobs_free(jobs);
-
	return (retcode == EPKG_OK ? 0 : 1);
+

+
	return (retcode == EPKG_OK ? EX_OK : 1);
}
modified pkg/info.c
@@ -104,8 +104,7 @@ exec_info(int argc, char **argv)
	match_t match = MATCH_EXACT;
	char *pkgname, *pkgversion;
	int ch;
-
	int ret;
-
	int retcode = 0;
+
	int ret = EPKG_OK, retcode = EPKG_OK;
	bool gotone = false;
	int i;
	int sign = 0;
@@ -168,14 +167,14 @@ exec_info(int argc, char **argv)
	if (argc == 0 && match != MATCH_ALL) {
		/* which -O bsd.*.mk always execpt clean output */
		if (opt & INFO_ORIGIN_SEARCH)
-
			return (0);
+
			return (EX_OK);
		usage_info();
		return (EX_USAGE);
	}

	if (pkgdb_open(&db, PKGDB_DEFAULT) != EPKG_OK) {
		pkg_error_warn("can not open database");
-
		return (-1);
+
		return (EX_IOERR);
	}

	i = 0;
@@ -185,7 +184,7 @@ exec_info(int argc, char **argv)
		if (argc > 0 && access(argv[i], F_OK) == 0) {
			if (pkg_open(&pkg, argv[i]) != EPKG_OK) {
				warnx("can not read package %s", argv[i]);
-
				return (-1);
+
				return (EX_IOERR);
			}
			print_info(pkg, opt);
			i++;
@@ -241,7 +240,7 @@ exec_info(int argc, char **argv)

		if ((it = pkgdb_query(db, pkgname, match)) == NULL) {
			pkg_error_warn("can not query database");
-
			return (-1);
+
			return (EX_IOERR);
		}

		/* this is place for compatibility hacks */
@@ -278,7 +277,7 @@ exec_info(int argc, char **argv)
				}
			}
			if (opt & INFO_EXISTS)
-
				retcode = 0;
+
				retcode = EPKG_OK;
			else
				print_info(pkg, opt);
		}
@@ -287,7 +286,7 @@ exec_info(int argc, char **argv)
			retcode = -1;
		}

-
		if (retcode == 0 && !gotone && match != MATCH_ALL)
+
		if (retcode == EPKG_OK && !gotone && match != MATCH_ALL)
			retcode = EX_SOFTWARE;

		pkgdb_it_free(it);
modified pkg/install.c
@@ -30,7 +30,7 @@ exec_install(int argc, char **argv)

	if (argc < 2) {
		usage_install();
-
		return (-1);
+
		return (EX_USAGE);
	}

	if (geteuid() != 0) {
@@ -74,6 +74,6 @@ exec_install(int argc, char **argv)
	pkgdb_close(db);
	pkg_jobs_free(jobs);

-
	return (retcode == EPKG_OK ? 0 : 1);
+
	return (retcode == EPKG_OK ? EX_OK : 1);
}

modified pkg/register.c
@@ -71,8 +71,7 @@ exec_register(int argc, char **argv)
	bool legacy = false;

	int i;
-
	int retcode = 0;
-
	int ret = 0;
+
	int ret = EPKG_OK, retcode = EPKG_OK;

	if (geteuid() != 0) {
		warnx("registering packages can only be done as root");
@@ -106,13 +105,13 @@ exec_register(int argc, char **argv)
			default:
				printf("%c\n", ch);
				usage_register();
-
				return (-1);
+
				return (EX_USAGE);
		}
	}

	if (ret != 0) {
		pkg_error_warn("can not parse arguments");
-
		return (1);
+
		return (EX_USAGE);
	}

	if (plist == NULL)
@@ -132,7 +131,7 @@ exec_register(int argc, char **argv)
	snprintf(fpath, MAXPATHLEN, "%s/+MANIFEST", mdir);
	if ((ret = pkg_load_manifest_file(pkg, fpath)) != EPKG_OK) {
		pkg_error_warn("can not parse manifest %s", fpath);
-
		return (EX_SOFTWARE);
+
		return (EX_IOERR);
	}

	snprintf(fpath, MAXPATHLEN, "%s/+DESC", mdir);
@@ -182,9 +181,9 @@ exec_register(int argc, char **argv)

	ret += ports_parse_plist(pkg, plist);

-
	if (ret != 0) {
+
	if (ret != EPKG_OK) {
		pkg_error_warn("can not parse plist file");
-
		return (-1);
+
		return (EX_IOERR);
	}

	if (plist != NULL)
@@ -192,7 +191,7 @@ exec_register(int argc, char **argv)

	if (pkgdb_open(&db, PKGDB_DEFAULT) != EPKG_OK) {
		pkg_error_warn("can not open database");
-
		return (-1);
+
		return (EX_IOERR);
	}

	if (heuristic)
@@ -205,13 +204,13 @@ exec_register(int argc, char **argv)

	if (pkgdb_register_pkg(db, pkg) != EPKG_OK) {
		pkg_error_warn("can not register package");
-
		retcode = 1;
+
		retcode = EPKG_FATAL;
	}

	pkgdb_register_finale(db, ret);
	if (ret != EPKG_OK) {
		pkg_error_warn("can not register package");
-
		retcode = 1;
+
		retcode = EPKG_FATAL;
	}

	if (pkg_get(pkg, PKG_MESSAGE) != NULL && !legacy)
modified pkg/repo.c
@@ -40,7 +40,7 @@ progress(struct pkg *pkg, void *data)
static int
password_cb(char *buf, int size, int rwflag, void *key)
{
-
	int len;
+
	int len = 0;
	char pass[BUFSIZ];
	(void)rwflag;
	(void)key;
@@ -57,13 +57,13 @@ password_cb(char *buf, int size, int rwflag, void *key)
	memcpy(buf, pass, len);
	memset(pass, 0, BUFSIZ);

-
	return len;
+
	return (len);
}

int
exec_repo(int argc, char **argv)
{
-
	int ret;
+
	int retcode = EPKG_OK;
	int pos = 0;
	char *rsa_key;

@@ -75,7 +75,7 @@ exec_repo(int argc, char **argv)
	printf("Generating repo.sqlite in %s:  ", argv[1]);
	ret = pkg_create_repo(argv[1], progress, &pos);

-
	if (ret != EPKG_OK)
+
	if (retcode != EPKG_OK)
		pkg_error_warn("can not create repository");
	else
		printf("\bDone!\n");
@@ -83,5 +83,5 @@ exec_repo(int argc, char **argv)
	rsa_key = (argc == 3) ? argv[2] : NULL;
	pkg_finish_repo(argv[1], password_cb, rsa_key);

-
	return (ret);
+
	return (retcode);
}
modified pkg/search.c
@@ -20,7 +20,7 @@ exec_search(int argc, char **argv)
{
	char *pattern;
	match_t match = MATCH_EXACT;
-
	int  retcode = 0;
+
	int  retcode = EPKG_OK;
	unsigned int field = REPO_SEARCH_NAME;
	int ch;
	char size[7];
modified pkg/update.c
@@ -34,14 +34,14 @@ exec_update(int argc, char **argv)
	char url[MAXPATHLEN];
	const char *packagesite = NULL;
	char *tmp = NULL;
-
	int retcode = 0;
+
	int retcode = EPKG_OK;
	struct archive *a;
	struct archive_entry *ae;

	(void)argv;
	if (argc != 1) {
		usage_update();
-
		return (-1);
+
		return (EX_USAGE);
	}

	if (geteuid() != 0) {
@@ -51,7 +51,7 @@ exec_update(int argc, char **argv)

	if ((packagesite = pkg_config("PACKAGESITE")) == NULL) {
		warnx("unable to determine PACKAGESITE");
-
		return (1);
+
		return (EPKG_FATAL);
	}

	if (packagesite[strlen(packagesite) - 1] == '/')
@@ -63,7 +63,7 @@ exec_update(int argc, char **argv)

	if (pkg_fetch_file(url, tmp) != EPKG_OK) {
		pkg_error_warn("can not fetch %s", url);
-
		retcode = 1;
+
		retcode = EPKG_FATAL;
		goto cleanup;
	}

modified pkg/upgrade.c
@@ -27,7 +27,7 @@ exec_upgrade(int argc, char **argv)
	struct pkgdb *db = NULL;
	struct pkgdb_it *it;
	struct pkg *pkg = NULL;
-
	int retcode = 0;
+
	int retcode = EPKG_OK;
	int64_t oldsize = 0, newsize = 0;
	int64_t dlsize = 0;
	char size[7];
@@ -35,7 +35,7 @@ exec_upgrade(int argc, char **argv)
	(void) argv;
	if (argc != 1) {
		usage_upgrade();
-
		return (-1);
+
		return (EX_USAGE);
	}

	if (geteuid() != 0) {
@@ -45,11 +45,12 @@ exec_upgrade(int argc, char **argv)

	if (pkgdb_open(&db, PKGDB_REMOTE) != EPKG_OK) {
		pkg_error_warn("can not open database");
-
		return (1);
+
		return (EX_IOERR);
	}

	if ((it = pkgdb_query_upgrades(db)) == NULL) {
		pkg_error_warn("can not query database");
+
		retcode = EPKG_FATAL;
		goto cleanup;
	}

@@ -65,6 +66,7 @@ exec_upgrade(int argc, char **argv)

	if ((it = pkgdb_query_downgrades(db)) == NULL) {
		pkg_error_warn("can not query database");
+
		retcode = EPKG_FATAL;
		goto cleanup;
	}

@@ -78,7 +80,6 @@ exec_upgrade(int argc, char **argv)
	printf("\n");
	pkgdb_it_free(it);

-

	if (oldsize > newsize) {
		newsize *= -1;
		humanize_number(size, sizeof(size), oldsize - newsize, "B", HN_AUTOSCALE, 0);
modified pkg/version.c
@@ -84,5 +84,5 @@ int exec_version(int argc, char **argv)
		}
	}

-
	return 0;
+
	return (EPKG_OK);
}
modified pkg/which.c
@@ -26,8 +26,7 @@ exec_which(int argc, char **argv)
	struct pkg *pkg = NULL;
	char pathabs[MAXPATHLEN];
	char pathabsdir[MAXPATHLEN];
-
	int retcode = 1;
-
	int ret;
+
	int ret = EPKG_OK, retcode = EPKG_OK;

	if (argc != 2) {
		usage_which();
@@ -37,7 +36,7 @@ exec_which(int argc, char **argv)
	if (pkgdb_open(&db, PKGDB_DEFAULT) != EPKG_OK) {
		pkg_error_warn("can not open database");
		pkgdb_close(db);
-
		return (-1);
+
		return (EX_IOERR);
	}

	realpath(dirname(argv[1]), pathabsdir);
@@ -45,19 +44,19 @@ exec_which(int argc, char **argv)

	if ((it = pkgdb_query_which(db, pathabs)) == NULL) {
		pkg_error_warn("can not query database");
-
		return (-1);
+
		return (EX_IOERR);
	}

	if (( ret = pkgdb_it_next(it, &pkg, PKG_LOAD_BASIC)) == EPKG_OK) {
-
		retcode = 0;
+
		retcode = EPKG_OK;
		printf("%s was installed by package %s-%s\n", pathabs, pkg_get(pkg, PKG_NAME),
			   pkg_get(pkg, PKG_VERSION));
	} else if (ret != EPKG_END) {
		pkg_error_warn("can not iterate over results");
-
		retcode = -1;
+
		retcode = EPKG_WARN;
	} else {
		printf("%s was not found in the database\n", pathabs);
-
		retcode = -1;
+
		retcode = EPKG_WARN;
	}
		
	pkg_free(pkg);