summaryrefslogtreecommitdiffstats
path: root/lib/libalpm/util.c
diff options
context:
space:
mode:
authorChantry Xavier <shiningxc@gmail.com>2008-02-27 00:50:17 +0100
committerDan McGee <dan@archlinux.org>2008-02-28 02:02:17 +0100
commitd734ebdde270c1e13e3b910e731bea88d874a51c (patch)
treeadeca08fd11beb9bd4b87e7dbed6b70d4a07fd8f /lib/libalpm/util.c
parentc2dbbd60bc8a4c90ec32fdbe9098ffae222d00d7 (diff)
downloadpacman-d734ebdde270c1e13e3b910e731bea88d874a51c.tar.gz
pacman-d734ebdde270c1e13e3b910e731bea88d874a51c.tar.xz
libalpm: clean up of md5sum functions.
test_delta_md5sum and test_pkg_md5sum were simple wrappers to test_md5sum, and only used once, so not very useful. I removed them. Also, test_md5sum and alpm_pkg_checkmd5sum functions were a bit duplicated, so I refactored them with a new _alpm_test_md5sum function in libalpm/util.c Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Diffstat (limited to 'lib/libalpm/util.c')
-rw-r--r--lib/libalpm/util.c27
1 files changed, 20 insertions, 7 deletions
diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index e1413a25..806f601c 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -640,13 +640,7 @@ char SYMEXPORT *alpm_get_md5sum(const char *filename)
ret = md5_file(filename, output);
if (ret > 0) {
- if (ret == 1) {
- _alpm_log(PM_LOG_ERROR, _("md5: %s can't be opened\n"), filename);
- } else if (ret == 2) {
- _alpm_log(PM_LOG_ERROR, _("md5: %s can't be read\n"), filename);
- }
-
- return(NULL);
+ RET_ERR(PM_ERR_NOT_A_FILE, NULL);
}
/* Convert the result to something readable */
@@ -660,4 +654,23 @@ char SYMEXPORT *alpm_get_md5sum(const char *filename)
return(md5sum);
}
+int _alpm_test_md5sum(const char *filepath, const char *md5sum)
+{
+ char *md5sum2;
+ int ret;
+
+ md5sum2 = alpm_get_md5sum(filepath);
+
+ if(md5sum == NULL || md5sum2 == NULL) {
+ ret = -1;
+ } else if(strcmp(md5sum, md5sum2) != 0) {
+ ret = 1;
+ } else {
+ ret = 0;
+ }
+
+ FREE(md5sum2);
+ return(ret);
+}
+
/* vim: set ts=2 sw=2 noet: */