From: ticktock35 Date: Mon, 15 Dec 2008 05:22:59 +0000 (+0000) Subject: opkg: Don't attempt to check the validity of a repository if package did not X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=4811b041bc4792c6dbdbe9e79d192048b1939982;p=project%2Fopkg-lede.git opkg: Don't attempt to check the validity of a repository if package did not come from a known source git-svn-id: http://opkg.googlecode.com/svn/trunk@134 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358 --- diff --git a/libopkg/opkg_install.c b/libopkg/opkg_install.c index 3db224f..e1a50cc 100644 --- a/libopkg/opkg_install.c +++ b/libopkg/opkg_install.c @@ -828,22 +828,26 @@ int opkg_install_pkg(opkg_conf_t *conf, pkg_t *pkg, int from_upgrade) #if HAVE_GPGME char *list_file_name, *sig_file_name, *lists_dir; - sprintf_alloc (&lists_dir, "%s", - (conf->restrict_to_default_dest) - ? conf->default_dest->lists_dir - : conf->lists_dir); - sprintf_alloc (&list_file_name, "%s/%s", lists_dir, pkg->src->name); - sprintf_alloc (&sig_file_name, "%s/%s.sig", lists_dir, pkg->src->name); - - if (file_exists (sig_file_name)) + /* check to ensure the package has come from a repository */ + if (pkg->src) { - if (opkg_verify_file (conf, list_file_name, sig_file_name)) - return OPKG_INSTALL_ERR_SIGNATURE; + sprintf_alloc (&lists_dir, "%s", + (conf->restrict_to_default_dest) + ? conf->default_dest->lists_dir + : conf->lists_dir); + sprintf_alloc (&list_file_name, "%s/%s", lists_dir, pkg->src->name); + sprintf_alloc (&sig_file_name, "%s/%s.sig", lists_dir, pkg->src->name); + + if (file_exists (sig_file_name)) + { + if (opkg_verify_file (conf, list_file_name, sig_file_name)) + return OPKG_INSTALL_ERR_SIGNATURE; + } + + free (lists_dir); + free (list_file_name); + free (sig_file_name); } - - free (lists_dir); - free (list_file_name); - free (sig_file_name); #endif /* Check for md5 values */