Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Merge branch 'master' of git://github.com/pkgng/pkgng
Frederic Culot committed 14 years ago
commit 542fe9d2d8e0ea97ed0f1109e380981de8de8614
parent 94fe495
6 files changed +64 -62
modified libpkg/pkg.h
@@ -613,18 +613,6 @@ int pkgdb_it_next(struct pkgdb_it *, struct pkg **pkg, int flags);
 */
void pkgdb_it_free(struct pkgdb_it *);

-
int pkgdb_load_deps(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_rdeps(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_files(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_dirs(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_scripts(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_options(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_mtree(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_category(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_license(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_user(struct pkgdb *db, struct pkg *pkg);
-
int pkgdb_load_group(struct pkgdb *db, struct pkg *pkg);
-

/**
 * Compact the database to save space.
 * Note that the function will really compact the database only if some
@@ -696,19 +684,6 @@ int pkg_create_installed(const char *, pkg_formats, const char *, struct pkg *);
 */
int pkg_create_fakeroot(const char *, pkg_formats, const char *, const char *);

-
/**
-
 * Remove and unregister the package.
-
 * @param pkg An installed package to delete
-
 * @param db An opened pkgdb
-
 * @param force If set to one, the function will not fail if the package is
-
 * required by other packages.
-
 * @return An error code.
-
 */
-
int pkg_delete(struct pkg *pkg, struct pkgdb *db, int flags);
-
#define PKG_DELETE_FORCE (1<<0)
-
#define PKG_DELETE_UPGRADE (1<<1)
-

-
int pkg_repo_fetch(struct pkg *pkg);
int pkg_repo_verify(const char *path, unsigned char *sig, unsigned int sig_len);

/**
@@ -739,17 +714,6 @@ int ports_parse_plist(struct pkg *, char *);
int pkg_copy_tree(struct pkg *, const char *src, const char *dest);

/**
-
 * scripts handling
-
 */
-
int pkg_script_pre_install(struct pkg *);
-
int pkg_script_post_install(struct pkg *);
-
int pkg_script_pre_upgrade(struct pkg *);
-
int pkg_script_post_upgrade(struct pkg *);
-
int pkg_script_pre_deinstall(struct pkg *);
-
int pkg_script_post_deinstall(struct pkg *);
-
int pkg_script_run(struct pkg *, pkg_script_t type);
-

-
/**
 * Event type used to report progress or problems.
 */
typedef enum {
@@ -830,14 +794,7 @@ typedef int(*pkg_event_cb)(void *, struct pkg_event *);

void pkg_event_register(pkg_event_cb cb, void *data);

-
int pkg_stop_rc_scripts(struct pkg *);
-
int pkg_start_rc_scripts(struct pkg *);
-

-

int pkg_init(const char *);
int pkg_shutdown(void);

-
int pkg_add_user_group(struct pkg *pkg);
-
int pkg_delete_user_group(struct pkgdb *db, struct pkg *pkg);
-

#endif
modified libpkg/pkg_event.c
@@ -1,3 +1,5 @@
+
#include <syslog.h>
+

#include "pkg.h"
#include "pkg_event.h"

@@ -86,10 +88,18 @@ void
pkg_emit_install_finished(struct pkg *p)
{
	struct pkg_event ev;
+
	bool syslog_enabled = false;
+
	char *name, *version;

	ev.type = PKG_EVENT_INSTALL_FINISHED;
	ev.e_install_finished.pkg = p;

+
	pkg_config_bool(PKG_CONFIG_SYSLOG, &syslog_enabled);
+
	if (syslog_enabled) {
+
		pkg_get(p, PKG_NAME, &name, PKG_VERSION, &version);
+
		syslog(LOG_NOTICE, "%s-%s installed", name, version);
+
	}
+

	pkg_emit_event(&ev);
}

@@ -126,10 +136,18 @@ void
pkg_emit_deinstall_finished(struct pkg *p)
{
	struct pkg_event ev;
+
	bool syslog_enabled = false;
+
	char *name, *version;

	ev.type = PKG_EVENT_DEINSTALL_FINISHED;
	ev.e_deinstall_finished.pkg = p;

+
	pkg_config_bool(PKG_CONFIG_SYSLOG, &syslog_enabled);
+
	if (syslog_enabled) {
+
		pkg_get(p, PKG_NAME, &name, PKG_VERSION, &version);
+
		syslog(LOG_NOTICE, "%s-%s deinstalled", name, version);
+
	}
+

	pkg_emit_event(&ev);
}

@@ -148,10 +166,18 @@ void
pkg_emit_upgrade_finished(struct pkg *p)
{
	struct pkg_event ev;
+
	bool syslog_enabled = false;
+
	char *name, *version, *newversion;

	ev.type = PKG_EVENT_UPGRADE_FINISHED;
	ev.e_upgrade_finished.pkg = p;

+
	pkg_config_bool(PKG_CONFIG_SYSLOG, &syslog_enabled);
+
	if (syslog_enabled) {
+
		pkg_get(p, PKG_NAME, &name, PKG_VERSION, &version, PKG_NEWVERSION, &newversion);
+
		syslog(LOG_NOTICE, "%s upgraded: %s -> %s ", name, version, newversion);
+
	}
+

	pkg_emit_event(&ev);
}

modified libpkg/pkg_private.h
@@ -126,6 +126,28 @@ struct pkg_group {
	STAILQ_ENTRY(pkg_group) next;
};

+
/**
+
 * Remove and unregister the package.
+
 * @param pkg An installed package to delete
+
 * @param db An opened pkgdb
+
 * @param force If set to one, the function will not fail if the package is
+
 * required by other packages.
+
 * @return An error code.
+
 */
+
int pkg_delete(struct pkg *pkg, struct pkgdb *db, int flags);
+
#define PKG_DELETE_FORCE (1<<0)
+
#define PKG_DELETE_UPGRADE (1<<1)
+

+
int pkg_repo_fetch(struct pkg *pkg);
+

+
int pkg_stop_rc_scripts(struct pkg *);
+
int pkg_start_rc_scripts(struct pkg *);
+

+
int pkg_script_run(struct pkg *, pkg_script_t type);
+

+
int pkg_add_user_group(struct pkg *pkg);
+
int pkg_delete_user_group(struct pkgdb *db, struct pkg *pkg);
+

int pkg_open2(struct pkg **p, struct archive **a, struct archive_entry **ae, const char *path, struct sbuf *mbuf);

void pkg_list_free(struct pkg *, pkg_list);
@@ -183,4 +205,17 @@ int pkg_set_mtree(struct pkg *, const char *mtree);
/* pkgdb commands */
int sql_exec(sqlite3 *, const char *, ...);

+
int pkgdb_load_deps(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_rdeps(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_files(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_dirs(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_scripts(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_options(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_mtree(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_category(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_license(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_user(struct pkgdb *db, struct pkg *pkg);
+
int pkgdb_load_group(struct pkgdb *db, struct pkg *pkg);
+

+

#endif
modified libpkg/rcscripts.c
@@ -8,6 +8,7 @@
#include <unistd.h>

#include "pkg.h"
+
#include "pkg_private.h"
#include "pkg_event.h"

static int rc_stop(const char *);
modified libpkg/scripts.c
@@ -33,6 +33,7 @@ pkg_script_run(struct pkg * const pkg, pkg_script_t type)
			break;
	}

+
	assert(i < sizeof(map) / sizeof(map[0]));
	assert(map[i].a == type);

	while (pkg_scripts(pkg, &script) == EPKG_OK) {
modified pkg/event.c
@@ -1,7 +1,6 @@
#include <sys/param.h>
#include <string.h>
#include <err.h>
-
#include <syslog.h>
#include <stdarg.h>

#include "pkg.h"
@@ -20,9 +19,6 @@ event_callback(void *data, struct pkg_event *ev)
	int *debug = data;
	(void)debug;
	const char *name, *version, *newversion;
-
	bool syslog_enabled;
-

-
	pkg_config_bool(PKG_CONFIG_SYSLOG, &syslog_enabled);

	switch(ev->type) {
	case PKG_EVENT_ERRNO:
@@ -49,12 +45,9 @@ event_callback(void *data, struct pkg_event *ev)
		break;
	case PKG_EVENT_INSTALL_FINISHED:
		printf(" done\n");
-
		pkg_get(ev->e_install_finished.pkg, PKG_MESSAGE, &message,
-
			PKG_NAME, &name, PKG_VERSION, &version);
+
		pkg_get(ev->e_install_finished.pkg, PKG_MESSAGE, &message);
		if (message != NULL && message[0] != '\0')
			printf("%s\n", message);
-
		if (syslog_enabled)
-
			syslog(LOG_NOTICE, "Installed: %s-%s", name, version);
		break;
	case PKG_EVENT_INTEGRITYCHECK_BEGIN:
		printf("Checking integrity...");
@@ -70,11 +63,6 @@ event_callback(void *data, struct pkg_event *ev)
		break;
	case PKG_EVENT_DEINSTALL_FINISHED:
		printf(" done\n");
-
		if (syslog_enabled) {
-
			pkg_get(ev->e_deinstall_finished.pkg, PKG_NAME, &name,
-
				PKG_VERSION, &version);
-
			syslog(LOG_NOTICE, "Deinstalled: %s-%s", name, version);
-
		}
		break;
	case PKG_EVENT_UPGRADE_BEGIN:
		pkg_get(ev->e_upgrade_finished.pkg, PKG_NAME, &name, PKG_VERSION, &version,
@@ -84,12 +72,6 @@ event_callback(void *data, struct pkg_event *ev)
		break;
	case PKG_EVENT_UPGRADE_FINISHED:
		printf(" done\n");
-
		if (syslog_enabled) {
-
			pkg_get(ev->e_upgrade_finished.pkg, PKG_NAME, &name,
-
				PKG_VERSION, &version, PKG_NEWVERSION, &newversion);
-
			syslog(LOG_NOTICE, "Upgrading: %s-%s to %s-%s",
-
				name, version, name, newversion);
-
		}
		break;
	case PKG_EVENT_REQUIRED:
		pkg = ev->e_required.pkg;