[gcr] egg-asn1x: Bring over changes from gnome-keyring



commit d5e403890427e629c568f03a5823efb25175ee73
Author: Stef Walter <stefw gnome org>
Date:   Wed Nov 7 23:05:18 2012 +0100

    egg-asn1x: Bring over changes from gnome-keyring

 egg/egg-asn1x.c |   17 ++++++++++++++++-
 egg/egg-asn1x.h |    3 +++
 2 files changed, 19 insertions(+), 1 deletions(-)
---
diff --git a/egg/egg-asn1x.c b/egg/egg-asn1x.c
index 7e6e854..105540f 100644
--- a/egg/egg-asn1x.c
+++ b/egg/egg-asn1x.c
@@ -1514,7 +1514,7 @@ atlv_sort_perform (Atlv *tlv,
 
 		g_bytes_unref (pair->bytes);
 		g_slice_free (SortPair, pair);
- 	}
+	}
 
 	g_list_free (pairs);
 }
@@ -3199,6 +3199,21 @@ egg_asn1x_set_string_as_raw (GNode *node,
 	                                                   destroy, data));
 }
 
+void
+egg_asn1x_set_string_as_bytes (GNode *node,
+                               GBytes *bytes)
+{
+	gint type;
+
+	g_return_if_fail (node != NULL);
+	g_return_if_fail (bytes != NULL);
+
+	type = anode_def_type (node);
+	g_return_if_fail (type == EGG_ASN1X_OCTET_STRING || type == EGG_ASN1X_GENERALSTRING);
+
+	anode_set_value (node, g_bytes_ref (bytes));
+}
+
 GBytes *
 egg_asn1x_get_string_as_bytes (GNode *node)
 {
diff --git a/egg/egg-asn1x.h b/egg/egg-asn1x.h
index bca01e0..0320a0c 100644
--- a/egg/egg-asn1x.h
+++ b/egg/egg-asn1x.h
@@ -189,6 +189,9 @@ void                egg_asn1x_set_string_as_raw      (GNode *node,
 
 GBytes *            egg_asn1x_get_string_as_bytes    (GNode *node);
 
+void                egg_asn1x_set_string_as_bytes    (GNode *node,
+                                                      GBytes *bytes);
+
 GBytes *            egg_asn1x_get_bits_as_raw        (GNode *node,
                                                       guint *n_bits);
 



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