summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValery Febvre <vfebvre at easter-eggs.com>2004-08-07 19:33:29 +0000
committerValery Febvre <vfebvre at easter-eggs.com>2004-08-07 19:33:29 +0000
commit8d90adf21cc3023d92f8d264a510e9705c32ad81 (patch)
tree8a64e3661323e9adf44f96ac00050ad370977116
parent7b3ba37dac818030712754bb20a5674210c7cfb8 (diff)
downloadlasso-8d90adf21cc3023d92f8d264a510e9705c32ad81.tar.gz
lasso-8d90adf21cc3023d92f8d264a510e9705c32ad81.tar.xz
lasso-8d90adf21cc3023d92f8d264a510e9705c32ad81.zip
Added lasso_sha1() method (will replace lasso_str_hash)
-rw-r--r--lasso/xml/tools.c12
-rw-r--r--lasso/xml/tools.h2
2 files changed, 13 insertions, 1 deletions
diff --git a/lasso/xml/tools.c b/lasso/xml/tools.c
index bd176bf9..dc787406 100644
--- a/lasso/xml/tools.c
+++ b/lasso/xml/tools.c
@@ -27,6 +27,8 @@
#include <libxml/uri.h>
+#include <openssl/sha.h>
+
#include <xmlsec/xmltree.h>
#include <xmlsec/base64.h>
#include <xmlsec/xmldsig.h>
@@ -43,7 +45,7 @@ lasso_build_random_sequence(guint8 size)
int i, val;
xmlChar *seq;
- seq = g_malloc(size+1);
+ seq = xmlMalloc(size+1);
for (i=0; i<size; i++) {
val = g_random_int_range(0, 16);
@@ -353,6 +355,14 @@ lasso_query_verify_signature(const gchar *query,
return (ret);
}
+xmlChar*
+lasso_sha1(xmlChar *str)
+{
+ unsigned char *md = xmlMalloc(20);
+
+ return(SHA1(str, strlen(str), md));
+}
+
/**
* lasso_str_escape:
* @str: a string
diff --git a/lasso/xml/tools.h b/lasso/xml/tools.h
index 8f8fde1f..959f948d 100644
--- a/lasso/xml/tools.h
+++ b/lasso/xml/tools.h
@@ -63,6 +63,8 @@ LASSO_EXPORT int lasso_query_verify_signature (const gchar *query,
const xmlChar *sender_public_key_file,
const xmlChar *recipient_private_key_file);
+LASSO_EXPORT xmlChar* lasso_sha1 (xmlChar *str);
+
LASSO_EXPORT xmlChar* lasso_str_escape (xmlChar *str);
LASSO_EXPORT xmlChar* lasso_str_hash (xmlChar *str,