aboutsummaryrefslogtreecommitdiff
path: root/src/lib/util/gnunet_crypto_dbus_lib_push.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/util/gnunet_crypto_dbus_lib_push.c')
-rw-r--r--src/lib/util/gnunet_crypto_dbus_lib_push.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/lib/util/gnunet_crypto_dbus_lib_push.c b/src/lib/util/gnunet_crypto_dbus_lib_push.c
new file mode 100644
index 0000000..6e1cd3a
--- /dev/null
+++ b/src/lib/util/gnunet_crypto_dbus_lib_push.c
@@ -0,0 +1,54 @@
1#include "config.h"
2
3#include "gnunet_dbus_lib.h"
4
5void
6GNUNET_CRYPTO_DBUS_push_ecdsa_public_key (
7 DBusMessage *message,
8 DBusMessageIter *iter,
9 const struct GNUNET_CRYPTO_EcdsaPublicKey *value)
10{
11 DBusMessageIter iter_sub;
12
13 if (GNUNET_DBUS_message_get_pretty (message))
14 {
15 GNUNET_DBUS_push_open_variant (message, iter, &iter_sub, GNUNET_DBUS_SIGNATURE_STRING);
16 char *encoded = GNUNET_CRYPTO_ecdsa_public_key_to_string (value);
17 const char *encoded_const = encoded;
18 GNUNET_DBUS_push_string (message, &iter_sub, &encoded_const);
19 GNUNET_DBUS_push_close_variant (message, iter, &iter_sub);
20 GNUNET_free (encoded);
21 }
22 else
23 {
24 GNUNET_DBUS_push_open_variant (message, iter, &iter_sub, GNUNET_DBUS_SIGNATURE_ARRAY (GNUNET_DBUS_SIGNATURE_BYTE));
25 GNUNET_DBUS_push_byte_array (message, &iter_sub, value->q_y, 32);
26 GNUNET_DBUS_push_close_variant (message, iter, &iter_sub);
27 };
28};
29
30void
31GNUNET_CRYPTO_DBUS_push_eddsa_public_key (
32 DBusMessage *message,
33 DBusMessageIter *iter,
34 const struct GNUNET_CRYPTO_EddsaPublicKey *value)
35{
36 DBusMessageIter iter_sub;
37
38 if (GNUNET_DBUS_message_get_pretty (message))
39 {
40 GNUNET_DBUS_push_open_variant (message, iter, &iter_sub, GNUNET_DBUS_SIGNATURE_STRING);
41 char *encoded = GNUNET_CRYPTO_eddsa_public_key_to_string (value);
42 const char *encoded_const = encoded;
43 GNUNET_DBUS_push_string (message, &iter_sub, &encoded_const);
44 GNUNET_DBUS_push_close_variant (message, iter, &iter_sub);
45 GNUNET_free (encoded);
46 }
47 else
48 {
49 GNUNET_DBUS_push_open_variant (message, iter, &iter_sub, GNUNET_DBUS_SIGNATURE_ARRAY (GNUNET_DBUS_SIGNATURE_BYTE));
50 GNUNET_DBUS_push_byte_array (message, &iter_sub, value->q_y, 32);
51 GNUNET_DBUS_push_close_variant (message, iter, &iter_sub);
52 };
53};
54