diff options
author | Andreas Steffen <andreas.steffen@strongswan.org> | 2008-04-25 06:39:41 +0000 |
---|---|---|
committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2008-04-25 06:39:41 +0000 |
commit | 36fecdb8a35e275eaf8aa1caed48674fcf30d76f (patch) | |
tree | dca74d6fb26fea769f469d073fde1120932cccf8 | |
parent | 5e6bbf4f772915fa98e0bc47b802ef84d02746f8 (diff) | |
download | strongswan-36fecdb8a35e275eaf8aa1caed48674fcf30d76f.tar.bz2 strongswan-36fecdb8a35e275eaf8aa1caed48674fcf30d76f.tar.xz |
chunk_to_hex() adaptations
-rw-r--r-- | src/manager/storage.c | 8 | ||||
-rwxr-xr-x | src/openac/openac.c | 21 |
2 files changed, 14 insertions, 15 deletions
diff --git a/src/manager/storage.c b/src/manager/storage.c index 87e0374a7..ab7ad790a 100644 --- a/src/manager/storage.c +++ b/src/manager/storage.c @@ -45,7 +45,7 @@ struct private_storage_t { static int login(private_storage_t *this, char *username, char *password) { hasher_t *hasher; - chunk_t hash, data; + chunk_t hash, data, hex_str; size_t username_len, password_len; int uid = 0; char *str; @@ -65,18 +65,18 @@ static int login(private_storage_t *this, char *username, char *password) memcpy(data.ptr + username_len, password, password_len); hasher->get_hash(hasher, data, hash.ptr); hasher->destroy(hasher); - str = chunk_to_hex(hash, FALSE); + hex_str = chunk_to_hex(hash, NULL, FALSE); enumerator = this->db->query(this->db, "SELECT oid FROM users WHERE username = ? AND password = ?;", - DB_TEXT, username, DB_TEXT, str, + DB_TEXT, username, DB_TEXT, hex_str.ptr, DB_INT); if (enumerator) { enumerator->enumerate(enumerator, &uid); enumerator->destroy(enumerator); } - free(str); + free(hex_str.ptr); return uid; } diff --git a/src/openac/openac.c b/src/openac/openac.c index d0d20b108..f2d879f7a 100755 --- a/src/openac/openac.c +++ b/src/openac/openac.c @@ -37,7 +37,6 @@ #include <debug.h> #include <asn1/asn1.h> #include <asn1/pem.h> -#include <asn1/ttodata.h> #include <credentials/certificates/x509.h> #include <credentials/certificates/ac.h> #include <utils/optionsfrom.h> @@ -115,7 +114,8 @@ static chunk_t read_serial(void) mpz_t number; char buf[BUF_LEN], buf1[BUF_LEN]; - chunk_t last_serial = { buf1, BUF_LEN}; + chunk_t hex_serial = { buf, BUF_LEN }; + chunk_t last_serial = { buf1, BUF_LEN }; chunk_t serial; FILE *fd = fopen(OPENAC_SERIAL, "r"); @@ -126,15 +126,10 @@ static chunk_t read_serial(void) if (fd) { - if (fscanf(fd, "%s", buf)) + if (fscanf(fd, "%s", hex_serial.ptr)) { - err_t ugh = ttodata(buf, 0, 16, last_serial.ptr, BUF_LEN, &last_serial.len); - - if (ugh != NULL) - { - DBG1(" error reading serial number from %s: %s", - OPENAC_SERIAL, ugh); - } + hex_serial.len = strlen(hex_serial.ptr); + last_serial = chunk_from_hex(hex_serial, last_serial.ptr); } fclose(fd); } @@ -166,9 +161,13 @@ static void write_serial(chunk_t serial) if (fd) { + chunk_t hex_serial; + DBG1(" serial number is %#B", &serial); - fprintf(fd, "%#B\n", &serial); + hex_serial = chunk_to_hex(serial, NULL, FALSE); + fprintf(fd, "%.*s\n", hex_serial.len, hex_serial.ptr); fclose(fd); + free(hex_serial.ptr); } else { |