r4434 - in trunk/src/target/opkg: . libopkg
thomas at docs.openmoko.org
thomas at docs.openmoko.org
Wed May 14 13:00:10 CEST 2008
Author: thomas
Date: 2008-05-14 13:00:10 +0200 (Wed, 14 May 2008)
New Revision: 4434
Modified:
trunk/src/target/opkg/configure.ac
trunk/src/target/opkg/libopkg/opkg.c
trunk/src/target/opkg/libopkg/opkg.h
Log:
opkg: add some error codes to libopkg
Modified: trunk/src/target/opkg/configure.ac
===================================================================
--- trunk/src/target/opkg/configure.ac 2008-05-14 09:44:16 UTC (rev 4433)
+++ trunk/src/target/opkg/configure.ac 2008-05-14 11:00:10 UTC (rev 4434)
@@ -1,6 +1,6 @@
# Process this file with autoconf to produce a configure script
AC_INIT(libopkg/libopkg.c)
-AM_INIT_AUTOMAKE([opkg], [0.1.3])
+AM_INIT_AUTOMAKE([opkg], [0.1.4])
AM_CONFIG_HEADER(libopkg/config.h)
AC_CANONICAL_HOST
Modified: trunk/src/target/opkg/libopkg/opkg.c
===================================================================
--- trunk/src/target/opkg/libopkg/opkg.c 2008-05-14 09:44:16 UTC (rev 4433)
+++ trunk/src/target/opkg/libopkg/opkg.c 2008-05-14 11:00:10 UTC (rev 4434)
@@ -378,14 +378,14 @@
if (old)
{
/* XXX: Error: Package is already installed. */
- return 1;
+ return OPKG_PACKAGE_ALREADY_INSTALLED;
}
new = pkg_hash_fetch_best_installation_candidate_by_name(opkg->conf, package_name);
if (!new)
{
/* XXX: Error: Could not find package to install */
- return 1;
+ return OPKG_PACKAGE_NOT_FOUND;
}
new->state_flag |= SF_USER;
@@ -403,7 +403,7 @@
{
/* XXX: Error: Could not satisfy dependencies */
pkg_vec_free (deps);
- return 1;
+ return OPKG_DEPENDANCIES_FAILED;
}
/* insert the package we are installing so that we download it */
@@ -427,7 +427,7 @@
if (pkg->src == NULL)
{
/* XXX: Error: Package not available from any configured src */
- return 1;
+ return OPKG_PACKAGE_NOT_AVAILABLE;
}
sprintf_alloc(&url, "%s/%s", pkg->src->value, pkg->filename);
@@ -515,7 +515,7 @@
if (pkg == NULL)
{
/* XXX: Error: Package not installed. */
- return 1;
+ return OPKG_PACKAGE_NOT_INSTALLED;
}
pdata.action = OPKG_REMOVE;
@@ -526,7 +526,7 @@
if (pkg->state_status == SS_NOT_INSTALLED)
{
/* XXX: Error: Package seems to be not installed (STATUS = NOT_INSTALLED). */
- return 1;
+ return OPKG_PACKAGE_NOT_INSTALLED;
}
progress (pdata, 25);
@@ -577,7 +577,7 @@
if (pkg == NULL)
{
/* XXX: Error: Package not installed in default_dest */
- return 1;
+ return OPKG_PACKAGE_NOT_INSTALLED;
}
}
else
@@ -589,7 +589,7 @@
if (!pkg)
{
/* XXX: Error: Package not installed */
- return 1;
+ return OPKG_PACKAGE_NOT_INSTALLED;
}
pdata.action = OPKG_INSTALL;
@@ -652,7 +652,7 @@
opkg_update_package_lists (opkg_t *opkg, opkg_progress_callback_t progress_callback, void *user_data)
{
char *tmp;
- int err;
+ int err, result = 0;
char *lists_dir;
pkg_src_list_elt_t *iter;
pkg_src_t *src;
@@ -762,6 +762,7 @@
if (err)
{
/* XXX: Error: download error */
+ result = OPKG_DOWNLOAD_FAILED;
}
free (url);
@@ -815,7 +816,7 @@
free (tmp);
free (lists_dir);
- return 0;
+ return result;
}
Modified: trunk/src/target/opkg/libopkg/opkg.h
===================================================================
--- trunk/src/target/opkg/libopkg/opkg.h 2008-05-14 09:44:16 UTC (rev 4433)
+++ trunk/src/target/opkg/libopkg/opkg.h 2008-05-14 11:00:10 UTC (rev 4434)
@@ -32,6 +32,18 @@
OPKG_DOWNLOAD
};
+enum _opkg_error_code_t
+{
+ OPKG_NO_ERROR,
+ OPKG_UNKNOWN_ERROR,
+ OPKG_DOWNLOAD_FAILED,
+ OPKG_DEPENDANCIES_FAILED,
+ OPKG_PACKAGE_ALREADY_INSTALLED,
+ OPKG_PACKAGE_NOT_AVAILABLE,
+ OPKG_PACKAGE_NOT_FOUND,
+ OPKG_PACKAGE_NOT_INSTALLED
+};
+
struct _opkg_package_t
{
char *name;
More information about the commitlog
mailing list