egg-asn1x: Bring over changes from gnome-keyring
authorStef Walter <stefw@gnome.org>
Wed, 7 Nov 2012 22:05:18 +0000 (23:05 +0100)
committerStef Walter <stefw@gnome.org>
Wed, 7 Nov 2012 22:14:17 +0000 (23:14 +0100)
egg/egg-asn1x.c
egg/egg-asn1x.h

index 7e6e854..105540f 100644 (file)
@@ -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)
 {
index bca01e0..0320a0c 100644 (file)
@@ -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);