PERFORCE change 164399 for review

David Forsythe dforsyth at FreeBSD.org
Mon Jun 15 06:28:30 UTC 2009


http://perforce.freebsd.org/chv.cgi?CH=164399

Change 164399 by dforsyth at squirrel on 2009/06/15 06:27:51

	Pulled pkgdb struct into a seperate header.  Still combing through functions that need to be adjusted.

Affected files ...

.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/Makefile#6 edit
.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg.c#17 edit
.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg.h#17 edit
.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg_file.c#3 edit
.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg_file.h#3 edit
.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg_plist.c#10 edit
.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkgdb_hierdb.c#5 edit
.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkgdb_hierdb_pkgdb_sub.h#4 edit
.. //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkgdb_private.h#1 add
.. //depot/projects/soc2009/dforsyth_libpkg/pkg_info/main.c#11 edit

Differences ...

==== //depot/projects/soc2009/dforsyth_libpkg/libpkg/Makefile#6 (text+ko) ====

@@ -1,7 +1,7 @@
 LIB=	pkg
 INCS=	pkg.h
 WARNS=	6
-SRCS=	pkgdb.c pkg_plist.c pkg.c pkg_util.c pkg_file.c pkg_dep.c
+SRCS=	pkgdb.c pkg_plist.c pkg.c pkg_util.c pkg_file.c pkg_dep.c pkgdb_hierdb.c pkgdb_hierdb_pkgdb_sub.c
 NO_MAN=	yes
 
 .include <bsd.lib.mk>

==== //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg.c#17 (text+ko) ====

@@ -9,6 +9,7 @@
 #include "pkg_file.h"
 #include "pkg_plist.h"
 #include "pkgdb_hierdb_pkgdb_sub.h"
+#include "pkgdb_hierdb.h"
 #include "pkgdb.h"
 #include "pkg_private.h"
 #include "pkg.h"

==== //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg.h#17 (text+ko) ====

@@ -1,11 +1,13 @@
 #ifndef __PKG_H__
 #define __PKG_H__
 
-/* When I get more than one, I'll plop it into an enum type. */
 #define HIER_DB 			0
+#define FLAT_DB				1	/* O_o */
 
 /* Here have some error codes. */
 
+/* These error codes are no good.  Switch to contextual errors/macros. */
+
 #define OK					0x00000000
 #define NOT_OK				0x00000001
 #define MEMORY_ERR			0x00000002
@@ -31,7 +33,7 @@
 /* pkg_file */
 
 struct pkg_file;
-#if 0
+
 struct pkg_file *pkg_file_new(void);
 
 const char *pkg_file_path(struct pkg_file *pf);
@@ -49,7 +51,7 @@
 int pkg_file_set_owner(struct pkg_file *pf, const char *owner);
 
 int pkg_file_set_group(struct pkg_file *pf, const char *group);
-#endif
+
 /* pkg */
 
 /* Add mtree stuff later. */
@@ -118,8 +120,12 @@
 
 int pkgdb_db_init(struct pkgdb *db);
 
+char *pkgdb_db_root(struct pkgdb *db);
+
 int pkgdb_db_close(struct pkgdb *db);
 
+void pkgdb_db_delete(struct pkgdb *db);
+
 int pkgdb_pkg_next(struct pkgdb *db, struct pkg *p);
 
 int pkgdb_pkg_get(struct pkgdb *db, struct pkg *p, const char *ident);

==== //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg_file.c#3 (text+ko) ====

@@ -5,18 +5,11 @@
 #include "pkg.h"
 
 struct pkg_file *
-pkg_file_new(const char *path, const char *md5, const char *owner,
-	const char *group)
+pkg_file_new()
 {	
 	struct pkg_file *pf;
 
 	pf = calloc(1, sizeof(*pf));
-	if (pf != NULL) {
-		pf->path = path;
-		pf->md5 = md5;
-		pf->owner = owner;
-		pf->group = group;
-	}
 
 	return (pf);
 }
@@ -60,7 +53,7 @@
 	return (pf->group);
 }
 
-struct pkg_file *
+int
 pkg_file_set_md5(struct pkg_file *pf, const char *md5)
 {
 	if (pf == NULL)
@@ -70,7 +63,7 @@
 	return (pf);
 }
 
-struct pkg_file *
+int
 pkg_file_set_path(struct pkg_file *pf, const char *path)
 {
 	if (pf == NULL)
@@ -80,7 +73,7 @@
 	return (pf);
 }
 
-struct pkg_file *
+int
 pkg_file_set_owner(struct pkg_file *pf, const char *owner)
 {
 	if (pf == NULL)
@@ -90,7 +83,7 @@
 	return (pf);
 }
 
-struct pkg_file *
+int
 pkg_file_set_group(struct pkg_file *pf, const char *group)
 {
 	if (pf == NULL)

==== //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg_file.h#3 (text+ko) ====

@@ -14,6 +14,7 @@
 	TAILQ_ENTRY(pkg_file) next;
 };
 
+#if 0
 struct pkg_file *pkg_file_new(const char *path, const char *md5, 
 	const char *owner, const char *group);
 
@@ -23,7 +24,7 @@
 	const char *owner);
 struct pkg_file *pkg_file_set_group(struct pkg_file *pf, 
 	const char *group);
-
+#endif
 
 
 #endif

==== //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkg_plist.c#10 (text+ko) ====

@@ -263,7 +263,11 @@
 		}
 #endif
 	} else {
-		pf = pkg_file_new(line, NULL, st->owner, st->group);
+		pf = pkg_file_new();
+		pkg_file_set_path(pf, line);
+		pkg_file_set_md5(pf, NULL);
+		pkg_file_set_owner(pf, st->owner);
+		pkg_file_set_group(pf, st->group);
 		pkg_plist_pkg_file_list_append(pl, pf);
 		st->last_elem = PLIST_FILE;
 	}

==== //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkgdb_hierdb.c#5 (text+ko) ====

@@ -1,3 +1,7 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <dirent.h>
@@ -5,6 +9,7 @@
 #include "pkg_util.h"
 #include "pkg.h"
 #include "pkgdb.h"
+#include "pkgdb_private.h"
 #include "pkgdb_hierdb.h"
 #include "pkgdb_hierdb_pkgdb_sub.h"
 
@@ -20,14 +25,14 @@
 	if (db == NULL)
 		arg_rage_quit(__func__, "Not a valid database.", RAGE_AT_CLIENT);
 	if (db_root == NULL)
-		arg_rage_quit(__func__, "Not a valid root directory for
-			database.", RAGE_AT_CLIENT);
+		arg_rage_quit(__func__, "Not a valid root directory for database.", 
+			RAGE_AT_CLIENT);
 	
 	if (db->open)
-		return (DB_IS_OPEN);
+		return (DB_OPEN);
 
-	s = lstat(&sb);
-	if (s < 0 || !S_ISDIR(sb.st_mode) || S_ISLINK(sb.st_mode))
+	s = lstat(db_root, &sb);
+	if (s < 0 || !S_ISDIR(sb.st_mode) || S_ISLNK(sb.st_mode))
 		return (DB_INVALID_ROOT);
 
 	db->db_root = strdup(db_root);

==== //depot/projects/soc2009/dforsyth_libpkg/libpkg/pkgdb_hierdb_pkgdb_sub.h#4 (text+ko) ====

@@ -1,6 +1,7 @@
 #ifndef __PKGDB_SUB_H__
 #define __PKGDB_SUB_H__
 
+#include <sys/queue.h>
 #include "pkg.h"
 
 /* Keep this in here until (if) I ditch queues. */

==== //depot/projects/soc2009/dforsyth_libpkg/pkg_info/main.c#11 (text+ko) ====

@@ -58,7 +58,8 @@
 	}
 
 	perform_on_db(db);
-
+	
+	pkgdb_db_delete(db);
 	return (EXIT_SUCCESS);
 }
 
@@ -100,7 +101,7 @@
 	status = pkgdb_db_init(db);
 	if (status) {
 		fprintf(stderr, "Could not initialize database \"%s\"\n",
-			pkgdb_db_root(db_root));
+			pkgdb_db_root(db));
 		exit(EXIT_FAILURE);
 	}
 


More information about the p4-projects mailing list