Introduce new pkg state: half-unpacked.

Packages in this state shall be re-installed and re-unpacked because its
files weren't unpacked properly.
This commit is contained in:
Juan RP
2011-07-28 16:25:01 +02:00
parent 6c0b24029b
commit 5e390b8839
7 changed files with 92 additions and 80 deletions

View File

@@ -1293,6 +1293,9 @@ int xbps_repository_sync_pkg_index(const char *uri);
* Integer representing a state on which a package may be. Possible
* values for this are:
*
* <b>XBPS_PKG_STATE_HALF_UNPACKED</b>: Package was being unpacked
* but didn't finish properly.
*
* <b>XBPS_PKG_STATE_UNPACKED</b>: Package has been unpacked correctly
* but has not been configured due to unknown reasons.
*
@@ -1311,7 +1314,8 @@ typedef enum pkg_state {
XBPS_PKG_STATE_INSTALLED,
XBPS_PKG_STATE_BROKEN,
XBPS_PKG_STATE_CONFIG_FILES,
XBPS_PKG_STATE_NOT_INSTALLED
XBPS_PKG_STATE_NOT_INSTALLED,
XBPS_PKG_STATE_HALF_UNPACKED
} pkg_state_t;
/**

View File

@@ -44,7 +44,8 @@
#define EXTRACT_FLAGS ARCHIVE_EXTRACT_SECURE_NODOTDOT | \
ARCHIVE_EXTRACT_SECURE_SYMLINKS
#define FEXTRACT_FLAGS ARCHIVE_EXTRACT_OWNER | ARCHIVE_EXTRACT_PERM | \
ARCHIVE_EXTRACT_TIME | EXTRACT_FLAGS
ARCHIVE_EXTRACT_TIME | ARCHIVE_EXTRACT_UNLINK | \
EXTRACT_FLAGS
#ifndef __UNCONST
#define __UNCONST(a) ((void *)(unsigned long)(const void *)(a))