diff options
author | schanzen <schanzen@140774ce-b5e7-0310-ab8b-a85725594a96> | 2012-02-26 20:55:37 +0000 |
---|---|---|
committer | schanzen <schanzen@140774ce-b5e7-0310-ab8b-a85725594a96> | 2012-02-26 20:55:37 +0000 |
commit | 0900b2581e4681703d40b800b280e95358dd9c8c (patch) | |
tree | c4dcaf5c7935356478a2f75ab36fba434c8a4c2e | |
parent | 39ada336388359c831f8ed2928aecb32870ca27b (diff) |
-try to get keys form config
git-svn-id: https://gnunet.org/svn/gnunet@20049 140774ce-b5e7-0310-ab8b-a85725594a96
-rw-r--r-- | src/gns/gns.conf.in | 3 | ||||
-rw-r--r-- | src/gns/gnunet-service-gns.c | 15 |
2 files changed, 16 insertions, 2 deletions
diff --git a/src/gns/gns.conf.in b/src/gns/gns.conf.in index acf0a222a9..3441583a9c 100644 --- a/src/gns/gns.conf.in +++ b/src/gns/gns.conf.in @@ -5,6 +5,9 @@ HOME = $SERVICEHOME CONFIG = $DEFAULTCONFIG BINARY = gnunet-service-gns UNIXPATH = /tmp/gnunet-service-gns.sock +ZONEKEY = $SERVICEHOME/zonekey +TRUSTED = bob:$SERVICEHOME/bobkey +OPTIONS = -L INFO # Access to this service can compromise all DNS queries in this # system. Thus access should be restricted to the same UID. diff --git a/src/gns/gnunet-service-gns.c b/src/gns/gnunet-service-gns.c index d3a785185a..44de997e19 100644 --- a/src/gns/gnunet-service-gns.c +++ b/src/gns/gnunet-service-gns.c @@ -1064,7 +1064,8 @@ put_gns_record(void *cls, nrb = GNUNET_malloc(rd_payload_length); - memcpy(&nrb->signature, signature, + if (signature != NULL) + memcpy(&nrb->signature, signature, sizeof(struct GNUNET_CRYPTO_RsaSignature)); //FIXME signature purpose memcpy(&nrb->public_key, key, @@ -1158,7 +1159,17 @@ run (void *cls, struct GNUNET_SERVER_Handle *server, { GNUNET_log(GNUNET_ERROR_TYPE_INFO, "Init GNS\n"); - zone_key = GNUNET_CRYPTO_rsa_key_create (); + char* keyfile; + //this always returns syserr + if (GNUNET_SYSERR == + GNUNET_CONFIGURATION_get_value_string (c, "gns", + "ZONEKEY", &keyfile)); + { + GNUNET_log (GNUNET_ERROR_TYPE_ERROR, + "No private key for root zone specified%s!\n", keyfile); + } + zone_key = GNUNET_CRYPTO_rsa_key_create_from_file (keyfile); + //zone_key = GNUNET_CRYPTO_rsa_key_create (); GNUNET_CRYPTO_hash(zone_key, GNUNET_CRYPTO_RSA_KEY_LENGTH,//FIXME is this ok? &zone_hash); |