Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Add filesite definition to repo meta.
Vsevolod Stakhov committed 11 years ago
commit 1c5efbf68559915e9a81b278261535c513ee1f1e
parent 3027cac
2 files changed +14 -0
modified libpkg/pkg_repo_meta.c
@@ -45,6 +45,8 @@ pkg_repo_meta_set_default(struct pkg_repo_meta *meta)
	meta->manifests_archive = strdup("packagesite");
	meta->digests = strdup("digests");
	meta->digests_archive = strdup("digests");
+
	meta->filesite = strdup("filesite.yaml");
+
	meta->filesite_archive = strdup("filesite");
	/* Not using fulldb */
	meta->fulldb = NULL;
	meta->fulldb_archive = NULL;
@@ -64,10 +66,12 @@ pkg_repo_meta_free(struct pkg_repo_meta *meta)
		free(meta->manifests);
		free(meta->digests);
		free(meta->fulldb);
+
		free(meta->filesite);
		free(meta->conflicts_archive);
		free(meta->manifests_archive);
		free(meta->digests_archive);
		free(meta->fulldb_archive);
+
		free(meta->filesite_archive);
		free(meta->maintainer);
		free(meta->source);
		free(meta->source_identifier);
@@ -99,10 +103,12 @@ pkg_repo_meta_open_schema_v1()
			"manifests = {type = string};\n"
			"conflicts = {type = string};\n"
			"fulldb = {type = string};\n"
+
			"filesite = {type = string};\n"
			"digests_archive = {type = string};\n"
			"manifests_archive = {type = string};\n"
			"conflicts_archive = {type = string};\n"
			"fulldb_archive = {type = string};\n"
+
			"filesite_archive = {type = string};\n"
			"source_identifier = {type = string};\n"
			"revision = {type = integer};\n"
			"eol = {type = integer};\n"
@@ -192,10 +198,12 @@ pkg_repo_meta_parse(ucl_object_t *top, struct pkg_repo_meta **target, int versio
	META_EXTRACT_STRING(digests);
	META_EXTRACT_STRING(manifests);
	META_EXTRACT_STRING(fulldb);
+
	META_EXTRACT_STRING(filesite);
	META_EXTRACT_STRING(conflicts_archive);
	META_EXTRACT_STRING(digests_archive);
	META_EXTRACT_STRING(manifests_archive);
	META_EXTRACT_STRING(fulldb_archive);
+
	META_EXTRACT_STRING(filesite_archive);

	META_EXTRACT_STRING(source_identifier);

@@ -340,10 +348,12 @@ pkg_repo_meta_to_ucl(struct pkg_repo_meta *meta)
	META_EXPORT_FIELD(result, meta, manifests, string);
	META_EXPORT_FIELD(result, meta, conflicts, string);
	META_EXPORT_FIELD(result, meta, fulldb, string);
+
	META_EXPORT_FIELD(result, meta, filesite, string);
	META_EXPORT_FIELD(result, meta, digests_archive, string);
	META_EXPORT_FIELD(result, meta, manifests_archive, string);
	META_EXPORT_FIELD(result, meta, conflicts_archive, string);
	META_EXPORT_FIELD(result, meta, fulldb_archive, string);
+
	META_EXPORT_FIELD(result, meta, filesite_archive, string);

	META_EXPORT_FIELD(result, meta, source_identifier, string);
	META_EXPORT_FIELD(result, meta, revision, int);
modified libpkg/private/pkg.h
@@ -303,6 +303,8 @@ typedef enum pkg_checksum_type_e {
	PKG_HASH_TYPE_UNKNOWN
} pkg_checksum_type_t;

+
static const char repo_meta_file[] = "meta";
+

struct pkg_repo_meta {

	char *maintainer;
@@ -315,6 +317,8 @@ struct pkg_repo_meta {
	char *digests_archive;
	char *manifests;
	char *manifests_archive;
+
	char *filesite;
+
	char *filesite_archive;
	char *conflicts;
	char *conflicts_archive;
	char *fulldb;