summaryrefslogtreecommitdiff
path: root/lib/libalpm/md5driver.c
diff options
context:
space:
mode:
authorAndrew Fyfe <andrew@neptune-one.net>2007-07-25 22:49:32 +0100
committerDan McGee <dan@archlinux.org>2007-08-16 13:17:33 -0400
commit1cb6d80631359306d70bbe5fbcbbca1474594ada (patch)
tree61348cf98beac7febbe0558a353f2cec46930315 /lib/libalpm/md5driver.c
parentba67fdae63122b40d8fb4abf9c1c7695999f143d (diff)
downloadpacman-1cb6d80631359306d70bbe5fbcbbca1474594ada.tar.xz
Clean up MD5 code.
* Move alpm md5 functions to lib/libalpm/util.c * Remove unneeded includes for md5.h * Replace md5 implementation with one from http://www.xyssl.org Dan: clean up XySSL code by removing parts we don't use, and add a note saying what changed. Dan: fix alpm_get_md5sum, off by one error on the malloc call and other small things. Signed-off-by: Andrew Fyfe <andrew@neptune-one.net> Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'lib/libalpm/md5driver.c')
-rw-r--r--lib/libalpm/md5driver.c93
1 files changed, 0 insertions, 93 deletions
diff --git a/lib/libalpm/md5driver.c b/lib/libalpm/md5driver.c
deleted file mode 100644
index caeddc14..00000000
--- a/lib/libalpm/md5driver.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/* MD5DRIVER.C - taken and modified from MDDRIVER.C (license below) */
-/* for use in pacman. */
-/*********************************************************************/
-
-/* Copyright (C) 1990-2, RSA Data Security, Inc. Created 1990. All
-rights reserved.
-
-RSA Data Security, Inc. makes no representations concerning either
-the merchantability of this software or the suitability of this
-software for any particular purpose. It is provided "as is"
-without express or implied warranty of any kind.
-
-These notices must be retained in any copies of any part of this
-documentation and/or software.
- */
-
-/* The following makes MD default to MD5 if it has not already been
- defined with C compiler flags.
- */
-#define MD MD5
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-
-/* libalpm */
-#include "alpm.h"
-#include "log.h"
-#include "util.h"
-#include "md5.h"
-
-/* Length of test block, number of test blocks.
- */
-#define TEST_BLOCK_LEN 1000
-#define TEST_BLOCK_COUNT 1000
-
-#define MD_CTX MD5_CTX
-#define MDInit _alpm_MD5Init
-#define MDUpdate _alpm_MD5Update
-#define MDFinal _alpm_MD5Final
-
-/** Get the md5 sum of file.
- * @param name name of the file
- * @return the checksum on success, NULL on error
- * @addtogroup alpm_misc
- */
-char SYMEXPORT *alpm_get_md5sum(char *name)
-{
- ALPM_LOG_FUNC;
-
- ASSERT(name != NULL, return(NULL));
-
- return(_alpm_MDFile(name));
-}
-
-char* _alpm_MDFile(char *filename)
-{
- FILE *file;
- MD_CTX context;
- int len;
- char hex[3];
- unsigned char buffer[1024], digest[16];
-
- ALPM_LOG_FUNC;
-
- if((file = fopen(filename, "rb")) == NULL) {
- _alpm_log(PM_LOG_ERROR, _("md5: %s can't be opened\n"), filename);
- } else {
- char *ret;
- int i;
-
- MDInit(&context);
- while((len = fread(buffer, 1, 1024, file))) {
- MDUpdate(&context, buffer, len);
- }
- MDFinal(digest, &context);
- fclose(file);
-
- ret = calloc(33, sizeof(char));
- for(i = 0; i < 16; i++) {
- snprintf(hex, 3, "%02x", digest[i]);
- strncat(ret, hex, 2);
- }
-
- _alpm_log(PM_LOG_DEBUG, "md5(%s) = %s", filename, ret);
- return(ret);
- }
- return(NULL);
-}
-
-/* vim: set ts=2 sw=2 noet: */