gnome-keyring r1288 - in trunk: . daemon/pkcs11



Author: nnielsen
Date: Mon Sep  1 02:54:33 2008
New Revision: 1288
URL: http://svn.gnome.org/viewvc/gnome-keyring?rev=1288&view=rev

Log:
	* daemon/pkcs11/gkr-pkcs11-rsa.c: Support extracting of RSA 
	signature even when no pad function is specified for extraction.


Modified:
   trunk/ChangeLog
   trunk/daemon/pkcs11/gkr-pkcs11-rsa.c

Modified: trunk/daemon/pkcs11/gkr-pkcs11-rsa.c
==============================================================================
--- trunk/daemon/pkcs11/gkr-pkcs11-rsa.c	(original)
+++ trunk/daemon/pkcs11/gkr-pkcs11-rsa.c	Mon Sep  1 02:54:33 2008
@@ -118,15 +118,25 @@
               guint nbits, GkrCryptoPadding padfunc, gcry_sexp_t sexp, 
               guchar **data, gsize *n_data)
 {
+	gboolean res;
+	
 	g_assert (format1);
 	g_assert (sexp);
 	g_assert (data);
 	g_assert (n_data);
 
 	/* Now extract and send it back out */
-	*data = gkr_crypto_sexp_extract_mpi_padded (sexp, nbits, n_data, padfunc,
-	                                            format1, format2, format3, NULL);
-	g_return_val_if_fail (*data, CKR_GENERAL_ERROR);
+	if (padfunc) {
+		*data = gkr_crypto_sexp_extract_mpi_padded (sexp, nbits, n_data, padfunc,
+		                                            format1, format2, format3, NULL);
+		g_return_val_if_fail (*data, CKR_GENERAL_ERROR);
+	} else {
+		*n_data = nbits / 8;
+		*data = g_malloc0 (*n_data);
+		res = gkr_crypto_sexp_extract_mpi_aligned (sexp, *data, *n_data, 
+		                                           format1, format2, format3, NULL);
+		g_return_val_if_fail (res, CKR_GENERAL_ERROR);
+	}
 
 	return CKR_OK;  
 } 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]