added more error messages, enabled the db permission check in trans_commit

This commit is contained in:
Judd Vinet 2005-10-08 23:40:49 +00:00
parent 79a20cdc96
commit 6f75de92b5
3 changed files with 39 additions and 9 deletions

View File

@ -615,8 +615,8 @@ int alpm_trans_commit()
ASSERT(trans != NULL, RET_ERR(PM_ERR_TRANS_NULL, -1));
ASSERT(trans->state == STATE_PREPARED, RET_ERR(PM_ERR_TRANS_NOT_PREPARED, -1));
/* ORE
ASSERT(handle->access != PM_ACCESS_RW, RET_ERR(PM_ERR_BAD_PERMS, -1));*/
/* Check for database R/W permission */
ASSERT(handle->access == PM_ACCESS_RW, RET_ERR(PM_ERR_BADPERMS, -1));
return(trans_commit(handle->trans));
}

View File

@ -310,8 +310,8 @@ extern enum __pmerrno_t {
PM_ERR_DB_OPEN,
PM_ERR_DB_CREATE,
PM_ERR_DB_NULL,
PM_ERR_DB_NOT_FOUND,
PM_ERR_DB_NOT_NULL,
PM_ERR_DB_NOT_FOUND,
PM_ERR_DB_WRITE,
PM_ERR_DB_UPTODATE,
/* Cache */

View File

@ -25,6 +25,14 @@ char *alpm_strerror(int err)
{
switch(err) {
/* System */
case PM_ERR_MEMORY:
return "out of memory!";
case PM_ERR_SYSTEM:
return "unexpected error";
case PM_ERR_BADPERMS:
return "insufficient privileges";
case PM_ERR_WRONG_ARGS:
return "wrong or NULL argument passed";
case PM_ERR_NOT_A_FILE:
return "could not find or read file";
/* Interface */
@ -32,8 +40,8 @@ char *alpm_strerror(int err)
return "library not initialized";
case PM_ERR_HANDLE_NOT_NULL:
return "library already initialized";
case PM_ERR_WRONG_ARGS:
return "wrong or NULL argument";
case PM_ERR_HANDLE_LOCK:
return "unable to lock database";
/* Databases */
case PM_ERR_DB_OPEN:
return "could not open database";
@ -45,9 +53,17 @@ char *alpm_strerror(int err)
return "database already registered";
case PM_ERR_DB_NOT_FOUND:
return "could not find database";
case PM_ERR_DB_WRITE:
return "could not update database";
case PM_ERR_DB_UPTODATE:
return "database is up to date";
/* Cache */
case PM_ERR_CACHE_NULL:
return "cache not initialized";
/* Configuration */
case PM_ERR_OPT_LOGFILE:
case PM_ERR_OPT_DBPATH:
case PM_ERR_OPT_LOCALDB:
case PM_ERR_OPT_SYNCDB:
case PM_ERR_OPT_USESYSLOG:
return "could not set parameter";
@ -57,22 +73,33 @@ char *alpm_strerror(int err)
case PM_ERR_TRANS_NOT_NULL:
return "transaction already initialized";
case PM_ERR_TRANS_DUP_TARGET:
return "duplicated target";
return "duplicate target";
case PM_ERR_TRANS_INITIALIZED:
return "transaction already initialized";
case PM_ERR_TRANS_NOT_INITIALIZED:
return "transaction not initialized";
case PM_ERR_TRANS_NOT_PREPARED:
return "transaction not prepared";
case PM_ERR_TRANS_ABORT:
return "transaction aborted";
/* Packages */
case PM_ERR_PKG_NOT_FOUND:
return "could not find or read package";
case PM_ERR_PKG_INVALID:
return "invalid or corrupted package";
case PM_ERR_PKG_OPEN:
return "cannot open package file";
case PM_ERR_PKG_LOAD:
return "cannot load package data";
case PM_ERR_PKG_INSTALLED:
return "package already installed";
case PM_ERR_PKG_CANT_FRESH:
return "package not installed or lesser version";
case PM_ERR_PKG_INVALID_NAME:
return "package name is not valid";
/* Groups */
case PM_ERR_GRP_NOT_FOUND:
return "group not found";
/* Dependencies */
case PM_ERR_UNSATISFIED_DEPS:
return "could not satisfy dependencies";
@ -82,9 +109,12 @@ char *alpm_strerror(int err)
return "could not resolve dependencies";
case PM_ERR_FILE_CONFLICTS:
return "conflicting files";
/* System */
case PM_ERR_HANDLE_LOCK:
return "could not create the lock file";
/* Miscellaenous */
case PM_ERR_USER_ABORT:
return "user aborted";
case PM_ERR_INTERNAL_ERROR:
return "internal error";
case PM_ERR_XXX:
default:
return "unexpected error";
}