From d0f60b23e15edfd27a0885a3cd0bd6daa765cde3 Mon Sep 17 00:00:00 2001 From: "Schanzenbach, Martin" Date: Wed, 7 Dec 2016 16:43:35 +0100 Subject: - fix; more recognizable case in test --- po/POTFILES.in | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'po') diff --git a/po/POTFILES.in b/po/POTFILES.in index 03cf22279..b3cc2b3ee 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -71,6 +71,10 @@ src/core/gnunet-service-core.c src/core/gnunet-service-core_kx.c src/core/gnunet-service-core_sessions.c src/core/gnunet-service-core_typemap.c +src/credential/credential_api.c +src/credential/gnunet-credential.c +src/credential/gnunet-service-credential.c +src/credential/plugin_gnsrecord_credential.c src/curl/curl.c src/curl/curl_reschedule.c src/datacache/datacache.c @@ -244,7 +248,11 @@ src/nat/gnunet-helper-nat-server-windows.c src/nat/gnunet-nat.c src/nat/gnunet-nat-server.c src/nat/gnunet-service-nat.c +src/nat/gnunet-service-nat_helper.c +src/nat/gnunet-service-nat_stun.c src/nat/nat_api.c +src/nat/nat_api_stun.c +src/nat/nat_api_test.c src/nat/nat_auto.c src/nat/nat.c src/nat/nat_mini.c -- cgit v1.2.3 From b6755fe23d258a4dc971d8fabc3fae1873e31271 Mon Sep 17 00:00:00 2001 From: "Schanzenbach, Martin" Date: Fri, 14 Jul 2017 13:57:51 +0200 Subject: -change to gabe bswabe fork --- configure.ac | 11 +- po/POTFILES.in | 5 + src/util/Makefile.am | 39 +++--- src/util/crypto_abe.c | 362 ++++++++++++++++++++++++++++---------------------- 4 files changed, 239 insertions(+), 178 deletions(-) (limited to 'po') diff --git a/configure.ac b/configure.ac index bbae6edff..bfde625d2 100644 --- a/configure.ac +++ b/configure.ac @@ -440,17 +440,26 @@ AC_CHECK_LIB(ogg, ogg_stream_flush_fill, AM_CONDITIONAL(HAVE_OGG, false) ogg=0) -PKG_CHECK_MODULES([ABE], [glib-2.0]) + +PKG_CHECK_MODULES([GLIB], [glib-2.0]) # check for pbc library pbc=0 AC_CHECK_HEADER([pbc/pbc.h],pbc=1) +AC_CHECK_HEADER([gabe.h],abe=1) AM_CONDITIONAL(HAVE_PBC, [test "$pbc" = 1]) +AM_CONDITIONAL(HAVE_ABE, [test "$abe" = 1]) if test "x$pbc" = x1 then AC_DEFINE([HAVE_PBC],[1],[Have pbc library]) else AC_DEFINE([HAVE_PBC],[0],[Lacking pbc library]) fi +if test "x$abe" = x1 +then + AC_DEFINE([HAVE_ABE],[1],[Have ABE library]) +else + AC_DEFINE([HAVE_ABE],[0],[Lacking ABE library]) +fi diff --git a/po/POTFILES.in b/po/POTFILES.in index 50c182833..a0b222eea 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -76,9 +76,12 @@ src/core/gnunet-service-core_kx.c src/core/gnunet-service-core_sessions.c src/core/gnunet-service-core_typemap.c src/credential/credential_api.c +src/credential/credential_misc.c +src/credential/credential_serialization.c src/credential/gnunet-credential.c src/credential/gnunet-service-credential.c src/credential/plugin_gnsrecord_credential.c +src/credential/plugin_rest_credential.c src/curl/curl.c src/curl/curl_reschedule.c src/datacache/datacache.c @@ -200,6 +203,7 @@ src/identity/identity_api_lookup.c src/identity/plugin_gnsrecord_identity.c src/identity/plugin_rest_identity.c src/identity-provider/gnunet-identity-token.c +src/identity-provider/gnunet-idp.c src/identity-provider/gnunet-service-identity-provider.c src/identity-provider/identity_provider_api.c src/identity-provider/identity_token.c @@ -443,6 +447,7 @@ src/util/container_multihashmap32.c src/util/container_multihashmap.c src/util/container_multipeermap.c src/util/container_multishortmap.c +src/util/crypto_abe.c src/util/crypto_crc.c src/util/crypto_ecc.c src/util/crypto_ecc_dlog.c diff --git a/src/util/Makefile.am b/src/util/Makefile.am index 4b1e44503..62cf03684 100644 --- a/src/util/Makefile.am +++ b/src/util/Makefile.am @@ -87,7 +87,6 @@ libgnunetutil_la_SOURCES = \ crypto_paillier.c \ crypto_random.c \ crypto_rsa.c \ - crypto_abe.c \ disk.c \ disk.h \ getopt.c \ @@ -118,21 +117,24 @@ libgnunetutil_la_LIBADD = \ $(LIBGCRYPT_LIBS) \ $(LTLIBICONV) \ $(LTLIBINTL) \ - $(ABE_LIBADD) \ - -lbswabe \ - -lssl \ - -lpbc \ - -lglib-2.0 \ -lltdl $(Z_LIBS) -lunistring $(XLIB) +if HAVE_PBC +if HAVE_ABE +libgnunetutil_la_SOURCES += \ + crypto_abe.c +libgnunetutil_la_LIBADD += \ + $(ABE_LIBADD) \ + -lgabe \ + -lpbc \ + -lglib-2.0 +endif +endif + libgnunetutil_la_LDFLAGS = \ $(GN_LIB_LDFLAGS) \ - $(ABE_LDADD) \ -version-info 13:0:0 -libgnunetutil_la_CFLAGS = \ - $(ABE_CFLAGS) - libgnunetutil_taler_wallet_la_SOURCES = \ common_allocation.c \ common_endian.c \ @@ -283,7 +285,6 @@ check_PROGRAMS = \ test_container_multipeermap \ test_container_heap \ test_crypto_symmetric \ - test_crypto_abe \ test_crypto_crc \ test_crypto_ecdsa \ test_crypto_eddsa \ @@ -416,11 +417,6 @@ test_crypto_symmetric_SOURCES = \ test_crypto_symmetric_LDADD = \ libgnunetutil.la -test_crypto_abe_SOURCES = \ - test_crypto_abe.c -test_crypto_abe_LDADD = \ - libgnunetutil.la - test_crypto_crc_SOURCES = \ test_crypto_crc.c test_crypto_crc_LDADD = \ @@ -568,6 +564,17 @@ test_speedup_SOURCES = \ test_speedup_LDADD = \ libgnunetutil.la +if HAVE_PBC +if HAVE_ABE +test_crypto_abe_SOURCES = \ + test_crypto_abe.c +test_crypto_abe_LDADD = \ + libgnunetutil.la +check_PROGRAMS += \ + test_crypto_abe +endif +endif + perf_crypto_hash_SOURCES = \ perf_crypto_hash.c perf_crypto_hash_LDADD = \ diff --git a/src/util/crypto_abe.c b/src/util/crypto_abe.c index f84aaf9f9..25d04fba6 100644 --- a/src/util/crypto_abe.c +++ b/src/util/crypto_abe.c @@ -27,133 +27,139 @@ #include "platform.h" -#include -#include -#include #include -#include +#include #include "gnunet_crypto_lib.h" struct GNUNET_CRYPTO_AbeMasterKey { - GByteArray* pub; - - GByteArray* msk; + gabe_pub_t* pub; + gabe_msk_t* msk; }; struct GNUNET_CRYPTO_AbeKey { - GByteArray* pub; - GByteArray* prv; + gabe_pub_t* pub; + gabe_prv_t* prv; }; -static void -init_aes( element_t k, int enc, AES_KEY* key, unsigned char* iv ) +static int +init_aes( element_t k, int enc, + gcry_cipher_hd_t* handle, + struct GNUNET_CRYPTO_SymmetricSessionKey *key, + unsigned char* iv) { + int rc; int key_len; unsigned char* key_buf; - - key_len = element_length_in_bytes(k) < 17 ? 17 : element_length_in_bytes(k); + + key_len = element_length_in_bytes(k) < 33 ? 3 : element_length_in_bytes(k); key_buf = (unsigned char*) malloc(key_len); element_to_bytes(key_buf, k); - if( enc ) - AES_set_encrypt_key(key_buf + 1, 128, key); - else - AES_set_decrypt_key(key_buf + 1, 128, key); - free(key_buf); + memcpy (key->aes_key, key_buf, GNUNET_CRYPTO_AES_KEY_LENGTH); + GNUNET_assert (0 == + gcry_cipher_open (handle, GCRY_CIPHER_AES256, + GCRY_CIPHER_MODE_CFB, 0)); + rc = gcry_cipher_setkey (*handle, + key->aes_key, + sizeof (key->aes_key)); + GNUNET_assert ((0 == rc) || ((char) rc == GPG_ERR_WEAK_KEY)); + memset (iv, 0, 16); //TODO make reasonable + rc = gcry_cipher_setiv (*handle, + iv, + 16); + GNUNET_assert ((0 == rc) || ((char) rc == GPG_ERR_WEAK_KEY)); - memset(iv, 0, 16); + free(key_buf); + return rc; } -static GByteArray* -aes_128_cbc_encrypt( GByteArray* pt, element_t k ) +static int +aes_128_cbc_encrypt( char* pt, + int size, + element_t k, + char **ct ) { - AES_KEY key; + gcry_cipher_hd_t handle; + struct GNUNET_CRYPTO_SymmetricSessionKey skey; unsigned char iv[16]; - GByteArray* ct; - guint8 len[4]; - guint8 zero; - - init_aes(k, 1, &key, iv); + char* buf; + int padding; + int buf_size; + uint8_t len[4]; + init_aes(k, 1, &handle, &skey, iv); /* TODO make less crufty */ /* stuff in real length (big endian) before padding */ - len[0] = (pt->len & 0xff000000)>>24; - len[1] = (pt->len & 0xff0000)>>16; - len[2] = (pt->len & 0xff00)>>8; - len[3] = (pt->len & 0xff)>>0; - g_byte_array_prepend(pt, len, 4); - - /* pad out to multiple of 128 bit (16 byte) blocks */ - zero = 0; - while( pt->len % 16 ) - g_byte_array_append(pt, &zero, 1); - - ct = g_byte_array_new(); - g_byte_array_set_size(ct, pt->len); - - AES_cbc_encrypt(pt->data, ct->data, pt->len, &key, iv, AES_ENCRYPT); - - return ct; + len[0] = (size & 0xff000000)>>24; + len[1] = (size & 0xff0000)>>16; + len[2] = (size & 0xff00)>>8; + len[3] = (size & 0xff)>>0; + padding = 16 - ((4+size) % 16); + buf_size = 4 + size + padding; + buf = GNUNET_malloc (buf_size); + GNUNET_memcpy (buf, len, 4); + GNUNET_memcpy (buf+4, pt, size); + *ct = GNUNET_malloc (buf_size); + + GNUNET_assert (0 == gcry_cipher_encrypt (handle, *ct, buf_size, buf, buf_size)); + gcry_cipher_close (handle); + //AES_cbc_encrypt(pt->data, ct->data, pt->len, &key, iv, AES_ENCRYPT); + + return buf_size; } -static GByteArray* -aes_128_cbc_decrypt( GByteArray* ct, element_t k ) +static int +aes_128_cbc_decrypt( char* ct, + int size, + element_t k, + char **pt ) { - AES_KEY key; + struct GNUNET_CRYPTO_SymmetricSessionKey skey; + gcry_cipher_hd_t handle; unsigned char iv[16]; - GByteArray* pt; - unsigned int len; - - init_aes(k, 0, &key, iv); - - pt = g_byte_array_new(); - g_byte_array_set_size(pt, ct->len); + char* tmp; + uint32_t len; + + init_aes(k, 1, &handle, &skey, iv); - AES_cbc_encrypt(ct->data, pt->data, ct->len, &key, iv, AES_DECRYPT); + tmp = GNUNET_malloc (size); + //AES_cbc_encrypt(ct->data, pt->data, ct->len, &key, iv, AES_DECRYPT); + GNUNET_assert (0 == gcry_cipher_decrypt (handle, tmp, size, ct, size)); + gcry_cipher_close (handle); /* TODO make less crufty */ /* get real length */ len = 0; len = len - | ((pt->data[0])<<24) | ((pt->data[1])<<16) - | ((pt->data[2])<<8) | ((pt->data[3])<<0); - g_byte_array_remove_index(pt, 0); - g_byte_array_remove_index(pt, 0); - g_byte_array_remove_index(pt, 0); - g_byte_array_remove_index(pt, 0); - + | ((tmp[0])<<24) | ((tmp[1])<<16) + | ((tmp[2])<<8) | ((tmp[3])<<0); /* truncate any garbage from the padding */ - g_byte_array_set_size(pt, len); - - return pt; + *pt = GNUNET_malloc (len); + GNUNET_memcpy (*pt, tmp+4, len); + GNUNET_free (tmp); + return len; } struct GNUNET_CRYPTO_AbeMasterKey* GNUNET_CRYPTO_cpabe_create_master_key (void) { struct GNUNET_CRYPTO_AbeMasterKey* key; - bswabe_msk_t* msk; - bswabe_pub_t* pub; - bswabe_setup(&pub, &msk); key = GNUNET_new (struct GNUNET_CRYPTO_AbeMasterKey); - key->pub = bswabe_pub_serialize(pub); - key->msk = bswabe_msk_serialize(msk); + gabe_setup(&key->pub, &key->msk); GNUNET_assert (NULL != key->pub); GNUNET_assert (NULL != key->msk); - bswabe_msk_free (msk); return key; } void GNUNET_CRYPTO_cpabe_delete_master_key (struct GNUNET_CRYPTO_AbeMasterKey *key) { - g_byte_array_unref (key->msk); - g_byte_array_unref (key->pub); + gabe_msk_free (key->msk); //For some reason free of pub implicit? GNUNET_free (key); } @@ -162,80 +168,80 @@ GNUNET_CRYPTO_cpabe_create_key (struct GNUNET_CRYPTO_AbeMasterKey *key, char **attrs) { struct GNUNET_CRYPTO_AbeKey *prv_key; - bswabe_pub_t* pub; - bswabe_msk_t* msk; - bswabe_prv_t* prv; - - pub = bswabe_pub_unserialize(key->pub, 0); - msk = bswabe_msk_unserialize(pub, key->msk, 0); - prv = bswabe_keygen(pub, msk, attrs); prv_key = GNUNET_new (struct GNUNET_CRYPTO_AbeKey); - prv_key->prv = bswabe_prv_serialize(prv); - prv_key->pub = bswabe_pub_serialize (pub); + int size; + char *tmp; + + prv_key = GNUNET_new (struct GNUNET_CRYPTO_AbeKey); + prv_key->prv = gabe_keygen(key->pub, key->msk, attrs); + size = gabe_pub_serialize(key->pub, &tmp); + prv_key->pub = gabe_pub_unserialize(tmp, size); GNUNET_assert (NULL != prv_key->prv); - //Memory management in bswabe is buggy - //bswabe_prv_free (prv); - bswabe_msk_free (msk); return prv_key; } void GNUNET_CRYPTO_cpabe_delete_key (struct GNUNET_CRYPTO_AbeKey *key) { - g_byte_array_unref (key->prv); - g_byte_array_unref (key->pub); + //Memory management in gabe is buggy + //gabe_prv_free (prv); GNUNET_free (key); } ssize_t -write_cpabe (void **result, GByteArray* cph_buf, - uint32_t file_len, GByteArray* aes_buf) +write_cpabe (void **result, + uint32_t file_len, + char* cph_buf, + int cph_buf_len, + char* aes_buf, + int aes_buf_len) { char *ptr; uint32_t *len; - *result = GNUNET_malloc (12 + cph_buf->len + aes_buf->len); + *result = GNUNET_malloc (12 + cph_buf_len + aes_buf_len); ptr = *result; len = (uint32_t*) ptr; *len = htonl (file_len); ptr += 4; len = (uint32_t*) ptr; - *len = htonl (aes_buf->len); + *len = htonl (aes_buf_len); ptr += 4; - memcpy (ptr, aes_buf->data, aes_buf->len); - ptr += aes_buf->len; + memcpy (ptr, aes_buf, aes_buf_len); + ptr += aes_buf_len; len = (uint32_t*) ptr; - *len = htonl (cph_buf->len); + *len = htonl (cph_buf_len); ptr += 4; - memcpy (ptr, cph_buf->data, cph_buf->len); - return 12 + cph_buf->len + aes_buf->len; + memcpy (ptr, cph_buf, cph_buf_len); + return 12 + cph_buf_len + aes_buf_len; } ssize_t -read_cpabe (const void *data, GByteArray** cph_buf, GByteArray** aes_buf) +read_cpabe (const void *data, + char** cph_buf, + int *cph_buf_len, + char** aes_buf, + int *aes_buf_len) { int buf_len; - int tmp_len; char *ptr; uint32_t *len; - *cph_buf = g_byte_array_new(); - *aes_buf = g_byte_array_new(); ptr = (char*)data; len = (uint32_t*)ptr; buf_len = ntohl (*len); ptr += 4; len = (uint32_t*)ptr; - tmp_len = ntohl (*len); + *aes_buf_len = ntohl (*len); ptr += 4; - g_byte_array_set_size(*aes_buf, tmp_len); - memcpy((*aes_buf)->data, ptr, tmp_len); - ptr += tmp_len; + *aes_buf = GNUNET_malloc (*aes_buf_len); + memcpy(*aes_buf, ptr, *aes_buf_len); + ptr += *aes_buf_len; len = (uint32_t*)ptr; - tmp_len = ntohl (*len); + *cph_buf_len = ntohl (*len); ptr += 4; - g_byte_array_set_size(*cph_buf, tmp_len); - memcpy((*cph_buf)->data, ptr, tmp_len); + *cph_buf = GNUNET_malloc (*cph_buf_len); + memcpy(*cph_buf, ptr, *cph_buf_len); return buf_len; } @@ -247,69 +253,58 @@ GNUNET_CRYPTO_cpabe_encrypt (const void *block, const struct GNUNET_CRYPTO_AbeMasterKey *key, void **result) { - bswabe_pub_t* pub; - bswabe_cph_t* cph; - GByteArray* plt; - GByteArray* cph_buf; - GByteArray* aes_buf; - guint8 *data; + gabe_cph_t* cph; + char* plt; + char* cph_buf; + char* aes_buf; element_t m; - size_t payload_len; + int cph_buf_len; + int aes_buf_len; ssize_t result_len; - pub = bswabe_pub_unserialize(key->pub, 0); - if( !(cph = bswabe_enc(pub, m, policy)) ) + if( !(cph = gabe_enc(key->pub, m, policy)) ) return GNUNET_SYSERR; - cph_buf = bswabe_cph_serialize(cph); - bswabe_cph_free(cph); - data = g_memdup (block, size); - plt = g_byte_array_new_take (data, size); - payload_len = plt->len; - aes_buf = aes_128_cbc_encrypt(plt, m); - g_byte_array_free(plt, 1); + cph_buf_len = gabe_cph_serialize(cph, + &cph_buf); + gabe_cph_free(cph); + plt = GNUNET_memdup (block, size); + aes_buf_len = aes_128_cbc_encrypt(plt, size, m, &aes_buf); + GNUNET_free (plt); element_clear(m); - result_len = write_cpabe(result, cph_buf, payload_len, aes_buf); - g_byte_array_free(cph_buf, 1); - g_byte_array_free(aes_buf, 1); - bswabe_pub_free (pub); + result_len = write_cpabe(result, size, cph_buf, cph_buf_len, aes_buf, aes_buf_len); + GNUNET_free(cph_buf); + GNUNET_free(aes_buf); return result_len; } ssize_t GNUNET_CRYPTO_cpabe_decrypt (const void *block, - size_t size, - const struct GNUNET_CRYPTO_AbeKey *key, - void **result) + size_t size, + const struct GNUNET_CRYPTO_AbeKey *key, + void **result) { - bswabe_pub_t* pub; - bswabe_prv_t* prv; - GByteArray* aes_buf; - GByteArray* plt; - GByteArray* cph_buf; - bswabe_cph_t* cph; + char* aes_buf; + char* cph_buf; + gabe_cph_t* cph; element_t m; - ssize_t pt_size; + int cph_buf_size; + int aes_buf_size; + int plt_len; - pub = bswabe_pub_unserialize(key->pub, 0); - prv = bswabe_prv_unserialize(pub, key->prv, 0); - pt_size = read_cpabe(block, &cph_buf, &aes_buf); - cph = bswabe_cph_unserialize(pub, cph_buf, 0); - if( !bswabe_dec(pub, prv, cph, m) ) { + read_cpabe(block, &cph_buf, &cph_buf_size, &aes_buf, &aes_buf_size); + cph = gabe_cph_unserialize(key->pub, cph_buf, cph_buf_size); + if( !gabe_dec(key->pub, key->prv, cph, m) ) { GNUNET_log (GNUNET_ERROR_TYPE_ERROR, - "%s\n", bswabe_error()); - bswabe_cph_free(cph); + "%s\n", gabe_error()); + gabe_cph_free(cph); return GNUNET_SYSERR; } - bswabe_cph_free(cph); - plt = aes_128_cbc_decrypt(aes_buf, m); - g_byte_array_set_size(plt, size); - g_byte_array_free(aes_buf, 1); - *result = GNUNET_malloc (plt->len); - GNUNET_memcpy (*result, plt->data, plt->len); - //freeing is buggy in bswabe - //bswabe_prv_free (prv); - bswabe_pub_free (pub); - return pt_size; + gabe_cph_free(cph); + plt_len = aes_128_cbc_decrypt(aes_buf, aes_buf_size, m, (char**)result); + //freeing is buggy in gabe + //gabe_prv_free (prv); + //gabe_pub_free (pub); + return plt_len; } ssize_t @@ -317,9 +312,19 @@ GNUNET_CRYPTO_cpabe_serialize_key (const struct GNUNET_CRYPTO_AbeKey *key, void **result) { ssize_t len; + char *pub; + char *prv; + int pub_len; + int prv_len; - len = key->pub->len + key->prv->len + 12; - write_cpabe (result, key->pub, len, key->prv); + pub_len = gabe_pub_serialize (key->pub, &pub); + prv_len = gabe_prv_serialize (key->prv, &prv); + + len = pub_len + prv_len + 12; + write_cpabe (result, len, pub, pub_len, prv, prv_len); + + GNUNET_free (pub); + GNUNET_free (prv); return len; } @@ -329,10 +334,22 @@ GNUNET_CRYPTO_cpabe_deserialize_key (const void *data, size_t len) { struct GNUNET_CRYPTO_AbeKey *key; + char *pub; + char *prv; + int prv_len; + int pub_len; key = GNUNET_new (struct GNUNET_CRYPTO_AbeKey); - read_cpabe (data, &key->pub, &key->prv); - + read_cpabe (data, + &pub, + &pub_len, + &prv, + &prv_len); + key->pub = gabe_pub_unserialize (pub, pub_len); + key->prv = gabe_prv_unserialize (key->pub, prv, prv_len); + + GNUNET_free (pub); + GNUNET_free (prv); return key; } @@ -341,9 +358,19 @@ GNUNET_CRYPTO_cpabe_serialize_master_key (const struct GNUNET_CRYPTO_AbeMasterKe void **result) { ssize_t len; + char *pub; + char *msk; + int pub_len; + int msk_len; - len = key->pub->len + key->msk->len + 12; - write_cpabe (result, key->pub, len, key->msk); + pub_len = gabe_pub_serialize (key->pub, &pub); + msk_len = gabe_msk_serialize (key->msk, &msk); + + len = pub_len + msk_len + 12; + write_cpabe (result, len, pub, pub_len, msk, msk_len); + + GNUNET_free (pub); + GNUNET_free (msk); return len; } @@ -353,9 +380,22 @@ GNUNET_CRYPTO_cpabe_deserialize_master_key (const void *data, size_t len) { struct GNUNET_CRYPTO_AbeMasterKey *key; + char *msk; + char *pub; + int msk_len; + int pub_len; key = GNUNET_new (struct GNUNET_CRYPTO_AbeMasterKey); - read_cpabe (data, &key->pub, &key->msk); + read_cpabe (data, + &pub, + &pub_len, + &msk, + &msk_len); + key->pub = gabe_pub_unserialize (pub, pub_len); + key->msk = gabe_msk_unserialize (key->pub, msk, msk_len); + + GNUNET_free (pub); + GNUNET_free (msk); return key; } -- cgit v1.2.3 From 6f902e916af6ed95f6966ecdf3a6f478c157e569 Mon Sep 17 00:00:00 2001 From: "Schanzenbach, Martin" Date: Wed, 25 Oct 2017 14:12:54 +0200 Subject: -fix docker --- Dockerfile | 3 + po/POTFILES.in | 125 ++-- po/de.po | 1736 ++++++++++++++++++++++++++++++------------------------ po/es.po | 1776 ++++++++++++++++++++++++++++++------------------------- po/fr.po | 1722 ++++++++++++++++++++++++++++++------------------------ po/sv.po | 1735 ++++++++++++++++++++++++++++++------------------------ po/vi.po | 1785 +++++++++++++++++++++++++++++++------------------------- po/zh_CN.po | 1728 ++++++++++++++++++++++++++++++------------------------ 8 files changed, 5859 insertions(+), 4751 deletions(-) (limited to 'po') diff --git a/Dockerfile b/Dockerfile index e753c5b91..375c76c4b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -44,6 +44,9 @@ RUN git clone https://github.com/schanzen/gnunet-webui.git WORKDIR /usr/src/gnunet-webui RUN git checkout gnuidentity +RUN mkdir /usr/src/gnunet +WORKDIR /usr/src/gnunet +ADD . . RUN ./bootstrap RUN ./configure --prefix=/usr/local RUN make diff --git a/po/POTFILES.in b/po/POTFILES.in index a0b222eea..3444e321b 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -3,13 +3,21 @@ src/arm/arm_monitor_api.c src/arm/gnunet-arm.c src/arm/gnunet-service-arm.c src/arm/mockup-service.c +src/ats-tests/ats-testing-experiment.c +src/ats-tests/ats-testing-log.c +src/ats-tests/ats-testing-preferences.c +src/ats-tests/ats-testing-traffic.c +src/ats-tests/ats-testing.c +src/ats-tests/gnunet-ats-sim.c +src/ats-tests/gnunet-solver-eval.c +src/ats-tool/gnunet-ats.c src/ats/ats_api_connectivity.c src/ats/ats_api_performance.c src/ats/ats_api_scanner.c src/ats/ats_api_scheduling.c src/ats/gnunet-ats-solver-eval.c -src/ats/gnunet-service-ats_addresses.c src/ats/gnunet-service-ats.c +src/ats/gnunet-service-ats_addresses.c src/ats/gnunet-service-ats_connectivity.c src/ats/gnunet-service-ats_normalization.c src/ats/gnunet-service-ats_performance.c @@ -20,14 +28,6 @@ src/ats/gnunet-service-ats_scheduling.c src/ats/plugin_ats_mlp.c src/ats/plugin_ats_proportional.c src/ats/plugin_ats_ril.c -src/ats-tests/ats-testing.c -src/ats-tests/ats-testing-experiment.c -src/ats-tests/ats-testing-log.c -src/ats-tests/ats-testing-preferences.c -src/ats-tests/ats-testing-traffic.c -src/ats-tests/gnunet-ats-sim.c -src/ats-tests/gnunet-solver-eval.c -src/ats-tool/gnunet-ats.c src/auction/gnunet-auction-create.c src/auction/gnunet-auction-info.c src/auction/gnunet-auction-join.c @@ -39,8 +39,8 @@ src/block/plugin_block_test.c src/cadet/cadet_api.c src/cadet/cadet_test_lib.c src/cadet/desirability_table.c -src/cadet/gnunet-cadet.c src/cadet/gnunet-cadet-profiler.c +src/cadet/gnunet-cadet.c src/cadet/gnunet-service-cadet.c src/cadet/gnunet-service-cadet_channel.c src/cadet/gnunet-service-cadet_connection.c @@ -56,15 +56,15 @@ src/consensus/gnunet-service-consensus.c src/consensus/plugin_block_consensus.c src/conversation/conversation_api.c src/conversation/conversation_api_call.c -src/conversation/gnunet-conversation.c src/conversation/gnunet-conversation-test.c -src/conversation/gnunet_gst.c -src/conversation/gnunet_gst_test.c -src/conversation/gnunet-helper-audio-playback.c +src/conversation/gnunet-conversation.c src/conversation/gnunet-helper-audio-playback-gst.c -src/conversation/gnunet-helper-audio-record.c +src/conversation/gnunet-helper-audio-playback.c src/conversation/gnunet-helper-audio-record-gst.c +src/conversation/gnunet-helper-audio-record.c src/conversation/gnunet-service-conversation.c +src/conversation/gnunet_gst.c +src/conversation/gnunet_gst_test.c src/conversation/microphone.c src/conversation/plugin_gnsrecord_conversation.c src/conversation/speaker.c @@ -101,7 +101,6 @@ src/dht/dht_api.c src/dht/dht_test_lib.c src/dht/gnunet-dht-get.c src/dht/gnunet-dht-monitor.c -src/dht/gnunet_dht_profiler.c src/dht/gnunet-dht-put.c src/dht/gnunet-service-dht.c src/dht/gnunet-service-dht_clients.c @@ -110,6 +109,7 @@ src/dht/gnunet-service-dht_hello.c src/dht/gnunet-service-dht_neighbours.c src/dht/gnunet-service-dht_nse.c src/dht/gnunet-service-dht_routing.c +src/dht/gnunet_dht_profiler.c src/dht/plugin_block_dht.c src/dns/dns_api.c src/dns/dnsparser.c @@ -124,8 +124,8 @@ src/dv/gnunet-dv.c src/dv/gnunet-service-dv.c src/dv/plugin_transport_dv.c src/exit/gnunet-daemon-exit.c -src/exit/gnunet-helper-exit.c src/exit/gnunet-helper-exit-windows.c +src/exit/gnunet-helper-exit.c src/fragmentation/defragmentation.c src/fragmentation/fragmentation.c src/fs/fs_api.c @@ -150,8 +150,8 @@ src/fs/gnunet-auto-share.c src/fs/gnunet-daemon-fsprofiler.c src/fs/gnunet-directory.c src/fs/gnunet-download.c -src/fs/gnunet-fs.c src/fs/gnunet-fs-profiler.c +src/fs/gnunet-fs.c src/fs/gnunet-helper-fs-publish.c src/fs/gnunet-publish.c src/fs/gnunet-search.c @@ -169,10 +169,10 @@ src/fs/plugin_block_fs.c src/gns/gns_api.c src/gns/gnunet-bcd.c src/gns/gnunet-dns2gns.c -src/gns/gnunet-gns.c src/gns/gnunet-gns-helper-service-w32.c src/gns/gnunet-gns-import.c src/gns/gnunet-gns-proxy.c +src/gns/gnunet-gns.c src/gns/gnunet-service-gns.c src/gns/gnunet-service-gns_interceptor.c src/gns/gnunet-service-gns_resolver.c @@ -181,42 +181,43 @@ src/gns/nss/nss_gns_query.c src/gns/plugin_block_gns.c src/gns/plugin_gnsrecord_gns.c src/gns/plugin_rest_gns.c +src/gns/w32nsp-install.c +src/gns/w32nsp-resolve.c +src/gns/w32nsp-uninstall.c +src/gns/w32nsp.c src/gnsrecord/gnsrecord.c src/gnsrecord/gnsrecord_crypto.c src/gnsrecord/gnsrecord_misc.c src/gnsrecord/gnsrecord_serialization.c src/gnsrecord/plugin_gnsrecord_dns.c -src/gns/w32nsp.c -src/gns/w32nsp-install.c -src/gns/w32nsp-resolve.c -src/gns/w32nsp-uninstall.c src/hello/address.c src/hello/gnunet-hello.c src/hello/hello.c src/hostlist/gnunet-daemon-hostlist.c src/hostlist/gnunet-daemon-hostlist_client.c src/hostlist/gnunet-daemon-hostlist_server.c +src/identity-provider/gnunet-idp.c +src/identity-provider/gnunet-service-identity-provider.c +src/identity-provider/identity_attribute.c +src/identity-provider/identity_provider_api.c +src/identity-provider/jwt.c +src/identity-provider/plugin_gnsrecord_identity_provider.c +src/identity-provider/plugin_identity_provider_sqlite.c +src/identity-provider/plugin_rest_identity_provider.c src/identity/gnunet-identity.c src/identity/gnunet-service-identity.c src/identity/identity_api.c src/identity/identity_api_lookup.c -src/identity/plugin_gnsrecord_identity.c src/identity/plugin_rest_identity.c -src/identity-provider/gnunet-identity-token.c -src/identity-provider/gnunet-idp.c -src/identity-provider/gnunet-service-identity-provider.c -src/identity-provider/identity_provider_api.c -src/identity-provider/identity_token.c -src/identity-provider/plugin_rest_identity_provider.c +src/json/json.c +src/json/json_generator.c +src/json/json_helper.c +src/json/json_mhd.c src/jsonapi/jsonapi.c src/jsonapi/jsonapi_document.c src/jsonapi/jsonapi_error.c src/jsonapi/jsonapi_relationship.c src/jsonapi/jsonapi_resource.c -src/json/json.c -src/json/json_generator.c -src/json/json_helper.c -src/json/json_mhd.c src/multicast/gnunet-multicast.c src/multicast/gnunet-service-multicast.c src/multicast/multicast_api.c @@ -230,8 +231,8 @@ src/namecache/namecache_api.c src/namecache/plugin_namecache_flat.c src/namecache/plugin_namecache_postgres.c src/namecache/plugin_namecache_sqlite.c -src/namestore/gnunet-namestore.c src/namestore/gnunet-namestore-fcfsd.c +src/namestore/gnunet-namestore.c src/namestore/gnunet-service-namestore.c src/namestore/namestore_api.c src/namestore/namestore_api_monitor.c @@ -246,10 +247,10 @@ src/nat-auto/gnunet-service-nat-auto.c src/nat-auto/gnunet-service-nat-auto_legacy.c src/nat-auto/nat_auto_api.c src/nat-auto/nat_auto_api_test.c -src/nat/gnunet-helper-nat-client.c src/nat/gnunet-helper-nat-client-windows.c -src/nat/gnunet-helper-nat-server.c +src/nat/gnunet-helper-nat-client.c src/nat/gnunet-helper-nat-server-windows.c +src/nat/gnunet-helper-nat-server.c src/nat/gnunet-nat.c src/nat/gnunet-service-nat.c src/nat/gnunet-service-nat_externalip.c @@ -258,15 +259,15 @@ src/nat/gnunet-service-nat_mini.c src/nat/gnunet-service-nat_stun.c src/nat/nat_api.c src/nat/nat_api_stun.c -src/nse/gnunet-nse.c src/nse/gnunet-nse-profiler.c +src/nse/gnunet-nse.c src/nse/gnunet-service-nse.c src/nse/nse_api.c +src/peerinfo-tool/gnunet-peerinfo.c +src/peerinfo-tool/gnunet-peerinfo_plugins.c src/peerinfo/gnunet-service-peerinfo.c src/peerinfo/peerinfo_api.c src/peerinfo/peerinfo_api_notify.c -src/peerinfo-tool/gnunet-peerinfo.c -src/peerinfo-tool/gnunet-peerinfo_plugins.c src/peerstore/gnunet-peerstore.c src/peerstore/gnunet-service-peerstore.c src/peerstore/peerstore_api.c @@ -318,13 +319,13 @@ src/rps/gnunet-service-rps_peers.c src/rps/gnunet-service-rps_sampler.c src/rps/gnunet-service-rps_sampler_elem.c src/rps/gnunet-service-rps_view.c -src/rps/rps_api.c src/rps/rps-test_util.c +src/rps/rps_api.c src/scalarproduct/gnunet-scalarproduct.c -src/scalarproduct/gnunet-service-scalarproduct_alice.c -src/scalarproduct/gnunet-service-scalarproduct_bob.c src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c +src/scalarproduct/gnunet-service-scalarproduct_alice.c +src/scalarproduct/gnunet-service-scalarproduct_bob.c src/scalarproduct/scalarproduct_api.c src/secretsharing/gnunet-secretsharing-profiler.c src/secretsharing/gnunet-service-secretsharing.c @@ -351,15 +352,16 @@ src/statistics/gnunet-statistics.c src/statistics/statistics_api.c src/template/gnunet-service-template.c src/template/gnunet-template.c +src/testbed-logger/gnunet-service-testbed-logger.c +src/testbed-logger/testbed_logger_api.c src/testbed/generate-underlay-topology.c src/testbed/gnunet-daemon-latency-logger.c src/testbed/gnunet-daemon-testbed-blacklist.c src/testbed/gnunet-daemon-testbed-underlay.c src/testbed/gnunet-helper-testbed.c -src/testbed/gnunet_mpi_test.c src/testbed/gnunet-service-test-barriers.c -src/testbed/gnunet-service-testbed_barriers.c src/testbed/gnunet-service-testbed.c +src/testbed/gnunet-service-testbed_barriers.c src/testbed/gnunet-service-testbed_cache.c src/testbed/gnunet-service-testbed_connectionpool.c src/testbed/gnunet-service-testbed_cpustatus.c @@ -367,20 +369,19 @@ src/testbed/gnunet-service-testbed_links.c src/testbed/gnunet-service-testbed_meminfo.c src/testbed/gnunet-service-testbed_oc.c src/testbed/gnunet-service-testbed_peers.c -src/testbed/gnunet_testbed_mpi_spawn.c src/testbed/gnunet-testbed-profiler.c -src/testbed-logger/gnunet-service-testbed-logger.c -src/testbed-logger/testbed_logger_api.c -src/testbed/testbed_api_barriers.c +src/testbed/gnunet_mpi_test.c +src/testbed/gnunet_testbed_mpi_spawn.c src/testbed/testbed_api.c +src/testbed/testbed_api_barriers.c src/testbed/testbed_api_hosts.c src/testbed/testbed_api_operations.c src/testbed/testbed_api_peers.c src/testbed/testbed_api_sd.c src/testbed/testbed_api_services.c src/testbed/testbed_api_statistics.c -src/testbed/testbed_api_testbed.c src/testbed/testbed_api_test.c +src/testbed/testbed_api_testbed.c src/testbed/testbed_api_topology.c src/testbed/testbed_api_underlay.c src/testing/gnunet-testing.c @@ -389,34 +390,39 @@ src/testing/testing.c src/topology/friends.c src/topology/gnunet-daemon-topology.c src/transport/gnunet-helper-transport-bluetooth.c -src/transport/gnunet-helper-transport-wlan.c src/transport/gnunet-helper-transport-wlan-dummy.c -src/transport/gnunet-service-transport_ats.c +src/transport/gnunet-helper-transport-wlan.c src/transport/gnunet-service-transport.c +src/transport/gnunet-service-transport_ats.c src/transport/gnunet-service-transport_hello.c src/transport/gnunet-service-transport_manipulation.c src/transport/gnunet-service-transport_neighbours.c src/transport/gnunet-service-transport_plugins.c src/transport/gnunet-service-transport_validation.c -src/transport/gnunet-transport.c src/transport/gnunet-transport-certificate-creation.c src/transport/gnunet-transport-profiler.c src/transport/gnunet-transport-wlan-receiver.c src/transport/gnunet-transport-wlan-sender.c +src/transport/gnunet-transport.c src/transport/plugin_transport_http_client.c src/transport/plugin_transport_http_common.c src/transport/plugin_transport_http_server.c src/transport/plugin_transport_smtp.c src/transport/plugin_transport_tcp.c src/transport/plugin_transport_template.c -src/transport/plugin_transport_udp_broadcasting.c src/transport/plugin_transport_udp.c +src/transport/plugin_transport_udp_broadcasting.c src/transport/plugin_transport_unix.c src/transport/plugin_transport_wlan.c src/transport/tcp_connection_legacy.c src/transport/tcp_server_legacy.c src/transport/tcp_server_mst_legacy.c src/transport/tcp_service_legacy.c +src/transport/transport-testing-filenames.c +src/transport/transport-testing-loggers.c +src/transport/transport-testing-main.c +src/transport/transport-testing-send.c +src/transport/transport-testing.c src/transport/transport_api_address_to_string.c src/transport/transport_api_blacklist.c src/transport/transport_api_core.c @@ -425,11 +431,6 @@ src/transport/transport_api_manipulation.c src/transport/transport_api_monitor_peers.c src/transport/transport_api_monitor_plugins.c src/transport/transport_api_offer_hello.c -src/transport/transport-testing.c -src/transport/transport-testing-filenames.c -src/transport/transport-testing-loggers.c -src/transport/transport-testing-main.c -src/transport/transport-testing-send.c src/tun/regex.c src/tun/tun.c src/util/bandwidth.c @@ -443,8 +444,8 @@ src/util/configuration_loader.c src/util/container_bloomfilter.c src/util/container_heap.c src/util/container_meta_data.c -src/util/container_multihashmap32.c src/util/container_multihashmap.c +src/util/container_multihashmap32.c src/util/container_multipeermap.c src/util/container_multishortmap.c src/util/crypto_abe.c @@ -464,8 +465,8 @@ src/util/crypto_symmetric.c src/util/disk.c src/util/getopt.c src/util/getopt_helpers.c -src/util/gnunet-config.c src/util/gnunet-config-diff.c +src/util/gnunet-config.c src/util/gnunet-ecc.c src/util/gnunet-helper-w32-console.c src/util/gnunet-resolver.c @@ -496,8 +497,8 @@ src/util/time.c src/util/w32cat.c src/util/win.c src/util/winproc.c -src/vpn/gnunet-helper-vpn.c src/vpn/gnunet-helper-vpn-windows.c +src/vpn/gnunet-helper-vpn.c src/vpn/gnunet-service-vpn.c src/vpn/gnunet-vpn.c src/vpn/vpn_api.c diff --git a/po/de.po b/po/de.po index fde327308..f6be3a735 100644 --- a/po/de.po +++ b/po/de.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: gnunet 0.10.1\n" "Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n" -"POT-Creation-Date: 2017-03-31 19:22-0500\n" +"POT-Creation-Date: 2017-10-20 15:14+0000\n" "PO-Revision-Date: 2015-03-08 16:16+0100\n" "Last-Translator: Mario Blättermann \n" "Language-Team: German \n" @@ -272,7 +272,7 @@ msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n" msgstr "" #: src/arm/gnunet-service-arm.c:513 -#: src/transport/plugin_transport_http_server.c:2621 +#: src/transport/plugin_transport_http_server.c:2684 #: src/transport/plugin_transport_tcp.c:1259 #: src/transport/tcp_service_legacy.c:696 src/util/service.c:782 #, c-format @@ -280,7 +280,7 @@ msgid "Failed to resolve `%s': %s\n" msgstr "»%s« konnte nicht aufgelöst werden: %s\n" #: src/arm/gnunet-service-arm.c:532 -#: src/transport/plugin_transport_http_server.c:2639 +#: src/transport/plugin_transport_http_server.c:2702 #: src/transport/plugin_transport_tcp.c:1278 #: src/transport/tcp_service_legacy.c:715 src/util/service.c:802 #, fuzzy, c-format @@ -353,133 +353,14 @@ msgstr "" msgid "Initiating shutdown as requested by client.\n" msgstr "" -#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 -#, c-format -msgid "" -"Could not load quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2799 -#, c-format -msgid "" -"No outbound quota configured for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2840 -#, c-format -msgid "" -"No outbound quota configure for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3294 -#: src/ats-tests/gnunet-solver-eval.c:939 -msgid "solver to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3299 -#: src/ats-tests/gnunet-solver-eval.c:945 -#: src/ats-tests/gnunet-solver-eval.c:950 -msgid "experiment to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3306 -msgid "print logging" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3311 -msgid "save logging to disk" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3316 -msgid "disable normalization" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:304 -#, c-format -msgid "" -"Could not load %s quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:314 -#, c-format -msgid "%s quota configured for network `%s' is %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:359 -#, c-format -msgid "" -"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:451 -#, fuzzy, c-format -msgid "Failed to initialize solver `%s'!\n" -msgstr "SQLite Datenbank konnte nicht initialisiert werden.\n" - -#: src/ats/plugin_ats_mlp.c:1274 -msgid "Problem size too large, cannot allocate memory!\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1869 -#, fuzzy, c-format -msgid "Adding address for peer `%s' multiple times\n" -msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n" - -#: src/ats/plugin_ats_mlp.c:1913 -#, fuzzy, c-format -msgid "Updating address property for peer `%s' %p not added before\n" -msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n" - -#: src/ats/plugin_ats_mlp.c:2475 -msgid "" -"MLP solver is not optimizing for anything, changing to feasibility check\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 -#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 -#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 -#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 -#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 -#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 -#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 -#, fuzzy, c-format -msgid "Invalid %s configuration %f \n" -msgstr "Konfiguration konnte nicht aus %s geladen werden\n" - -#: src/ats/plugin_ats_mlp.c:2670 -#, c-format -msgid "" -"Adjusting inconsistent outbound quota configuration for network `%s', is " -"%llu must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2679 -#, c-format -msgid "" -"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " -"must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2689 -#, c-format -msgid "" -"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2698 -#, c-format -msgid "" -"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" -msgstr "" +#: src/ats-tests/ats-testing-log.c:837 +msgid "Stop logging\n" +msgstr "Protokollierung stoppen\n" -#: src/ats/plugin_ats_proportional.c:1164 +#: src/ats-tests/ats-testing-log.c:892 #, fuzzy, c-format -msgid "Invalid %s configuration %f\n" -msgstr " gconfig\tGTK Konfiguration\n" +msgid "Start logging `%s'\n" +msgstr "Collection `%s' begonnen.\n" #: src/ats-tests/ats-testing.c:422 #, c-format @@ -491,15 +372,6 @@ msgstr "" msgid "Failed to connect master peer [%u] with slave [%u]\n" msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" -#: src/ats-tests/ats-testing-log.c:837 -msgid "Stop logging\n" -msgstr "Protokollierung stoppen\n" - -#: src/ats-tests/ats-testing-log.c:892 -#, fuzzy, c-format -msgid "Start logging `%s'\n" -msgstr "Collection `%s' begonnen.\n" - #: src/ats-tests/gnunet-ats-sim.c:90 #, c-format msgid "" @@ -507,6 +379,15 @@ msgid "" "= %u KiB/s\n" msgstr "" +#: src/ats-tests/gnunet-solver-eval.c:939 src/ats/gnunet-ats-solver-eval.c:3294 +msgid "solver to use" +msgstr "" + +#: src/ats-tests/gnunet-solver-eval.c:945 +#: src/ats-tests/gnunet-solver-eval.c:950 src/ats/gnunet-ats-solver-eval.c:3299 +msgid "experiment to use" +msgstr "" + #: src/ats-tool/gnunet-ats.c:307 #, c-format msgid "%u address resolutions had a timeout\n" @@ -624,6 +505,123 @@ msgstr "" msgid "Print information about ATS state" msgstr "Informationen über andere GNUnet Knoten ausgeben." +#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 +#, c-format +msgid "" +"Could not load quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2799 +#, c-format +msgid "" +"No outbound quota configured for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2840 +#, c-format +msgid "" +"No outbound quota configure for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3306 +msgid "print logging" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3311 +msgid "save logging to disk" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3316 +msgid "disable normalization" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:304 +#, c-format +msgid "" +"Could not load %s quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:314 +#, c-format +msgid "%s quota configured for network `%s' is %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:359 +#, c-format +msgid "" +"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:451 +#, fuzzy, c-format +msgid "Failed to initialize solver `%s'!\n" +msgstr "SQLite Datenbank konnte nicht initialisiert werden.\n" + +#: src/ats/plugin_ats_mlp.c:1274 +msgid "Problem size too large, cannot allocate memory!\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1869 +#, fuzzy, c-format +msgid "Adding address for peer `%s' multiple times\n" +msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n" + +#: src/ats/plugin_ats_mlp.c:1913 +#, fuzzy, c-format +msgid "Updating address property for peer `%s' %p not added before\n" +msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n" + +#: src/ats/plugin_ats_mlp.c:2475 +msgid "" +"MLP solver is not optimizing for anything, changing to feasibility check\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 +#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 +#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 +#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 +#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 +#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 +#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 +#, fuzzy, c-format +msgid "Invalid %s configuration %f \n" +msgstr "Konfiguration konnte nicht aus %s geladen werden\n" + +#: src/ats/plugin_ats_mlp.c:2670 +#, c-format +msgid "" +"Adjusting inconsistent outbound quota configuration for network `%s', is " +"%llu must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2679 +#, c-format +msgid "" +"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " +"must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2689 +#, c-format +msgid "" +"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2698 +#, c-format +msgid "" +"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_proportional.c:1164 +#, fuzzy, c-format +msgid "Invalid %s configuration %f\n" +msgstr " gconfig\tGTK Konfiguration\n" + #: src/auction/gnunet-auction-create.c:163 msgid "description of the item to be sold" msgstr "" @@ -769,6 +767,28 @@ msgstr "Ausführlicherer Modus (empfangene Werte ausgeben)" msgid "Connection to conversation service lost, trying to reconnect\n" msgstr "" +#: src/conversation/gnunet-conversation-test.c:119 +#, c-format +msgid "" +"\n" +"End of transmission. Have a GNU day.\n" +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:145 +#, c-format +msgid "" +"\n" +"We are now playing your recording back. If you can hear it, your audio " +"settings are working..." +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:210 +#, c-format +msgid "" +"We will now be recording you for %s. After that time, the recording will be " +"played back to you..." +msgstr "" + #: src/conversation/gnunet-conversation.c:269 #, c-format msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n" @@ -1026,30 +1046,8 @@ msgstr "" msgid "Enables having a conversation with other GNUnet users." msgstr "" -#: src/conversation/gnunet-conversation-test.c:119 -#, c-format -msgid "" -"\n" -"End of transmission. Have a GNU day.\n" -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:145 -#, c-format -msgid "" -"\n" -"We are now playing your recording back. If you can hear it, your audio " -"settings are working..." -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:210 -#, c-format -msgid "" -"We will now be recording you for %s. After that time, the recording will be " -"played back to you..." -msgstr "" - -#: src/conversation/gnunet_gst.c:622 #: src/conversation/gnunet-helper-audio-playback-gst.c:356 +#: src/conversation/gnunet_gst.c:622 #, c-format msgid "Read error from STDIN: %d %s\n" msgstr "Fehler beim Lesen aus STDIN: %d %s\n" @@ -1174,6 +1172,11 @@ msgstr "ogg_stream_init() fehlgeschlagen.\n" msgid "Failed to allocate %u bytes for second packet\n" msgstr "UDP-Sockets können nicht geöffnet werden\n" +#: src/conversation/gnunet-service-conversation.c:1276 +#, fuzzy, c-format +msgid "Could not open line, port %s already in use!\n" +msgstr "Verbindung zum %s-Dienst ist fehlgeschlagen!\n" + #: src/conversation/microphone.c:119 msgid "Could not start record audio helper\n" msgstr "" @@ -1463,8 +1466,138 @@ msgstr "# Bytes empfangen über TCP" msgid "# updates to my type map" msgstr "" +#: src/credential/credential_misc.c:88 +#, fuzzy, c-format +msgid "Unable to parse CRED record string `%s'\n" +msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':" + +#: src/credential/gnunet-credential.c:278 src/namestore/gnunet-namestore.c:776 +#: src/namestore/plugin_rest_namestore.c:1009 +#, fuzzy, c-format +msgid "Ego `%s' not known to identity service\n" +msgstr "`%s': unbekannter Dienst: %s\n" + +#: src/credential/gnunet-credential.c:294 +#: src/credential/gnunet-credential.c:446 +#, c-format +msgid "Issuer public key `%s' is not well-formed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:375 +#: src/credential/gnunet-credential.c:435 +#, fuzzy, c-format +msgid "Issuer public key not well-formed\n" +msgstr "Ungültiger Parameter: `%s'\n" + +#: src/credential/gnunet-credential.c:386 +#: src/credential/gnunet-credential.c:455 +#, fuzzy, c-format +msgid "Failed to connect to CREDENTIAL\n" +msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" + +#: src/credential/gnunet-credential.c:392 +#, c-format +msgid "You must provide issuer the attribute\n" +msgstr "" + +#: src/credential/gnunet-credential.c:399 +#, fuzzy, c-format +msgid "ego required\n" +msgstr "Gültiger Typ ist erforderlich\n" + +#: src/credential/gnunet-credential.c:415 +#, c-format +msgid "Subject public key needed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:426 +#, c-format +msgid "Subject public key `%s' is not well-formed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:461 +#, c-format +msgid "You must provide issuer and subject attributes\n" +msgstr "" + +#: src/credential/gnunet-credential.c:511 +#, fuzzy, c-format +msgid "Issuer ego required\n" +msgstr "Gültiger Typ ist erforderlich\n" + +#: src/credential/gnunet-credential.c:523 +#, c-format +msgid "Please specify name to lookup, subject key and issuer key!\n" +msgstr "" + +#: src/credential/gnunet-credential.c:543 +msgid "create credential" +msgstr "" + +#: src/credential/gnunet-credential.c:547 +msgid "verify credential against attribute" +msgstr "" + +#: src/credential/gnunet-credential.c:552 +#, fuzzy +msgid "The public key of the subject to lookup the credential for" +msgstr "Die Priorität des Inhalts angeben" + +#: src/credential/gnunet-credential.c:557 +msgid "The name of the credential presented by the subject" +msgstr "" + +#: src/credential/gnunet-credential.c:562 +msgid "The public key of the authority to verify the credential against" +msgstr "" + +#: src/credential/gnunet-credential.c:567 +msgid "The ego to use" +msgstr "" + +#: src/credential/gnunet-credential.c:572 +msgid "The issuer attribute to verify against or to issue" +msgstr "" + +#: src/credential/gnunet-credential.c:577 +msgid "The time to live for the credential" +msgstr "" + +#: src/credential/gnunet-credential.c:581 +msgid "collect credentials" +msgstr "" + +#: src/credential/gnunet-credential.c:595 +#, fuzzy +msgid "GNUnet credential resolver tool" +msgstr "GNUnet Netzwerk Topologie tracen." + +#: src/credential/gnunet-service-credential.c:1204 +#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:355 +#, fuzzy, c-format +msgid "Failed to connect to GNS\n" +msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" + +#: src/credential/gnunet-service-credential.c:1210 +#: src/namestore/gnunet-namestore-fcfsd.c:1034 +#: src/namestore/gnunet-namestore.c:802 +#: src/namestore/plugin_rest_namestore.c:1022 +#, fuzzy, c-format +msgid "Failed to connect to namestore\n" +msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" + +#: src/credential/plugin_gnsrecord_credential.c:186 +#, fuzzy, c-format +msgid "Unable to parse ATTR record string `%s'\n" +msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':" + +#: src/credential/plugin_rest_credential.c:1155 src/gns/plugin_rest_gns.c:668 +#, fuzzy +msgid "GNS REST API initialized\n" +msgstr " Verbindung fehlgeschlagen\n" + #: src/datacache/datacache.c:119 src/datacache/datacache.c:294 -#: src/datastore/gnunet-service-datastore.c:775 +#: src/datastore/gnunet-service-datastore.c:757 msgid "# bytes stored" msgstr "# gespeicherte Bytes" @@ -1506,13 +1639,12 @@ msgstr "" #: src/datacache/plugin_datacache_sqlite.c:113 #: src/datacache/plugin_datacache_sqlite.c:122 -#: src/datastore/plugin_datastore_mysql.c:980 +#: src/datastore/plugin_datastore_mysql.c:892 #: src/datastore/plugin_datastore_sqlite.c:58 -#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:80 src/my/my.c:92 -#: src/mysql/mysql.c:42 src/mysql/mysql.c:49 -#: src/namecache/plugin_namecache_postgres.c:53 +#: src/datastore/plugin_datastore_sqlite.c:66 +#: src/identity-provider/plugin_identity_provider_sqlite.c:52 src/my/my.c:80 +#: src/my/my.c:92 src/mysql/mysql.c:42 src/mysql/mysql.c:49 #: src/namecache/plugin_namecache_sqlite.c:53 -#: src/namestore/plugin_namestore_postgres.c:53 #: src/namestore/plugin_namestore_sqlite.c:53 #: src/peerstore/plugin_peerstore_sqlite.c:52 #: src/psycstore/plugin_psycstore_mysql.c:62 @@ -1521,14 +1653,15 @@ msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:56 #: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:52 #: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39 -#: src/include/gnunet_common.h:720 src/include/gnunet_common.h:729 +#: src/include/gnunet_common.h:735 src/include/gnunet_common.h:744 #: src/scalarproduct/scalarproduct.h:35 #, c-format msgid "`%s' failed at %s:%d with error: %s\n" msgstr "»%s« schlug bei %s:%d mit dem Fehler %s fehl\n" #: src/datacache/plugin_datacache_sqlite.c:817 -#: src/datastore/plugin_datastore_sqlite.c:475 +#: src/datastore/plugin_datastore_sqlite.c:456 +#: src/identity-provider/plugin_identity_provider_sqlite.c:336 #: src/namecache/plugin_namecache_sqlite.c:296 #: src/namestore/plugin_namestore_sqlite.c:355 msgid "Tried to close sqlite without finalizing all prepared statements.\n" @@ -1596,23 +1729,74 @@ msgstr "" msgid "# GET requests executed" msgstr "# ausgeführte GET-Anfragen" -#: src/datastore/gnunet-datastore.c:113 +#: src/datastore/gnunet-datastore.c:189 +#, c-format +msgid "Dumped % records\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:217 src/datastore/gnunet-datastore.c:229 +#, c-format +msgid "Short write to file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:261 +#, fuzzy +msgid "Error queueing datastore GET operation\n" +msgstr "Fehler beim Anlegen des Benutzers" + +#: src/datastore/gnunet-datastore.c:287 src/datastore/gnunet-datastore.c:412 +#, fuzzy, c-format +msgid "Unable to open dump file: %s\n" +msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n" + +#: src/datastore/gnunet-datastore.c:326 #, c-format msgid "Failed to store item: %s, aborting\n" msgstr "Objekt konnte nicht gespeichert werden: %s, Abbruch\n" -#: src/datastore/gnunet-datastore.c:209 +#: src/datastore/gnunet-datastore.c:340 #, c-format -msgid "Cannot use the same configuration for source and destination\n" +msgid "Inserted % records\n" msgstr "" -#: src/datastore/gnunet-datastore.c:256 -msgid "" -"specifies the configuration to use to access an alternative datastore; will " -"merge that datastore into our current datastore" +#: src/datastore/gnunet-datastore.c:349 src/datastore/gnunet-datastore.c:363 +#, c-format +msgid "Short read from file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:389 +#, fuzzy +msgid "Error queueing datastore PUT operation\n" +msgstr "Fehler beim Anlegen des Benutzers" + +#: src/datastore/gnunet-datastore.c:432 +msgid "Input file is not of a supported format\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:458 +#, fuzzy +msgid "Failed connecting to the datastore.\n" +msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden." + +#: src/datastore/gnunet-datastore.c:470 +#, c-format +msgid "Please choose at least one operation: %s, %s\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:493 +msgid "Dump all records from the datastore" +msgstr "" + +#: src/datastore/gnunet-datastore.c:497 +#, fuzzy +msgid "Insert records into the datastore" +msgstr "# bytes in der Datenbank" + +#: src/datastore/gnunet-datastore.c:502 +msgid "File to dump or insert" msgstr "" -#: src/datastore/gnunet-datastore.c:265 +#: src/datastore/gnunet-datastore.c:511 #, fuzzy msgid "Manipulate GNUnet datastore" msgstr "sqlite Datenspeicher" @@ -1655,8 +1839,8 @@ msgstr "" #: src/datastore/gnunet-service-datastore.c:634 #: src/datastore/gnunet-service-datastore.c:689 -#: src/datastore/gnunet-service-datastore.c:977 -#: src/datastore/gnunet-service-datastore.c:1633 +#: src/datastore/gnunet-service-datastore.c:837 +#: src/datastore/gnunet-service-datastore.c:1469 msgid "# reserved" msgstr "" @@ -1664,147 +1848,148 @@ msgstr "" msgid "Could not find matching reservation" msgstr "" -#: src/datastore/gnunet-service-datastore.c:792 +#: src/datastore/gnunet-service-datastore.c:773 #, c-format msgid "Need %llu bytes more space (%llu allowed, using %llu)\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1026 +#: src/datastore/gnunet-service-datastore.c:876 #, fuzzy msgid "# GET requests received" msgstr "# Client Trace-Anfragen empfangen" -#: src/datastore/gnunet-service-datastore.c:1058 +#: src/datastore/gnunet-service-datastore.c:907 #, fuzzy msgid "# GET KEY requests received" msgstr "# Client Trace-Anfragen empfangen" -#: src/datastore/gnunet-service-datastore.c:1071 +#: src/datastore/gnunet-service-datastore.c:920 msgid "# requests filtered by bloomfilter" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1108 +#: src/datastore/gnunet-service-datastore.c:956 #, fuzzy msgid "# GET REPLICATION requests received" msgstr "# Client Trace-Anfragen empfangen" -#: src/datastore/gnunet-service-datastore.c:1141 +#: src/datastore/gnunet-service-datastore.c:989 #, fuzzy msgid "# GET ZERO ANONYMITY requests received" msgstr "# Client Trace-Anfragen empfangen" -#: src/datastore/gnunet-service-datastore.c:1190 +#: src/datastore/gnunet-service-datastore.c:1036 msgid "Content not found" msgstr "Kein Inhalt gefunden" -#: src/datastore/gnunet-service-datastore.c:1199 +#: src/datastore/gnunet-service-datastore.c:1043 msgid "# bytes removed (explicit request)" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1246 +#: src/datastore/gnunet-service-datastore.c:1088 #, fuzzy msgid "# REMOVE requests received" msgstr "# Client Trace-Anfragen empfangen" -#: src/datastore/gnunet-service-datastore.c:1301 +#: src/datastore/gnunet-service-datastore.c:1137 #, c-format msgid "" "Datastore payload must have been inaccurate (%lld < %lld). Recomputing it.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1307 -#: src/datastore/gnunet-service-datastore.c:1482 +#: src/datastore/gnunet-service-datastore.c:1143 +#: src/datastore/gnunet-service-datastore.c:1318 #, c-format msgid "New payload: %lld\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1361 +#: src/datastore/gnunet-service-datastore.c:1197 #, c-format msgid "Loading `%s' datastore plugin\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1373 +#: src/datastore/gnunet-service-datastore.c:1209 #, fuzzy, c-format msgid "Failed to load datastore plugin for `%s'\n" msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n" -#: src/datastore/gnunet-service-datastore.c:1433 +#: src/datastore/gnunet-service-datastore.c:1269 msgid "Bloomfilter construction complete.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1489 +#: src/datastore/gnunet-service-datastore.c:1325 msgid "Rebuilding bloomfilter. Please be patient.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1500 +#: src/datastore/gnunet-service-datastore.c:1336 msgid "Plugin does not support get_keys function. Please fix!\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1670 +#: src/datastore/gnunet-service-datastore.c:1506 #, fuzzy, c-format msgid "# bytes used in file-sharing datastore `%s'" msgstr "# bytes erlaubt in der Datenbank" -#: src/datastore/gnunet-service-datastore.c:1686 +#: src/datastore/gnunet-service-datastore.c:1522 msgid "# quota" msgstr "# Kontingent" -#: src/datastore/gnunet-service-datastore.c:1691 +#: src/datastore/gnunet-service-datastore.c:1527 msgid "# cache size" msgstr "# Zwischenspeichergröße" -#: src/datastore/gnunet-service-datastore.c:1707 +#: src/datastore/gnunet-service-datastore.c:1543 #, c-format msgid "Could not use specified filename `%s' for bloomfilter.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1725 -#: src/datastore/gnunet-service-datastore.c:1741 +#: src/datastore/gnunet-service-datastore.c:1561 +#: src/datastore/gnunet-service-datastore.c:1577 #, fuzzy, c-format msgid "Failed to remove bogus bloomfilter file `%s'\n" msgstr "Datei wurde als `%s' gespeichert.\n" -#: src/datastore/gnunet-service-datastore.c:1773 +#: src/datastore/gnunet-service-datastore.c:1609 msgid "Failed to initialize bloomfilter.\n" msgstr "Bloomfilter konnte nicht initialisiert werden.\n" -#: src/datastore/plugin_datastore_heap.c:769 +#: src/datastore/plugin_datastore_heap.c:893 msgid "Heap database running\n" msgstr "Heap-Datenbank läuft\n" -#: src/datastore/plugin_datastore_mysql.c:377 -#: src/datastore/plugin_datastore_sqlite.c:590 +#: src/datastore/plugin_datastore_mysql.c:371 +#: src/datastore/plugin_datastore_mysql.c:423 +#: src/datastore/plugin_datastore_mysql.c:1075 +msgid "MySQL statement run failure" +msgstr "" + +#: src/datastore/plugin_datastore_mysql.c:410 +#: src/datastore/plugin_datastore_sqlite.c:626 #, fuzzy msgid "Data too large" msgstr "Anzahl der Werte" -#: src/datastore/plugin_datastore_mysql.c:393 -msgid "MySQL statement run failure" -msgstr "" - -#: src/datastore/plugin_datastore_mysql.c:936 +#: src/datastore/plugin_datastore_mysql.c:848 #, fuzzy, c-format msgid "`%s' for `%s' failed at %s:%d with error: %s\n" msgstr "`%s' an `%s' schlug fehl bei %s:%d mit dem Fehler: %s\n" -#: src/datastore/plugin_datastore_mysql.c:1208 +#: src/datastore/plugin_datastore_mysql.c:1180 #: src/psycstore/plugin_psycstore_mysql.c:1936 msgid "Mysql database running\n" msgstr "MySQL-Datenbank läuft\n" -#: src/datastore/plugin_datastore_postgres.c:345 +#: src/datastore/plugin_datastore_postgres.c:274 +#: src/datastore/plugin_datastore_postgres.c:891 msgid "Postgress exec failure" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:866 +#: src/datastore/plugin_datastore_postgres.c:852 #, fuzzy msgid "Failed to drop table from database.\n" msgstr "Fehler beim Binden an UDP Port %d.\n" -#: src/datastore/plugin_datastore_postgres.c:903 -#: src/namecache/plugin_namecache_postgres.c:398 -#: src/namestore/plugin_namestore_postgres.c:571 -#: src/psycstore/plugin_psycstore_postgres.c:1721 +#: src/datastore/plugin_datastore_postgres.c:950 +#: src/psycstore/plugin_psycstore_postgres.c:1506 msgid "Postgres database running\n" msgstr "PostgreSQL-Datenbank läuft\n" @@ -1816,7 +2001,8 @@ msgstr "PostgreSQL-Datenbank läuft\n" msgid "`%s' failed at %s:%u with error: %s" msgstr "`%s' schlug bei %s:%d mit dem Fehler %s fehl\n" -#: src/datastore/plugin_datastore_sqlite.c:281 +#: src/datastore/plugin_datastore_sqlite.c:271 +#: src/identity-provider/plugin_identity_provider_sqlite.c:212 #: src/namecache/plugin_namecache_sqlite.c:194 #: src/namestore/plugin_namestore_sqlite.c:222 #: src/peerstore/plugin_peerstore_sqlite.c:535 @@ -1825,24 +2011,29 @@ msgstr "`%s' schlug bei %s:%d mit dem Fehler %s fehl\n" msgid "Unable to initialize SQLite: %s.\n" msgstr "SQLite-Datenbank konnte nicht initialisiert werden: %s.\n" -#: src/datastore/plugin_datastore_sqlite.c:1234 +#: src/datastore/plugin_datastore_sqlite.c:577 +msgid "sqlite bind failure" +msgstr "" + +#: src/datastore/plugin_datastore_sqlite.c:1259 msgid "sqlite version to old to determine size, assuming zero\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1268 +#: src/datastore/plugin_datastore_sqlite.c:1293 #, c-format msgid "" "Using sqlite page utilization to estimate payload (%llu pages of size %llu " "bytes)\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1312 +#: src/datastore/plugin_datastore_sqlite.c:1337 +#: src/identity-provider/plugin_identity_provider_sqlite.c:711 #: src/namecache/plugin_namecache_sqlite.c:603 #: src/namestore/plugin_namestore_sqlite.c:802 msgid "Sqlite database running\n" msgstr "Sqlite-Datenbank läuft\n" -#: src/datastore/plugin_datastore_template.c:259 +#: src/datastore/plugin_datastore_template.c:253 msgid "Template database running\n" msgstr "" @@ -1903,52 +2094,6 @@ msgstr "" msgid "Prints all packets that go through the DHT." msgstr "" -#: src/dht/gnunet_dht_profiler.c:1161 -#: src/testbed/gnunet-testbed-profiler.c:255 -#, c-format -msgid "Exiting as the number of peers is %u\n" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1188 -#, fuzzy -msgid "number of peers to start" -msgstr "Anzahl an Durchläufen" - -#: src/dht/gnunet_dht_profiler.c:1194 -msgid "" -"maximum number of times we try to search for successor circle formation (0 " -"for R5N)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 -#: src/testbed/gnunet-testbed-profiler.c:305 -msgid "name of the file with the login information for the testbed" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1206 -msgid "delay between rounds for collecting statistics (default: 30 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1212 -msgid "delay to start doing PUTs (default: 1 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1218 -msgid "delay to start doing GETs (default: 5 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1223 -msgid "replication degree for DHT PUTs" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1230 -msgid "timeout for DHT PUT and GET requests (default: 1 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1248 -msgid "Measure quality and performance of the DHT service." -msgstr "" - #: src/dht/gnunet-dht-put.c:120 msgid "PUT request sent with key" msgstr "" @@ -2215,6 +2360,51 @@ msgstr "" msgid "# DHT requests combined" msgstr "# dht Anfragen weitergeleitet" +#: src/dht/gnunet_dht_profiler.c:1161 src/testbed/gnunet-testbed-profiler.c:255 +#, c-format +msgid "Exiting as the number of peers is %u\n" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1188 +#, fuzzy +msgid "number of peers to start" +msgstr "Anzahl an Durchläufen" + +#: src/dht/gnunet_dht_profiler.c:1194 +msgid "" +"maximum number of times we try to search for successor circle formation (0 " +"for R5N)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 +#: src/testbed/gnunet-testbed-profiler.c:305 +msgid "name of the file with the login information for the testbed" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1206 +msgid "delay between rounds for collecting statistics (default: 30 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1212 +msgid "delay to start doing PUTs (default: 1 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1218 +msgid "delay to start doing GETs (default: 5 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1223 +msgid "replication degree for DHT PUTs" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1230 +msgid "timeout for DHT PUT and GET requests (default: 1 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1248 +msgid "Measure quality and performance of the DHT service." +msgstr "" + #: src/dht/plugin_block_dht.c:187 #, fuzzy, c-format msgid "Block not of type %u\n" @@ -2546,7 +2736,7 @@ msgstr "" msgid "No useful service enabled. Exiting.\n" msgstr "" -#: src/exit/gnunet-daemon-exit.c:3969 +#: src/exit/gnunet-daemon-exit.c:3970 msgid "Daemon to run to provide an IP exit node for the VPN" msgstr "" @@ -3199,15 +3389,6 @@ msgid "" "chk/...)" msgstr "" -#: src/fs/gnunet-fs.c:119 -msgid "print a list of all indexed files" -msgstr "" - -#: src/fs/gnunet-fs.c:130 -#, fuzzy -msgid "Special file-sharing operations" -msgstr "Alle Optionen anzeigen" - #: src/fs/gnunet-fs-profiler.c:211 msgid "run the experiment with COUNT peers" msgstr "" @@ -3224,6 +3405,15 @@ msgstr "" msgid "run a testbed to measure file-sharing performance" msgstr "" +#: src/fs/gnunet-fs.c:119 +msgid "print a list of all indexed files" +msgstr "" + +#: src/fs/gnunet-fs.c:130 +#, fuzzy +msgid "Special file-sharing operations" +msgstr "Alle Optionen anzeigen" + #: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231 #, c-format msgid "Publishing `%s' at %llu/%llu (%s remaining)\n" @@ -3923,22 +4113,11 @@ msgstr "" msgid "GNUnet DNS-to-GNS proxy (a DNS server)" msgstr "" -#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 -#, c-format -msgid "Invalid typename specified, assuming `ANY'\n" -msgstr "" - -#: src/gns/gnunet-gns.c:252 -#, c-format -msgid "Please specify name to lookup!\n" -msgstr "" - -#: src/gns/gnunet-gns.c:276 -#, c-format -msgid "Ego for `%s' not found, cannot perform lookup.\n" +#: src/gns/gnunet-gns-helper-service-w32.c:602 +msgid "Not ready to process requests, lacking ego data\n" msgstr "" -#: src/gns/gnunet-gns.c:315 src/gns/gnunet-gns-helper-service-w32.c:701 +#: src/gns/gnunet-gns-helper-service-w32.c:701 src/gns/gnunet-gns.c:315 #: src/gns/plugin_rest_gns.c:422 #, c-format msgid "" @@ -3946,56 +4125,12 @@ msgid "" "gns-import.sh?\n" msgstr "" -#: src/gns/gnunet-gns.c:355 src/gns/gnunet-gns-helper-service-w32.c:727 -#, fuzzy, c-format -msgid "Failed to connect to GNS\n" -msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" - -#: src/gns/gnunet-gns.c:374 -#, c-format -msgid "Public key `%s' is not well-formed\n" -msgstr "" - -#: src/gns/gnunet-gns.c:428 -msgid "Lookup a record for the given name" -msgstr "" - -#: src/gns/gnunet-gns.c:434 -#, fuzzy -msgid "Specify the type of the record to lookup" -msgstr "Die Priorität des Inhalts angeben" - -#: src/gns/gnunet-gns.c:440 -msgid "Specify timeout for the lookup" -msgstr "" - -#: src/gns/gnunet-gns.c:445 -msgid "No unneeded output" -msgstr "" - -#: src/gns/gnunet-gns.c:451 -msgid "Specify the public key of the zone to lookup the record in" -msgstr "" - -#: src/gns/gnunet-gns.c:457 -msgid "Specify the name of the ego of the zone to lookup the record in" -msgstr "" - -#: src/gns/gnunet-gns.c:476 -#, fuzzy -msgid "GNUnet GNS resolver tool" -msgstr "GNUnet Netzwerk Topologie tracen." - -#: src/gns/gnunet-gns-helper-service-w32.c:602 -msgid "Not ready to process requests, lacking ego data\n" -msgstr "" - #: src/gns/gnunet-gns-helper-service-w32.c:739 #, fuzzy, c-format msgid "Failed to connect to identity service\n" msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" -#: src/gns/gnunet-gns-import.c:489 +#: src/gns/gnunet-gns-import.c:452 msgid "This program will import some GNS authorities into your GNS namestore." msgstr "" @@ -4103,30 +4238,80 @@ msgstr "" msgid "No ego configured for `%s`\n" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3226 -#, fuzzy, c-format -msgid "Failed to load SSL/TLS key and certificate from `%s'\n" -msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n" - -#: src/gns/gnunet-gns-proxy.c:3269 -msgid "listen on specified port (default: 7777)" +#: src/gns/gnunet-gns-proxy.c:3226 +#, fuzzy, c-format +msgid "Failed to load SSL/TLS key and certificate from `%s'\n" +msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n" + +#: src/gns/gnunet-gns-proxy.c:3269 +msgid "listen on specified port (default: 7777)" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3275 +msgid "pem file to use as CA" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3300 +msgid "GNUnet GNS proxy" +msgstr "" + +#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 +#, c-format +msgid "Invalid typename specified, assuming `ANY'\n" +msgstr "" + +#: src/gns/gnunet-gns.c:252 +#, c-format +msgid "Please specify name to lookup!\n" +msgstr "" + +#: src/gns/gnunet-gns.c:276 +#, c-format +msgid "Ego for `%s' not found, cannot perform lookup.\n" +msgstr "" + +#: src/gns/gnunet-gns.c:374 +#, c-format +msgid "Public key `%s' is not well-formed\n" +msgstr "" + +#: src/gns/gnunet-gns.c:428 +msgid "Lookup a record for the given name" +msgstr "" + +#: src/gns/gnunet-gns.c:434 +#, fuzzy +msgid "Specify the type of the record to lookup" +msgstr "Die Priorität des Inhalts angeben" + +#: src/gns/gnunet-gns.c:440 +msgid "Specify timeout for the lookup" +msgstr "" + +#: src/gns/gnunet-gns.c:445 +msgid "No unneeded output" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3275 -msgid "pem file to use as CA" +#: src/gns/gnunet-gns.c:451 +msgid "Specify the public key of the zone to lookup the record in" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3300 -msgid "GNUnet GNS proxy" +#: src/gns/gnunet-gns.c:457 +msgid "Specify the name of the ego of the zone to lookup the record in" msgstr "" +#: src/gns/gnunet-gns.c:476 +#, fuzzy +msgid "GNUnet GNS resolver tool" +msgstr "GNUnet Netzwerk Topologie tracen." + #: src/gns/gnunet-service-gns.c:442 #, fuzzy msgid "Failed to connect to the namecache!\n" msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" #: src/gns/gnunet-service-gns.c:461 -#: src/zonemaster/gnunet-service-zonemaster.c:741 +#: src/zonemaster/gnunet-service-zonemaster.c:742 #, fuzzy msgid "Could not connect to DHT!\n" msgstr "Verbindung zu gnunetd konnte nicht hergestellt werden.\n" @@ -4185,45 +4370,35 @@ msgstr "" msgid "Hostname `%s' is not well-formed, resolution fails\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:203 +#: src/gns/plugin_gnsrecord_gns.c:179 #, c-format msgid "Unable to parse PKEY record `%s'\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:232 +#: src/gns/plugin_gnsrecord_gns.c:208 #, fuzzy, c-format msgid "Unable to parse GNS2DNS record `%s'\n" msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n" -#: src/gns/plugin_gnsrecord_gns.c:253 +#: src/gns/plugin_gnsrecord_gns.c:229 #, c-format msgid "Failed to serialize GNS2DNS record with value `%s'\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:276 +#: src/gns/plugin_gnsrecord_gns.c:252 #, fuzzy, c-format msgid "Unable to parse VPN record string `%s'\n" msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':" -#: src/gns/plugin_gnsrecord_gns.c:312 +#: src/gns/plugin_gnsrecord_gns.c:288 #, fuzzy, c-format msgid "Unable to parse BOX record string `%s'\n" msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':" -#: src/gns/plugin_gnsrecord_gns.c:360 -#, fuzzy, c-format -msgid "Unable to parse REVERSE record string `%s'\n" -msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':" - #: src/gns/plugin_rest_gns.c:384 msgid "Ego for not found, cannot perform lookup.\n" msgstr "" -#: src/gns/plugin_rest_gns.c:668 -#, fuzzy -msgid "GNS REST API initialized\n" -msgstr " Verbindung fehlgeschlagen\n" - #: src/gnsrecord/plugin_gnsrecord_dns.c:359 #, c-format msgid "Unable to parse IPv4 address `%s'\n" @@ -4655,6 +4830,53 @@ msgstr "»%s« ist keine gültige IP-Adresse.\n" msgid "Could not start hostlist HTTP server on port %u\n" msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n" +#: src/identity-provider/gnunet-idp.c:348 +#, fuzzy +msgid "Ego is required\n" +msgstr "Option `%s' macht keinen Sinn ohne die Option `%s'.\n" + +#: src/identity-provider/gnunet-idp.c:370 +msgid "Add attribute" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:376 +msgid "Attribute value" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:381 +msgid "Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:386 +msgid "Audience (relying party)" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:390 +msgid "List attributes for Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:395 +msgid "Issue a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:400 +msgid "Consume a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:405 +msgid "Revoke a ticket" +msgstr "" + +#: src/identity-provider/identity_provider_api.c:429 +#, fuzzy +msgid "failed to store record\n" +msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n" + +#: src/identity-provider/plugin_rest_identity_provider.c:1175 +#, fuzzy +msgid "Identity Provider REST API initialized\n" +msgstr " Verbindung fehlgeschlagen\n" + #: src/identity/gnunet-identity.c:179 #, fuzzy, c-format msgid "Failed to create ego: %s\n" @@ -4742,33 +4964,10 @@ msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':" msgid "Failed to create directory `%s' for storing egos\n" msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n" -#: src/identity/plugin_rest_identity.c:967 +#: src/identity/plugin_rest_identity.c:964 msgid "Identity REST API initialized\n" msgstr "" -#: src/identity-provider/gnunet-identity-token.c:66 -#, fuzzy -msgid "Option `-t' is required\n" -msgstr "Option `%s' macht keinen Sinn ohne die Option `%s'.\n" - -#: src/identity-provider/gnunet-identity-token.c:77 -#, fuzzy, c-format -msgid "Token `%s' is malformed\n" -msgstr "Schlüssel »%s« ist gültig\n" - -#: src/identity-provider/gnunet-identity-token.c:166 -msgid "GNUid token" -msgstr "" - -#: src/identity-provider/gnunet-identity-token.c:171 -msgid "Print token contents" -msgstr "" - -#: src/identity-provider/plugin_rest_identity_provider.c:1166 -#, fuzzy -msgid "Identity Token REST API initialized\n" -msgstr " Verbindung fehlgeschlagen\n" - #: src/json/json.c:119 #, fuzzy, c-format msgid "Failed to parse JSON in option `%s': %s (%s)\n" @@ -4870,11 +5069,65 @@ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n" msgid "flat plugin running\n" msgstr "Sqlite-Datenbank läuft\n" -#: src/namecache/plugin_namecache_postgres.c:90 -#: src/namestore/plugin_namestore_postgres.c:97 +#: src/namestore/gnunet-namestore-fcfsd.c:508 +#, fuzzy, c-format +msgid "Unsupported form value `%s'\n" +msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:535 +#, fuzzy, c-format +msgid "Failed to create record for domain `%s': %s\n" +msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:555 +msgid "Error when mapping zone to name\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:585 +#, c-format +msgid "Found existing name `%s' for the given key\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:662 +#, c-format +msgid "Found %u existing records for domain `%s'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:718 +#, fuzzy, c-format +msgid "Failed to create page for `%s'\n" +msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:734 +#, fuzzy, c-format +msgid "Failed to setup post processor for `%s'\n" +msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:770 +msgid "Domain name must not contain `.'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:778 +msgid "Domain name must not contain `+'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:974 +msgid "No ego configured for `fcfsd` subsystem\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:1000 #, fuzzy -msgid "Failed to create indices\n" -msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n" +msgid "Failed to start HTTP server\n" +msgstr "Fehler beim Senden einer `%s' Anfrage an den SMTP Server.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1042 +#, fuzzy +msgid "Failed to connect to identity\n" +msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1074 +msgid "GNU Name System First Come First Serve name registration service" +msgstr "" #: src/namestore/gnunet-namestore.c:301 #, c-format @@ -4882,13 +5135,13 @@ msgid "Adding record failed: %s\n" msgstr "" #: src/namestore/gnunet-namestore.c:330 -#: src/namestore/plugin_rest_namestore.c:562 +#: src/namestore/plugin_rest_namestore.c:567 #, c-format msgid "Deleting record failed, record does not exist%s%s\n" msgstr "" #: src/namestore/gnunet-namestore.c:337 -#: src/namestore/plugin_rest_namestore.c:571 +#: src/namestore/plugin_rest_namestore.c:576 #, c-format msgid "Deleting record failed%s%s\n" msgstr "" @@ -4906,7 +5159,7 @@ msgid "Records already exist under `%s', cannot add `%s' record.\n" msgstr "" #: src/namestore/gnunet-namestore.c:698 -#: src/namestore/plugin_rest_namestore.c:597 +#: src/namestore/plugin_rest_namestore.c:602 #, c-format msgid "There are no records under label `%s' that could be deleted.\n" msgstr "" @@ -4917,24 +5170,11 @@ msgid "" "There are no records under label `%s' that match the request for deletion.\n" msgstr "" -#: src/namestore/gnunet-namestore.c:776 -#: src/namestore/plugin_rest_namestore.c:1004 -#, fuzzy, c-format -msgid "Ego `%s' not known to identity service\n" -msgstr "`%s': unbekannter Dienst: %s\n" - #: src/namestore/gnunet-namestore.c:791 #, c-format msgid "No options given\n" msgstr "" -#: src/namestore/gnunet-namestore.c:802 -#: src/namestore/gnunet-namestore-fcfsd.c:1034 -#: src/namestore/plugin_rest_namestore.c:1017 -#, fuzzy -msgid "Failed to connect to namestore\n" -msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" - #: src/namestore/gnunet-namestore.c:810 src/namestore/gnunet-namestore.c:819 #: src/namestore/gnunet-namestore.c:838 src/namestore/gnunet-namestore.c:861 #: src/namestore/gnunet-namestore.c:915 @@ -4948,14 +5188,14 @@ msgid "add" msgstr "" #: src/namestore/gnunet-namestore.c:829 -#: src/namestore/plugin_rest_namestore.c:671 +#: src/namestore/plugin_rest_namestore.c:676 #, fuzzy, c-format msgid "Unsupported type `%s'\n" msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n" #: src/namestore/gnunet-namestore.c:851 -#: src/namestore/plugin_rest_namestore.c:689 -#: src/namestore/plugin_rest_namestore.c:729 +#: src/namestore/plugin_rest_namestore.c:694 +#: src/namestore/plugin_rest_namestore.c:734 #, fuzzy, c-format msgid "Value `%s' invalid for record type `%s'\n" msgstr "%s: Symbolwert `%s' ist ungültig für %s\n" @@ -4974,8 +5214,7 @@ msgstr "" msgid "Invalid public key for reverse lookup `%s'\n" msgstr "" -#: src/namestore/gnunet-namestore.c:979 -#: src/peerinfo-tool/gnunet-peerinfo.c:775 +#: src/namestore/gnunet-namestore.c:979 src/peerinfo-tool/gnunet-peerinfo.c:775 #, fuzzy, c-format msgid "Invalid URI `%s'\n" msgstr "Ungültiger Parameter: `%s'\n" @@ -4986,13 +5225,13 @@ msgid "Invalid nick `%s'\n" msgstr "Ungültiger Parameter: `%s'\n" #: src/namestore/gnunet-namestore.c:1051 -#: src/namestore/plugin_rest_namestore.c:1047 +#: src/namestore/plugin_rest_namestore.c:1052 #, c-format msgid "No default ego configured in identity service\n" msgstr "" #: src/namestore/gnunet-namestore.c:1108 -#: src/namestore/plugin_rest_namestore.c:1143 +#: src/namestore/plugin_rest_namestore.c:1148 #, fuzzy, c-format msgid "Cannot connect to identity service\n" msgstr "Verbindung zu %u.%u.%u.%u:%u fehlgeschlagen: %s\n" @@ -5052,67 +5291,7 @@ msgstr "" msgid "name of the ego controlling the zone" msgstr "" -#: src/namestore/gnunet-namestore-fcfsd.c:508 -#, fuzzy, c-format -msgid "Unsupported form value `%s'\n" -msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:535 -#, fuzzy, c-format -msgid "Failed to create record for domain `%s': %s\n" -msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:555 -msgid "Error when mapping zone to name\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:585 -#, c-format -msgid "Found existing name `%s' for the given key\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:662 -#, c-format -msgid "Found %u existing records for domain `%s'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:718 -#, fuzzy, c-format -msgid "Failed to create page for `%s'\n" -msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:734 -#, fuzzy, c-format -msgid "Failed to setup post processor for `%s'\n" -msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:770 -msgid "Domain name must not contain `.'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:778 -msgid "Domain name must not contain `+'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:974 -msgid "No ego configured for `fcfsd` subsystem\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:1000 -#, fuzzy -msgid "Failed to start HTTP server\n" -msgstr "Fehler beim Senden einer `%s' Anfrage an den SMTP Server.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1042 -#, fuzzy -msgid "Failed to connect to identity\n" -msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1074 -msgid "GNU Name System First Come First Serve name registration service" -msgstr "" - -#: src/namestore/gnunet-service-namestore.c:612 +#: src/namestore/gnunet-service-namestore.c:615 #, c-format msgid "Failed to replicate block in namecache: %s\n" msgstr "" @@ -5126,7 +5305,7 @@ msgstr "" msgid "flat file database running\n" msgstr "Sqlite-Datenbank läuft\n" -#: src/namestore/plugin_rest_namestore.c:1188 +#: src/namestore/plugin_rest_namestore.c:1193 #, fuzzy msgid "Namestore REST API initialized\n" msgstr " Verbindung fehlgeschlagen\n" @@ -5416,10 +5595,6 @@ msgstr "Kommando `%s' wurde nicht gefunden!\n" msgid "`upnpc' command not found\n" msgstr "Kommando `%s' wurde nicht gefunden!\n" -#: src/nse/gnunet-nse.c:122 -msgid "Show network size estimates from NSE service." -msgstr "" - #: src/nse/gnunet-nse-profiler.c:842 msgid "limit to the number of connections to NSE services, 0 for none" msgstr "" @@ -5440,71 +5615,18 @@ msgstr "" msgid "delay between rounds" msgstr "" -#: src/nse/gnunet-nse-profiler.c:886 -msgid "Measure quality and performance of the NSE service." -msgstr "" - -#: src/nse/gnunet-service-nse.c:1534 -#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 -msgid "Value is too large.\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:178 -#, fuzzy, c-format -msgid "Removing expired address of transport `%s'\n" -msgstr "Verfügbare(r) Transport(e): %s\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:310 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s': %s\n" -msgstr "Datei wurde als `%s' gespeichert.\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:331 -#: src/peerinfo/gnunet-service-peerinfo.c:362 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s'\n" -msgstr "Datei wurde als `%s' gespeichert.\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:446 -msgid "# peers known" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:489 -#, c-format -msgid "" -"File `%s' in directory `%s' does not match naming convention. Removed.\n" -msgstr "" -"Die Datei »%s« im Verzeichnis »%s« entspricht nicht der Namenskonvention. " -"Die Datei wurde entfernt.\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:655 -#, fuzzy, c-format -msgid "Scanning directory `%s'\n" -msgstr "==> Verzeichnis `%s':\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:663 -#, fuzzy, c-format -msgid "Still no peers found in `%s'!\n" -msgstr "Dienst `%s' konnte nicht ordentlich entladen werden!\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1076 -#, fuzzy, c-format -msgid "Cleaning up directory `%s'\n" -msgstr "==> Verzeichnis `%s':\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1405 -#, c-format -msgid "Importing HELLOs from `%s'\n" +#: src/nse/gnunet-nse-profiler.c:886 +msgid "Measure quality and performance of the NSE service." msgstr "" -#: src/peerinfo/gnunet-service-peerinfo.c:1418 -msgid "Skipping import of included HELLOs\n" +#: src/nse/gnunet-nse.c:122 +msgid "Show network size estimates from NSE service." msgstr "" -#: src/peerinfo/peerinfo_api.c:220 -#, fuzzy -msgid "Failed to receive response from `PEERINFO' service." -msgstr "Fehler beim Empfangen der Antwort von gnunetd auf die `%s' Nachricht\n" +#: src/nse/gnunet-service-nse.c:1534 +#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 +msgid "Value is too large.\n" +msgstr "" #: src/peerinfo-tool/gnunet-peerinfo.c:239 #, fuzzy, c-format @@ -5596,6 +5718,63 @@ msgstr "Teste Transport(e) %s\n" msgid "Failed to load transport plugin for `%s'\n" msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n" +#: src/peerinfo/gnunet-service-peerinfo.c:178 +#, fuzzy, c-format +msgid "Removing expired address of transport `%s'\n" +msgstr "Verfügbare(r) Transport(e): %s\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:310 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s': %s\n" +msgstr "Datei wurde als `%s' gespeichert.\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:331 +#: src/peerinfo/gnunet-service-peerinfo.c:362 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s'\n" +msgstr "Datei wurde als `%s' gespeichert.\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:446 +msgid "# peers known" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:489 +#, c-format +msgid "" +"File `%s' in directory `%s' does not match naming convention. Removed.\n" +msgstr "" +"Die Datei »%s« im Verzeichnis »%s« entspricht nicht der Namenskonvention. " +"Die Datei wurde entfernt.\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:655 +#, fuzzy, c-format +msgid "Scanning directory `%s'\n" +msgstr "==> Verzeichnis `%s':\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:663 +#, fuzzy, c-format +msgid "Still no peers found in `%s'!\n" +msgstr "Dienst `%s' konnte nicht ordentlich entladen werden!\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1076 +#, fuzzy, c-format +msgid "Cleaning up directory `%s'\n" +msgstr "==> Verzeichnis `%s':\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1405 +#, c-format +msgid "Importing HELLOs from `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1418 +msgid "Skipping import of included HELLOs\n" +msgstr "" + +#: src/peerinfo/peerinfo_api.c:220 +#, fuzzy +msgid "Failed to receive response from `PEERINFO' service." +msgstr "Fehler beim Empfangen der Antwort von gnunetd auf die `%s' Nachricht\n" + #: src/peerstore/gnunet-peerstore.c:91 msgid "peerstore" msgstr "" @@ -5644,15 +5823,10 @@ msgstr "" msgid "Unable to create indices: %s.\n" msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n" -#: src/postgres/postgres.c:67 -#, fuzzy, c-format -msgid "`%s:%s' failed at %s:%d with error: %s\n" -msgstr "`%s' schlug bei %s:%d mit dem Fehler %s fehl\n" - -#: src/postgres/postgres.c:192 +#: src/pq/pq_prepare.c:80 #, fuzzy, c-format -msgid "Unable to connect to Postgres database '%s': %s\n" -msgstr "Fehler beim Anlegen des Benutzerkontos:" +msgid "PQprepare (`%s' as `%s') failed with error: %s\n" +msgstr "`%s' an `%s' schlug fehl bei %s:%d mit dem Fehler: %s\n" #: src/psycstore/gnunet-service-psycstore.c:249 #, fuzzy @@ -5832,56 +6006,56 @@ msgstr "" msgid "Daemon to announce regular expressions for the peer using cadet." msgstr "" -#: src/regex/gnunet-regex-profiler.c:1314 +#: src/regex/gnunet-regex-profiler.c:1386 msgid "No configuration file given. Exiting\n" msgstr "Keine Konfigurationsdatei angegeben. Abbruch\n" -#: src/regex/gnunet-regex-profiler.c:1355 +#: src/regex/gnunet-regex-profiler.c:1427 #: src/regex/gnunet-regex-simulation-profiler.c:630 #, c-format msgid "No policy directory specified on command line. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1361 +#: src/regex/gnunet-regex-profiler.c:1433 #: src/regex/gnunet-regex-simulation-profiler.c:638 #, c-format msgid "Specified policies directory does not exist. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1368 +#: src/regex/gnunet-regex-profiler.c:1440 #, c-format msgid "No files found in `%s'\n" msgstr "Keine Dateien in »%s« gefunden\n" -#: src/regex/gnunet-regex-profiler.c:1377 +#: src/regex/gnunet-regex-profiler.c:1449 msgid "No search strings file given. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1397 +#: src/regex/gnunet-regex-profiler.c:1469 msgid "Error loading search strings. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1485 +#: src/regex/gnunet-regex-profiler.c:1557 msgid "name of the file for writing statistics" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1491 +#: src/regex/gnunet-regex-profiler.c:1563 msgid "wait TIMEOUT before ending the experiment" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1497 +#: src/regex/gnunet-regex-profiler.c:1569 msgid "directory with policy files" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1504 +#: src/regex/gnunet-regex-profiler.c:1576 msgid "name of file with input strings" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1510 +#: src/regex/gnunet-regex-profiler.c:1582 msgid "name of file with hosts' names" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1523 +#: src/regex/gnunet-regex-profiler.c:1595 msgid "Profiler for regex" msgstr "" @@ -6110,10 +6284,10 @@ msgstr "" msgid "Calculate the Vectorproduct with a GNUnet peer." msgstr "" -#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1407 -#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 -#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1180 +#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172 #: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063 +#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401 +#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 #, fuzzy msgid "Connect to CADET failed\n" msgstr " Verbindung fehlgeschlagen\n" @@ -6138,7 +6312,7 @@ msgstr "" msgid "also profile decryption" msgstr "" -#: src/set/gnunet-service-set.c:1948 +#: src/set/gnunet-service-set.c:1989 #, fuzzy msgid "Could not connect to CADET service\n" msgstr "Verbindung zum %s-Dienst ist fehlgeschlagen!\n" @@ -6198,113 +6372,113 @@ msgstr "" msgid "say good-bye and leave somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1227 src/social/gnunet-social.c:1232 +#: src/social/gnunet-social.c:1227 msgid "create a place" msgstr "" -#: src/social/gnunet-social.c:1237 +#: src/social/gnunet-social.c:1232 msgid "destroy a place we were hosting" msgstr "" -#: src/social/gnunet-social.c:1242 +#: src/social/gnunet-social.c:1237 msgid "enter somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1248 +#: src/social/gnunet-social.c:1243 msgid "find state matching name prefix" msgstr "" -#: src/social/gnunet-social.c:1253 +#: src/social/gnunet-social.c:1248 msgid "replay history of messages up to the given --limit" msgstr "" -#: src/social/gnunet-social.c:1258 +#: src/social/gnunet-social.c:1253 msgid "reconnect to a previously created place" msgstr "" -#: src/social/gnunet-social.c:1263 +#: src/social/gnunet-social.c:1258 msgid "publish something to a place we are hosting" msgstr "" -#: src/social/gnunet-social.c:1268 +#: src/social/gnunet-social.c:1263 msgid "reconnect to a previously entered place" msgstr "" -#: src/social/gnunet-social.c:1273 +#: src/social/gnunet-social.c:1268 msgid "search for state matching exact name" msgstr "" -#: src/social/gnunet-social.c:1278 +#: src/social/gnunet-social.c:1273 msgid "submit something to somebody's place" msgstr "" -#: src/social/gnunet-social.c:1283 +#: src/social/gnunet-social.c:1278 msgid "list of egos and subscribed places" msgstr "" -#: src/social/gnunet-social.c:1288 +#: src/social/gnunet-social.c:1283 msgid "extract and replay history between message IDs --start and --until" msgstr "" -#: src/social/gnunet-social.c:1297 +#: src/social/gnunet-social.c:1292 msgid "application ID to use when connecting" msgstr "" -#: src/social/gnunet-social.c:1303 +#: src/social/gnunet-social.c:1298 msgid "message body or state value" msgstr "" -#: src/social/gnunet-social.c:1309 +#: src/social/gnunet-social.c:1304 #, fuzzy msgid "name or public key of ego" msgstr "Ungültiger Parameter: `%s'\n" -#: src/social/gnunet-social.c:1314 +#: src/social/gnunet-social.c:1309 msgid "wait for incoming messages" msgstr "" -#: src/social/gnunet-social.c:1320 +#: src/social/gnunet-social.c:1315 msgid "GNS name" msgstr "" -#: src/social/gnunet-social.c:1326 +#: src/social/gnunet-social.c:1321 msgid "peer ID for --guest-enter" msgstr "" -#: src/social/gnunet-social.c:1332 +#: src/social/gnunet-social.c:1327 msgid "name (key) to query from state" msgstr "" -#: src/social/gnunet-social.c:1338 +#: src/social/gnunet-social.c:1333 msgid "method name" msgstr "" -#: src/social/gnunet-social.c:1344 +#: src/social/gnunet-social.c:1339 #, fuzzy msgid "number of messages to replay from history" msgstr "Anzahl an Durchläufen" -#: src/social/gnunet-social.c:1350 +#: src/social/gnunet-social.c:1345 msgid "key address of place" msgstr "" -#: src/social/gnunet-social.c:1356 +#: src/social/gnunet-social.c:1351 msgid "start message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1361 +#: src/social/gnunet-social.c:1356 msgid "respond to entry requests by admitting all guests" msgstr "" -#: src/social/gnunet-social.c:1367 +#: src/social/gnunet-social.c:1362 msgid "end message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1372 +#: src/social/gnunet-social.c:1367 msgid "respond to entry requests by refusing all guests" msgstr "" -#: src/social/gnunet-social.c:1382 +#: src/social/gnunet-social.c:1377 msgid "" "gnunet-social - Interact with the social service: enter/leave, send/receive " "messages, access history and state.\n" @@ -6497,7 +6671,7 @@ msgid "" msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:231 src/testing/list-keys.c:46 -#: src/testing/testing.c:288 src/util/gnunet-ecc.c:298 +#: src/testing/testing.c:288 src/util/gnunet-ecc.c:301 #, c-format msgid "Incorrect hostkey file format: %s\n" msgstr "" @@ -6567,6 +6741,17 @@ msgstr "" msgid "%.s Unknown result code." msgstr "" +#: src/testbed/gnunet-testbed-profiler.c:290 +msgid "tolerate COUNT number of continious timeout failures" +msgstr "" + +#: src/testbed/gnunet-testbed-profiler.c:295 +msgid "" +"run profiler in non-interactive mode where upon testbed setup the profiler " +"does not wait for a keystroke but continues to run until a termination " +"signal is received" +msgstr "" + #: src/testbed/gnunet_testbed_mpi_spawn.c:118 #, fuzzy msgid "Waiting for child to exit.\n" @@ -6579,17 +6764,6 @@ msgstr "" msgid "Spawning process `%s'\n" msgstr "Ungültige Antwort auf `%s'.\n" -#: src/testbed/gnunet-testbed-profiler.c:290 -msgid "tolerate COUNT number of continious timeout failures" -msgstr "" - -#: src/testbed/gnunet-testbed-profiler.c:295 -msgid "" -"run profiler in non-interactive mode where upon testbed setup the profiler " -"does not wait for a keystroke but continues to run until a termination " -"signal is received" -msgstr "" - #: src/testbed/testbed_api.c:410 #, fuzzy, c-format msgid "Adding host %u failed with error: %s\n" @@ -6882,10 +7056,6 @@ msgstr "# HELLO-Meldungen empfangen" msgid "GNUnet topology control" msgstr "" -#: src/transport/gnunet-service-transport_ats.c:141 -msgid "# Addresses given to ATS" -msgstr "" - #: src/transport/gnunet-service-transport.c:448 msgid "# messages dropped due to slow client" msgstr "" @@ -6930,6 +7100,10 @@ msgstr "" msgid "Transport service is lacking key configuration settings. Exiting.\n" msgstr "" +#: src/transport/gnunet-service-transport_ats.c:141 +msgid "# Addresses given to ATS" +msgstr "" + #: src/transport/gnunet-service-transport_hello.c:195 msgid "# refreshed my HELLO" msgstr "" @@ -7251,6 +7425,43 @@ msgstr "" msgid "# validations succeeded" msgstr "" +#: src/transport/gnunet-transport-profiler.c:219 +#, c-format +msgid "%llu B in %llu ms == %.2f KB/s!\n" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:617 +msgid "send data to peer" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:621 +#, fuzzy +msgid "receive data from peer" +msgstr "# Bytes des Typs %d empfangen" + +#: src/transport/gnunet-transport-profiler.c:626 +msgid "iterations" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:631 +#, fuzzy +msgid "number of messages to send" +msgstr "Anzahl an Durchläufen" + +#: src/transport/gnunet-transport-profiler.c:636 +msgid "message size to use" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:641 +#: src/transport/gnunet-transport.c:1462 +msgid "peer identity" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:652 +#: src/transport/gnunet-transport.c:1482 +msgid "Direct access to transport service." +msgstr "Direkter Zugriff auf den Transportdienst" + #: src/transport/gnunet-transport.c:413 #, c-format msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n" @@ -7383,11 +7594,6 @@ msgstr "" msgid "do not resolve hostnames" msgstr "Keine Rechnernamen auflösen" -#: src/transport/gnunet-transport.c:1462 -#: src/transport/gnunet-transport-profiler.c:641 -msgid "peer identity" -msgstr "" - #: src/transport/gnunet-transport.c:1466 msgid "monitor plugin sessions" msgstr "" @@ -7396,41 +7602,9 @@ msgstr "" msgid "send data for benchmarking to the other peer (until CTRL-C)" msgstr "" -#: src/transport/gnunet-transport.c:1482 -#: src/transport/gnunet-transport-profiler.c:652 -msgid "Direct access to transport service." -msgstr "Direkter Zugriff auf den Transportdienst" - -#: src/transport/gnunet-transport-profiler.c:219 -#, c-format -msgid "%llu B in %llu ms == %.2f KB/s!\n" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:617 -msgid "send data to peer" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:621 -#, fuzzy -msgid "receive data from peer" -msgstr "# Bytes des Typs %d empfangen" - -#: src/transport/gnunet-transport-profiler.c:626 -msgid "iterations" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:631 -#, fuzzy -msgid "number of messages to send" -msgstr "Anzahl an Durchläufen" - -#: src/transport/gnunet-transport-profiler.c:636 -msgid "message size to use" -msgstr "" - #: src/transport/plugin_transport_http_client.c:1474 -#: src/transport/plugin_transport_http_server.c:2249 -#: src/transport/plugin_transport_http_server.c:3463 +#: src/transport/plugin_transport_http_server.c:2312 +#: src/transport/plugin_transport_http_server.c:3526 #: src/transport/plugin_transport_tcp.c:3890 #: src/transport/plugin_transport_tcp.c:3897 msgid "TCP_STEALTH not supported on this platform.\n" @@ -7442,13 +7616,13 @@ msgid "Could not initialize curl multi handle, failed to start %s plugin!\n" msgstr "" #: src/transport/plugin_transport_http_client.c:2164 -#: src/transport/plugin_transport_http_server.c:3178 +#: src/transport/plugin_transport_http_server.c:3241 #, fuzzy, c-format msgid "Shutting down plugin `%s'\n" msgstr "Collection `%s' begonnen.\n" #: src/transport/plugin_transport_http_client.c:2181 -#: src/transport/plugin_transport_http_server.c:3248 +#: src/transport/plugin_transport_http_server.c:3311 #, fuzzy, c-format msgid "Shutdown for plugin `%s' complete\n" msgstr "GNUnet wurde erfolgreich heruntergefahren.\n" @@ -7458,103 +7632,103 @@ msgstr "GNUnet wurde erfolgreich heruntergefahren.\n" msgid "Maximum number of requests is %u\n" msgstr "Maximale Anzahl der Verbindungen ist %u\n" -#: src/transport/plugin_transport_http_server.c:1727 +#: src/transport/plugin_transport_http_server.c:1756 #, c-format msgid "" "Access from connection %p (%u of %u) for `%s' `%s' url `%s' with upload data " "size %u\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1967 +#: src/transport/plugin_transport_http_server.c:2028 #, c-format msgid "Accepting connection (%u of %u) from `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1975 +#: src/transport/plugin_transport_http_server.c:2036 #, c-format msgid "" "Server reached maximum number connections (%u), rejecting new connection\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2125 +#: src/transport/plugin_transport_http_server.c:2186 msgid "" "Could not create a new TLS certificate, program `gnunet-transport-" "certificate-creation' could not be started!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2148 +#: src/transport/plugin_transport_http_server.c:2209 #, c-format msgid "No usable TLS certificate found and creating one at `%s/%s' failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2275 +#: src/transport/plugin_transport_http_server.c:2338 msgid "Could not load or create server certificate! Loading plugin failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2587 +#: src/transport/plugin_transport_http_server.c:2650 msgid "Require valid port number for service in configuration!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2752 +#: src/transport/plugin_transport_http_server.c:2815 #, c-format msgid "Found %u addresses to report to NAT service\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2838 +#: src/transport/plugin_transport_http_server.c:2901 #: src/transport/plugin_transport_udp.c:3622 msgid "Disabling IPv6 since it is not supported on this system!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2944 +#: src/transport/plugin_transport_http_server.c:3007 #, c-format msgid "IPv4 support is %s\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2959 +#: src/transport/plugin_transport_http_server.c:3022 #, c-format msgid "IPv6 support is %s\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2965 +#: src/transport/plugin_transport_http_server.c:3028 msgid "Neither IPv4 nor IPv6 are enabled! Fix in configuration\n" msgstr "" "Weder IPv4 noch IPv6 sind aktiviert! Bearbeiten Sie die Konfiguration\n" -#: src/transport/plugin_transport_http_server.c:2976 +#: src/transport/plugin_transport_http_server.c:3039 msgid "Port is required! Fix in configuration\n" msgstr "Port ist erforderlich! Bearbeiten Sie die Konfiguration\n" -#: src/transport/plugin_transport_http_server.c:2982 +#: src/transport/plugin_transport_http_server.c:3045 #, c-format msgid "Using port %u\n" msgstr "Port %u wird verwendet\n" -#: src/transport/plugin_transport_http_server.c:3001 +#: src/transport/plugin_transport_http_server.c:3064 #, c-format msgid "Specific IPv4 address `%s' in configuration file is invalid!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3036 +#: src/transport/plugin_transport_http_server.c:3099 #, c-format msgid "Specific IPv6 address `%s' in configuration file is invalid!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3111 +#: src/transport/plugin_transport_http_server.c:3174 #, c-format msgid "Using external hostname `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3132 +#: src/transport/plugin_transport_http_server.c:3195 #, fuzzy, c-format msgid "Notifying transport only about hostname `%s'\n" msgstr "Teste Transport(e) %s\n" -#: src/transport/plugin_transport_http_server.c:3149 +#: src/transport/plugin_transport_http_server.c:3212 #, c-format msgid "Maximum number of connections is %u\n" msgstr "Maximale Anzahl der Verbindungen ist %u\n" -#: src/transport/plugin_transport_http_server.c:3475 +#: src/transport/plugin_transport_http_server.c:3538 msgid "Unable to compile URL regex\n" msgstr "" @@ -7700,21 +7874,6 @@ msgstr "" msgid "TCP transport advertises itself as being on port %llu\n" msgstr "" -#: src/transport/plugin_transport_udp_broadcasting.c:168 -#, fuzzy -msgid "# Multicast HELLO beacons received via UDP" -msgstr "# Bytes empfangen über TCP" - -#: src/transport/plugin_transport_udp_broadcasting.c:548 -msgid "" -"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" -msgstr "" - -#: src/transport/plugin_transport_udp_broadcasting.c:565 -#, fuzzy, c-format -msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" -msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n" - #: src/transport/plugin_transport_udp.c:3366 #, c-format msgid "" @@ -7762,6 +7921,21 @@ msgstr "»%s« ist keine gültige IP-Adresse.\n" msgid "Failed to create UDP network sockets\n" msgstr "UDP-Sockets können nicht geöffnet werden\n" +#: src/transport/plugin_transport_udp_broadcasting.c:168 +#, fuzzy +msgid "# Multicast HELLO beacons received via UDP" +msgstr "# Bytes empfangen über TCP" + +#: src/transport/plugin_transport_udp_broadcasting.c:548 +msgid "" +"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" +msgstr "" + +#: src/transport/plugin_transport_udp_broadcasting.c:565 +#, fuzzy, c-format +msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" +msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n" + #: src/transport/plugin_transport_unix.c:1403 #, c-format msgid "Cannot create path to `%s'\n" @@ -7875,7 +8049,7 @@ msgid "" "`GNUNET_SERVER_receive_done' after %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2337 +#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2336 #, c-format msgid "Unknown address family %d\n" msgstr "" @@ -7920,51 +8094,51 @@ msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" msgid "Service `%s' runs at %s\n" msgstr "Dienst »%s« läuft auf %s\n" -#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1501 +#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1500 msgid "Service process failed to initialize\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1505 +#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1504 msgid "Service process could not initialize server function\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1509 +#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1508 msgid "Service process failed to report status\n" msgstr "" #: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1488 -#: src/util/service.c:1379 +#: src/util/service.c:1378 #, fuzzy, c-format msgid "Cannot obtain information about user `%s': %s\n" msgstr "Fehler beim Speichern der Konfigurationsdatei: `%s': %s.\n" -#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1381 +#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1380 msgid "No such user" msgstr "" -#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1400 +#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1399 #, c-format msgid "Cannot change user/group to `%s': %s\n" msgstr "Benutzer/Gruppe kann nicht zu »%s« geändert werden: %s\n" -#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1728 +#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1727 msgid "do daemonize (detach from terminal)" msgstr "" #: src/transport/tcp_service_legacy.c:1448 src/util/program.c:244 -#: src/util/service.c:1791 +#: src/util/service.c:1790 #, fuzzy, c-format msgid "Malformed configuration file `%s', exit ...\n" msgstr "Konfigurationsdatei `%s' wurde erzeugt.\n" #: src/transport/tcp_service_legacy.c:1458 src/util/program.c:261 -#: src/util/service.c:1802 +#: src/util/service.c:1801 #, fuzzy msgid "Malformed configuration, exit ...\n" msgstr "GNUnet Konfiguration" #: src/transport/tcp_service_legacy.c:1463 src/util/program.c:256 -#: src/util/service.c:1808 +#: src/util/service.c:1807 #, fuzzy, c-format msgid "Could not access configuration file `%s'\n" msgstr "Konfigurationsdatei `%s' konnte nicht geparst werden.\n" @@ -8008,55 +8182,55 @@ msgstr "" msgid "Need a non-empty hostname for service `%s'.\n" msgstr "" -#: src/util/common_logging.c:256 src/util/common_logging.c:1129 +#: src/util/common_logging.c:259 src/util/common_logging.c:1132 msgid "DEBUG" msgstr "DEBUG" -#: src/util/common_logging.c:258 src/util/common_logging.c:1127 +#: src/util/common_logging.c:261 src/util/common_logging.c:1130 msgid "INFO" msgstr "INFO" -#: src/util/common_logging.c:260 src/util/common_logging.c:1125 +#: src/util/common_logging.c:263 src/util/common_logging.c:1128 msgid "MESSAGE" msgstr "" -#: src/util/common_logging.c:262 src/util/common_logging.c:1123 +#: src/util/common_logging.c:265 src/util/common_logging.c:1126 msgid "WARNING" msgstr "WARNUNG" -#: src/util/common_logging.c:264 src/util/common_logging.c:1121 +#: src/util/common_logging.c:267 src/util/common_logging.c:1124 msgid "ERROR" msgstr "FEHLER" -#: src/util/common_logging.c:266 src/util/common_logging.c:1131 +#: src/util/common_logging.c:269 src/util/common_logging.c:1134 msgid "NONE" msgstr "" -#: src/util/common_logging.c:879 +#: src/util/common_logging.c:882 #, c-format msgid "Message `%.*s' repeated %u times in the last %s\n" msgstr "" -#: src/util/common_logging.c:1132 +#: src/util/common_logging.c:1135 msgid "INVALID" msgstr "" -#: src/util/common_logging.c:1302 +#: src/util/common_logging.c:1326 msgid "unknown address" msgstr "Unbekannte Adresse" -#: src/util/common_logging.c:1344 +#: src/util/common_logging.c:1368 msgid "invalid address" msgstr "Ungültige Adresse" -#: src/util/common_logging.c:1362 +#: src/util/common_logging.c:1386 #, fuzzy, c-format msgid "Configuration fails to specify option `%s' in section `%s'!\n" msgstr "" "Die Konfigurationsdatei muss in der Sektion `%s' unter `%s' ein Verzeichnis " "angeben, in dem FS Daten gespeichert werden.\n" -#: src/util/common_logging.c:1383 +#: src/util/common_logging.c:1407 #, fuzzy, c-format msgid "" "Configuration specifies invalid value for option `%s' in section `%s': %s\n" @@ -8064,34 +8238,34 @@ msgstr "" "Die Konfigurationsdatei muss in der Sektion `%s' unter `%s' ein Verzeichnis " "angeben, in dem FS Daten gespeichert werden.\n" -#: src/util/configuration.c:286 +#: src/util/configuration.c:296 #, fuzzy, c-format msgid "Syntax error while deserializing in line %u\n" msgstr "Syntaxfehler in Konfigurationsdatei `%s' in Zeile %d.\n" -#: src/util/configuration.c:344 +#: src/util/configuration.c:355 #, fuzzy, c-format msgid "Error while reading file `%s'\n" msgstr "Konfigurationsdatei `%s' konnte nicht geöffnet werden.\n" -#: src/util/configuration.c:1017 +#: src/util/configuration.c:1034 #, c-format msgid "" "Configuration value '%s' for '%s' in section '%s' is not in set of legal " "choices\n" msgstr "" -#: src/util/configuration.c:1136 +#: src/util/configuration.c:1153 #, c-format msgid "Recursive expansion suspected, aborting $-expansion for term `%s'\n" msgstr "" -#: src/util/configuration.c:1169 +#: src/util/configuration.c:1186 #, c-format msgid "Missing closing `%s' in option `%s'\n" msgstr "" -#: src/util/configuration.c:1237 +#: src/util/configuration.c:1254 #, c-format msgid "" "Failed to expand `%s' in `%s' as it is neither found in [PATHS] nor defined " @@ -8125,32 +8299,32 @@ msgstr "RSA Signaturüberprüfung fehlgeschlagen bei %s:%d: %s\n" msgid "EdDSA signature verification failed at %s:%d: %s\n" msgstr "RSA Signaturüberprüfung fehlgeschlagen bei %s:%d: %s\n" -#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:160 -#: src/util/crypto_ecc_setup.c:278 src/util/crypto_ecc_setup.c:316 +#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:161 +#: src/util/crypto_ecc_setup.c:279 src/util/crypto_ecc_setup.c:317 #, fuzzy, c-format msgid "Could not acquire lock on file `%s': %s...\n" msgstr "PID konnte nicht in Datei `%s' geschrieben werden: %s.\n" -#: src/util/crypto_ecc_setup.c:127 src/util/crypto_ecc_setup.c:283 +#: src/util/crypto_ecc_setup.c:128 src/util/crypto_ecc_setup.c:284 #, fuzzy msgid "Creating a new private key. This may take a while.\n" msgstr "Ein neuer Hostkey wird erzeugt (dies kann eine Weile dauern).\n" -#: src/util/crypto_ecc_setup.c:164 src/util/crypto_ecc_setup.c:320 +#: src/util/crypto_ecc_setup.c:165 src/util/crypto_ecc_setup.c:322 msgid "This may be ok if someone is currently generating a private key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:194 src/util/crypto_ecc_setup.c:350 +#: src/util/crypto_ecc_setup.c:195 src/util/crypto_ecc_setup.c:352 #, c-format msgid "" "When trying to read key file `%s' I found %u bytes but I need at least %u.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:198 src/util/crypto_ecc_setup.c:354 +#: src/util/crypto_ecc_setup.c:199 src/util/crypto_ecc_setup.c:356 msgid "This may be ok if someone is currently generating a key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:413 +#: src/util/crypto_ecc_setup.c:415 #, fuzzy msgid "Could not load peer's private key\n" msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n" @@ -8344,22 +8518,22 @@ msgstr "" msgid "Manipulate GNUnet configuration files" msgstr "GNUnet-Konfigurationsdateien bearbeiten" -#: src/util/gnunet-ecc.c:84 +#: src/util/gnunet-ecc.c:89 #, c-format msgid "Failed to open `%s': %s\n" msgstr "»%s« kann nicht geöffnet werden: %s\n" -#: src/util/gnunet-ecc.c:120 +#: src/util/gnunet-ecc.c:125 #, c-format msgid "Generating %u keys like %s, please wait" msgstr "" -#: src/util/gnunet-ecc.c:133 +#: src/util/gnunet-ecc.c:138 #, c-format msgid "Generating %u keys, please wait" msgstr "" -#: src/util/gnunet-ecc.c:174 +#: src/util/gnunet-ecc.c:179 #, c-format msgid "" "\n" @@ -8368,7 +8542,7 @@ msgstr "" "\n" "Schreiben in »%s« nicht möglich: %s\n" -#: src/util/gnunet-ecc.c:184 +#: src/util/gnunet-ecc.c:189 #, c-format msgid "" "\n" @@ -8377,53 +8551,57 @@ msgstr "" "\n" "Abgeschlossen!\n" -#: src/util/gnunet-ecc.c:187 +#: src/util/gnunet-ecc.c:192 #, c-format msgid "" "\n" "Error, %u keys not generated\n" msgstr "" -#: src/util/gnunet-ecc.c:280 +#: src/util/gnunet-ecc.c:283 #, fuzzy, c-format msgid "Hostkeys file `%s' not found\n" msgstr "Kommando `%s' wurde nicht gefunden!\n" -#: src/util/gnunet-ecc.c:291 +#: src/util/gnunet-ecc.c:294 #, c-format msgid "Hostkeys file `%s' is empty\n" msgstr "" -#: src/util/gnunet-ecc.c:313 +#: src/util/gnunet-ecc.c:316 #, fuzzy, c-format msgid "Could not read hostkey file: %s\n" msgstr "PID konnte nicht in Datei `%s' geschrieben werden: %s.\n" -#: src/util/gnunet-ecc.c:364 +#: src/util/gnunet-ecc.c:367 msgid "No hostkey file specified on command line\n" msgstr "" -#: src/util/gnunet-ecc.c:416 +#: src/util/gnunet-ecc.c:425 msgid "list keys included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:421 +#: src/util/gnunet-ecc.c:430 msgid "number of keys to list included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:426 +#: src/util/gnunet-ecc.c:435 msgid "create COUNT public-private key pairs (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:430 +#: src/util/gnunet-ecc.c:439 msgid "print the public key in ASCII format" msgstr "" -#: src/util/gnunet-ecc.c:434 +#: src/util/gnunet-ecc.c:443 +msgid "print the public key in HEX format" +msgstr "" + +#: src/util/gnunet-ecc.c:447 msgid "print examples of ECC operations (used for compatibility testing)" msgstr "" -#: src/util/gnunet-ecc.c:449 +#: src/util/gnunet-ecc.c:463 msgid "Manipulate GNUnet private ECC key files" msgstr "" @@ -8515,7 +8693,7 @@ msgstr "Verbindung zu %u.%u.%u.%u:%u fehlgeschlagen: %s\n" msgid "Unable to shorten unix path `%s' while keeping name unique\n" msgstr "" -#: src/util/network.c:1793 src/util/network.c:1969 +#: src/util/network.c:1793 src/util/network.c:1977 #, c-format msgid "" "Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n" @@ -8569,7 +8747,7 @@ msgstr "`%s' fehlgeschlagen für die Bibliothek `%s'. Ort: %s:%d. Fehler: %s\n" msgid "Could not determine plugin installation path.\n" msgstr "Öffentliche IP-Adresse konnte nicht ermittelt werden.\n" -#: src/util/resolver_api.c:204 +#: src/util/resolver_api.c:203 #, c-format msgid "" "Missing `%s' for `%s' in configuration, DNS resolution will be unavailable.\n" @@ -8584,33 +8762,33 @@ msgstr "" "Sie müssen für `%s' in der Sektion `%s' der Konfigurationsdatei eine " "positive Zahl angeben.\n" -#: src/util/resolver_api.c:815 +#: src/util/resolver_api.c:826 #, fuzzy, c-format msgid "Timeout trying to resolve hostname `%s'.\n" msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n" -#: src/util/resolver_api.c:827 +#: src/util/resolver_api.c:839 #, c-format msgid "Timeout trying to resolve IP address `%s'.\n" msgstr "" -#: src/util/resolver_api.c:1004 +#: src/util/resolver_api.c:1023 #, fuzzy msgid "Resolver not configured correctly.\n" msgstr "Standarddienst »%s« ist nicht korrekt eingerichtet!\n" -#: src/util/resolver_api.c:1086 src/util/resolver_api.c:1107 -#: src/util/resolver_api.c:1121 +#: src/util/resolver_api.c:1109 src/util/resolver_api.c:1132 +#: src/util/resolver_api.c:1146 #, fuzzy, c-format msgid "Could not resolve our FQDN: %s\n" msgstr "`%s' konnte nicht aufgelöst werden: %s\n" -#: src/util/service.c:1306 +#: src/util/service.c:1305 msgid "" "Could not bind to any of the ports I was supposed to, refusing to run!\n" msgstr "" -#: src/util/service.c:2082 +#: src/util/service.c:2081 #, c-format msgid "" "Processing code for message of type %u did not call " @@ -8685,63 +8863,63 @@ msgstr "Tage" msgid "end of time" msgstr "" -#: src/util/strings.c:1269 +#: src/util/strings.c:1270 msgid "IPv6 address did not start with `['\n" msgstr "IPv6-Adresse beginnt nicht mit »[«\n" -#: src/util/strings.c:1277 +#: src/util/strings.c:1278 msgid "IPv6 address did contain ':' to separate port number\n" msgstr "IPv6-Adresse enthält kein »:« zur Abtrennung der Portnummer\n" -#: src/util/strings.c:1283 +#: src/util/strings.c:1284 msgid "IPv6 address did contain ']' before ':' to separate port number\n" msgstr "IPv6-Adresse enthält kein »]« vor »:« zur Abtrennung der Portnummer\n" -#: src/util/strings.c:1290 +#: src/util/strings.c:1291 msgid "IPv6 address did contain a valid port number after the last ':'\n" msgstr "IPv6-Adresse enthält keine gültige Portnummer nach dem letzten »:«\n" -#: src/util/strings.c:1299 +#: src/util/strings.c:1300 #, fuzzy, c-format msgid "Invalid IPv6 address `%s': %s\n" msgstr "Ungültige Antwort auf `%s' von `%s'\n" -#: src/util/strings.c:1571 src/util/strings.c:1587 +#: src/util/strings.c:1572 src/util/strings.c:1588 msgid "Port not in range\n" msgstr "Port außerhalb des Bereichs\n" -#: src/util/strings.c:1596 +#: src/util/strings.c:1597 #, c-format msgid "Malformed port policy `%s'\n" msgstr "" -#: src/util/strings.c:1679 src/util/strings.c:1710 src/util/strings.c:1758 -#: src/util/strings.c:1779 +#: src/util/strings.c:1680 src/util/strings.c:1711 src/util/strings.c:1759 +#: src/util/strings.c:1780 #, c-format msgid "Invalid format for IP: `%s'\n" msgstr "Ungültiges Format für IP: »%s«\n" -#: src/util/strings.c:1736 +#: src/util/strings.c:1737 #, c-format msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)." msgstr "Ungültige Netzwerk-Notation ('/%d ist nicht gültig in IPv4 CIDR)." -#: src/util/strings.c:1788 +#: src/util/strings.c:1789 #, fuzzy, c-format msgid "Invalid format: `%s'\n" msgstr "Ungültiges Format für IP: `%s'\n" -#: src/util/strings.c:1840 +#: src/util/strings.c:1841 #, c-format msgid "Invalid network notation (does not end with ';': `%s')\n" msgstr "Ungültige Netzwerk-Notation (endet nicht mit »;«: »%s«)\n" -#: src/util/strings.c:1890 +#: src/util/strings.c:1891 #, fuzzy, c-format msgid "Wrong format `%s' for netmask\n" msgstr "Falsches Format `%s' für Netzmaske: %s\n" -#: src/util/strings.c:1921 +#: src/util/strings.c:1922 #, fuzzy, c-format msgid "Wrong format `%s' for network\n" msgstr "Falsches Format `%s' für Netzwerk: %s\n" @@ -8920,27 +9098,43 @@ msgstr "Dienst wird über UDP angeboten" msgid "Setup tunnels via VPN." msgstr "Tunnel über VPN einrichten." -#: src/zonemaster/gnunet-service-zonemaster.c:705 +#: src/zonemaster/gnunet-service-zonemaster.c:706 #, fuzzy msgid "Failed to connect to the namestore!\n" msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n" -#: src/include/gnunet_common.h:674 src/include/gnunet_common.h:681 -#: src/include/gnunet_common.h:691 src/include/gnunet_common.h:699 +#: src/include/gnunet_common.h:689 src/include/gnunet_common.h:696 +#: src/include/gnunet_common.h:706 src/include/gnunet_common.h:714 #, fuzzy, c-format msgid "Assertion failed at %s:%d.\n" msgstr "`%s' schlug fehl bei %s:%d mit dem Fehler: `%s'.\n" -#: src/include/gnunet_common.h:711 +#: src/include/gnunet_common.h:726 #, fuzzy, c-format msgid "External protocol violation detected at %s:%d.\n" msgstr "Protokollverletzung auf Socket. Kommando erwartet.\n" -#: src/include/gnunet_common.h:738 src/include/gnunet_common.h:747 +#: src/include/gnunet_common.h:753 src/include/gnunet_common.h:762 #, fuzzy, c-format msgid "`%s' failed on file `%s' at %s:%d with error: %s\n" msgstr "`%s' schlug bei Datei `%s' fehl. Ort: %s:%d. Fehler: %s\n" +#, fuzzy +#~ msgid "Token `%s' is malformed\n" +#~ msgstr "Schlüssel »%s« ist gültig\n" + +#, fuzzy +#~ msgid "Failed to create indices\n" +#~ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n" + +#, fuzzy +#~ msgid "`%s:%s' failed at %s:%d with error: %s\n" +#~ msgstr "`%s' schlug bei %s:%d mit dem Fehler %s fehl\n" + +#, fuzzy +#~ msgid "Unable to connect to Postgres database '%s': %s\n" +#~ msgstr "Fehler beim Anlegen des Benutzerkontos:" + #, fuzzy #~ msgid "Misconfiguration (can not connect to the ARM service)" #~ msgstr "" @@ -8968,10 +9162,6 @@ msgstr "`%s' schlug bei Datei `%s' fehl. Ort: %s:%d. Fehler: %s\n" #~ msgid "verbose output" #~ msgstr "Ausführliche Ausgabe" -#, fuzzy -#~ msgid "Specify the public key of the zone to reverse lookup a name for" -#~ msgstr "Die Priorität des Inhalts angeben" - #, fuzzy #~ msgid "# UPDATE requests executed" #~ msgstr "# dht Anfragen weitergeleitet" @@ -9053,10 +9243,6 @@ msgstr "`%s' schlug bei Datei `%s' fehl. Ort: %s:%d. Fehler: %s\n" #~ msgid "# transmission request failures" #~ msgstr "# Klartext PONG Nachrichten empfangen" -#, fuzzy -#~ msgid "# bytes sent to datastore" -#~ msgstr "# bytes in der Datenbank" - #, fuzzy #~ msgid "Failed to receive status response from database." #~ msgstr "" @@ -9281,10 +9467,6 @@ msgstr "`%s' schlug bei Datei `%s' fehl. Ort: %s:%d. Fehler: %s\n" #~ msgid "Timeout transmitting iteration request to `SENSOR' service." #~ msgstr "Fehler beim Senden einer `%s' Anfrage an den SMTP Server.\n" -#, fuzzy -#~ msgid "Error reading sensor version\n" -#~ msgstr "Fehler beim Anlegen des Benutzers" - #, fuzzy #~ msgid "Error reading sensor category\n" #~ msgstr "Fehler beim Anlegen des Benutzers" diff --git a/po/es.po b/po/es.po index 090f097d2..c4ede04a3 100644 --- a/po/es.po +++ b/po/es.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gnunet 0.9.5a\n" "Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n" -"POT-Creation-Date: 2017-03-31 19:22-0500\n" +"POT-Creation-Date: 2017-10-20 15:14+0000\n" "PO-Revision-Date: 2013-02-23 17:50+0100\n" "Last-Translator: Miguel Ángel Arruga Vivas \n" "Language-Team: Spanish \n" @@ -288,7 +288,7 @@ msgstr "" "uno es necesario\n" #: src/arm/gnunet-service-arm.c:513 -#: src/transport/plugin_transport_http_server.c:2621 +#: src/transport/plugin_transport_http_server.c:2684 #: src/transport/plugin_transport_tcp.c:1259 #: src/transport/tcp_service_legacy.c:696 src/util/service.c:782 #, c-format @@ -296,7 +296,7 @@ msgid "Failed to resolve `%s': %s\n" msgstr "Se produjo un fallo al resolver «%s»: %s\n" #: src/arm/gnunet-service-arm.c:532 -#: src/transport/plugin_transport_http_server.c:2639 +#: src/transport/plugin_transport_http_server.c:2702 #: src/transport/plugin_transport_tcp.c:1278 #: src/transport/tcp_service_legacy.c:715 src/util/service.c:802 #, c-format @@ -376,152 +376,14 @@ msgstr "El servicio «%s» finalizó con estado %s/%d, se reiniciará en %llu ms msgid "Initiating shutdown as requested by client.\n" msgstr "Iniciando apagado bajo petición del cliente.\n" -#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 -#, c-format -msgid "" -"Could not load quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" -"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho " -"de banda predeterminado %llu\n" - -#: src/ats/gnunet-ats-solver-eval.c:2799 -#, c-format -msgid "" -"No outbound quota configured for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" -"No hay configurada una cuota de salida para la red «%s», asignando el ancho " -"de banda predeterminado %llu\n" - -#: src/ats/gnunet-ats-solver-eval.c:2840 -#, c-format -msgid "" -"No outbound quota configure for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" -"No hay configurada una cuota de salida para la red «%s», asignando el ancho " -"de banda predeterminado %llu\n" - -#: src/ats/gnunet-ats-solver-eval.c:3294 -#: src/ats-tests/gnunet-solver-eval.c:939 -#, fuzzy -msgid "solver to use" -msgstr "valor a establecer" - -#: src/ats/gnunet-ats-solver-eval.c:3299 -#: src/ats-tests/gnunet-solver-eval.c:945 -#: src/ats-tests/gnunet-solver-eval.c:950 -msgid "experiment to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3306 -#, fuzzy -msgid "print logging" -msgstr "Iniciando descarga «%s».\n" - -#: src/ats/gnunet-ats-solver-eval.c:3311 -msgid "save logging to disk" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3316 -msgid "disable normalization" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:304 -#, fuzzy, c-format -msgid "" -"Could not load %s quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" -"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho " -"de banda predeterminado %llu\n" - -# Miguel: "Inbound" lo he traducido como entrada en todo el texto. -#: src/ats/gnunet-service-ats_plugins.c:314 -#, fuzzy, c-format -msgid "%s quota configured for network `%s' is %llu\n" -msgstr "La cuota de entrada configurada para la red «%s» es %llu\n" - -#: src/ats/gnunet-service-ats_plugins.c:359 -#, fuzzy, c-format -msgid "" -"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" -msgstr "" -"No hay configurada una cuota de salida para la red «%s», asignando el ancho " -"de banda predeterminado %llu\n" - -#: src/ats/gnunet-service-ats_plugins.c:451 -#, fuzzy, c-format -msgid "Failed to initialize solver `%s'!\n" -msgstr "¡No se puede inicializar el resolvedor!\n" - -#: src/ats/plugin_ats_mlp.c:1274 -msgid "Problem size too large, cannot allocate memory!\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1869 -#, fuzzy, c-format -msgid "Adding address for peer `%s' multiple times\n" -msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n" - -#: src/ats/plugin_ats_mlp.c:1913 -#, fuzzy, c-format -msgid "Updating address property for peer `%s' %p not added before\n" -msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n" - -#: src/ats/plugin_ats_mlp.c:2475 -msgid "" -"MLP solver is not optimizing for anything, changing to feasibility check\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 -#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 -#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 -#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 -#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 -#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 -#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 -#, fuzzy, c-format -msgid "Invalid %s configuration %f \n" -msgstr "Se produjo un fallo al cargar la configuración de %s\n" - -#: src/ats/plugin_ats_mlp.c:2670 -#, fuzzy, c-format -msgid "" -"Adjusting inconsistent outbound quota configuration for network `%s', is " -"%llu must be at least %llu\n" -msgstr "" -"No hay configurada una cuota de salida para la red «%s», asignando el ancho " -"de banda predeterminado %llu\n" - -#: src/ats/plugin_ats_mlp.c:2679 -#, fuzzy, c-format -msgid "" -"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " -"must be at least %llu\n" +#: src/ats-tests/ats-testing-log.c:837 +msgid "Stop logging\n" msgstr "" -"No hay configuración de cuota de entrada para la red '%s', asignando el " -"ancho de banda predeterminado (%llu)\n" -# Miguel: "Outbound" lo he traducido como salida en todo el texto. -#: src/ats/plugin_ats_mlp.c:2689 -#, fuzzy, c-format -msgid "" -"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" -msgstr "La cuota de salida configurada para la red «%s» es %llu\n" - -# Miguel: "Outbound" lo he traducido como salida en todo el texto. -#: src/ats/plugin_ats_mlp.c:2698 -#, fuzzy, c-format -msgid "" -"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" -msgstr "La cuota de salida configurada para la red «%s» es %llu\n" - -#: src/ats/plugin_ats_proportional.c:1164 +#: src/ats-tests/ats-testing-log.c:892 #, fuzzy, c-format -msgid "Invalid %s configuration %f\n" -msgstr "Se produjo un fallo al cargar la configuración de %s\n" +msgid "Start logging `%s'\n" +msgstr "Iniciando descarga «%s».\n" #: src/ats-tests/ats-testing.c:422 #, c-format @@ -533,15 +395,6 @@ msgstr "" msgid "Failed to connect master peer [%u] with slave [%u]\n" msgstr "Fallo al conectar a gnunetd.\n" -#: src/ats-tests/ats-testing-log.c:837 -msgid "Stop logging\n" -msgstr "" - -#: src/ats-tests/ats-testing-log.c:892 -#, fuzzy, c-format -msgid "Start logging `%s'\n" -msgstr "Iniciando descarga «%s».\n" - #: src/ats-tests/gnunet-ats-sim.c:90 #, c-format msgid "" @@ -549,6 +402,16 @@ msgid "" "= %u KiB/s\n" msgstr "" +#: src/ats-tests/gnunet-solver-eval.c:939 src/ats/gnunet-ats-solver-eval.c:3294 +#, fuzzy +msgid "solver to use" +msgstr "valor a establecer" + +#: src/ats-tests/gnunet-solver-eval.c:945 +#: src/ats-tests/gnunet-solver-eval.c:950 src/ats/gnunet-ats-solver-eval.c:3299 +msgid "experiment to use" +msgstr "" + # Miguel: ¿Como podría traducir "resolutions" y "resolve"? # Son difíciles de no calcar, puesto que no conozco como expresar # el concepto de obtener una dirección a partir de un nombre @@ -683,6 +546,141 @@ msgstr "salida prolija (incluye las propiedades de direcciones del ATS)" msgid "Print information about ATS state" msgstr "Imprime información acerca del estado del ATS" +#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 +#, c-format +msgid "" +"Could not load quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" +"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho " +"de banda predeterminado %llu\n" + +#: src/ats/gnunet-ats-solver-eval.c:2799 +#, c-format +msgid "" +"No outbound quota configured for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" +"No hay configurada una cuota de salida para la red «%s», asignando el ancho " +"de banda predeterminado %llu\n" + +#: src/ats/gnunet-ats-solver-eval.c:2840 +#, c-format +msgid "" +"No outbound quota configure for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" +"No hay configurada una cuota de salida para la red «%s», asignando el ancho " +"de banda predeterminado %llu\n" + +#: src/ats/gnunet-ats-solver-eval.c:3306 +#, fuzzy +msgid "print logging" +msgstr "Iniciando descarga «%s».\n" + +#: src/ats/gnunet-ats-solver-eval.c:3311 +msgid "save logging to disk" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3316 +msgid "disable normalization" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:304 +#, fuzzy, c-format +msgid "" +"Could not load %s quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" +"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho " +"de banda predeterminado %llu\n" + +# Miguel: "Inbound" lo he traducido como entrada en todo el texto. +#: src/ats/gnunet-service-ats_plugins.c:314 +#, fuzzy, c-format +msgid "%s quota configured for network `%s' is %llu\n" +msgstr "La cuota de entrada configurada para la red «%s» es %llu\n" + +#: src/ats/gnunet-service-ats_plugins.c:359 +#, fuzzy, c-format +msgid "" +"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" +msgstr "" +"No hay configurada una cuota de salida para la red «%s», asignando el ancho " +"de banda predeterminado %llu\n" + +#: src/ats/gnunet-service-ats_plugins.c:451 +#, fuzzy, c-format +msgid "Failed to initialize solver `%s'!\n" +msgstr "¡No se puede inicializar el resolvedor!\n" + +#: src/ats/plugin_ats_mlp.c:1274 +msgid "Problem size too large, cannot allocate memory!\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1869 +#, fuzzy, c-format +msgid "Adding address for peer `%s' multiple times\n" +msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n" + +#: src/ats/plugin_ats_mlp.c:1913 +#, fuzzy, c-format +msgid "Updating address property for peer `%s' %p not added before\n" +msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n" + +#: src/ats/plugin_ats_mlp.c:2475 +msgid "" +"MLP solver is not optimizing for anything, changing to feasibility check\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 +#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 +#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 +#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 +#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 +#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 +#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 +#, fuzzy, c-format +msgid "Invalid %s configuration %f \n" +msgstr "Se produjo un fallo al cargar la configuración de %s\n" + +#: src/ats/plugin_ats_mlp.c:2670 +#, fuzzy, c-format +msgid "" +"Adjusting inconsistent outbound quota configuration for network `%s', is " +"%llu must be at least %llu\n" +msgstr "" +"No hay configurada una cuota de salida para la red «%s», asignando el ancho " +"de banda predeterminado %llu\n" + +#: src/ats/plugin_ats_mlp.c:2679 +#, fuzzy, c-format +msgid "" +"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " +"must be at least %llu\n" +msgstr "" +"No hay configuración de cuota de entrada para la red '%s', asignando el " +"ancho de banda predeterminado (%llu)\n" + +# Miguel: "Outbound" lo he traducido como salida en todo el texto. +#: src/ats/plugin_ats_mlp.c:2689 +#, fuzzy, c-format +msgid "" +"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" +msgstr "La cuota de salida configurada para la red «%s» es %llu\n" + +# Miguel: "Outbound" lo he traducido como salida en todo el texto. +#: src/ats/plugin_ats_mlp.c:2698 +#, fuzzy, c-format +msgid "" +"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" +msgstr "La cuota de salida configurada para la red «%s» es %llu\n" + +#: src/ats/plugin_ats_proportional.c:1164 +#, fuzzy, c-format +msgid "Invalid %s configuration %f\n" +msgstr "Se produjo un fallo al cargar la configuración de %s\n" + #: src/auction/gnunet-auction-create.c:163 msgid "description of the item to be sold" msgstr "" @@ -834,6 +832,28 @@ msgid "Connection to conversation service lost, trying to reconnect\n" msgstr "" "El cliente se desconectó del servicio principal, tratando de reconectar.\n" +#: src/conversation/gnunet-conversation-test.c:119 +#, c-format +msgid "" +"\n" +"End of transmission. Have a GNU day.\n" +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:145 +#, c-format +msgid "" +"\n" +"We are now playing your recording back. If you can hear it, your audio " +"settings are working..." +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:210 +#, c-format +msgid "" +"We will now be recording you for %s. After that time, the recording will be " +"played back to you..." +msgstr "" + #: src/conversation/gnunet-conversation.c:269 #, c-format msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n" @@ -1092,30 +1112,8 @@ msgstr "" msgid "Enables having a conversation with other GNUnet users." msgstr "" -#: src/conversation/gnunet-conversation-test.c:119 -#, c-format -msgid "" -"\n" -"End of transmission. Have a GNU day.\n" -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:145 -#, c-format -msgid "" -"\n" -"We are now playing your recording back. If you can hear it, your audio " -"settings are working..." -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:210 -#, c-format -msgid "" -"We will now be recording you for %s. After that time, the recording will be " -"played back to you..." -msgstr "" - -#: src/conversation/gnunet_gst.c:622 #: src/conversation/gnunet-helper-audio-playback-gst.c:356 +#: src/conversation/gnunet_gst.c:622 #, c-format msgid "Read error from STDIN: %d %s\n" msgstr "" @@ -1247,6 +1245,11 @@ msgid "Failed to allocate %u bytes for second packet\n" msgstr "" "Se produjo un fallo al alojar las direcciones IP para el nuevo destino\n" +#: src/conversation/gnunet-service-conversation.c:1276 +#, fuzzy, c-format +msgid "Could not open line, port %s already in use!\n" +msgstr "¡No se pudo conectar al servicio %s!\n" + #: src/conversation/microphone.c:119 #, fuzzy msgid "Could not start record audio helper\n" @@ -1534,8 +1537,140 @@ msgstr "# mapas de tipos recibidos" msgid "# updates to my type map" msgstr "# actualizaciones de mi mapa de tipos" +#: src/credential/credential_misc.c:88 +#, fuzzy, c-format +msgid "Unable to parse CRED record string `%s'\n" +msgstr "No se pudo procesar la cadena de registro VPN «%s»\n" + +#: src/credential/gnunet-credential.c:278 src/namestore/gnunet-namestore.c:776 +#: src/namestore/plugin_rest_namestore.c:1009 +#, fuzzy, c-format +msgid "Ego `%s' not known to identity service\n" +msgstr "'%s': servicio desconocido: %s\n" + +#: src/credential/gnunet-credential.c:294 +#: src/credential/gnunet-credential.c:446 +#, fuzzy, c-format +msgid "Issuer public key `%s' is not well-formed\n" +msgstr "El bloque del tipo %u está mal formado\n" + +#: src/credential/gnunet-credential.c:375 +#: src/credential/gnunet-credential.c:435 +#, fuzzy, c-format +msgid "Issuer public key not well-formed\n" +msgstr "El bloque del tipo %u está mal formado\n" + +#: src/credential/gnunet-credential.c:386 +#: src/credential/gnunet-credential.c:455 +#, fuzzy, c-format +msgid "Failed to connect to CREDENTIAL\n" +msgstr "Se produjo un fallo al conectar con GNS\n" + +#: src/credential/gnunet-credential.c:392 +#, c-format +msgid "You must provide issuer the attribute\n" +msgstr "" + +#: src/credential/gnunet-credential.c:399 +#, fuzzy, c-format +msgid "ego required\n" +msgstr "Tipo requerido\n" + +#: src/credential/gnunet-credential.c:415 +#, c-format +msgid "Subject public key needed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:426 +#, fuzzy, c-format +msgid "Subject public key `%s' is not well-formed\n" +msgstr "El bloque del tipo %u está mal formado\n" + +#: src/credential/gnunet-credential.c:461 +#, c-format +msgid "You must provide issuer and subject attributes\n" +msgstr "" + +#: src/credential/gnunet-credential.c:511 +#, fuzzy, c-format +msgid "Issuer ego required\n" +msgstr "Tipo requerido\n" + +#: src/credential/gnunet-credential.c:523 +#, c-format +msgid "Please specify name to lookup, subject key and issuer key!\n" +msgstr "" + +#: src/credential/gnunet-credential.c:543 +msgid "create credential" +msgstr "" + +#: src/credential/gnunet-credential.c:547 +msgid "verify credential against attribute" +msgstr "" + +#: src/credential/gnunet-credential.c:552 +#, fuzzy +msgid "The public key of the subject to lookup the credential for" +msgstr "Especificar el tipo del registro a buscar" + +#: src/credential/gnunet-credential.c:557 +msgid "The name of the credential presented by the subject" +msgstr "" + +#: src/credential/gnunet-credential.c:562 +#, fuzzy +msgid "The public key of the authority to verify the credential against" +msgstr "Especificar el tipo del registro a buscar" + +#: src/credential/gnunet-credential.c:567 +#, fuzzy +msgid "The ego to use" +msgstr "tamaño del mensaje" + +#: src/credential/gnunet-credential.c:572 +msgid "The issuer attribute to verify against or to issue" +msgstr "" + +#: src/credential/gnunet-credential.c:577 +msgid "The time to live for the credential" +msgstr "" + +#: src/credential/gnunet-credential.c:581 +msgid "collect credentials" +msgstr "" + +#: src/credential/gnunet-credential.c:595 +#, fuzzy +msgid "GNUnet credential resolver tool" +msgstr "Herramienta de acceso GNUnet GNS" + +#: src/credential/gnunet-service-credential.c:1204 +#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:355 +#, c-format +msgid "Failed to connect to GNS\n" +msgstr "Se produjo un fallo al conectar con GNS\n" + +#: src/credential/gnunet-service-credential.c:1210 +#: src/namestore/gnunet-namestore-fcfsd.c:1034 +#: src/namestore/gnunet-namestore.c:802 +#: src/namestore/plugin_rest_namestore.c:1022 +#, c-format +msgid "Failed to connect to namestore\n" +msgstr "Se produjo un fallo al conectar con el almacén de nombres\n" + +#: src/credential/plugin_gnsrecord_credential.c:186 +#, fuzzy, c-format +msgid "Unable to parse ATTR record string `%s'\n" +msgstr "No se pudo procesar la cadena de registro TLSA «%s»\n" + +#: src/credential/plugin_rest_credential.c:1155 src/gns/plugin_rest_gns.c:668 +#, fuzzy +msgid "GNS REST API initialized\n" +msgstr "Conexión fallida\n" + #: src/datacache/datacache.c:119 src/datacache/datacache.c:294 -#: src/datastore/gnunet-service-datastore.c:775 +#: src/datastore/gnunet-service-datastore.c:757 msgid "# bytes stored" msgstr "# bytes almacenados" @@ -1578,13 +1713,12 @@ msgstr "Caché de datos de montículo (heap) ejecutándose\n" #: src/datacache/plugin_datacache_sqlite.c:113 #: src/datacache/plugin_datacache_sqlite.c:122 -#: src/datastore/plugin_datastore_mysql.c:980 +#: src/datastore/plugin_datastore_mysql.c:892 #: src/datastore/plugin_datastore_sqlite.c:58 -#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:80 src/my/my.c:92 -#: src/mysql/mysql.c:42 src/mysql/mysql.c:49 -#: src/namecache/plugin_namecache_postgres.c:53 +#: src/datastore/plugin_datastore_sqlite.c:66 +#: src/identity-provider/plugin_identity_provider_sqlite.c:52 src/my/my.c:80 +#: src/my/my.c:92 src/mysql/mysql.c:42 src/mysql/mysql.c:49 #: src/namecache/plugin_namecache_sqlite.c:53 -#: src/namestore/plugin_namestore_postgres.c:53 #: src/namestore/plugin_namestore_sqlite.c:53 #: src/peerstore/plugin_peerstore_sqlite.c:52 #: src/psycstore/plugin_psycstore_mysql.c:62 @@ -1593,14 +1727,15 @@ msgstr "Caché de datos de montículo (heap) ejecutándose\n" #: src/testbed/gnunet-daemon-testbed-underlay.c:56 #: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:52 #: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39 -#: src/include/gnunet_common.h:720 src/include/gnunet_common.h:729 +#: src/include/gnunet_common.h:735 src/include/gnunet_common.h:744 #: src/scalarproduct/scalarproduct.h:35 #, c-format msgid "`%s' failed at %s:%d with error: %s\n" msgstr "«%s» falló en %s: %d con el error: %s\n" #: src/datacache/plugin_datacache_sqlite.c:817 -#: src/datastore/plugin_datastore_sqlite.c:475 +#: src/datastore/plugin_datastore_sqlite.c:456 +#: src/identity-provider/plugin_identity_provider_sqlite.c:336 #: src/namecache/plugin_namecache_sqlite.c:296 #: src/namestore/plugin_namestore_sqlite.c:355 msgid "Tried to close sqlite without finalizing all prepared statements.\n" @@ -1665,23 +1800,75 @@ msgstr "# peticiones «GET ZERO ANONYMITY» ejecutadas" msgid "# GET requests executed" msgstr "# peticiones «GET» ejecutadas" -#: src/datastore/gnunet-datastore.c:113 +#: src/datastore/gnunet-datastore.c:189 +#, c-format +msgid "Dumped % records\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:217 src/datastore/gnunet-datastore.c:229 +#, c-format +msgid "Short write to file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:261 +#, fuzzy +msgid "Error queueing datastore GET operation\n" +msgstr "Error leyendo «%s»: %s" + +#: src/datastore/gnunet-datastore.c:287 src/datastore/gnunet-datastore.c:412 +#, fuzzy, c-format +msgid "Unable to open dump file: %s\n" +msgstr "Se produjo un fallo al crear los índices\n" + +#: src/datastore/gnunet-datastore.c:326 #, fuzzy, c-format msgid "Failed to store item: %s, aborting\n" msgstr "Se produjo un fallo al abrir «%s» para escritura" -#: src/datastore/gnunet-datastore.c:209 +#: src/datastore/gnunet-datastore.c:340 +#, fuzzy, c-format +msgid "Inserted % records\n" +msgstr "establece registros de clase A" + +#: src/datastore/gnunet-datastore.c:349 src/datastore/gnunet-datastore.c:363 #, c-format -msgid "Cannot use the same configuration for source and destination\n" +msgid "Short read from file: %zd bytes expecting %zd\n" msgstr "" -#: src/datastore/gnunet-datastore.c:256 -msgid "" -"specifies the configuration to use to access an alternative datastore; will " -"merge that datastore into our current datastore" +#: src/datastore/gnunet-datastore.c:389 +#, fuzzy +msgid "Error queueing datastore PUT operation\n" +msgstr "Error leyendo «%s»: %s" + +#: src/datastore/gnunet-datastore.c:432 +msgid "Input file is not of a supported format\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:458 +#, fuzzy +msgid "Failed connecting to the datastore.\n" +msgstr "Se produjo un fallo al conectar con el almacén de datos." + +#: src/datastore/gnunet-datastore.c:470 +#, fuzzy, c-format +msgid "Please choose at least one operation: %s, %s\n" +msgstr "Por favor, seleccione una operación: %s o %s o %s o %s o %s\n" + +#: src/datastore/gnunet-datastore.c:493 +#, fuzzy +msgid "Dump all records from the datastore" +msgstr "Buscar el registro para el nombre dado" + +#: src/datastore/gnunet-datastore.c:497 +#, fuzzy +msgid "Insert records into the datastore" +msgstr "# bytes mandados al almacén de datos" + +#: src/datastore/gnunet-datastore.c:502 +msgid "File to dump or insert" msgstr "" -#: src/datastore/gnunet-datastore.c:265 +#: src/datastore/gnunet-datastore.c:511 #, fuzzy msgid "Manipulate GNUnet datastore" msgstr "Manipular ficheros de configuración de GNUnet" @@ -1730,8 +1917,8 @@ msgstr "Espacio insuficiente para satisfacer la petición" #: src/datastore/gnunet-service-datastore.c:634 #: src/datastore/gnunet-service-datastore.c:689 -#: src/datastore/gnunet-service-datastore.c:977 -#: src/datastore/gnunet-service-datastore.c:1633 +#: src/datastore/gnunet-service-datastore.c:837 +#: src/datastore/gnunet-service-datastore.c:1469 msgid "# reserved" msgstr "# reservado" @@ -1739,47 +1926,47 @@ msgstr "# reservado" msgid "Could not find matching reservation" msgstr "No se pudo encontrar una reserva coincidente" -#: src/datastore/gnunet-service-datastore.c:792 +#: src/datastore/gnunet-service-datastore.c:773 #, c-format msgid "Need %llu bytes more space (%llu allowed, using %llu)\n" msgstr "" "Se necesitan %llu bytes más de espacio (%llu permitidos, usando %llu)\n" -#: src/datastore/gnunet-service-datastore.c:1026 +#: src/datastore/gnunet-service-datastore.c:876 msgid "# GET requests received" msgstr "# peticiones «GET» recibidas" -#: src/datastore/gnunet-service-datastore.c:1058 +#: src/datastore/gnunet-service-datastore.c:907 #, fuzzy msgid "# GET KEY requests received" msgstr "# peticiones «GET» recibidas" -#: src/datastore/gnunet-service-datastore.c:1071 +#: src/datastore/gnunet-service-datastore.c:920 msgid "# requests filtered by bloomfilter" msgstr "# peticiones filtradas por el «bloomfilter»" -#: src/datastore/gnunet-service-datastore.c:1108 +#: src/datastore/gnunet-service-datastore.c:956 msgid "# GET REPLICATION requests received" msgstr "# peticiones «GET REPLICATION» recibidas" -#: src/datastore/gnunet-service-datastore.c:1141 +#: src/datastore/gnunet-service-datastore.c:989 msgid "# GET ZERO ANONYMITY requests received" msgstr "# peticiones «GET ZERO ANONYMITY» recibidas" -#: src/datastore/gnunet-service-datastore.c:1190 +#: src/datastore/gnunet-service-datastore.c:1036 msgid "Content not found" msgstr "Contenido no encontrado" -#: src/datastore/gnunet-service-datastore.c:1199 +#: src/datastore/gnunet-service-datastore.c:1043 msgid "# bytes removed (explicit request)" msgstr "# bytes eliminados (petición explícita)" -#: src/datastore/gnunet-service-datastore.c:1246 +#: src/datastore/gnunet-service-datastore.c:1088 msgid "# REMOVE requests received" msgstr "# peticiones «REMOVE» recibidas" # Miguel: ¿Cómo traducir «payload»? ¿Código cargado? -#: src/datastore/gnunet-service-datastore.c:1301 +#: src/datastore/gnunet-service-datastore.c:1137 #, fuzzy, c-format msgid "" "Datastore payload must have been inaccurate (%lld < %lld). Recomputing it.\n" @@ -1787,102 +1974,103 @@ msgstr "" "El «payload» del almacén de datos es impreciso (%lld < %lld). Intentando " "repararlo.\n" -#: src/datastore/gnunet-service-datastore.c:1307 -#: src/datastore/gnunet-service-datastore.c:1482 +#: src/datastore/gnunet-service-datastore.c:1143 +#: src/datastore/gnunet-service-datastore.c:1318 #, c-format msgid "New payload: %lld\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1361 +#: src/datastore/gnunet-service-datastore.c:1197 #, c-format msgid "Loading `%s' datastore plugin\n" msgstr "Cargando el módulo del almacén de datos «%s»\n" -#: src/datastore/gnunet-service-datastore.c:1373 +#: src/datastore/gnunet-service-datastore.c:1209 #, c-format msgid "Failed to load datastore plugin for `%s'\n" msgstr "" "Se produjo un fallo al inicializar el módulo del almacén de datos para «%s»\n" -#: src/datastore/gnunet-service-datastore.c:1433 +#: src/datastore/gnunet-service-datastore.c:1269 msgid "Bloomfilter construction complete.\n" msgstr "Construcción de «bloomfilter» completa.\n" -#: src/datastore/gnunet-service-datastore.c:1489 +#: src/datastore/gnunet-service-datastore.c:1325 msgid "Rebuilding bloomfilter. Please be patient.\n" msgstr "Reconstruyendo «bloomfilter». Por favor, tenga paciencia.\n" -#: src/datastore/gnunet-service-datastore.c:1500 +#: src/datastore/gnunet-service-datastore.c:1336 msgid "Plugin does not support get_keys function. Please fix!\n" msgstr "El módulo no soporta la función «get_keys». Por favor, corríjalo.\n" -#: src/datastore/gnunet-service-datastore.c:1670 +#: src/datastore/gnunet-service-datastore.c:1506 #, c-format msgid "# bytes used in file-sharing datastore `%s'" msgstr "# bytes usados en el almacén de ficheros compartidos «%s»" -#: src/datastore/gnunet-service-datastore.c:1686 +#: src/datastore/gnunet-service-datastore.c:1522 msgid "# quota" msgstr "# cuota" -#: src/datastore/gnunet-service-datastore.c:1691 +#: src/datastore/gnunet-service-datastore.c:1527 msgid "# cache size" msgstr "# tamaño de la caché" -#: src/datastore/gnunet-service-datastore.c:1707 +#: src/datastore/gnunet-service-datastore.c:1543 #, c-format msgid "Could not use specified filename `%s' for bloomfilter.\n" msgstr "" "No se pudo usar el nombre de fichero especificado «%s» para «bloomfilter».\n" -#: src/datastore/gnunet-service-datastore.c:1725 -#: src/datastore/gnunet-service-datastore.c:1741 +#: src/datastore/gnunet-service-datastore.c:1561 +#: src/datastore/gnunet-service-datastore.c:1577 #, c-format msgid "Failed to remove bogus bloomfilter file `%s'\n" msgstr "" "Se produjo un fallo al borrar el fichero de configuración defectuoso de " "«bloomfilter» «%s»:\n" -#: src/datastore/gnunet-service-datastore.c:1773 +#: src/datastore/gnunet-service-datastore.c:1609 msgid "Failed to initialize bloomfilter.\n" msgstr "Se produjo un fallo al inicializar «bloomfilter».\n" -#: src/datastore/plugin_datastore_heap.c:769 +#: src/datastore/plugin_datastore_heap.c:893 msgid "Heap database running\n" msgstr "Base de datos de montículo ejecutándose\n" -#: src/datastore/plugin_datastore_mysql.c:377 -#: src/datastore/plugin_datastore_sqlite.c:590 +#: src/datastore/plugin_datastore_mysql.c:371 +#: src/datastore/plugin_datastore_mysql.c:423 +#: src/datastore/plugin_datastore_mysql.c:1075 +msgid "MySQL statement run failure" +msgstr "" + +#: src/datastore/plugin_datastore_mysql.c:410 +#: src/datastore/plugin_datastore_sqlite.c:626 #, fuzzy msgid "Data too large" msgstr "número de valores" -#: src/datastore/plugin_datastore_mysql.c:393 -msgid "MySQL statement run failure" -msgstr "" - -#: src/datastore/plugin_datastore_mysql.c:936 +#: src/datastore/plugin_datastore_mysql.c:848 #, c-format msgid "`%s' for `%s' failed at %s:%d with error: %s\n" msgstr "«%s» para «%s» falló en %s: %d con error: %s\n" -#: src/datastore/plugin_datastore_mysql.c:1208 +#: src/datastore/plugin_datastore_mysql.c:1180 #: src/psycstore/plugin_psycstore_mysql.c:1936 msgid "Mysql database running\n" msgstr "Base de datos Mysql ejecutándose\n" -#: src/datastore/plugin_datastore_postgres.c:345 +#: src/datastore/plugin_datastore_postgres.c:274 +#: src/datastore/plugin_datastore_postgres.c:891 msgid "Postgress exec failure" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:866 +#: src/datastore/plugin_datastore_postgres.c:852 msgid "Failed to drop table from database.\n" msgstr "Se produjo un fallo al borrar una tabla de la base de datos.\n" -#: src/datastore/plugin_datastore_postgres.c:903 -#: src/namecache/plugin_namecache_postgres.c:398 -#: src/namestore/plugin_namestore_postgres.c:571 -#: src/psycstore/plugin_psycstore_postgres.c:1721 +#: src/datastore/plugin_datastore_postgres.c:950 +#: src/psycstore/plugin_psycstore_postgres.c:1506 msgid "Postgres database running\n" msgstr "Base de datos Postgres ejecutándose\n" @@ -1894,7 +2082,8 @@ msgstr "Base de datos Postgres ejecutándose\n" msgid "`%s' failed at %s:%u with error: %s" msgstr "«%s» falló en %s:%u con el error: %s" -#: src/datastore/plugin_datastore_sqlite.c:281 +#: src/datastore/plugin_datastore_sqlite.c:271 +#: src/identity-provider/plugin_identity_provider_sqlite.c:212 #: src/namecache/plugin_namecache_sqlite.c:194 #: src/namestore/plugin_namestore_sqlite.c:222 #: src/peerstore/plugin_peerstore_sqlite.c:535 @@ -1903,14 +2092,18 @@ msgstr "«%s» falló en %s:%u con el error: %s" msgid "Unable to initialize SQLite: %s.\n" msgstr "Imposible inicializar SQLite: %s.\n" +#: src/datastore/plugin_datastore_sqlite.c:577 +msgid "sqlite bind failure" +msgstr "" + # to should be too, i think -#: src/datastore/plugin_datastore_sqlite.c:1234 +#: src/datastore/plugin_datastore_sqlite.c:1259 msgid "sqlite version to old to determine size, assuming zero\n" msgstr "" "la versión de sqlite es muy antigua para determinar el tamaño, se asume " "cero\n" -#: src/datastore/plugin_datastore_sqlite.c:1268 +#: src/datastore/plugin_datastore_sqlite.c:1293 #, c-format msgid "" "Using sqlite page utilization to estimate payload (%llu pages of size %llu " @@ -1919,13 +2112,14 @@ msgstr "" "Usando la utilización de páginas de sqlite para estimar el «payload» (%llu " "páginas de %llu bytes de tamaño)\n" -#: src/datastore/plugin_datastore_sqlite.c:1312 +#: src/datastore/plugin_datastore_sqlite.c:1337 +#: src/identity-provider/plugin_identity_provider_sqlite.c:711 #: src/namecache/plugin_namecache_sqlite.c:603 #: src/namestore/plugin_namestore_sqlite.c:802 msgid "Sqlite database running\n" msgstr "Base de datos sqlite ejecutándose\n" -#: src/datastore/plugin_datastore_template.c:259 +#: src/datastore/plugin_datastore_template.c:253 msgid "Template database running\n" msgstr "Base de datos de plantilla ejecutándose\n" @@ -1989,54 +2183,6 @@ msgstr "ser prolijo (imprime información de progreso)" msgid "Prints all packets that go through the DHT." msgstr "Imprime todos los paquetes que pasan por la DHT." -#: src/dht/gnunet_dht_profiler.c:1161 -#: src/testbed/gnunet-testbed-profiler.c:255 -#, fuzzy, c-format -msgid "Exiting as the number of peers is %u\n" -msgstr "El número máximo de conexiones es %u\n" - -#: src/dht/gnunet_dht_profiler.c:1188 -msgid "number of peers to start" -msgstr "número de pares para empezar" - -#: src/dht/gnunet_dht_profiler.c:1194 -msgid "" -"maximum number of times we try to search for successor circle formation (0 " -"for R5N)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 -#: src/testbed/gnunet-testbed-profiler.c:305 -msgid "name of the file with the login information for the testbed" -msgstr "" -"nombre del fichero con la información de acceso usada para la batería de " -"pruebas" - -#: src/dht/gnunet_dht_profiler.c:1206 -msgid "delay between rounds for collecting statistics (default: 30 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1212 -msgid "delay to start doing PUTs (default: 1 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1218 -msgid "delay to start doing GETs (default: 5 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1223 -msgid "replication degree for DHT PUTs" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1230 -msgid "timeout for DHT PUT and GET requests (default: 1 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1248 -#, fuzzy -msgid "Measure quality and performance of the DHT service." -msgstr "Medir la calidad y rendimiento del servicio NSE." - #: src/dht/gnunet-dht-put.c:120 msgid "PUT request sent with key" msgstr "Petición «PUT» enviada con clave" @@ -2303,6 +2449,53 @@ msgstr "# Entradas añadidas a la tabla de encaminamiento" msgid "# DHT requests combined" msgstr "# Peticiones a la DHT combinadas" +#: src/dht/gnunet_dht_profiler.c:1161 src/testbed/gnunet-testbed-profiler.c:255 +#, fuzzy, c-format +msgid "Exiting as the number of peers is %u\n" +msgstr "El número máximo de conexiones es %u\n" + +#: src/dht/gnunet_dht_profiler.c:1188 +msgid "number of peers to start" +msgstr "número de pares para empezar" + +#: src/dht/gnunet_dht_profiler.c:1194 +msgid "" +"maximum number of times we try to search for successor circle formation (0 " +"for R5N)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 +#: src/testbed/gnunet-testbed-profiler.c:305 +msgid "name of the file with the login information for the testbed" +msgstr "" +"nombre del fichero con la información de acceso usada para la batería de " +"pruebas" + +#: src/dht/gnunet_dht_profiler.c:1206 +msgid "delay between rounds for collecting statistics (default: 30 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1212 +msgid "delay to start doing PUTs (default: 1 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1218 +msgid "delay to start doing GETs (default: 5 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1223 +msgid "replication degree for DHT PUTs" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1230 +msgid "timeout for DHT PUT and GET requests (default: 1 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1248 +#, fuzzy +msgid "Measure quality and performance of the DHT service." +msgstr "Medir la calidad y rendimiento del servicio NSE." + #: src/dht/plugin_block_dht.c:187 #, c-format msgid "Block not of type %u\n" @@ -2646,7 +2839,7 @@ msgstr "«%s» debe ser instalado con SUID, se niega a arrancar\n" msgid "No useful service enabled. Exiting.\n" msgstr "Ningún servicio útil habilitado. Saliendo.\n" -#: src/exit/gnunet-daemon-exit.c:3969 +#: src/exit/gnunet-daemon-exit.c:3970 msgid "Daemon to run to provide an IP exit node for the VPN" msgstr "Demonio a ejecutar para obtener un nodo de salida IP para la VPN" @@ -3325,14 +3518,6 @@ msgstr "" "Descargar ficheros de GNUnet usando una URI GNUnet CHK o LOC (gnunet://fs/" "chk/...)" -#: src/fs/gnunet-fs.c:119 -msgid "print a list of all indexed files" -msgstr "imprimir una lista de todos los ficheros indexados" - -#: src/fs/gnunet-fs.c:130 -msgid "Special file-sharing operations" -msgstr "Operaciones especiales de compartición de ficheros" - #: src/fs/gnunet-fs-profiler.c:211 msgid "run the experiment with COUNT peers" msgstr "ejecuta el experimento con «COUNT» pares" @@ -3353,6 +3538,14 @@ msgstr "" "ejecuta una batería de pruebas para medir el rendimiento de la compartición " "de ficheros" +#: src/fs/gnunet-fs.c:119 +msgid "print a list of all indexed files" +msgstr "imprimir una lista de todos los ficheros indexados" + +#: src/fs/gnunet-fs.c:130 +msgid "Special file-sharing operations" +msgstr "Operaciones especiales de compartición de ficheros" + #: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231 #, c-format msgid "Publishing `%s' at %llu/%llu (%s remaining)\n" @@ -4049,22 +4242,11 @@ msgstr "" msgid "GNUnet DNS-to-GNS proxy (a DNS server)" msgstr "Pasarela GNUnet DNS-a-GNS (un servidor DNS)" -#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 -#, c-format -msgid "Invalid typename specified, assuming `ANY'\n" -msgstr "" - -#: src/gns/gnunet-gns.c:252 -#, c-format -msgid "Please specify name to lookup!\n" -msgstr "" - -#: src/gns/gnunet-gns.c:276 -#, c-format -msgid "Ego for `%s' not found, cannot perform lookup.\n" +#: src/gns/gnunet-gns-helper-service-w32.c:602 +msgid "Not ready to process requests, lacking ego data\n" msgstr "" -#: src/gns/gnunet-gns.c:315 src/gns/gnunet-gns-helper-service-w32.c:701 +#: src/gns/gnunet-gns-helper-service-w32.c:701 src/gns/gnunet-gns.c:315 #: src/gns/plugin_rest_gns.c:422 #, c-format msgid "" @@ -4072,58 +4254,12 @@ msgid "" "gns-import.sh?\n" msgstr "" -#: src/gns/gnunet-gns.c:355 src/gns/gnunet-gns-helper-service-w32.c:727 -#, c-format -msgid "Failed to connect to GNS\n" -msgstr "Se produjo un fallo al conectar con GNS\n" - -#: src/gns/gnunet-gns.c:374 -#, c-format -msgid "Public key `%s' is not well-formed\n" -msgstr "" - -#: src/gns/gnunet-gns.c:428 -msgid "Lookup a record for the given name" -msgstr "Buscar el registro para el nombre dado" - -#: src/gns/gnunet-gns.c:434 -msgid "Specify the type of the record to lookup" -msgstr "Especificar el tipo del registro a buscar" - -#: src/gns/gnunet-gns.c:440 -#, fuzzy -msgid "Specify timeout for the lookup" -msgstr "Especificar el tipo del registro a buscar" - -#: src/gns/gnunet-gns.c:445 -msgid "No unneeded output" -msgstr "Sin salida innecesaria" - -#: src/gns/gnunet-gns.c:451 -#, fuzzy -msgid "Specify the public key of the zone to lookup the record in" -msgstr "Especificar el tipo del registro a buscar" - -#: src/gns/gnunet-gns.c:457 -#, fuzzy -msgid "Specify the name of the ego of the zone to lookup the record in" -msgstr "Especificar el tipo del registro a buscar" - -#: src/gns/gnunet-gns.c:476 -#, fuzzy -msgid "GNUnet GNS resolver tool" -msgstr "Herramienta de acceso GNUnet GNS" - -#: src/gns/gnunet-gns-helper-service-w32.c:602 -msgid "Not ready to process requests, lacking ego data\n" -msgstr "" - #: src/gns/gnunet-gns-helper-service-w32.c:739 #, fuzzy, c-format msgid "Failed to connect to identity service\n" msgstr "Fallo al conectar a gnunetd.\n" -#: src/gns/gnunet-gns-import.c:489 +#: src/gns/gnunet-gns-import.c:452 msgid "This program will import some GNS authorities into your GNS namestore." msgstr "" @@ -4241,13 +4377,65 @@ msgstr "Se produjo un fallo al leer la lista de amigos de «%s»\n" msgid "listen on specified port (default: 7777)" msgstr "escuchar en el puerto especificado (predeterminado: 7777)" -#: src/gns/gnunet-gns-proxy.c:3275 -msgid "pem file to use as CA" -msgstr "fichero pem para usar como autoridad de certificación (CA)" +#: src/gns/gnunet-gns-proxy.c:3275 +msgid "pem file to use as CA" +msgstr "fichero pem para usar como autoridad de certificación (CA)" + +#: src/gns/gnunet-gns-proxy.c:3300 +msgid "GNUnet GNS proxy" +msgstr "Proxy GNUnet GNS" + +#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 +#, c-format +msgid "Invalid typename specified, assuming `ANY'\n" +msgstr "" + +#: src/gns/gnunet-gns.c:252 +#, c-format +msgid "Please specify name to lookup!\n" +msgstr "" + +#: src/gns/gnunet-gns.c:276 +#, c-format +msgid "Ego for `%s' not found, cannot perform lookup.\n" +msgstr "" + +#: src/gns/gnunet-gns.c:374 +#, c-format +msgid "Public key `%s' is not well-formed\n" +msgstr "" + +#: src/gns/gnunet-gns.c:428 +msgid "Lookup a record for the given name" +msgstr "Buscar el registro para el nombre dado" + +#: src/gns/gnunet-gns.c:434 +msgid "Specify the type of the record to lookup" +msgstr "Especificar el tipo del registro a buscar" + +#: src/gns/gnunet-gns.c:440 +#, fuzzy +msgid "Specify timeout for the lookup" +msgstr "Especificar el tipo del registro a buscar" + +#: src/gns/gnunet-gns.c:445 +msgid "No unneeded output" +msgstr "Sin salida innecesaria" + +#: src/gns/gnunet-gns.c:451 +#, fuzzy +msgid "Specify the public key of the zone to lookup the record in" +msgstr "Especificar el tipo del registro a buscar" + +#: src/gns/gnunet-gns.c:457 +#, fuzzy +msgid "Specify the name of the ego of the zone to lookup the record in" +msgstr "Especificar el tipo del registro a buscar" -#: src/gns/gnunet-gns-proxy.c:3300 -msgid "GNUnet GNS proxy" -msgstr "Proxy GNUnet GNS" +#: src/gns/gnunet-gns.c:476 +#, fuzzy +msgid "GNUnet GNS resolver tool" +msgstr "Herramienta de acceso GNUnet GNS" #: src/gns/gnunet-service-gns.c:442 #, fuzzy @@ -4255,7 +4443,7 @@ msgid "Failed to connect to the namecache!\n" msgstr "¡Se produjo un fallo al conectar con el almacén de nombres!\n" #: src/gns/gnunet-service-gns.c:461 -#: src/zonemaster/gnunet-service-zonemaster.c:741 +#: src/zonemaster/gnunet-service-zonemaster.c:742 msgid "Could not connect to DHT!\n" msgstr "¡No se pudo conectar a la DHT!\n" @@ -4313,47 +4501,37 @@ msgstr "" msgid "Hostname `%s' is not well-formed, resolution fails\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:203 +#: src/gns/plugin_gnsrecord_gns.c:179 #, c-format msgid "Unable to parse PKEY record `%s'\n" msgstr "No se pudo procesar el registro PKEY «%s»\n" -#: src/gns/plugin_gnsrecord_gns.c:232 +#: src/gns/plugin_gnsrecord_gns.c:208 #, fuzzy, c-format msgid "Unable to parse GNS2DNS record `%s'\n" msgstr "No se pudo procesar el registro SOA «%s»\n" -#: src/gns/plugin_gnsrecord_gns.c:253 +#: src/gns/plugin_gnsrecord_gns.c:229 #, fuzzy, c-format msgid "Failed to serialize GNS2DNS record with value `%s'\n" msgstr "" "Se produjo un fallo al escribir el directorio con los resultados de búsqueda " "de «%s»\n" -#: src/gns/plugin_gnsrecord_gns.c:276 +#: src/gns/plugin_gnsrecord_gns.c:252 #, c-format msgid "Unable to parse VPN record string `%s'\n" msgstr "No se pudo procesar la cadena de registro VPN «%s»\n" -#: src/gns/plugin_gnsrecord_gns.c:312 +#: src/gns/plugin_gnsrecord_gns.c:288 #, fuzzy, c-format msgid "Unable to parse BOX record string `%s'\n" msgstr "No se pudo procesar la cadena de registro VPN «%s»\n" -#: src/gns/plugin_gnsrecord_gns.c:360 -#, fuzzy, c-format -msgid "Unable to parse REVERSE record string `%s'\n" -msgstr "No se pudo procesar la cadena de registro VPN «%s»\n" - #: src/gns/plugin_rest_gns.c:384 msgid "Ego for not found, cannot perform lookup.\n" msgstr "" -#: src/gns/plugin_rest_gns.c:668 -#, fuzzy -msgid "GNS REST API initialized\n" -msgstr "Conexión fallida\n" - #: src/gnsrecord/plugin_gnsrecord_dns.c:359 #, c-format msgid "Unable to parse IPv4 address `%s'\n" @@ -4816,6 +4994,53 @@ msgid "Could not start hostlist HTTP server on port %u\n" msgstr "" "No se pudo arrancar un servidor de listas de máquinas HTTP en el puerto %u\n" +#: src/identity-provider/gnunet-idp.c:348 +#, fuzzy +msgid "Ego is required\n" +msgstr "Las opción «%s» o «%s» es necesaria.\n" + +#: src/identity-provider/gnunet-idp.c:370 +msgid "Add attribute" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:376 +msgid "Attribute value" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:381 +msgid "Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:386 +msgid "Audience (relying party)" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:390 +msgid "List attributes for Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:395 +msgid "Issue a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:400 +msgid "Consume a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:405 +msgid "Revoke a ticket" +msgstr "" + +#: src/identity-provider/identity_provider_api.c:429 +#, fuzzy +msgid "failed to store record\n" +msgstr "El almacén de nombres no pudo añadir el registro\n" + +#: src/identity-provider/plugin_rest_identity_provider.c:1175 +#, fuzzy +msgid "Identity Provider REST API initialized\n" +msgstr "Conexión fallida\n" + #: src/identity/gnunet-identity.c:179 #, fuzzy, c-format msgid "Failed to create ego: %s\n" @@ -4910,34 +5135,11 @@ msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n" msgid "Failed to create directory `%s' for storing egos\n" msgstr "Se produjo un fallo al leer el directorio «%s»\n" -#: src/identity/plugin_rest_identity.c:967 +#: src/identity/plugin_rest_identity.c:964 #, fuzzy msgid "Identity REST API initialized\n" msgstr "Conexión fallida\n" -#: src/identity-provider/gnunet-identity-token.c:66 -#, fuzzy -msgid "Option `-t' is required\n" -msgstr "Las opción «%s» o «%s» es necesaria.\n" - -#: src/identity-provider/gnunet-identity-token.c:77 -#, fuzzy, c-format -msgid "Token `%s' is malformed\n" -msgstr "El bloque del tipo %u está mal formado\n" - -#: src/identity-provider/gnunet-identity-token.c:166 -msgid "GNUid token" -msgstr "" - -#: src/identity-provider/gnunet-identity-token.c:171 -msgid "Print token contents" -msgstr "" - -#: src/identity-provider/plugin_rest_identity_provider.c:1166 -#, fuzzy -msgid "Identity Token REST API initialized\n" -msgstr "Conexión fallida\n" - #: src/json/json.c:119 #, fuzzy, c-format msgid "Failed to parse JSON in option `%s': %s (%s)\n" @@ -5040,10 +5242,66 @@ msgstr "Se produjo un fallo al crear los índices\n" msgid "flat plugin running\n" msgstr "Base de datos sqlite ejecutándose\n" -#: src/namecache/plugin_namecache_postgres.c:90 -#: src/namestore/plugin_namestore_postgres.c:97 -msgid "Failed to create indices\n" -msgstr "Se produjo un fallo al crear los índices\n" +# form?? +#: src/namestore/gnunet-namestore-fcfsd.c:508 +#, c-format +msgid "Unsupported form value `%s'\n" +msgstr "Forma de valor no soportada «%s»\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:535 +#, c-format +msgid "Failed to create record for domain `%s': %s\n" +msgstr "Se produjo un fallo al crear un registro para el dominio «%s»: %s\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:555 +msgid "Error when mapping zone to name\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:585 +#, c-format +msgid "Found existing name `%s' for the given key\n" +msgstr "Encontrado nombre «%s» para la clave dada\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:662 +#, c-format +msgid "Found %u existing records for domain `%s'\n" +msgstr "Encontrados %u registros para el dominio «%s»\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:718 +#, c-format +msgid "Failed to create page for `%s'\n" +msgstr "Se produjo un fallo al crear la página para «%s»\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:734 +#, c-format +msgid "Failed to setup post processor for `%s'\n" +msgstr "Se produjo un fallo al configurar el post-procesador para «%s»\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:770 +msgid "Domain name must not contain `.'\n" +msgstr "El nombre de dominio no puede contener «.»\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:778 +msgid "Domain name must not contain `+'\n" +msgstr "El nombre de dominio no puede contener «+»\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:974 +msgid "No ego configured for `fcfsd` subsystem\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:1000 +msgid "Failed to start HTTP server\n" +msgstr "Se produjo un fallo al iniciar el servidor HTTP\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1042 +#, fuzzy +msgid "Failed to connect to identity\n" +msgstr "Se produjo un fallo al conectar con GNS\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1074 +#, fuzzy +msgid "GNU Name System First Come First Serve name registration service" +msgstr "Servicio de registro GNUnet GNS primero en llegar, primero en servirse" #: src/namestore/gnunet-namestore.c:301 #, c-format @@ -5051,13 +5309,13 @@ msgid "Adding record failed: %s\n" msgstr "No se pudo añadir el registro: %s\n" #: src/namestore/gnunet-namestore.c:330 -#: src/namestore/plugin_rest_namestore.c:562 +#: src/namestore/plugin_rest_namestore.c:567 #, fuzzy, c-format msgid "Deleting record failed, record does not exist%s%s\n" msgstr "No se pudo borrar el registro: %s\n" #: src/namestore/gnunet-namestore.c:337 -#: src/namestore/plugin_rest_namestore.c:571 +#: src/namestore/plugin_rest_namestore.c:576 #, fuzzy, c-format msgid "Deleting record failed%s%s\n" msgstr "No se pudo borrar el registro: %s\n" @@ -5075,7 +5333,7 @@ msgid "Records already exist under `%s', cannot add `%s' record.\n" msgstr "" #: src/namestore/gnunet-namestore.c:698 -#: src/namestore/plugin_rest_namestore.c:597 +#: src/namestore/plugin_rest_namestore.c:602 #, c-format msgid "There are no records under label `%s' that could be deleted.\n" msgstr "" @@ -5086,23 +5344,11 @@ msgid "" "There are no records under label `%s' that match the request for deletion.\n" msgstr "" -#: src/namestore/gnunet-namestore.c:776 -#: src/namestore/plugin_rest_namestore.c:1004 -#, fuzzy, c-format -msgid "Ego `%s' not known to identity service\n" -msgstr "'%s': servicio desconocido: %s\n" - #: src/namestore/gnunet-namestore.c:791 #, c-format msgid "No options given\n" msgstr "No se han proporcionado opciones\n" -#: src/namestore/gnunet-namestore.c:802 -#: src/namestore/gnunet-namestore-fcfsd.c:1034 -#: src/namestore/plugin_rest_namestore.c:1017 -msgid "Failed to connect to namestore\n" -msgstr "Se produjo un fallo al conectar con el almacén de nombres\n" - #: src/namestore/gnunet-namestore.c:810 src/namestore/gnunet-namestore.c:819 #: src/namestore/gnunet-namestore.c:838 src/namestore/gnunet-namestore.c:861 #: src/namestore/gnunet-namestore.c:915 @@ -5116,14 +5362,14 @@ msgid "add" msgstr "añadir" #: src/namestore/gnunet-namestore.c:829 -#: src/namestore/plugin_rest_namestore.c:671 +#: src/namestore/plugin_rest_namestore.c:676 #, c-format msgid "Unsupported type `%s'\n" msgstr "Tipo no soportado «%s»\n" #: src/namestore/gnunet-namestore.c:851 -#: src/namestore/plugin_rest_namestore.c:689 -#: src/namestore/plugin_rest_namestore.c:729 +#: src/namestore/plugin_rest_namestore.c:694 +#: src/namestore/plugin_rest_namestore.c:734 #, c-format msgid "Value `%s' invalid for record type `%s'\n" msgstr "Valor «%s» no válido para el tipo de registro «%s»\n" @@ -5142,8 +5388,7 @@ msgstr "borrar" msgid "Invalid public key for reverse lookup `%s'\n" msgstr "Parámetro no válido «%s»\n" -#: src/namestore/gnunet-namestore.c:979 -#: src/peerinfo-tool/gnunet-peerinfo.c:775 +#: src/namestore/gnunet-namestore.c:979 src/peerinfo-tool/gnunet-peerinfo.c:775 #, c-format msgid "Invalid URI `%s'\n" msgstr "URI no válida: «%s»\n" @@ -5154,13 +5399,13 @@ msgid "Invalid nick `%s'\n" msgstr "URI no válida: «%s»\n" #: src/namestore/gnunet-namestore.c:1051 -#: src/namestore/plugin_rest_namestore.c:1047 +#: src/namestore/plugin_rest_namestore.c:1052 #, fuzzy, c-format msgid "No default ego configured in identity service\n" msgstr "'%s': servicio desconocido: %s\n" #: src/namestore/gnunet-namestore.c:1108 -#: src/namestore/plugin_rest_namestore.c:1143 +#: src/namestore/plugin_rest_namestore.c:1148 #, fuzzy, c-format msgid "Cannot connect to identity service\n" msgstr "¡No se pudo conectar al servicio %s!\n" @@ -5226,68 +5471,7 @@ msgstr "" msgid "name of the ego controlling the zone" msgstr "nombre de la sección a la que acceder" -# form?? -#: src/namestore/gnunet-namestore-fcfsd.c:508 -#, c-format -msgid "Unsupported form value `%s'\n" -msgstr "Forma de valor no soportada «%s»\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:535 -#, c-format -msgid "Failed to create record for domain `%s': %s\n" -msgstr "Se produjo un fallo al crear un registro para el dominio «%s»: %s\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:555 -msgid "Error when mapping zone to name\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:585 -#, c-format -msgid "Found existing name `%s' for the given key\n" -msgstr "Encontrado nombre «%s» para la clave dada\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:662 -#, c-format -msgid "Found %u existing records for domain `%s'\n" -msgstr "Encontrados %u registros para el dominio «%s»\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:718 -#, c-format -msgid "Failed to create page for `%s'\n" -msgstr "Se produjo un fallo al crear la página para «%s»\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:734 -#, c-format -msgid "Failed to setup post processor for `%s'\n" -msgstr "Se produjo un fallo al configurar el post-procesador para «%s»\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:770 -msgid "Domain name must not contain `.'\n" -msgstr "El nombre de dominio no puede contener «.»\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:778 -msgid "Domain name must not contain `+'\n" -msgstr "El nombre de dominio no puede contener «+»\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:974 -msgid "No ego configured for `fcfsd` subsystem\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:1000 -msgid "Failed to start HTTP server\n" -msgstr "Se produjo un fallo al iniciar el servidor HTTP\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1042 -#, fuzzy -msgid "Failed to connect to identity\n" -msgstr "Se produjo un fallo al conectar con GNS\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1074 -#, fuzzy -msgid "GNU Name System First Come First Serve name registration service" -msgstr "Servicio de registro GNUnet GNS primero en llegar, primero en servirse" - -#: src/namestore/gnunet-service-namestore.c:612 +#: src/namestore/gnunet-service-namestore.c:615 #, fuzzy, c-format msgid "Failed to replicate block in namecache: %s\n" msgstr "Se produjo un fallo al crear el espacio de nombres «%s»\n" @@ -5302,7 +5486,7 @@ msgstr "El almacén de nombres no pudo añadir el registro\n" msgid "flat file database running\n" msgstr "Base de datos de plantilla ejecutándose\n" -#: src/namestore/plugin_rest_namestore.c:1188 +#: src/namestore/plugin_rest_namestore.c:1193 #, fuzzy msgid "Namestore REST API initialized\n" msgstr "Conexión fallida\n" @@ -5602,11 +5786,6 @@ msgstr "comando «external-ip» no encontrado\n" msgid "`upnpc' command not found\n" msgstr "comando «upnpc» no encontrado\n" -#: src/nse/gnunet-nse.c:122 -#, fuzzy -msgid "Show network size estimates from NSE service." -msgstr "# Estimaciones del tamaño de red recibidas" - #: src/nse/gnunet-nse-profiler.c:842 msgid "limit to the number of connections to NSE services, 0 for none" msgstr "límite al número de conexiones a servicios NSE, 0 para ilimitadas" @@ -5632,69 +5811,15 @@ msgstr "retraso entre rondas" msgid "Measure quality and performance of the NSE service." msgstr "Medir la calidad y rendimiento del servicio NSE." -#: src/nse/gnunet-service-nse.c:1534 -#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 -msgid "Value is too large.\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:178 -#, c-format -msgid "Removing expired address of transport `%s'\n" -msgstr "Eliminando dirección de transporte «%s»\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:310 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s': %s\n" -msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:331 -#: src/peerinfo/gnunet-service-peerinfo.c:362 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s'\n" -msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:446 -msgid "# peers known" -msgstr "# pares conocidos" - -#: src/peerinfo/gnunet-service-peerinfo.c:489 -#, c-format -msgid "" -"File `%s' in directory `%s' does not match naming convention. Removed.\n" -msgstr "" -"El fichero «%s» en el directorio «%s» no sigue la convención de nombres. " -"Eliminado.\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:655 -#, fuzzy, c-format -msgid "Scanning directory `%s'\n" -msgstr "Escaneando directorio «%s».\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:663 -#, c-format -msgid "Still no peers found in `%s'!\n" -msgstr "¡Aún no se han encontrado pares en «%s»!\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1076 -#, fuzzy, c-format -msgid "Cleaning up directory `%s'\n" -msgstr "Escaneando directorio «%s».\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1405 -#, c-format -msgid "Importing HELLOs from `%s'\n" -msgstr "Importando HELLO de «%s»\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1418 -msgid "Skipping import of included HELLOs\n" -msgstr "" +#: src/nse/gnunet-nse.c:122 +#, fuzzy +msgid "Show network size estimates from NSE service." +msgstr "# Estimaciones del tamaño de red recibidas" -# Miguel: "Failed to receive" también aquí está traducido como -# "no se obtuvo respuesta" por claridad. -#: src/peerinfo/peerinfo_api.c:220 -msgid "Failed to receive response from `PEERINFO' service." +#: src/nse/gnunet-service-nse.c:1534 +#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 +msgid "Value is too large.\n" msgstr "" -"No se obtuvo respuesta del servicio de información de pares (PEERINFO)." #: src/peerinfo-tool/gnunet-peerinfo.c:239 #, fuzzy, c-format @@ -5785,6 +5910,65 @@ msgstr "Cargando el módulo de transporte «%s»\n" msgid "Failed to load transport plugin for `%s'\n" msgstr "Se produjo un fallo al cargar el módulo del transporte para «%s»\n" +#: src/peerinfo/gnunet-service-peerinfo.c:178 +#, c-format +msgid "Removing expired address of transport `%s'\n" +msgstr "Eliminando dirección de transporte «%s»\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:310 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s': %s\n" +msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:331 +#: src/peerinfo/gnunet-service-peerinfo.c:362 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s'\n" +msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:446 +msgid "# peers known" +msgstr "# pares conocidos" + +#: src/peerinfo/gnunet-service-peerinfo.c:489 +#, c-format +msgid "" +"File `%s' in directory `%s' does not match naming convention. Removed.\n" +msgstr "" +"El fichero «%s» en el directorio «%s» no sigue la convención de nombres. " +"Eliminado.\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:655 +#, fuzzy, c-format +msgid "Scanning directory `%s'\n" +msgstr "Escaneando directorio «%s».\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:663 +#, c-format +msgid "Still no peers found in `%s'!\n" +msgstr "¡Aún no se han encontrado pares en «%s»!\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1076 +#, fuzzy, c-format +msgid "Cleaning up directory `%s'\n" +msgstr "Escaneando directorio «%s».\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1405 +#, c-format +msgid "Importing HELLOs from `%s'\n" +msgstr "Importando HELLO de «%s»\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1418 +msgid "Skipping import of included HELLOs\n" +msgstr "" + +# Miguel: "Failed to receive" también aquí está traducido como +# "no se obtuvo respuesta" por claridad. +#: src/peerinfo/peerinfo_api.c:220 +msgid "Failed to receive response from `PEERINFO' service." +msgstr "" +"No se obtuvo respuesta del servicio de información de pares (PEERINFO)." + #: src/peerstore/gnunet-peerstore.c:91 msgid "peerstore" msgstr "" @@ -5834,15 +6018,10 @@ msgstr "Error leyendo de «%s»: %s\n" msgid "Unable to create indices: %s.\n" msgstr "Se produjo un fallo al crear los índices\n" -#: src/postgres/postgres.c:67 -#, fuzzy, c-format -msgid "`%s:%s' failed at %s:%d with error: %s\n" -msgstr "«%s:%s» falló en %s:%d con error: %s" - -#: src/postgres/postgres.c:192 +#: src/pq/pq_prepare.c:80 #, fuzzy, c-format -msgid "Unable to connect to Postgres database '%s': %s\n" -msgstr "Imposible guardar el fichero de configuración '%s':" +msgid "PQprepare (`%s' as `%s') failed with error: %s\n" +msgstr "«%s» para «%s» falló en %s: %d con error: %s\n" #: src/psycstore/gnunet-service-psycstore.c:249 #, fuzzy @@ -6019,11 +6198,11 @@ msgstr "" msgid "Daemon to announce regular expressions for the peer using cadet." msgstr "Demonio para anunciar expresiones regulares para el par usando mesh." -#: src/regex/gnunet-regex-profiler.c:1314 +#: src/regex/gnunet-regex-profiler.c:1386 msgid "No configuration file given. Exiting\n" msgstr "No se ha introducido ningún fichero de configuración. Saliendo\n" -#: src/regex/gnunet-regex-profiler.c:1355 +#: src/regex/gnunet-regex-profiler.c:1427 #: src/regex/gnunet-regex-simulation-profiler.c:630 #, c-format msgid "No policy directory specified on command line. Exiting.\n" @@ -6031,51 +6210,51 @@ msgstr "" "No se ha especificado una política de directorios en la línea de comandos. " "Saliendo.\n" -#: src/regex/gnunet-regex-profiler.c:1361 +#: src/regex/gnunet-regex-profiler.c:1433 #: src/regex/gnunet-regex-simulation-profiler.c:638 #, c-format msgid "Specified policies directory does not exist. Exiting.\n" msgstr "Las políticas de directorio especificadas no existen. Saliendo.\n" -#: src/regex/gnunet-regex-profiler.c:1368 +#: src/regex/gnunet-regex-profiler.c:1440 #, c-format msgid "No files found in `%s'\n" msgstr "No se han encontrado ficheros en «%s»\n" -#: src/regex/gnunet-regex-profiler.c:1377 +#: src/regex/gnunet-regex-profiler.c:1449 msgid "No search strings file given. Exiting.\n" msgstr "No se ha proporcionado un fichero de cadenas de búsqueda. Saliendo.\n" -#: src/regex/gnunet-regex-profiler.c:1397 +#: src/regex/gnunet-regex-profiler.c:1469 msgid "Error loading search strings. Exiting.\n" msgstr "Error cargando cadenas de búsqueda. Saliendo.\n" -#: src/regex/gnunet-regex-profiler.c:1485 +#: src/regex/gnunet-regex-profiler.c:1557 msgid "name of the file for writing statistics" msgstr "nombre del fichero para escribir las estadísticas" -#: src/regex/gnunet-regex-profiler.c:1491 +#: src/regex/gnunet-regex-profiler.c:1563 #, fuzzy msgid "wait TIMEOUT before ending the experiment" msgstr "" "esperar «TIMEOUT» antes de considerar que una coincidencia de cadenas como " "fallida" -#: src/regex/gnunet-regex-profiler.c:1497 +#: src/regex/gnunet-regex-profiler.c:1569 msgid "directory with policy files" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1504 +#: src/regex/gnunet-regex-profiler.c:1576 #, fuzzy msgid "name of file with input strings" msgstr "nombre del fichero para escribir las estadísticas" -#: src/regex/gnunet-regex-profiler.c:1510 +#: src/regex/gnunet-regex-profiler.c:1582 #, fuzzy msgid "name of file with hosts' names" msgstr "nombre del fichero para escribir las estadísticas" -#: src/regex/gnunet-regex-profiler.c:1523 +#: src/regex/gnunet-regex-profiler.c:1595 msgid "Profiler for regex" msgstr "Perfilador para expresiones regulares." @@ -6312,10 +6491,10 @@ msgstr "" msgid "Calculate the Vectorproduct with a GNUnet peer." msgstr "" -#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1407 -#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 -#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1180 +#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172 #: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063 +#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401 +#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 #, fuzzy msgid "Connect to CADET failed\n" msgstr "Conexión fallida (¿bug?)\n" @@ -6340,7 +6519,7 @@ msgstr "" msgid "also profile decryption" msgstr "" -#: src/set/gnunet-service-set.c:1948 +#: src/set/gnunet-service-set.c:1989 #, fuzzy msgid "Could not connect to CADET service\n" msgstr "¡No se pudo conectar al servicio %s!\n" @@ -6401,116 +6580,116 @@ msgstr "" msgid "say good-bye and leave somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1227 src/social/gnunet-social.c:1232 +#: src/social/gnunet-social.c:1227 msgid "create a place" msgstr "" -#: src/social/gnunet-social.c:1237 +#: src/social/gnunet-social.c:1232 msgid "destroy a place we were hosting" msgstr "" -#: src/social/gnunet-social.c:1242 +#: src/social/gnunet-social.c:1237 msgid "enter somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1248 +#: src/social/gnunet-social.c:1243 msgid "find state matching name prefix" msgstr "" -#: src/social/gnunet-social.c:1253 +#: src/social/gnunet-social.c:1248 msgid "replay history of messages up to the given --limit" msgstr "" -#: src/social/gnunet-social.c:1258 +#: src/social/gnunet-social.c:1253 msgid "reconnect to a previously created place" msgstr "" -#: src/social/gnunet-social.c:1263 +#: src/social/gnunet-social.c:1258 msgid "publish something to a place we are hosting" msgstr "" -#: src/social/gnunet-social.c:1268 +#: src/social/gnunet-social.c:1263 msgid "reconnect to a previously entered place" msgstr "" -#: src/social/gnunet-social.c:1273 +#: src/social/gnunet-social.c:1268 msgid "search for state matching exact name" msgstr "" -#: src/social/gnunet-social.c:1278 +#: src/social/gnunet-social.c:1273 msgid "submit something to somebody's place" msgstr "" -#: src/social/gnunet-social.c:1283 +#: src/social/gnunet-social.c:1278 msgid "list of egos and subscribed places" msgstr "" -#: src/social/gnunet-social.c:1288 +#: src/social/gnunet-social.c:1283 msgid "extract and replay history between message IDs --start and --until" msgstr "" -#: src/social/gnunet-social.c:1297 +#: src/social/gnunet-social.c:1292 msgid "application ID to use when connecting" msgstr "" -#: src/social/gnunet-social.c:1303 +#: src/social/gnunet-social.c:1298 msgid "message body or state value" msgstr "" -#: src/social/gnunet-social.c:1309 +#: src/social/gnunet-social.c:1304 #, fuzzy msgid "name or public key of ego" msgstr "Parámetro no válido «%s»\n" -#: src/social/gnunet-social.c:1314 +#: src/social/gnunet-social.c:1309 #, fuzzy msgid "wait for incoming messages" msgstr "Falló al entregar el mensaje '%s'.\n" -#: src/social/gnunet-social.c:1320 +#: src/social/gnunet-social.c:1315 #, fuzzy msgid "GNS name" msgstr "Mostrar el _nombre" -#: src/social/gnunet-social.c:1326 +#: src/social/gnunet-social.c:1321 msgid "peer ID for --guest-enter" msgstr "" -#: src/social/gnunet-social.c:1332 +#: src/social/gnunet-social.c:1327 msgid "name (key) to query from state" msgstr "" -#: src/social/gnunet-social.c:1338 +#: src/social/gnunet-social.c:1333 #, fuzzy msgid "method name" msgstr "Mostrar el _nombre" -#: src/social/gnunet-social.c:1344 +#: src/social/gnunet-social.c:1339 #, fuzzy msgid "number of messages to replay from history" msgstr "número de mensajes a usar por iteración" -#: src/social/gnunet-social.c:1350 +#: src/social/gnunet-social.c:1345 msgid "key address of place" msgstr "" -#: src/social/gnunet-social.c:1356 +#: src/social/gnunet-social.c:1351 msgid "start message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1361 +#: src/social/gnunet-social.c:1356 msgid "respond to entry requests by admitting all guests" msgstr "" -#: src/social/gnunet-social.c:1367 +#: src/social/gnunet-social.c:1362 msgid "end message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1372 +#: src/social/gnunet-social.c:1367 msgid "respond to entry requests by refusing all guests" msgstr "" -#: src/social/gnunet-social.c:1382 +#: src/social/gnunet-social.c:1377 msgid "" "gnunet-social - Interact with the social service: enter/leave, send/receive " "messages, access history and state.\n" @@ -6703,7 +6882,7 @@ msgid "" msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:231 src/testing/list-keys.c:46 -#: src/testing/testing.c:288 src/util/gnunet-ecc.c:298 +#: src/testing/testing.c:288 src/util/gnunet-ecc.c:301 #, c-format msgid "Incorrect hostkey file format: %s\n" msgstr "El fichero de máquinas no tiene el formato correcto: %s\n" @@ -6777,16 +6956,6 @@ msgstr "Petición ignorada porque el ARM se está apagando.\n" msgid "%.s Unknown result code." msgstr "Código de respuesta del ARM desconocido.\n" -#: src/testbed/gnunet_testbed_mpi_spawn.c:118 -#, fuzzy -msgid "Waiting for child to exit.\n" -msgstr "Esperando a los pares para conectar (%u ciclos restantes)...\n" - -#: src/testbed/gnunet_testbed_mpi_spawn.c:241 -#, fuzzy, c-format -msgid "Spawning process `%s'\n" -msgstr "Iniciando el proceso auxiliar (HELPER) «%s»\n" - #: src/testbed/gnunet-testbed-profiler.c:290 msgid "tolerate COUNT number of continious timeout failures" msgstr "tolerar un número «COUNT» de continuas expiraciones de plazo" @@ -6798,6 +6967,16 @@ msgid "" "signal is received" msgstr "" +#: src/testbed/gnunet_testbed_mpi_spawn.c:118 +#, fuzzy +msgid "Waiting for child to exit.\n" +msgstr "Esperando a los pares para conectar (%u ciclos restantes)...\n" + +#: src/testbed/gnunet_testbed_mpi_spawn.c:241 +#, fuzzy, c-format +msgid "Spawning process `%s'\n" +msgstr "Iniciando el proceso auxiliar (HELPER) «%s»\n" + #: src/testbed/testbed_api.c:410 #, c-format msgid "Adding host %u failed with error: %s\n" @@ -7118,10 +7297,6 @@ msgstr "# mensajes «HELLO» recibidos" msgid "GNUnet topology control" msgstr "" -#: src/transport/gnunet-service-transport_ats.c:141 -msgid "# Addresses given to ATS" -msgstr "" - #: src/transport/gnunet-service-transport.c:448 msgid "# messages dropped due to slow client" msgstr "# mensajes omitidos debido a un cliente lento" @@ -7170,6 +7345,10 @@ msgstr "" "El servicio de transporte carece de opciones de configuración de clave. " "Saliendo.\n" +#: src/transport/gnunet-service-transport_ats.c:141 +msgid "# Addresses given to ATS" +msgstr "" + #: src/transport/gnunet-service-transport_hello.c:195 msgid "# refreshed my HELLO" msgstr "# refrescos de mi «HELLO»" @@ -7506,6 +7685,45 @@ msgstr "# Mensajes PONG omitidos, firma expirada" msgid "# validations succeeded" msgstr "# revalidaciones de direcciones iniciadas" +#: src/transport/gnunet-transport-profiler.c:219 +#, c-format +msgid "%llu B in %llu ms == %.2f KB/s!\n" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:617 +msgid "send data to peer" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:621 +#, fuzzy +msgid "receive data from peer" +msgstr "# respuestas recibidas de otros pares" + +#: src/transport/gnunet-transport-profiler.c:626 +#, fuzzy +msgid "iterations" +msgstr "Otras configuraciones" + +#: src/transport/gnunet-transport-profiler.c:631 +#, fuzzy +msgid "number of messages to send" +msgstr "número de mensajes a usar por iteración" + +#: src/transport/gnunet-transport-profiler.c:636 +#, fuzzy +msgid "message size to use" +msgstr "tamaño del mensaje" + +#: src/transport/gnunet-transport-profiler.c:641 +#: src/transport/gnunet-transport.c:1462 +msgid "peer identity" +msgstr "identidad del par" + +#: src/transport/gnunet-transport-profiler.c:652 +#: src/transport/gnunet-transport.c:1482 +msgid "Direct access to transport service." +msgstr "Acceso directo al servicio de transporte." + #: src/transport/gnunet-transport.c:413 #, c-format msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n" @@ -7649,11 +7867,6 @@ msgstr "" msgid "do not resolve hostnames" msgstr "no resolver nombres de máquinas" -#: src/transport/gnunet-transport.c:1462 -#: src/transport/gnunet-transport-profiler.c:641 -msgid "peer identity" -msgstr "identidad del par" - #: src/transport/gnunet-transport.c:1466 #, fuzzy msgid "monitor plugin sessions" @@ -7663,43 +7876,9 @@ msgstr "# sesiones wlan pendientes" msgid "send data for benchmarking to the other peer (until CTRL-C)" msgstr "enviar data para prueba a otro par (hasta CTRL-C)" -#: src/transport/gnunet-transport.c:1482 -#: src/transport/gnunet-transport-profiler.c:652 -msgid "Direct access to transport service." -msgstr "Acceso directo al servicio de transporte." - -#: src/transport/gnunet-transport-profiler.c:219 -#, c-format -msgid "%llu B in %llu ms == %.2f KB/s!\n" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:617 -msgid "send data to peer" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:621 -#, fuzzy -msgid "receive data from peer" -msgstr "# respuestas recibidas de otros pares" - -#: src/transport/gnunet-transport-profiler.c:626 -#, fuzzy -msgid "iterations" -msgstr "Otras configuraciones" - -#: src/transport/gnunet-transport-profiler.c:631 -#, fuzzy -msgid "number of messages to send" -msgstr "número de mensajes a usar por iteración" - -#: src/transport/gnunet-transport-profiler.c:636 -#, fuzzy -msgid "message size to use" -msgstr "tamaño del mensaje" - #: src/transport/plugin_transport_http_client.c:1474 -#: src/transport/plugin_transport_http_server.c:2249 -#: src/transport/plugin_transport_http_server.c:3463 +#: src/transport/plugin_transport_http_server.c:2312 +#: src/transport/plugin_transport_http_server.c:3526 #: src/transport/plugin_transport_tcp.c:3890 #: src/transport/plugin_transport_tcp.c:3897 msgid "TCP_STEALTH not supported on this platform.\n" @@ -7713,13 +7892,13 @@ msgstr "" "módulo %s!\n" #: src/transport/plugin_transport_http_client.c:2164 -#: src/transport/plugin_transport_http_server.c:3178 +#: src/transport/plugin_transport_http_server.c:3241 #, c-format msgid "Shutting down plugin `%s'\n" msgstr "Finalizando el módulo «%s»\n" #: src/transport/plugin_transport_http_client.c:2181 -#: src/transport/plugin_transport_http_server.c:3248 +#: src/transport/plugin_transport_http_server.c:3311 #, c-format msgid "Shutdown for plugin `%s' complete\n" msgstr "Finalización del módulo «%s» completa\n" @@ -7729,7 +7908,7 @@ msgstr "Finalización del módulo «%s» completa\n" msgid "Maximum number of requests is %u\n" msgstr "El número máximo de conexiones es %u\n" -#: src/transport/plugin_transport_http_server.c:1727 +#: src/transport/plugin_transport_http_server.c:1756 #, c-format msgid "" "Access from connection %p (%u of %u) for `%s' `%s' url `%s' with upload data " @@ -7738,12 +7917,12 @@ msgstr "" "Acceso desde la conexión %p (%u de %u) para «%s» «%s» URL «%s» con tamaño de " "los datos de subida %u\n" -#: src/transport/plugin_transport_http_server.c:1967 +#: src/transport/plugin_transport_http_server.c:2028 #, c-format msgid "Accepting connection (%u of %u) from `%s'\n" msgstr "Aceptando conexión (%u de %u) desde «%s»\n" -#: src/transport/plugin_transport_http_server.c:1975 +#: src/transport/plugin_transport_http_server.c:2036 #, c-format msgid "" "Server reached maximum number connections (%u), rejecting new connection\n" @@ -7751,7 +7930,7 @@ msgstr "" "El servidor ha alcanzado el número máximo de conexiones (%u), rechazando " "nueva conexión\n" -#: src/transport/plugin_transport_http_server.c:2125 +#: src/transport/plugin_transport_http_server.c:2186 msgid "" "Could not create a new TLS certificate, program `gnunet-transport-" "certificate-creation' could not be started!\n" @@ -7759,84 +7938,84 @@ msgstr "" "¡No se pudo crear un certificado TLS nuevo, el programa «gnunet-transport-" "certificate-creation» no pudo ser iniciado!\n" -#: src/transport/plugin_transport_http_server.c:2148 +#: src/transport/plugin_transport_http_server.c:2209 #, fuzzy, c-format msgid "No usable TLS certificate found and creating one at `%s/%s' failed!\n" msgstr "" "¡No se encontró ningún certificado TLS útil y se produjo un fallo al crear " "uno!\n" -#: src/transport/plugin_transport_http_server.c:2275 +#: src/transport/plugin_transport_http_server.c:2338 msgid "Could not load or create server certificate! Loading plugin failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2587 +#: src/transport/plugin_transport_http_server.c:2650 msgid "Require valid port number for service in configuration!\n" msgstr "¡Se necesita un puerto válido para el servicio en la configuración!\n" -#: src/transport/plugin_transport_http_server.c:2752 +#: src/transport/plugin_transport_http_server.c:2815 #, c-format msgid "Found %u addresses to report to NAT service\n" msgstr "Encontradas %u direcciones para comunicar al servicio NAT\n" -#: src/transport/plugin_transport_http_server.c:2838 +#: src/transport/plugin_transport_http_server.c:2901 #: src/transport/plugin_transport_udp.c:3622 msgid "Disabling IPv6 since it is not supported on this system!\n" msgstr "¡Deshabilitando IPv6 ya que no está soportado en este sistema!\n" -#: src/transport/plugin_transport_http_server.c:2944 +#: src/transport/plugin_transport_http_server.c:3007 #, c-format msgid "IPv4 support is %s\n" msgstr "El soporte IPv4 es %s\n" -#: src/transport/plugin_transport_http_server.c:2959 +#: src/transport/plugin_transport_http_server.c:3022 #, c-format msgid "IPv6 support is %s\n" msgstr "El soporte IPv6 es %s\n" -#: src/transport/plugin_transport_http_server.c:2965 +#: src/transport/plugin_transport_http_server.c:3028 msgid "Neither IPv4 nor IPv6 are enabled! Fix in configuration\n" msgstr "¡Ni IPv4 ni IPv6 están habilitadas! Corrija la configuración\n" -#: src/transport/plugin_transport_http_server.c:2976 +#: src/transport/plugin_transport_http_server.c:3039 msgid "Port is required! Fix in configuration\n" msgstr "¡El puerto es necesario! Corrija la configuración\n" -#: src/transport/plugin_transport_http_server.c:2982 +#: src/transport/plugin_transport_http_server.c:3045 #, c-format msgid "Using port %u\n" msgstr "Usando puerto %u\n" -#: src/transport/plugin_transport_http_server.c:3001 +#: src/transport/plugin_transport_http_server.c:3064 #, c-format msgid "Specific IPv4 address `%s' in configuration file is invalid!\n" msgstr "" "¡La dirección IPv4 «%s» especificada en el fichero de configuración no es " "válida!\n" -#: src/transport/plugin_transport_http_server.c:3036 +#: src/transport/plugin_transport_http_server.c:3099 #, c-format msgid "Specific IPv6 address `%s' in configuration file is invalid!\n" msgstr "" "¡La dirección IPv6 «%s» especificada en el fichero de configuración no es " "válida!\n" -#: src/transport/plugin_transport_http_server.c:3111 +#: src/transport/plugin_transport_http_server.c:3174 #, c-format msgid "Using external hostname `%s'\n" msgstr "Usando nombre de máquina externo «%s»\n" -#: src/transport/plugin_transport_http_server.c:3132 +#: src/transport/plugin_transport_http_server.c:3195 #, c-format msgid "Notifying transport only about hostname `%s'\n" msgstr "Notificando al transporte sólo el nombre de máquina «%s»\n" -#: src/transport/plugin_transport_http_server.c:3149 +#: src/transport/plugin_transport_http_server.c:3212 #, c-format msgid "Maximum number of connections is %u\n" msgstr "El número máximo de conexiones es %u\n" -#: src/transport/plugin_transport_http_server.c:3475 +#: src/transport/plugin_transport_http_server.c:3538 #, fuzzy msgid "Unable to compile URL regex\n" msgstr "¡Imposible obtener «HELLO» del par!\n" @@ -7981,23 +8160,6 @@ msgstr "Transporte TCP no escuchando en ningún puerto (únicamente cliente)\n" msgid "TCP transport advertises itself as being on port %llu\n" msgstr "El transporte TCP anuncia que está en el puerto %llu\n" -#: src/transport/plugin_transport_udp_broadcasting.c:168 -#, fuzzy -msgid "# Multicast HELLO beacons received via UDP" -msgstr "# beacons HELLO multicast IPv6 recibidos vía UDP" - -#: src/transport/plugin_transport_udp_broadcasting.c:548 -msgid "" -"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" -msgstr "" - -#: src/transport/plugin_transport_udp_broadcasting.c:565 -#, c-format -msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" -msgstr "" -"Se produjo un fallo al establecer la opción de «broadcast» IPv4 para el " -"«socket» en el puerto %d\n" - #: src/transport/plugin_transport_udp.c:3366 #, c-format msgid "" @@ -8052,6 +8214,23 @@ msgstr "«%s» no es una dirección IP válida.\n" msgid "Failed to create UDP network sockets\n" msgstr "Se produjo un fallo al crear una nueva firma" +#: src/transport/plugin_transport_udp_broadcasting.c:168 +#, fuzzy +msgid "# Multicast HELLO beacons received via UDP" +msgstr "# beacons HELLO multicast IPv6 recibidos vía UDP" + +#: src/transport/plugin_transport_udp_broadcasting.c:548 +msgid "" +"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" +msgstr "" + +#: src/transport/plugin_transport_udp_broadcasting.c:565 +#, c-format +msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" +msgstr "" +"Se produjo un fallo al establecer la opción de «broadcast» IPv4 para el " +"«socket» en el puerto %d\n" + #: src/transport/plugin_transport_unix.c:1403 #, fuzzy, c-format msgid "Cannot create path to `%s'\n" @@ -8171,7 +8350,7 @@ msgstr "" "El código de procesado para el mensaje del tipo %u no llamó a " "«GNUNET_SERVER_receive_done» después de %s\n" -#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2337 +#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2336 #, c-format msgid "Unknown address family %d\n" msgstr "Familia de direcciones %d desconocida\n" @@ -8220,52 +8399,52 @@ msgstr "Se produjo un fallo al inciar «%s» en «%s»\n" msgid "Service `%s' runs at %s\n" msgstr "El servicio «%s» se ejecuta en %s\n" -#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1501 +#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1500 msgid "Service process failed to initialize\n" msgstr "No se pudo inicializar el proceso del servicio\n" -#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1505 +#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1504 msgid "Service process could not initialize server function\n" msgstr "" "No se pudo inicializar la función del servidor en el proceso del servicio\n" -#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1509 +#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1508 msgid "Service process failed to report status\n" msgstr "El proceso del servicio no devolvió un estado\n" #: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1488 -#: src/util/service.c:1379 +#: src/util/service.c:1378 #, c-format msgid "Cannot obtain information about user `%s': %s\n" msgstr "No se pudo obtener información acerca del usuario «%s»: %s\n" -#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1381 +#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1380 msgid "No such user" msgstr "No existe tal usuario" -#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1400 +#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1399 #, c-format msgid "Cannot change user/group to `%s': %s\n" msgstr "Imposible cambiar el usuario/grupo a «%s»: %s\n" -#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1728 +#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1727 msgid "do daemonize (detach from terminal)" msgstr "demonizar (desasociar del terminal)" #: src/transport/tcp_service_legacy.c:1448 src/util/program.c:244 -#: src/util/service.c:1791 +#: src/util/service.c:1790 #, fuzzy, c-format msgid "Malformed configuration file `%s', exit ...\n" msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n" #: src/transport/tcp_service_legacy.c:1458 src/util/program.c:261 -#: src/util/service.c:1802 +#: src/util/service.c:1801 #, fuzzy msgid "Malformed configuration, exit ...\n" msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n" #: src/transport/tcp_service_legacy.c:1463 src/util/program.c:256 -#: src/util/service.c:1808 +#: src/util/service.c:1807 #, c-format msgid "Could not access configuration file `%s'\n" msgstr "No se pudo acceder al fichero de configuración «%s»\n" @@ -8309,53 +8488,53 @@ msgstr "Se produjo un fallo al deserializar los metadatos «%s»" msgid "Need a non-empty hostname for service `%s'.\n" msgstr "Se necesita un nombre de máquina no vacío para el servicio «%s».\n" -#: src/util/common_logging.c:256 src/util/common_logging.c:1129 +#: src/util/common_logging.c:259 src/util/common_logging.c:1132 msgid "DEBUG" msgstr "DEPURACIÓN" -#: src/util/common_logging.c:258 src/util/common_logging.c:1127 +#: src/util/common_logging.c:261 src/util/common_logging.c:1130 msgid "INFO" msgstr "INFORMACIÓN" -#: src/util/common_logging.c:260 src/util/common_logging.c:1125 +#: src/util/common_logging.c:263 src/util/common_logging.c:1128 msgid "MESSAGE" msgstr "MENSAJE" -#: src/util/common_logging.c:262 src/util/common_logging.c:1123 +#: src/util/common_logging.c:265 src/util/common_logging.c:1126 msgid "WARNING" msgstr "PELIGRO" -#: src/util/common_logging.c:264 src/util/common_logging.c:1121 +#: src/util/common_logging.c:267 src/util/common_logging.c:1124 msgid "ERROR" msgstr "ERROR" -#: src/util/common_logging.c:266 src/util/common_logging.c:1131 +#: src/util/common_logging.c:269 src/util/common_logging.c:1134 msgid "NONE" msgstr "NINGUNO" -#: src/util/common_logging.c:879 +#: src/util/common_logging.c:882 #, c-format msgid "Message `%.*s' repeated %u times in the last %s\n" msgstr "Mensaje `%.*s» repetido %u veces en el último %s\n" -#: src/util/common_logging.c:1132 +#: src/util/common_logging.c:1135 msgid "INVALID" msgstr "NO VÁLIDO" -#: src/util/common_logging.c:1302 +#: src/util/common_logging.c:1326 msgid "unknown address" msgstr "dirección desconocida" -#: src/util/common_logging.c:1344 +#: src/util/common_logging.c:1368 msgid "invalid address" msgstr "dirección no válida" -#: src/util/common_logging.c:1362 +#: src/util/common_logging.c:1386 #, c-format msgid "Configuration fails to specify option `%s' in section `%s'!\n" msgstr "¡La configuración no especifica la opción «%s» en la sección «%s»!\n" -#: src/util/common_logging.c:1383 +#: src/util/common_logging.c:1407 #, c-format msgid "" "Configuration specifies invalid value for option `%s' in section `%s': %s\n" @@ -8363,17 +8542,17 @@ msgstr "" "La configuración especifica un valor no válido en la opción «%s» de la " "sección «%s»: %s\n" -#: src/util/configuration.c:286 +#: src/util/configuration.c:296 #, c-format msgid "Syntax error while deserializing in line %u\n" msgstr "Error de sintaxis en la línea %u mientras se deserializaba\n" -#: src/util/configuration.c:344 +#: src/util/configuration.c:355 #, fuzzy, c-format msgid "Error while reading file `%s'\n" msgstr "Error decodificando clave %u\n" -#: src/util/configuration.c:1017 +#: src/util/configuration.c:1034 #, c-format msgid "" "Configuration value '%s' for '%s' in section '%s' is not in set of legal " @@ -8382,17 +8561,17 @@ msgstr "" "El valor de configuración «%s» para «%s» de la sección «%s» no está dentro " "de las opciones legales\n" -#: src/util/configuration.c:1136 +#: src/util/configuration.c:1153 #, c-format msgid "Recursive expansion suspected, aborting $-expansion for term `%s'\n" msgstr "" -#: src/util/configuration.c:1169 +#: src/util/configuration.c:1186 #, fuzzy, c-format msgid "Missing closing `%s' in option `%s'\n" msgstr "Falta la opción «%s» para la operación «%s»\n" -#: src/util/configuration.c:1237 +#: src/util/configuration.c:1254 #, c-format msgid "" "Failed to expand `%s' in `%s' as it is neither found in [PATHS] nor defined " @@ -8428,23 +8607,23 @@ msgstr "La verificación de la firma RSA fallo en %s:%d: %s\n" msgid "EdDSA signature verification failed at %s:%d: %s\n" msgstr "La verificación de la firma RSA fallo en %s:%d: %s\n" -#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:160 -#: src/util/crypto_ecc_setup.c:278 src/util/crypto_ecc_setup.c:316 +#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:161 +#: src/util/crypto_ecc_setup.c:279 src/util/crypto_ecc_setup.c:317 #, c-format msgid "Could not acquire lock on file `%s': %s...\n" msgstr "No se pudo bloquear el fichero «%s»: %s...\n" -#: src/util/crypto_ecc_setup.c:127 src/util/crypto_ecc_setup.c:283 +#: src/util/crypto_ecc_setup.c:128 src/util/crypto_ecc_setup.c:284 msgid "Creating a new private key. This may take a while.\n" msgstr "Generando una clave privada nueva. Esto puede tomar un tiempo.\n" -#: src/util/crypto_ecc_setup.c:164 src/util/crypto_ecc_setup.c:320 +#: src/util/crypto_ecc_setup.c:165 src/util/crypto_ecc_setup.c:322 msgid "This may be ok if someone is currently generating a private key.\n" msgstr "" "Esto puede estar bien si alguien está actualmente generando una clave " "privada.\n" -#: src/util/crypto_ecc_setup.c:194 src/util/crypto_ecc_setup.c:350 +#: src/util/crypto_ecc_setup.c:195 src/util/crypto_ecc_setup.c:352 #, c-format msgid "" "When trying to read key file `%s' I found %u bytes but I need at least %u.\n" @@ -8452,13 +8631,13 @@ msgstr "" "Cuando se intentaba leer el fichero de claves «%s» se encontraron %u bytes " "pero al menos %u son necesarios.\n" -#: src/util/crypto_ecc_setup.c:198 src/util/crypto_ecc_setup.c:354 +#: src/util/crypto_ecc_setup.c:199 src/util/crypto_ecc_setup.c:356 msgid "This may be ok if someone is currently generating a key.\n" msgstr "" "Esto puede ser correcto si alguien está actualmente generando una clave de " "máquina.\n" -#: src/util/crypto_ecc_setup.c:413 +#: src/util/crypto_ecc_setup.c:415 #, fuzzy msgid "Could not load peer's private key\n" msgstr "No se pudo acceder a la clave de máquina.\n" @@ -8651,22 +8830,22 @@ msgstr "" msgid "Manipulate GNUnet configuration files" msgstr "Manipular ficheros de configuración de GNUnet" -#: src/util/gnunet-ecc.c:84 +#: src/util/gnunet-ecc.c:89 #, c-format msgid "Failed to open `%s': %s\n" msgstr "Se produjo un fallo al abrir «%s»: %s\n" -#: src/util/gnunet-ecc.c:120 +#: src/util/gnunet-ecc.c:125 #, fuzzy, c-format msgid "Generating %u keys like %s, please wait" msgstr "Generando %u claves, por favor, espere" -#: src/util/gnunet-ecc.c:133 +#: src/util/gnunet-ecc.c:138 #, c-format msgid "Generating %u keys, please wait" msgstr "Generando %u claves, por favor, espere" -#: src/util/gnunet-ecc.c:174 +#: src/util/gnunet-ecc.c:179 #, c-format msgid "" "\n" @@ -8675,60 +8854,65 @@ msgstr "" "\n" "Se produjo un fallo al escribir en «%s»: %s\n" -#: src/util/gnunet-ecc.c:184 +#: src/util/gnunet-ecc.c:189 #, fuzzy, c-format msgid "" "\n" "Finished!\n" msgstr "¡Finalizado!\n" -#: src/util/gnunet-ecc.c:187 +#: src/util/gnunet-ecc.c:192 #, c-format msgid "" "\n" "Error, %u keys not generated\n" msgstr "" -#: src/util/gnunet-ecc.c:280 +#: src/util/gnunet-ecc.c:283 #, fuzzy, c-format msgid "Hostkeys file `%s' not found\n" msgstr "El fichero de máquinas %s no fue encontrado\n" -#: src/util/gnunet-ecc.c:291 +#: src/util/gnunet-ecc.c:294 #, fuzzy, c-format msgid "Hostkeys file `%s' is empty\n" msgstr "El archivo de amigos «%s» está vacío.\n" -#: src/util/gnunet-ecc.c:313 +#: src/util/gnunet-ecc.c:316 #, fuzzy, c-format msgid "Could not read hostkey file: %s\n" msgstr "¡No se puede leer el fichero de claves de máquina!\n" -#: src/util/gnunet-ecc.c:364 +#: src/util/gnunet-ecc.c:367 msgid "No hostkey file specified on command line\n" msgstr "No se ha especificado la clave de máquina en la línea de comandos\n" -#: src/util/gnunet-ecc.c:416 +#: src/util/gnunet-ecc.c:425 msgid "list keys included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:421 +#: src/util/gnunet-ecc.c:430 msgid "number of keys to list included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:426 +#: src/util/gnunet-ecc.c:435 msgid "create COUNT public-private key pairs (for testing)" msgstr "crea «COUNT» pares de claves pública-privada (para pruebas)" -#: src/util/gnunet-ecc.c:430 +#: src/util/gnunet-ecc.c:439 msgid "print the public key in ASCII format" msgstr "imprime la clave pública en formato ASCII" -#: src/util/gnunet-ecc.c:434 +#: src/util/gnunet-ecc.c:443 +#, fuzzy +msgid "print the public key in HEX format" +msgstr "imprime la clave pública en formato ASCII" + +#: src/util/gnunet-ecc.c:447 msgid "print examples of ECC operations (used for compatibility testing)" msgstr "" -#: src/util/gnunet-ecc.c:449 +#: src/util/gnunet-ecc.c:463 msgid "Manipulate GNUnet private ECC key files" msgstr "Manipular los ficheros de clave privada ECC de GNUnet" @@ -8823,7 +9007,7 @@ msgstr "Error escribiendo a «%s»: %s\n" msgid "Unable to shorten unix path `%s' while keeping name unique\n" msgstr "Imposible acortar la ruta unix «%s» manteniendo el nombre único\n" -#: src/util/network.c:1793 src/util/network.c:1969 +#: src/util/network.c:1793 src/util/network.c:1977 #, c-format msgid "" "Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n" @@ -8879,7 +9063,7 @@ msgstr "Falló «%s» para la biblioteca «%s» con error: %s\n" msgid "Could not determine plugin installation path.\n" msgstr "No se pudo determinar la ruta de instalación de los módulos.\n" -#: src/util/resolver_api.c:204 +#: src/util/resolver_api.c:203 #, c-format msgid "" "Missing `%s' for `%s' in configuration, DNS resolution will be unavailable.\n" @@ -8894,12 +9078,12 @@ msgstr "" "¡Se debe especificar «%s» o una dirección numérica IP para «%s» de «%s» en " "la configuración!\n" -#: src/util/resolver_api.c:815 +#: src/util/resolver_api.c:826 #, c-format msgid "Timeout trying to resolve hostname `%s'.\n" msgstr "Expiración de plazo intentando resolver el nombre de máquina «%s».\n" -#: src/util/resolver_api.c:827 +#: src/util/resolver_api.c:839 #, c-format msgid "Timeout trying to resolve IP address `%s'.\n" msgstr "Expiración de plazo intentando resolver la dirección IP «%s».\n" @@ -8907,24 +9091,24 @@ msgstr "Expiración de plazo intentando resolver la dirección IP «%s».\n" # Miguel: He traducido "default" por "predeterminado", la locución # "por defecto" no tiene sentido en sitios como este y he tratado # de ser consistente. -#: src/util/resolver_api.c:1004 +#: src/util/resolver_api.c:1023 #, fuzzy msgid "Resolver not configured correctly.\n" msgstr "¡El servicio predeterminado «%s» no está configurado correctamente!\n" -#: src/util/resolver_api.c:1086 src/util/resolver_api.c:1107 -#: src/util/resolver_api.c:1121 +#: src/util/resolver_api.c:1109 src/util/resolver_api.c:1132 +#: src/util/resolver_api.c:1146 #, fuzzy, c-format msgid "Could not resolve our FQDN: %s\n" msgstr "" "No se pudo resolver nuestro nombre de dominio cualificado (FQDN) : %s\n" -#: src/util/service.c:1306 +#: src/util/service.c:1305 msgid "" "Could not bind to any of the ports I was supposed to, refusing to run!\n" msgstr "" -#: src/util/service.c:2082 +#: src/util/service.c:2081 #, fuzzy, c-format msgid "" "Processing code for message of type %u did not call " @@ -9003,67 +9187,67 @@ msgstr "días" msgid "end of time" msgstr "fin del plazo" -#: src/util/strings.c:1269 +#: src/util/strings.c:1270 msgid "IPv6 address did not start with `['\n" msgstr "La dirección IPv6 no empezaba con «[»\n" -#: src/util/strings.c:1277 +#: src/util/strings.c:1278 msgid "IPv6 address did contain ':' to separate port number\n" msgstr "La dirección IPv6 contenía «:» para separar el número de puerto\n" -#: src/util/strings.c:1283 +#: src/util/strings.c:1284 msgid "IPv6 address did contain ']' before ':' to separate port number\n" msgstr "" "La dirección IPv6 contenía «]» antes de «:» para separar el número de " "puerto\n" -#: src/util/strings.c:1290 +#: src/util/strings.c:1291 msgid "IPv6 address did contain a valid port number after the last ':'\n" msgstr "" "La dirección IPv6 contenía un número de puerto válido después del último " "«:»\n" -#: src/util/strings.c:1299 +#: src/util/strings.c:1300 #, c-format msgid "Invalid IPv6 address `%s': %s\n" msgstr "Dirección IPv6 «%s» no válida: %s\n" -#: src/util/strings.c:1571 src/util/strings.c:1587 +#: src/util/strings.c:1572 src/util/strings.c:1588 msgid "Port not in range\n" msgstr "" -#: src/util/strings.c:1596 +#: src/util/strings.c:1597 #, fuzzy, c-format msgid "Malformed port policy `%s'\n" msgstr "Se produjo un fallo al iniciar el servicio «%s»\n" -#: src/util/strings.c:1679 src/util/strings.c:1710 src/util/strings.c:1758 -#: src/util/strings.c:1779 +#: src/util/strings.c:1680 src/util/strings.c:1711 src/util/strings.c:1759 +#: src/util/strings.c:1780 #, c-format msgid "Invalid format for IP: `%s'\n" msgstr "Formato no válido para la IP: «%s»\n" -#: src/util/strings.c:1736 +#: src/util/strings.c:1737 #, c-format msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)." msgstr "Notación de red no válida («/%d» no es válido en IPv4 CIDR)." -#: src/util/strings.c:1788 +#: src/util/strings.c:1789 #, fuzzy, c-format msgid "Invalid format: `%s'\n" msgstr "Formato de tiempo no válido «%s»\n" -#: src/util/strings.c:1840 +#: src/util/strings.c:1841 #, c-format msgid "Invalid network notation (does not end with ';': `%s')\n" msgstr "Notación de red no válida (no termina con «;»: «%s»)\n" -#: src/util/strings.c:1890 +#: src/util/strings.c:1891 #, c-format msgid "Wrong format `%s' for netmask\n" msgstr "Formato «%s» erroneo para máscara de red\n" -#: src/util/strings.c:1921 +#: src/util/strings.c:1922 #, c-format msgid "Wrong format `%s' for network\n" msgstr "Formato «%s» erroneo para red\n" @@ -9244,26 +9428,41 @@ msgstr "el servicio es ofrecido vía UDP" msgid "Setup tunnels via VPN." msgstr "Configurar túneles vía VPN." -#: src/zonemaster/gnunet-service-zonemaster.c:705 +#: src/zonemaster/gnunet-service-zonemaster.c:706 msgid "Failed to connect to the namestore!\n" msgstr "¡Se produjo un fallo al conectar con el almacén de nombres!\n" -#: src/include/gnunet_common.h:674 src/include/gnunet_common.h:681 -#: src/include/gnunet_common.h:691 src/include/gnunet_common.h:699 +#: src/include/gnunet_common.h:689 src/include/gnunet_common.h:696 +#: src/include/gnunet_common.h:706 src/include/gnunet_common.h:714 #, c-format msgid "Assertion failed at %s:%d.\n" msgstr "Aserción fallida en %s:%d.\n" -#: src/include/gnunet_common.h:711 +#: src/include/gnunet_common.h:726 #, c-format msgid "External protocol violation detected at %s:%d.\n" msgstr "Violación externa del protocolo detectada en %s:%d.\n" -#: src/include/gnunet_common.h:738 src/include/gnunet_common.h:747 +#: src/include/gnunet_common.h:753 src/include/gnunet_common.h:762 #, c-format msgid "`%s' failed on file `%s' at %s:%d with error: %s\n" msgstr "«%s» falló en el fichero «%s» en %s:%d con el error: %s\n" +#, fuzzy +#~ msgid "Token `%s' is malformed\n" +#~ msgstr "El bloque del tipo %u está mal formado\n" + +#~ msgid "Failed to create indices\n" +#~ msgstr "Se produjo un fallo al crear los índices\n" + +#, fuzzy +#~ msgid "`%s:%s' failed at %s:%d with error: %s\n" +#~ msgstr "«%s:%s» falló en %s:%d con error: %s" + +#, fuzzy +#~ msgid "Unable to connect to Postgres database '%s': %s\n" +#~ msgstr "Imposible guardar el fichero de configuración '%s':" + #, fuzzy #~ msgid "Misconfiguration (can not connect to the ARM service)" #~ msgstr "¡Se produjo un fallo al conectar con el servicio dv!\n" @@ -9473,9 +9672,6 @@ msgstr "«%s» falló en el fichero «%s» en %s:%d con el error: %s\n" #~ msgid "# transmission request failures" #~ msgstr "# fallos en peticiones de transmisión" -#~ msgid "# bytes sent to datastore" -#~ msgstr "# bytes mandados al almacén de datos" - #~ msgid "Failed to receive status response from database." #~ msgstr "" #~ "Se produjo un fallo al recibir el estado de respuesta de la base de datos." @@ -9856,10 +10052,6 @@ msgstr "«%s» falló en el fichero «%s» en %s:%d con el error: %s\n" #~ "Petición de transmisión de iteración de expiración al servicio de " #~ "información de pares (PEERINFO)." -#, fuzzy -#~ msgid "Error reading sensor version\n" -#~ msgstr "Error leyendo «%s»: %s" - #, fuzzy #~ msgid "Error reading sensor category\n" #~ msgstr "Error leyendo «%s»: %s" diff --git a/po/fr.po b/po/fr.po index ef1361425..be24a2c35 100644 --- a/po/fr.po +++ b/po/fr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gnunet 0.10.1\n" "Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n" -"POT-Creation-Date: 2017-03-31 19:22-0500\n" +"POT-Creation-Date: 2017-10-20 15:14+0000\n" "PO-Revision-Date: 2015-12-24 01:20+0100\n" "Last-Translator: Stéphane Aulery \n" "Language-Team: French \n" @@ -267,7 +267,7 @@ msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n" msgstr "" #: src/arm/gnunet-service-arm.c:513 -#: src/transport/plugin_transport_http_server.c:2621 +#: src/transport/plugin_transport_http_server.c:2684 #: src/transport/plugin_transport_tcp.c:1259 #: src/transport/tcp_service_legacy.c:696 src/util/service.c:782 #, c-format @@ -275,7 +275,7 @@ msgid "Failed to resolve `%s': %s\n" msgstr "Résolution de « %s » échouée : %s\n" #: src/arm/gnunet-service-arm.c:532 -#: src/transport/plugin_transport_http_server.c:2639 +#: src/transport/plugin_transport_http_server.c:2702 #: src/transport/plugin_transport_tcp.c:1278 #: src/transport/tcp_service_legacy.c:715 src/util/service.c:802 #, c-format @@ -348,133 +348,14 @@ msgstr "" msgid "Initiating shutdown as requested by client.\n" msgstr "" -#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 -#, c-format -msgid "" -"Could not load quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2799 -#, c-format -msgid "" -"No outbound quota configured for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2840 -#, c-format -msgid "" -"No outbound quota configure for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3294 -#: src/ats-tests/gnunet-solver-eval.c:939 -msgid "solver to use" -msgstr "solveur utilisé" - -#: src/ats/gnunet-ats-solver-eval.c:3299 -#: src/ats-tests/gnunet-solver-eval.c:945 -#: src/ats-tests/gnunet-solver-eval.c:950 -msgid "experiment to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3306 -msgid "print logging" -msgstr "afficher le journal" - -#: src/ats/gnunet-ats-solver-eval.c:3311 -msgid "save logging to disk" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3316 -msgid "disable normalization" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:304 -#, c-format -msgid "" -"Could not load %s quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:314 -#, c-format -msgid "%s quota configured for network `%s' is %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:359 -#, c-format -msgid "" -"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:451 -#, c-format -msgid "Failed to initialize solver `%s'!\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1274 -msgid "Problem size too large, cannot allocate memory!\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1869 -#, c-format -msgid "Adding address for peer `%s' multiple times\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1913 -#, c-format -msgid "Updating address property for peer `%s' %p not added before\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2475 -msgid "" -"MLP solver is not optimizing for anything, changing to feasibility check\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 -#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 -#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 -#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 -#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 -#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 -#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 -#, fuzzy, c-format -msgid "Invalid %s configuration %f \n" -msgstr "fornat invalide : « %s »\n" - -#: src/ats/plugin_ats_mlp.c:2670 -#, c-format -msgid "" -"Adjusting inconsistent outbound quota configuration for network `%s', is " -"%llu must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2679 -#, c-format -msgid "" -"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " -"must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2689 -#, c-format -msgid "" -"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" -msgstr "" +#: src/ats-tests/ats-testing-log.c:837 +msgid "Stop logging\n" +msgstr "Arrêter la journalisation\n" -#: src/ats/plugin_ats_mlp.c:2698 +#: src/ats-tests/ats-testing-log.c:892 #, c-format -msgid "" -"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" -msgstr "" - -#: src/ats/plugin_ats_proportional.c:1164 -#, fuzzy, c-format -msgid "Invalid %s configuration %f\n" -msgstr "fornat invalide : « %s »\n" +msgid "Start logging `%s'\n" +msgstr "Démarrer la journalisation « %s »\n" #: src/ats-tests/ats-testing.c:422 #, c-format @@ -486,15 +367,6 @@ msgstr "" msgid "Failed to connect master peer [%u] with slave [%u]\n" msgstr "" -#: src/ats-tests/ats-testing-log.c:837 -msgid "Stop logging\n" -msgstr "Arrêter la journalisation\n" - -#: src/ats-tests/ats-testing-log.c:892 -#, c-format -msgid "Start logging `%s'\n" -msgstr "Démarrer la journalisation « %s »\n" - #: src/ats-tests/gnunet-ats-sim.c:90 #, c-format msgid "" @@ -502,6 +374,15 @@ msgid "" "= %u KiB/s\n" msgstr "" +#: src/ats-tests/gnunet-solver-eval.c:939 src/ats/gnunet-ats-solver-eval.c:3294 +msgid "solver to use" +msgstr "solveur utilisé" + +#: src/ats-tests/gnunet-solver-eval.c:945 +#: src/ats-tests/gnunet-solver-eval.c:950 src/ats/gnunet-ats-solver-eval.c:3299 +msgid "experiment to use" +msgstr "" + #: src/ats-tool/gnunet-ats.c:307 #, c-format msgid "%u address resolutions had a timeout\n" @@ -617,6 +498,123 @@ msgstr "" msgid "Print information about ATS state" msgstr "" +#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 +#, c-format +msgid "" +"Could not load quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2799 +#, c-format +msgid "" +"No outbound quota configured for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2840 +#, c-format +msgid "" +"No outbound quota configure for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3306 +msgid "print logging" +msgstr "afficher le journal" + +#: src/ats/gnunet-ats-solver-eval.c:3311 +msgid "save logging to disk" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3316 +msgid "disable normalization" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:304 +#, c-format +msgid "" +"Could not load %s quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:314 +#, c-format +msgid "%s quota configured for network `%s' is %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:359 +#, c-format +msgid "" +"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:451 +#, c-format +msgid "Failed to initialize solver `%s'!\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1274 +msgid "Problem size too large, cannot allocate memory!\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1869 +#, c-format +msgid "Adding address for peer `%s' multiple times\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1913 +#, c-format +msgid "Updating address property for peer `%s' %p not added before\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2475 +msgid "" +"MLP solver is not optimizing for anything, changing to feasibility check\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 +#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 +#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 +#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 +#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 +#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 +#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 +#, fuzzy, c-format +msgid "Invalid %s configuration %f \n" +msgstr "fornat invalide : « %s »\n" + +#: src/ats/plugin_ats_mlp.c:2670 +#, c-format +msgid "" +"Adjusting inconsistent outbound quota configuration for network `%s', is " +"%llu must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2679 +#, c-format +msgid "" +"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " +"must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2689 +#, c-format +msgid "" +"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2698 +#, c-format +msgid "" +"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_proportional.c:1164 +#, fuzzy, c-format +msgid "Invalid %s configuration %f\n" +msgstr "fornat invalide : « %s »\n" + #: src/auction/gnunet-auction-create.c:163 msgid "description of the item to be sold" msgstr "" @@ -755,6 +753,28 @@ msgstr "" msgid "Connection to conversation service lost, trying to reconnect\n" msgstr "" +#: src/conversation/gnunet-conversation-test.c:119 +#, c-format +msgid "" +"\n" +"End of transmission. Have a GNU day.\n" +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:145 +#, c-format +msgid "" +"\n" +"We are now playing your recording back. If you can hear it, your audio " +"settings are working..." +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:210 +#, c-format +msgid "" +"We will now be recording you for %s. After that time, the recording will be " +"played back to you..." +msgstr "" + #: src/conversation/gnunet-conversation.c:269 #, c-format msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n" @@ -1008,30 +1028,8 @@ msgstr "" msgid "Enables having a conversation with other GNUnet users." msgstr "" -#: src/conversation/gnunet-conversation-test.c:119 -#, c-format -msgid "" -"\n" -"End of transmission. Have a GNU day.\n" -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:145 -#, c-format -msgid "" -"\n" -"We are now playing your recording back. If you can hear it, your audio " -"settings are working..." -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:210 -#, c-format -msgid "" -"We will now be recording you for %s. After that time, the recording will be " -"played back to you..." -msgstr "" - -#: src/conversation/gnunet_gst.c:622 #: src/conversation/gnunet-helper-audio-playback-gst.c:356 +#: src/conversation/gnunet_gst.c:622 #, c-format msgid "Read error from STDIN: %d %s\n" msgstr "" @@ -1155,6 +1153,11 @@ msgstr "ogg_stream_init() échoué.\n" msgid "Failed to allocate %u bytes for second packet\n" msgstr "" +#: src/conversation/gnunet-service-conversation.c:1276 +#, c-format +msgid "Could not open line, port %s already in use!\n" +msgstr "" + #: src/conversation/microphone.c:119 msgid "Could not start record audio helper\n" msgstr "" @@ -1409,17 +1412,144 @@ msgstr "" msgid "# valid typemap confirmations received" msgstr "" -#: src/core/gnunet-service-core_typemap.c:169 -#: src/core/gnunet-service-core_typemap.c:181 -msgid "# type maps received" +#: src/core/gnunet-service-core_typemap.c:169 +#: src/core/gnunet-service-core_typemap.c:181 +msgid "# type maps received" +msgstr "" + +#: src/core/gnunet-service-core_typemap.c:212 +msgid "# updates to my type map" +msgstr "" + +#: src/credential/credential_misc.c:88 +#, c-format +msgid "Unable to parse CRED record string `%s'\n" +msgstr "" + +#: src/credential/gnunet-credential.c:278 src/namestore/gnunet-namestore.c:776 +#: src/namestore/plugin_rest_namestore.c:1009 +#, c-format +msgid "Ego `%s' not known to identity service\n" +msgstr "" + +#: src/credential/gnunet-credential.c:294 +#: src/credential/gnunet-credential.c:446 +#, c-format +msgid "Issuer public key `%s' is not well-formed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:375 +#: src/credential/gnunet-credential.c:435 +#, c-format +msgid "Issuer public key not well-formed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:386 +#: src/credential/gnunet-credential.c:455 +#, fuzzy, c-format +msgid "Failed to connect to CREDENTIAL\n" +msgstr "Impossible d’ouvrir « %s ».\n" + +#: src/credential/gnunet-credential.c:392 +#, c-format +msgid "You must provide issuer the attribute\n" +msgstr "" + +#: src/credential/gnunet-credential.c:399 +#, c-format +msgid "ego required\n" +msgstr "" + +#: src/credential/gnunet-credential.c:415 +#, c-format +msgid "Subject public key needed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:426 +#, c-format +msgid "Subject public key `%s' is not well-formed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:461 +#, c-format +msgid "You must provide issuer and subject attributes\n" +msgstr "" + +#: src/credential/gnunet-credential.c:511 +#, c-format +msgid "Issuer ego required\n" +msgstr "" + +#: src/credential/gnunet-credential.c:523 +#, c-format +msgid "Please specify name to lookup, subject key and issuer key!\n" +msgstr "" + +#: src/credential/gnunet-credential.c:543 +msgid "create credential" +msgstr "" + +#: src/credential/gnunet-credential.c:547 +msgid "verify credential against attribute" +msgstr "" + +#: src/credential/gnunet-credential.c:552 +msgid "The public key of the subject to lookup the credential for" +msgstr "" + +#: src/credential/gnunet-credential.c:557 +msgid "The name of the credential presented by the subject" +msgstr "" + +#: src/credential/gnunet-credential.c:562 +msgid "The public key of the authority to verify the credential against" +msgstr "" + +#: src/credential/gnunet-credential.c:567 +msgid "The ego to use" +msgstr "" + +#: src/credential/gnunet-credential.c:572 +msgid "The issuer attribute to verify against or to issue" +msgstr "" + +#: src/credential/gnunet-credential.c:577 +msgid "The time to live for the credential" +msgstr "" + +#: src/credential/gnunet-credential.c:581 +msgid "collect credentials" +msgstr "" + +#: src/credential/gnunet-credential.c:595 +msgid "GNUnet credential resolver tool" +msgstr "" + +#: src/credential/gnunet-service-credential.c:1204 +#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:355 +#, c-format +msgid "Failed to connect to GNS\n" +msgstr "" + +#: src/credential/gnunet-service-credential.c:1210 +#: src/namestore/gnunet-namestore-fcfsd.c:1034 +#: src/namestore/gnunet-namestore.c:802 +#: src/namestore/plugin_rest_namestore.c:1022 +#, c-format +msgid "Failed to connect to namestore\n" msgstr "" -#: src/core/gnunet-service-core_typemap.c:212 -msgid "# updates to my type map" +#: src/credential/plugin_gnsrecord_credential.c:186 +#, fuzzy, c-format +msgid "Unable to parse ATTR record string `%s'\n" +msgstr "Résolution de « %s » échouée\n" + +#: src/credential/plugin_rest_credential.c:1155 src/gns/plugin_rest_gns.c:668 +msgid "GNS REST API initialized\n" msgstr "" #: src/datacache/datacache.c:119 src/datacache/datacache.c:294 -#: src/datastore/gnunet-service-datastore.c:775 +#: src/datastore/gnunet-service-datastore.c:757 msgid "# bytes stored" msgstr "" @@ -1459,13 +1589,12 @@ msgstr "" #: src/datacache/plugin_datacache_sqlite.c:113 #: src/datacache/plugin_datacache_sqlite.c:122 -#: src/datastore/plugin_datastore_mysql.c:980 +#: src/datastore/plugin_datastore_mysql.c:892 #: src/datastore/plugin_datastore_sqlite.c:58 -#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:80 src/my/my.c:92 -#: src/mysql/mysql.c:42 src/mysql/mysql.c:49 -#: src/namecache/plugin_namecache_postgres.c:53 +#: src/datastore/plugin_datastore_sqlite.c:66 +#: src/identity-provider/plugin_identity_provider_sqlite.c:52 src/my/my.c:80 +#: src/my/my.c:92 src/mysql/mysql.c:42 src/mysql/mysql.c:49 #: src/namecache/plugin_namecache_sqlite.c:53 -#: src/namestore/plugin_namestore_postgres.c:53 #: src/namestore/plugin_namestore_sqlite.c:53 #: src/peerstore/plugin_peerstore_sqlite.c:52 #: src/psycstore/plugin_psycstore_mysql.c:62 @@ -1474,14 +1603,15 @@ msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:56 #: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:52 #: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39 -#: src/include/gnunet_common.h:720 src/include/gnunet_common.h:729 +#: src/include/gnunet_common.h:735 src/include/gnunet_common.h:744 #: src/scalarproduct/scalarproduct.h:35 #, c-format msgid "`%s' failed at %s:%d with error: %s\n" msgstr "" #: src/datacache/plugin_datacache_sqlite.c:817 -#: src/datastore/plugin_datastore_sqlite.c:475 +#: src/datastore/plugin_datastore_sqlite.c:456 +#: src/identity-provider/plugin_identity_provider_sqlite.c:336 #: src/namecache/plugin_namecache_sqlite.c:296 #: src/namestore/plugin_namestore_sqlite.c:355 msgid "Tried to close sqlite without finalizing all prepared statements.\n" @@ -1545,23 +1675,70 @@ msgstr "" msgid "# GET requests executed" msgstr "" -#: src/datastore/gnunet-datastore.c:113 +#: src/datastore/gnunet-datastore.c:189 +#, c-format +msgid "Dumped % records\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:217 src/datastore/gnunet-datastore.c:229 +#, c-format +msgid "Short write to file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:261 +msgid "Error queueing datastore GET operation\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:287 src/datastore/gnunet-datastore.c:412 +#, fuzzy, c-format +msgid "Unable to open dump file: %s\n" +msgstr "Résolution de « %s » échouée\n" + +#: src/datastore/gnunet-datastore.c:326 #, c-format msgid "Failed to store item: %s, aborting\n" msgstr "" -#: src/datastore/gnunet-datastore.c:209 +#: src/datastore/gnunet-datastore.c:340 #, c-format -msgid "Cannot use the same configuration for source and destination\n" +msgid "Inserted % records\n" msgstr "" -#: src/datastore/gnunet-datastore.c:256 -msgid "" -"specifies the configuration to use to access an alternative datastore; will " -"merge that datastore into our current datastore" +#: src/datastore/gnunet-datastore.c:349 src/datastore/gnunet-datastore.c:363 +#, c-format +msgid "Short read from file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:389 +msgid "Error queueing datastore PUT operation\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:432 +msgid "Input file is not of a supported format\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:458 +msgid "Failed connecting to the datastore.\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:470 +#, c-format +msgid "Please choose at least one operation: %s, %s\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:493 +msgid "Dump all records from the datastore" +msgstr "" + +#: src/datastore/gnunet-datastore.c:497 +msgid "Insert records into the datastore" msgstr "" -#: src/datastore/gnunet-datastore.c:265 +#: src/datastore/gnunet-datastore.c:502 +msgid "File to dump or insert" +msgstr "" + +#: src/datastore/gnunet-datastore.c:511 msgid "Manipulate GNUnet datastore" msgstr "" @@ -1603,8 +1780,8 @@ msgstr "" #: src/datastore/gnunet-service-datastore.c:634 #: src/datastore/gnunet-service-datastore.c:689 -#: src/datastore/gnunet-service-datastore.c:977 -#: src/datastore/gnunet-service-datastore.c:1633 +#: src/datastore/gnunet-service-datastore.c:837 +#: src/datastore/gnunet-service-datastore.c:1469 msgid "# reserved" msgstr "# réservé" @@ -1612,140 +1789,141 @@ msgstr "# réservé" msgid "Could not find matching reservation" msgstr "" -#: src/datastore/gnunet-service-datastore.c:792 +#: src/datastore/gnunet-service-datastore.c:773 #, c-format msgid "Need %llu bytes more space (%llu allowed, using %llu)\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1026 +#: src/datastore/gnunet-service-datastore.c:876 msgid "# GET requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1058 +#: src/datastore/gnunet-service-datastore.c:907 msgid "# GET KEY requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1071 +#: src/datastore/gnunet-service-datastore.c:920 msgid "# requests filtered by bloomfilter" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1108 +#: src/datastore/gnunet-service-datastore.c:956 msgid "# GET REPLICATION requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1141 +#: src/datastore/gnunet-service-datastore.c:989 msgid "# GET ZERO ANONYMITY requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1190 +#: src/datastore/gnunet-service-datastore.c:1036 msgid "Content not found" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1199 +#: src/datastore/gnunet-service-datastore.c:1043 msgid "# bytes removed (explicit request)" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1246 +#: src/datastore/gnunet-service-datastore.c:1088 msgid "# REMOVE requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1301 +#: src/datastore/gnunet-service-datastore.c:1137 #, c-format msgid "" "Datastore payload must have been inaccurate (%lld < %lld). Recomputing it.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1307 -#: src/datastore/gnunet-service-datastore.c:1482 +#: src/datastore/gnunet-service-datastore.c:1143 +#: src/datastore/gnunet-service-datastore.c:1318 #, c-format msgid "New payload: %lld\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1361 +#: src/datastore/gnunet-service-datastore.c:1197 #, c-format msgid "Loading `%s' datastore plugin\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1373 +#: src/datastore/gnunet-service-datastore.c:1209 #, c-format msgid "Failed to load datastore plugin for `%s'\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1433 +#: src/datastore/gnunet-service-datastore.c:1269 msgid "Bloomfilter construction complete.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1489 +#: src/datastore/gnunet-service-datastore.c:1325 msgid "Rebuilding bloomfilter. Please be patient.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1500 +#: src/datastore/gnunet-service-datastore.c:1336 msgid "Plugin does not support get_keys function. Please fix!\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1670 +#: src/datastore/gnunet-service-datastore.c:1506 #, c-format msgid "# bytes used in file-sharing datastore `%s'" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1686 +#: src/datastore/gnunet-service-datastore.c:1522 msgid "# quota" msgstr "# quota" -#: src/datastore/gnunet-service-datastore.c:1691 +#: src/datastore/gnunet-service-datastore.c:1527 msgid "# cache size" msgstr "# taille du cache" -#: src/datastore/gnunet-service-datastore.c:1707 +#: src/datastore/gnunet-service-datastore.c:1543 #, c-format msgid "Could not use specified filename `%s' for bloomfilter.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1725 -#: src/datastore/gnunet-service-datastore.c:1741 +#: src/datastore/gnunet-service-datastore.c:1561 +#: src/datastore/gnunet-service-datastore.c:1577 #, c-format msgid "Failed to remove bogus bloomfilter file `%s'\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1773 +#: src/datastore/gnunet-service-datastore.c:1609 msgid "Failed to initialize bloomfilter.\n" msgstr "" -#: src/datastore/plugin_datastore_heap.c:769 +#: src/datastore/plugin_datastore_heap.c:893 msgid "Heap database running\n" msgstr "" -#: src/datastore/plugin_datastore_mysql.c:377 -#: src/datastore/plugin_datastore_sqlite.c:590 -msgid "Data too large" +#: src/datastore/plugin_datastore_mysql.c:371 +#: src/datastore/plugin_datastore_mysql.c:423 +#: src/datastore/plugin_datastore_mysql.c:1075 +msgid "MySQL statement run failure" msgstr "" -#: src/datastore/plugin_datastore_mysql.c:393 -msgid "MySQL statement run failure" +#: src/datastore/plugin_datastore_mysql.c:410 +#: src/datastore/plugin_datastore_sqlite.c:626 +msgid "Data too large" msgstr "" -#: src/datastore/plugin_datastore_mysql.c:936 +#: src/datastore/plugin_datastore_mysql.c:848 #, c-format msgid "`%s' for `%s' failed at %s:%d with error: %s\n" msgstr "" -#: src/datastore/plugin_datastore_mysql.c:1208 +#: src/datastore/plugin_datastore_mysql.c:1180 #: src/psycstore/plugin_psycstore_mysql.c:1936 msgid "Mysql database running\n" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:345 +#: src/datastore/plugin_datastore_postgres.c:274 +#: src/datastore/plugin_datastore_postgres.c:891 msgid "Postgress exec failure" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:866 +#: src/datastore/plugin_datastore_postgres.c:852 msgid "Failed to drop table from database.\n" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:903 -#: src/namecache/plugin_namecache_postgres.c:398 -#: src/namestore/plugin_namestore_postgres.c:571 -#: src/psycstore/plugin_psycstore_postgres.c:1721 +#: src/datastore/plugin_datastore_postgres.c:950 +#: src/psycstore/plugin_psycstore_postgres.c:1506 msgid "Postgres database running\n" msgstr "" @@ -1757,7 +1935,8 @@ msgstr "" msgid "`%s' failed at %s:%u with error: %s" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:281 +#: src/datastore/plugin_datastore_sqlite.c:271 +#: src/identity-provider/plugin_identity_provider_sqlite.c:212 #: src/namecache/plugin_namecache_sqlite.c:194 #: src/namestore/plugin_namestore_sqlite.c:222 #: src/peerstore/plugin_peerstore_sqlite.c:535 @@ -1766,24 +1945,29 @@ msgstr "" msgid "Unable to initialize SQLite: %s.\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1234 +#: src/datastore/plugin_datastore_sqlite.c:577 +msgid "sqlite bind failure" +msgstr "" + +#: src/datastore/plugin_datastore_sqlite.c:1259 msgid "sqlite version to old to determine size, assuming zero\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1268 +#: src/datastore/plugin_datastore_sqlite.c:1293 #, c-format msgid "" "Using sqlite page utilization to estimate payload (%llu pages of size %llu " "bytes)\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1312 +#: src/datastore/plugin_datastore_sqlite.c:1337 +#: src/identity-provider/plugin_identity_provider_sqlite.c:711 #: src/namecache/plugin_namecache_sqlite.c:603 #: src/namestore/plugin_namestore_sqlite.c:802 msgid "Sqlite database running\n" msgstr "" -#: src/datastore/plugin_datastore_template.c:259 +#: src/datastore/plugin_datastore_template.c:253 msgid "Template database running\n" msgstr "" @@ -1846,52 +2030,6 @@ msgstr "" msgid "Prints all packets that go through the DHT." msgstr "" -#: src/dht/gnunet_dht_profiler.c:1161 -#: src/testbed/gnunet-testbed-profiler.c:255 -#, c-format -msgid "Exiting as the number of peers is %u\n" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1188 -#, fuzzy -msgid "number of peers to start" -msgstr "nombre de valeurs" - -#: src/dht/gnunet_dht_profiler.c:1194 -msgid "" -"maximum number of times we try to search for successor circle formation (0 " -"for R5N)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 -#: src/testbed/gnunet-testbed-profiler.c:305 -msgid "name of the file with the login information for the testbed" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1206 -msgid "delay between rounds for collecting statistics (default: 30 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1212 -msgid "delay to start doing PUTs (default: 1 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1218 -msgid "delay to start doing GETs (default: 5 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1223 -msgid "replication degree for DHT PUTs" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1230 -msgid "timeout for DHT PUT and GET requests (default: 1 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1248 -msgid "Measure quality and performance of the DHT service." -msgstr "" - #: src/dht/gnunet-dht-put.c:120 msgid "PUT request sent with key" msgstr "" @@ -2141,6 +2279,51 @@ msgstr "" msgid "# DHT requests combined" msgstr "" +#: src/dht/gnunet_dht_profiler.c:1161 src/testbed/gnunet-testbed-profiler.c:255 +#, c-format +msgid "Exiting as the number of peers is %u\n" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1188 +#, fuzzy +msgid "number of peers to start" +msgstr "nombre de valeurs" + +#: src/dht/gnunet_dht_profiler.c:1194 +msgid "" +"maximum number of times we try to search for successor circle formation (0 " +"for R5N)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 +#: src/testbed/gnunet-testbed-profiler.c:305 +msgid "name of the file with the login information for the testbed" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1206 +msgid "delay between rounds for collecting statistics (default: 30 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1212 +msgid "delay to start doing PUTs (default: 1 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1218 +msgid "delay to start doing GETs (default: 5 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1223 +msgid "replication degree for DHT PUTs" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1230 +msgid "timeout for DHT PUT and GET requests (default: 1 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1248 +msgid "Measure quality and performance of the DHT service." +msgstr "" + #: src/dht/plugin_block_dht.c:187 #, c-format msgid "Block not of type %u\n" @@ -2455,7 +2638,7 @@ msgstr "" msgid "No useful service enabled. Exiting.\n" msgstr "" -#: src/exit/gnunet-daemon-exit.c:3969 +#: src/exit/gnunet-daemon-exit.c:3970 msgid "Daemon to run to provide an IP exit node for the VPN" msgstr "" @@ -3074,14 +3257,6 @@ msgid "" "chk/...)" msgstr "" -#: src/fs/gnunet-fs.c:119 -msgid "print a list of all indexed files" -msgstr "" - -#: src/fs/gnunet-fs.c:130 -msgid "Special file-sharing operations" -msgstr "" - #: src/fs/gnunet-fs-profiler.c:211 msgid "run the experiment with COUNT peers" msgstr "" @@ -3098,6 +3273,14 @@ msgstr "" msgid "run a testbed to measure file-sharing performance" msgstr "" +#: src/fs/gnunet-fs.c:119 +msgid "print a list of all indexed files" +msgstr "" + +#: src/fs/gnunet-fs.c:130 +msgid "Special file-sharing operations" +msgstr "" + #: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231 #, c-format msgid "Publishing `%s' at %llu/%llu (%s remaining)\n" @@ -3743,22 +3926,11 @@ msgstr "" msgid "GNUnet DNS-to-GNS proxy (a DNS server)" msgstr "" -#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 -#, c-format -msgid "Invalid typename specified, assuming `ANY'\n" -msgstr "" - -#: src/gns/gnunet-gns.c:252 -#, c-format -msgid "Please specify name to lookup!\n" -msgstr "" - -#: src/gns/gnunet-gns.c:276 -#, c-format -msgid "Ego for `%s' not found, cannot perform lookup.\n" +#: src/gns/gnunet-gns-helper-service-w32.c:602 +msgid "Not ready to process requests, lacking ego data\n" msgstr "" -#: src/gns/gnunet-gns.c:315 src/gns/gnunet-gns-helper-service-w32.c:701 +#: src/gns/gnunet-gns-helper-service-w32.c:701 src/gns/gnunet-gns.c:315 #: src/gns/plugin_rest_gns.c:422 #, c-format msgid "" @@ -3766,54 +3938,12 @@ msgid "" "gns-import.sh?\n" msgstr "" -#: src/gns/gnunet-gns.c:355 src/gns/gnunet-gns-helper-service-w32.c:727 -#, c-format -msgid "Failed to connect to GNS\n" -msgstr "" - -#: src/gns/gnunet-gns.c:374 -#, c-format -msgid "Public key `%s' is not well-formed\n" -msgstr "" - -#: src/gns/gnunet-gns.c:428 -msgid "Lookup a record for the given name" -msgstr "" - -#: src/gns/gnunet-gns.c:434 -msgid "Specify the type of the record to lookup" -msgstr "" - -#: src/gns/gnunet-gns.c:440 -msgid "Specify timeout for the lookup" -msgstr "" - -#: src/gns/gnunet-gns.c:445 -msgid "No unneeded output" -msgstr "" - -#: src/gns/gnunet-gns.c:451 -msgid "Specify the public key of the zone to lookup the record in" -msgstr "" - -#: src/gns/gnunet-gns.c:457 -msgid "Specify the name of the ego of the zone to lookup the record in" -msgstr "" - -#: src/gns/gnunet-gns.c:476 -msgid "GNUnet GNS resolver tool" -msgstr "" - -#: src/gns/gnunet-gns-helper-service-w32.c:602 -msgid "Not ready to process requests, lacking ego data\n" -msgstr "" - #: src/gns/gnunet-gns-helper-service-w32.c:739 #, c-format msgid "Failed to connect to identity service\n" msgstr "" -#: src/gns/gnunet-gns-import.c:489 +#: src/gns/gnunet-gns-import.c:452 msgid "This program will import some GNS authorities into your GNS namestore." msgstr "" @@ -3896,45 +4026,93 @@ msgstr "" msgid "Failed to pass client to MHD\n" msgstr "" -#: src/gns/gnunet-gns-proxy.c:2704 +#: src/gns/gnunet-gns-proxy.c:2704 +#, c-format +msgid "Unsupported socks version %d\n" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:2733 +#, c-format +msgid "Unsupported socks command %d\n" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:2751 src/gns/gnunet-gns-proxy.c:2780 +msgid "SSL connection to plain IPv4 address requested\n" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:2830 +#, c-format +msgid "Unsupported socks address type %d\n" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3165 src/gns/gnunet-service-gns.c:403 +#, c-format +msgid "No ego configured for `%s`\n" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3226 +#, c-format +msgid "Failed to load SSL/TLS key and certificate from `%s'\n" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3269 +msgid "listen on specified port (default: 7777)" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3275 +msgid "pem file to use as CA" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3300 +msgid "GNUnet GNS proxy" +msgstr "" + +#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 +#, c-format +msgid "Invalid typename specified, assuming `ANY'\n" +msgstr "" + +#: src/gns/gnunet-gns.c:252 +#, c-format +msgid "Please specify name to lookup!\n" +msgstr "" + +#: src/gns/gnunet-gns.c:276 #, c-format -msgid "Unsupported socks version %d\n" +msgid "Ego for `%s' not found, cannot perform lookup.\n" msgstr "" -#: src/gns/gnunet-gns-proxy.c:2733 +#: src/gns/gnunet-gns.c:374 #, c-format -msgid "Unsupported socks command %d\n" +msgid "Public key `%s' is not well-formed\n" msgstr "" -#: src/gns/gnunet-gns-proxy.c:2751 src/gns/gnunet-gns-proxy.c:2780 -msgid "SSL connection to plain IPv4 address requested\n" +#: src/gns/gnunet-gns.c:428 +msgid "Lookup a record for the given name" msgstr "" -#: src/gns/gnunet-gns-proxy.c:2830 -#, c-format -msgid "Unsupported socks address type %d\n" +#: src/gns/gnunet-gns.c:434 +msgid "Specify the type of the record to lookup" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3165 src/gns/gnunet-service-gns.c:403 -#, c-format -msgid "No ego configured for `%s`\n" +#: src/gns/gnunet-gns.c:440 +msgid "Specify timeout for the lookup" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3226 -#, c-format -msgid "Failed to load SSL/TLS key and certificate from `%s'\n" +#: src/gns/gnunet-gns.c:445 +msgid "No unneeded output" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3269 -msgid "listen on specified port (default: 7777)" +#: src/gns/gnunet-gns.c:451 +msgid "Specify the public key of the zone to lookup the record in" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3275 -msgid "pem file to use as CA" +#: src/gns/gnunet-gns.c:457 +msgid "Specify the name of the ego of the zone to lookup the record in" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3300 -msgid "GNUnet GNS proxy" +#: src/gns/gnunet-gns.c:476 +msgid "GNUnet GNS resolver tool" msgstr "" #: src/gns/gnunet-service-gns.c:442 @@ -3942,7 +4120,7 @@ msgid "Failed to connect to the namecache!\n" msgstr "" #: src/gns/gnunet-service-gns.c:461 -#: src/zonemaster/gnunet-service-zonemaster.c:741 +#: src/zonemaster/gnunet-service-zonemaster.c:742 msgid "Could not connect to DHT!\n" msgstr "" @@ -3997,44 +4175,35 @@ msgstr "" msgid "Hostname `%s' is not well-formed, resolution fails\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:203 +#: src/gns/plugin_gnsrecord_gns.c:179 #, c-format msgid "Unable to parse PKEY record `%s'\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:232 +#: src/gns/plugin_gnsrecord_gns.c:208 #, c-format msgid "Unable to parse GNS2DNS record `%s'\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:253 +#: src/gns/plugin_gnsrecord_gns.c:229 #, c-format msgid "Failed to serialize GNS2DNS record with value `%s'\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:276 +#: src/gns/plugin_gnsrecord_gns.c:252 #, c-format msgid "Unable to parse VPN record string `%s'\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:312 +#: src/gns/plugin_gnsrecord_gns.c:288 #, c-format msgid "Unable to parse BOX record string `%s'\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:360 -#, c-format -msgid "Unable to parse REVERSE record string `%s'\n" -msgstr "" - #: src/gns/plugin_rest_gns.c:384 msgid "Ego for not found, cannot perform lookup.\n" msgstr "" -#: src/gns/plugin_rest_gns.c:668 -msgid "GNS REST API initialized\n" -msgstr "" - #: src/gnsrecord/plugin_gnsrecord_dns.c:359 #, c-format msgid "Unable to parse IPv4 address `%s'\n" @@ -4454,6 +4623,51 @@ msgstr "" msgid "Could not start hostlist HTTP server on port %u\n" msgstr "" +#: src/identity-provider/gnunet-idp.c:348 +msgid "Ego is required\n" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:370 +msgid "Add attribute" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:376 +msgid "Attribute value" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:381 +msgid "Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:386 +msgid "Audience (relying party)" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:390 +msgid "List attributes for Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:395 +msgid "Issue a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:400 +msgid "Consume a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:405 +msgid "Revoke a ticket" +msgstr "" + +#: src/identity-provider/identity_provider_api.c:429 +#, fuzzy +msgid "failed to store record\n" +msgstr "Échec du démarrage de %s\n" + +#: src/identity-provider/plugin_rest_identity_provider.c:1175 +msgid "Identity Provider REST API initialized\n" +msgstr "" + #: src/identity/gnunet-identity.c:179 #, c-format msgid "Failed to create ego: %s\n" @@ -4541,31 +4755,10 @@ msgstr "" msgid "Failed to create directory `%s' for storing egos\n" msgstr "" -#: src/identity/plugin_rest_identity.c:967 +#: src/identity/plugin_rest_identity.c:964 msgid "Identity REST API initialized\n" msgstr "" -#: src/identity-provider/gnunet-identity-token.c:66 -msgid "Option `-t' is required\n" -msgstr "" - -#: src/identity-provider/gnunet-identity-token.c:77 -#, c-format -msgid "Token `%s' is malformed\n" -msgstr "" - -#: src/identity-provider/gnunet-identity-token.c:166 -msgid "GNUid token" -msgstr "" - -#: src/identity-provider/gnunet-identity-token.c:171 -msgid "Print token contents" -msgstr "" - -#: src/identity-provider/plugin_rest_identity_provider.c:1166 -msgid "Identity Token REST API initialized\n" -msgstr "" - #: src/json/json.c:119 #, fuzzy, c-format msgid "Failed to parse JSON in option `%s': %s (%s)\n" @@ -4663,9 +4856,62 @@ msgstr "Résolution de « %s » échouée\n" msgid "flat plugin running\n" msgstr "" -#: src/namecache/plugin_namecache_postgres.c:90 -#: src/namestore/plugin_namestore_postgres.c:97 -msgid "Failed to create indices\n" +#: src/namestore/gnunet-namestore-fcfsd.c:508 +#, c-format +msgid "Unsupported form value `%s'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:535 +#, c-format +msgid "Failed to create record for domain `%s': %s\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:555 +msgid "Error when mapping zone to name\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:585 +#, c-format +msgid "Found existing name `%s' for the given key\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:662 +#, c-format +msgid "Found %u existing records for domain `%s'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:718 +#, c-format +msgid "Failed to create page for `%s'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:734 +#, c-format +msgid "Failed to setup post processor for `%s'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:770 +msgid "Domain name must not contain `.'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:778 +msgid "Domain name must not contain `+'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:974 +msgid "No ego configured for `fcfsd` subsystem\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:1000 +msgid "Failed to start HTTP server\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:1042 +msgid "Failed to connect to identity\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:1074 +msgid "GNU Name System First Come First Serve name registration service" msgstr "" #: src/namestore/gnunet-namestore.c:301 @@ -4674,13 +4920,13 @@ msgid "Adding record failed: %s\n" msgstr "" #: src/namestore/gnunet-namestore.c:330 -#: src/namestore/plugin_rest_namestore.c:562 +#: src/namestore/plugin_rest_namestore.c:567 #, c-format msgid "Deleting record failed, record does not exist%s%s\n" msgstr "" #: src/namestore/gnunet-namestore.c:337 -#: src/namestore/plugin_rest_namestore.c:571 +#: src/namestore/plugin_rest_namestore.c:576 #, c-format msgid "Deleting record failed%s%s\n" msgstr "" @@ -4698,7 +4944,7 @@ msgid "Records already exist under `%s', cannot add `%s' record.\n" msgstr "" #: src/namestore/gnunet-namestore.c:698 -#: src/namestore/plugin_rest_namestore.c:597 +#: src/namestore/plugin_rest_namestore.c:602 #, c-format msgid "There are no records under label `%s' that could be deleted.\n" msgstr "" @@ -4709,23 +4955,11 @@ msgid "" "There are no records under label `%s' that match the request for deletion.\n" msgstr "" -#: src/namestore/gnunet-namestore.c:776 -#: src/namestore/plugin_rest_namestore.c:1004 -#, c-format -msgid "Ego `%s' not known to identity service\n" -msgstr "" - #: src/namestore/gnunet-namestore.c:791 #, c-format msgid "No options given\n" msgstr "" -#: src/namestore/gnunet-namestore.c:802 -#: src/namestore/gnunet-namestore-fcfsd.c:1034 -#: src/namestore/plugin_rest_namestore.c:1017 -msgid "Failed to connect to namestore\n" -msgstr "" - #: src/namestore/gnunet-namestore.c:810 src/namestore/gnunet-namestore.c:819 #: src/namestore/gnunet-namestore.c:838 src/namestore/gnunet-namestore.c:861 #: src/namestore/gnunet-namestore.c:915 @@ -4739,14 +4973,14 @@ msgid "add" msgstr "ajouter" #: src/namestore/gnunet-namestore.c:829 -#: src/namestore/plugin_rest_namestore.c:671 +#: src/namestore/plugin_rest_namestore.c:676 #, c-format msgid "Unsupported type `%s'\n" msgstr "" #: src/namestore/gnunet-namestore.c:851 -#: src/namestore/plugin_rest_namestore.c:689 -#: src/namestore/plugin_rest_namestore.c:729 +#: src/namestore/plugin_rest_namestore.c:694 +#: src/namestore/plugin_rest_namestore.c:734 #, c-format msgid "Value `%s' invalid for record type `%s'\n" msgstr "" @@ -4765,8 +4999,7 @@ msgstr "supprimer" msgid "Invalid public key for reverse lookup `%s'\n" msgstr "" -#: src/namestore/gnunet-namestore.c:979 -#: src/peerinfo-tool/gnunet-peerinfo.c:775 +#: src/namestore/gnunet-namestore.c:979 src/peerinfo-tool/gnunet-peerinfo.c:775 #, c-format msgid "Invalid URI `%s'\n" msgstr "URI invalide « %s »\n" @@ -4777,13 +5010,13 @@ msgid "Invalid nick `%s'\n" msgstr "" #: src/namestore/gnunet-namestore.c:1051 -#: src/namestore/plugin_rest_namestore.c:1047 +#: src/namestore/plugin_rest_namestore.c:1052 #, c-format msgid "No default ego configured in identity service\n" msgstr "" #: src/namestore/gnunet-namestore.c:1108 -#: src/namestore/plugin_rest_namestore.c:1143 +#: src/namestore/plugin_rest_namestore.c:1148 #, c-format msgid "Cannot connect to identity service\n" msgstr "" @@ -4843,65 +5076,7 @@ msgstr "" msgid "name of the ego controlling the zone" msgstr "" -#: src/namestore/gnunet-namestore-fcfsd.c:508 -#, c-format -msgid "Unsupported form value `%s'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:535 -#, c-format -msgid "Failed to create record for domain `%s': %s\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:555 -msgid "Error when mapping zone to name\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:585 -#, c-format -msgid "Found existing name `%s' for the given key\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:662 -#, c-format -msgid "Found %u existing records for domain `%s'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:718 -#, c-format -msgid "Failed to create page for `%s'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:734 -#, c-format -msgid "Failed to setup post processor for `%s'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:770 -msgid "Domain name must not contain `.'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:778 -msgid "Domain name must not contain `+'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:974 -msgid "No ego configured for `fcfsd` subsystem\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:1000 -msgid "Failed to start HTTP server\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:1042 -msgid "Failed to connect to identity\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:1074 -msgid "GNU Name System First Come First Serve name registration service" -msgstr "" - -#: src/namestore/gnunet-service-namestore.c:612 +#: src/namestore/gnunet-service-namestore.c:615 #, c-format msgid "Failed to replicate block in namecache: %s\n" msgstr "" @@ -4914,7 +5089,7 @@ msgstr "" msgid "flat file database running\n" msgstr "" -#: src/namestore/plugin_rest_namestore.c:1188 +#: src/namestore/plugin_rest_namestore.c:1193 msgid "Namestore REST API initialized\n" msgstr "" @@ -5189,91 +5364,37 @@ msgstr "" msgid "`upnpc' command not found\n" msgstr "" -#: src/nse/gnunet-nse.c:122 -msgid "Show network size estimates from NSE service." -msgstr "" - -#: src/nse/gnunet-nse-profiler.c:842 -msgid "limit to the number of connections to NSE services, 0 for none" -msgstr "" - -#: src/nse/gnunet-nse-profiler.c:847 -msgid "name of the file for writing connection information and statistics" -msgstr "" - -#: src/nse/gnunet-nse-profiler.c:859 -msgid "name of the file for writing the main results" -msgstr "" - -#: src/nse/gnunet-nse-profiler.c:866 -msgid "Number of peers to run in each round, separated by commas" -msgstr "" - -#: src/nse/gnunet-nse-profiler.c:877 -msgid "delay between rounds" -msgstr "" - -#: src/nse/gnunet-nse-profiler.c:886 -msgid "Measure quality and performance of the NSE service." -msgstr "" - -#: src/nse/gnunet-service-nse.c:1534 -#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 -msgid "Value is too large.\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:178 -#, c-format -msgid "Removing expired address of transport `%s'\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:310 -#, c-format -msgid "Failed to parse HELLO in file `%s': %s\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:331 -#: src/peerinfo/gnunet-service-peerinfo.c:362 -#, c-format -msgid "Failed to parse HELLO in file `%s'\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:446 -msgid "# peers known" +#: src/nse/gnunet-nse-profiler.c:842 +msgid "limit to the number of connections to NSE services, 0 for none" msgstr "" -#: src/peerinfo/gnunet-service-peerinfo.c:489 -#, c-format -msgid "" -"File `%s' in directory `%s' does not match naming convention. Removed.\n" +#: src/nse/gnunet-nse-profiler.c:847 +msgid "name of the file for writing connection information and statistics" msgstr "" -#: src/peerinfo/gnunet-service-peerinfo.c:655 -#, c-format -msgid "Scanning directory `%s'\n" +#: src/nse/gnunet-nse-profiler.c:859 +msgid "name of the file for writing the main results" msgstr "" -#: src/peerinfo/gnunet-service-peerinfo.c:663 -#, c-format -msgid "Still no peers found in `%s'!\n" +#: src/nse/gnunet-nse-profiler.c:866 +msgid "Number of peers to run in each round, separated by commas" msgstr "" -#: src/peerinfo/gnunet-service-peerinfo.c:1076 -#, c-format -msgid "Cleaning up directory `%s'\n" +#: src/nse/gnunet-nse-profiler.c:877 +msgid "delay between rounds" msgstr "" -#: src/peerinfo/gnunet-service-peerinfo.c:1405 -#, c-format -msgid "Importing HELLOs from `%s'\n" +#: src/nse/gnunet-nse-profiler.c:886 +msgid "Measure quality and performance of the NSE service." msgstr "" -#: src/peerinfo/gnunet-service-peerinfo.c:1418 -msgid "Skipping import of included HELLOs\n" +#: src/nse/gnunet-nse.c:122 +msgid "Show network size estimates from NSE service." msgstr "" -#: src/peerinfo/peerinfo_api.c:220 -msgid "Failed to receive response from `PEERINFO' service." +#: src/nse/gnunet-service-nse.c:1534 +#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 +msgid "Value is too large.\n" msgstr "" #: src/peerinfo-tool/gnunet-peerinfo.c:239 @@ -5365,6 +5486,60 @@ msgstr "" msgid "Failed to load transport plugin for `%s'\n" msgstr "" +#: src/peerinfo/gnunet-service-peerinfo.c:178 +#, c-format +msgid "Removing expired address of transport `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:310 +#, c-format +msgid "Failed to parse HELLO in file `%s': %s\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:331 +#: src/peerinfo/gnunet-service-peerinfo.c:362 +#, c-format +msgid "Failed to parse HELLO in file `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:446 +msgid "# peers known" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:489 +#, c-format +msgid "" +"File `%s' in directory `%s' does not match naming convention. Removed.\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:655 +#, c-format +msgid "Scanning directory `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:663 +#, c-format +msgid "Still no peers found in `%s'!\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1076 +#, c-format +msgid "Cleaning up directory `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1405 +#, c-format +msgid "Importing HELLOs from `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1418 +msgid "Skipping import of included HELLOs\n" +msgstr "" + +#: src/peerinfo/peerinfo_api.c:220 +msgid "Failed to receive response from `PEERINFO' service." +msgstr "" + #: src/peerstore/gnunet-peerstore.c:91 msgid "peerstore" msgstr "" @@ -5412,16 +5587,11 @@ msgstr "" msgid "Unable to create indices: %s.\n" msgstr "" -#: src/postgres/postgres.c:67 +#: src/pq/pq_prepare.c:80 #, c-format -msgid "`%s:%s' failed at %s:%d with error: %s\n" +msgid "PQprepare (`%s' as `%s') failed with error: %s\n" msgstr "" -#: src/postgres/postgres.c:192 -#, fuzzy, c-format -msgid "Unable to connect to Postgres database '%s': %s\n" -msgstr "Résolution de « %s » échouée\n" - #: src/psycstore/gnunet-service-psycstore.c:249 msgid "Failed to store membership information!\n" msgstr "" @@ -5580,56 +5750,56 @@ msgstr "" msgid "Daemon to announce regular expressions for the peer using cadet." msgstr "" -#: src/regex/gnunet-regex-profiler.c:1314 +#: src/regex/gnunet-regex-profiler.c:1386 msgid "No configuration file given. Exiting\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1355 +#: src/regex/gnunet-regex-profiler.c:1427 #: src/regex/gnunet-regex-simulation-profiler.c:630 #, c-format msgid "No policy directory specified on command line. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1361 +#: src/regex/gnunet-regex-profiler.c:1433 #: src/regex/gnunet-regex-simulation-profiler.c:638 #, c-format msgid "Specified policies directory does not exist. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1368 +#: src/regex/gnunet-regex-profiler.c:1440 #, c-format msgid "No files found in `%s'\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1377 +#: src/regex/gnunet-regex-profiler.c:1449 msgid "No search strings file given. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1397 +#: src/regex/gnunet-regex-profiler.c:1469 msgid "Error loading search strings. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1485 +#: src/regex/gnunet-regex-profiler.c:1557 msgid "name of the file for writing statistics" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1491 +#: src/regex/gnunet-regex-profiler.c:1563 msgid "wait TIMEOUT before ending the experiment" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1497 +#: src/regex/gnunet-regex-profiler.c:1569 msgid "directory with policy files" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1504 +#: src/regex/gnunet-regex-profiler.c:1576 msgid "name of file with input strings" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1510 +#: src/regex/gnunet-regex-profiler.c:1582 msgid "name of file with hosts' names" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1523 +#: src/regex/gnunet-regex-profiler.c:1595 msgid "Profiler for regex" msgstr "" @@ -5851,10 +6021,10 @@ msgstr "" msgid "Calculate the Vectorproduct with a GNUnet peer." msgstr "" -#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1407 -#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 -#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1180 +#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172 #: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063 +#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401 +#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 msgid "Connect to CADET failed\n" msgstr "" @@ -5878,7 +6048,7 @@ msgstr "threshold" msgid "also profile decryption" msgstr "" -#: src/set/gnunet-service-set.c:1948 +#: src/set/gnunet-service-set.c:1989 #, fuzzy msgid "Could not connect to CADET service\n" msgstr "Impossible d’ouvrir « %s ».\n" @@ -5935,112 +6105,112 @@ msgstr "" msgid "say good-bye and leave somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1227 src/social/gnunet-social.c:1232 +#: src/social/gnunet-social.c:1227 msgid "create a place" msgstr "" -#: src/social/gnunet-social.c:1237 +#: src/social/gnunet-social.c:1232 msgid "destroy a place we were hosting" msgstr "" -#: src/social/gnunet-social.c:1242 +#: src/social/gnunet-social.c:1237 msgid "enter somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1248 +#: src/social/gnunet-social.c:1243 msgid "find state matching name prefix" msgstr "" -#: src/social/gnunet-social.c:1253 +#: src/social/gnunet-social.c:1248 msgid "replay history of messages up to the given --limit" msgstr "" -#: src/social/gnunet-social.c:1258 +#: src/social/gnunet-social.c:1253 msgid "reconnect to a previously created place" msgstr "" -#: src/social/gnunet-social.c:1263 +#: src/social/gnunet-social.c:1258 msgid "publish something to a place we are hosting" msgstr "" -#: src/social/gnunet-social.c:1268 +#: src/social/gnunet-social.c:1263 msgid "reconnect to a previously entered place" msgstr "" -#: src/social/gnunet-social.c:1273 +#: src/social/gnunet-social.c:1268 msgid "search for state matching exact name" msgstr "" -#: src/social/gnunet-social.c:1278 +#: src/social/gnunet-social.c:1273 msgid "submit something to somebody's place" msgstr "" -#: src/social/gnunet-social.c:1283 +#: src/social/gnunet-social.c:1278 msgid "list of egos and subscribed places" msgstr "" -#: src/social/gnunet-social.c:1288 +#: src/social/gnunet-social.c:1283 msgid "extract and replay history between message IDs --start and --until" msgstr "" -#: src/social/gnunet-social.c:1297 +#: src/social/gnunet-social.c:1292 msgid "application ID to use when connecting" msgstr "" -#: src/social/gnunet-social.c:1303 +#: src/social/gnunet-social.c:1298 msgid "message body or state value" msgstr "" -#: src/social/gnunet-social.c:1309 +#: src/social/gnunet-social.c:1304 msgid "name or public key of ego" msgstr "" -#: src/social/gnunet-social.c:1314 +#: src/social/gnunet-social.c:1309 msgid "wait for incoming messages" msgstr "" -#: src/social/gnunet-social.c:1320 +#: src/social/gnunet-social.c:1315 msgid "GNS name" msgstr "" -#: src/social/gnunet-social.c:1326 +#: src/social/gnunet-social.c:1321 msgid "peer ID for --guest-enter" msgstr "" -#: src/social/gnunet-social.c:1332 +#: src/social/gnunet-social.c:1327 msgid "name (key) to query from state" msgstr "" -#: src/social/gnunet-social.c:1338 +#: src/social/gnunet-social.c:1333 msgid "method name" msgstr "" -#: src/social/gnunet-social.c:1344 +#: src/social/gnunet-social.c:1339 #, fuzzy msgid "number of messages to replay from history" msgstr "nombre de valeurs" -#: src/social/gnunet-social.c:1350 +#: src/social/gnunet-social.c:1345 msgid "key address of place" msgstr "" -#: src/social/gnunet-social.c:1356 +#: src/social/gnunet-social.c:1351 msgid "start message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1361 +#: src/social/gnunet-social.c:1356 msgid "respond to entry requests by admitting all guests" msgstr "" -#: src/social/gnunet-social.c:1367 +#: src/social/gnunet-social.c:1362 msgid "end message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1372 +#: src/social/gnunet-social.c:1367 msgid "respond to entry requests by refusing all guests" msgstr "" -#: src/social/gnunet-social.c:1382 +#: src/social/gnunet-social.c:1377 msgid "" "gnunet-social - Interact with the social service: enter/leave, send/receive " "messages, access history and state.\n" @@ -6230,7 +6400,7 @@ msgid "" msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:231 src/testing/list-keys.c:46 -#: src/testing/testing.c:288 src/util/gnunet-ecc.c:298 +#: src/testing/testing.c:288 src/util/gnunet-ecc.c:301 #, c-format msgid "Incorrect hostkey file format: %s\n" msgstr "" @@ -6300,15 +6470,6 @@ msgstr "" msgid "%.s Unknown result code." msgstr "%.s Code d'erreur inconnu" -#: src/testbed/gnunet_testbed_mpi_spawn.c:118 -msgid "Waiting for child to exit.\n" -msgstr "" - -#: src/testbed/gnunet_testbed_mpi_spawn.c:241 -#, c-format -msgid "Spawning process `%s'\n" -msgstr "" - #: src/testbed/gnunet-testbed-profiler.c:290 msgid "tolerate COUNT number of continious timeout failures" msgstr "" @@ -6320,6 +6481,15 @@ msgid "" "signal is received" msgstr "" +#: src/testbed/gnunet_testbed_mpi_spawn.c:118 +msgid "Waiting for child to exit.\n" +msgstr "" + +#: src/testbed/gnunet_testbed_mpi_spawn.c:241 +#, c-format +msgid "Spawning process `%s'\n" +msgstr "" + #: src/testbed/testbed_api.c:410 #, c-format msgid "Adding host %u failed with error: %s\n" @@ -6607,10 +6777,6 @@ msgstr "" msgid "GNUnet topology control" msgstr "" -#: src/transport/gnunet-service-transport_ats.c:141 -msgid "# Addresses given to ATS" -msgstr "" - #: src/transport/gnunet-service-transport.c:448 msgid "# messages dropped due to slow client" msgstr "" @@ -6655,6 +6821,10 @@ msgstr "" msgid "Transport service is lacking key configuration settings. Exiting.\n" msgstr "" +#: src/transport/gnunet-service-transport_ats.c:141 +msgid "# Addresses given to ATS" +msgstr "" + #: src/transport/gnunet-service-transport_hello.c:195 msgid "# refreshed my HELLO" msgstr "" @@ -6956,6 +7126,42 @@ msgstr "" msgid "# validations succeeded" msgstr "" +#: src/transport/gnunet-transport-profiler.c:219 +#, c-format +msgid "%llu B in %llu ms == %.2f KB/s!\n" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:617 +msgid "send data to peer" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:621 +msgid "receive data from peer" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:626 +msgid "iterations" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:631 +#, fuzzy +msgid "number of messages to send" +msgstr "nombre de valeurs" + +#: src/transport/gnunet-transport-profiler.c:636 +msgid "message size to use" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:641 +#: src/transport/gnunet-transport.c:1462 +msgid "peer identity" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:652 +#: src/transport/gnunet-transport.c:1482 +msgid "Direct access to transport service." +msgstr "" + #: src/transport/gnunet-transport.c:413 #, c-format msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n" @@ -7084,11 +7290,6 @@ msgstr "" msgid "do not resolve hostnames" msgstr "" -#: src/transport/gnunet-transport.c:1462 -#: src/transport/gnunet-transport-profiler.c:641 -msgid "peer identity" -msgstr "" - #: src/transport/gnunet-transport.c:1466 msgid "monitor plugin sessions" msgstr "" @@ -7097,40 +7298,9 @@ msgstr "" msgid "send data for benchmarking to the other peer (until CTRL-C)" msgstr "" -#: src/transport/gnunet-transport.c:1482 -#: src/transport/gnunet-transport-profiler.c:652 -msgid "Direct access to transport service." -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:219 -#, c-format -msgid "%llu B in %llu ms == %.2f KB/s!\n" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:617 -msgid "send data to peer" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:621 -msgid "receive data from peer" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:626 -msgid "iterations" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:631 -#, fuzzy -msgid "number of messages to send" -msgstr "nombre de valeurs" - -#: src/transport/gnunet-transport-profiler.c:636 -msgid "message size to use" -msgstr "" - #: src/transport/plugin_transport_http_client.c:1474 -#: src/transport/plugin_transport_http_server.c:2249 -#: src/transport/plugin_transport_http_server.c:3463 +#: src/transport/plugin_transport_http_server.c:2312 +#: src/transport/plugin_transport_http_server.c:3526 #: src/transport/plugin_transport_tcp.c:3890 #: src/transport/plugin_transport_tcp.c:3897 msgid "TCP_STEALTH not supported on this platform.\n" @@ -7142,13 +7312,13 @@ msgid "Could not initialize curl multi handle, failed to start %s plugin!\n" msgstr "" #: src/transport/plugin_transport_http_client.c:2164 -#: src/transport/plugin_transport_http_server.c:3178 +#: src/transport/plugin_transport_http_server.c:3241 #, c-format msgid "Shutting down plugin `%s'\n" msgstr "" #: src/transport/plugin_transport_http_client.c:2181 -#: src/transport/plugin_transport_http_server.c:3248 +#: src/transport/plugin_transport_http_server.c:3311 #, c-format msgid "Shutdown for plugin `%s' complete\n" msgstr "" @@ -7158,102 +7328,102 @@ msgstr "" msgid "Maximum number of requests is %u\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1727 +#: src/transport/plugin_transport_http_server.c:1756 #, c-format msgid "" "Access from connection %p (%u of %u) for `%s' `%s' url `%s' with upload data " "size %u\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1967 +#: src/transport/plugin_transport_http_server.c:2028 #, c-format msgid "Accepting connection (%u of %u) from `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1975 +#: src/transport/plugin_transport_http_server.c:2036 #, c-format msgid "" "Server reached maximum number connections (%u), rejecting new connection\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2125 +#: src/transport/plugin_transport_http_server.c:2186 msgid "" "Could not create a new TLS certificate, program `gnunet-transport-" "certificate-creation' could not be started!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2148 +#: src/transport/plugin_transport_http_server.c:2209 #, c-format msgid "No usable TLS certificate found and creating one at `%s/%s' failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2275 +#: src/transport/plugin_transport_http_server.c:2338 msgid "Could not load or create server certificate! Loading plugin failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2587 +#: src/transport/plugin_transport_http_server.c:2650 msgid "Require valid port number for service in configuration!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2752 +#: src/transport/plugin_transport_http_server.c:2815 #, c-format msgid "Found %u addresses to report to NAT service\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2838 +#: src/transport/plugin_transport_http_server.c:2901 #: src/transport/plugin_transport_udp.c:3622 msgid "Disabling IPv6 since it is not supported on this system!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2944 +#: src/transport/plugin_transport_http_server.c:3007 #, c-format msgid "IPv4 support is %s\n" msgstr "Prise en charge d’IPv4 %s\n" -#: src/transport/plugin_transport_http_server.c:2959 +#: src/transport/plugin_transport_http_server.c:3022 #, c-format msgid "IPv6 support is %s\n" msgstr "Prise en charge d’IPv6 %s\n" -#: src/transport/plugin_transport_http_server.c:2965 +#: src/transport/plugin_transport_http_server.c:3028 msgid "Neither IPv4 nor IPv6 are enabled! Fix in configuration\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2976 +#: src/transport/plugin_transport_http_server.c:3039 msgid "Port is required! Fix in configuration\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2982 +#: src/transport/plugin_transport_http_server.c:3045 #, c-format msgid "Using port %u\n" msgstr "Utilisation du port %u\n" -#: src/transport/plugin_transport_http_server.c:3001 +#: src/transport/plugin_transport_http_server.c:3064 #, c-format msgid "Specific IPv4 address `%s' in configuration file is invalid!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3036 +#: src/transport/plugin_transport_http_server.c:3099 #, c-format msgid "Specific IPv6 address `%s' in configuration file is invalid!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3111 +#: src/transport/plugin_transport_http_server.c:3174 #, c-format msgid "Using external hostname `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3132 +#: src/transport/plugin_transport_http_server.c:3195 #, c-format msgid "Notifying transport only about hostname `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3149 +#: src/transport/plugin_transport_http_server.c:3212 #, c-format msgid "Maximum number of connections is %u\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3475 +#: src/transport/plugin_transport_http_server.c:3538 msgid "Unable to compile URL regex\n" msgstr "" @@ -7393,20 +7563,6 @@ msgstr "" msgid "TCP transport advertises itself as being on port %llu\n" msgstr "" -#: src/transport/plugin_transport_udp_broadcasting.c:168 -msgid "# Multicast HELLO beacons received via UDP" -msgstr "" - -#: src/transport/plugin_transport_udp_broadcasting.c:548 -msgid "" -"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" -msgstr "" - -#: src/transport/plugin_transport_udp_broadcasting.c:565 -#, c-format -msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" -msgstr "" - #: src/transport/plugin_transport_udp.c:3366 #, c-format msgid "" @@ -7453,6 +7609,20 @@ msgstr "adresse invalide" msgid "Failed to create UDP network sockets\n" msgstr "" +#: src/transport/plugin_transport_udp_broadcasting.c:168 +msgid "# Multicast HELLO beacons received via UDP" +msgstr "" + +#: src/transport/plugin_transport_udp_broadcasting.c:548 +msgid "" +"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" +msgstr "" + +#: src/transport/plugin_transport_udp_broadcasting.c:565 +#, c-format +msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" +msgstr "" + #: src/transport/plugin_transport_unix.c:1403 #, c-format msgid "Cannot create path to `%s'\n" @@ -7557,7 +7727,7 @@ msgid "" "`GNUNET_SERVER_receive_done' after %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2337 +#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2336 #, c-format msgid "Unknown address family %d\n" msgstr "" @@ -7602,50 +7772,50 @@ msgstr "" msgid "Service `%s' runs at %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1501 +#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1500 msgid "Service process failed to initialize\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1505 +#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1504 msgid "Service process could not initialize server function\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1509 +#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1508 msgid "Service process failed to report status\n" msgstr "" #: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1488 -#: src/util/service.c:1379 +#: src/util/service.c:1378 #, c-format msgid "Cannot obtain information about user `%s': %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1381 +#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1380 msgid "No such user" msgstr "Aucun utilisateur trouvé" -#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1400 +#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1399 #, c-format msgid "Cannot change user/group to `%s': %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1728 +#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1727 msgid "do daemonize (detach from terminal)" msgstr "" #: src/transport/tcp_service_legacy.c:1448 src/util/program.c:244 -#: src/util/service.c:1791 +#: src/util/service.c:1790 #, c-format msgid "Malformed configuration file `%s', exit ...\n" msgstr "" #: src/transport/tcp_service_legacy.c:1458 src/util/program.c:261 -#: src/util/service.c:1802 +#: src/util/service.c:1801 msgid "Malformed configuration, exit ...\n" msgstr "" #: src/transport/tcp_service_legacy.c:1463 src/util/program.c:256 -#: src/util/service.c:1808 +#: src/util/service.c:1807 #, c-format msgid "Could not access configuration file `%s'\n" msgstr "" @@ -7689,86 +7859,86 @@ msgstr "" msgid "Need a non-empty hostname for service `%s'.\n" msgstr "" -#: src/util/common_logging.c:256 src/util/common_logging.c:1129 +#: src/util/common_logging.c:259 src/util/common_logging.c:1132 msgid "DEBUG" msgstr "DEBUG" -#: src/util/common_logging.c:258 src/util/common_logging.c:1127 +#: src/util/common_logging.c:261 src/util/common_logging.c:1130 msgid "INFO" msgstr "INFO" -#: src/util/common_logging.c:260 src/util/common_logging.c:1125 +#: src/util/common_logging.c:263 src/util/common_logging.c:1128 msgid "MESSAGE" msgstr "" -#: src/util/common_logging.c:262 src/util/common_logging.c:1123 +#: src/util/common_logging.c:265 src/util/common_logging.c:1126 msgid "WARNING" msgstr "AVERTISSEMENT" -#: src/util/common_logging.c:264 src/util/common_logging.c:1121 +#: src/util/common_logging.c:267 src/util/common_logging.c:1124 msgid "ERROR" msgstr "ERREUR" -#: src/util/common_logging.c:266 src/util/common_logging.c:1131 +#: src/util/common_logging.c:269 src/util/common_logging.c:1134 msgid "NONE" msgstr "AUCUN" -#: src/util/common_logging.c:879 +#: src/util/common_logging.c:882 #, c-format msgid "Message `%.*s' repeated %u times in the last %s\n" msgstr "" -#: src/util/common_logging.c:1132 +#: src/util/common_logging.c:1135 msgid "INVALID" msgstr "INVALIDE" -#: src/util/common_logging.c:1302 +#: src/util/common_logging.c:1326 msgid "unknown address" msgstr "adresse inconnue" -#: src/util/common_logging.c:1344 +#: src/util/common_logging.c:1368 msgid "invalid address" msgstr "adresse invalide" -#: src/util/common_logging.c:1362 +#: src/util/common_logging.c:1386 #, c-format msgid "Configuration fails to specify option `%s' in section `%s'!\n" msgstr "" -#: src/util/common_logging.c:1383 +#: src/util/common_logging.c:1407 #, c-format msgid "" "Configuration specifies invalid value for option `%s' in section `%s': %s\n" msgstr "" -#: src/util/configuration.c:286 +#: src/util/configuration.c:296 #, c-format msgid "Syntax error while deserializing in line %u\n" msgstr "" -#: src/util/configuration.c:344 +#: src/util/configuration.c:355 #, fuzzy, c-format msgid "Error while reading file `%s'\n" msgstr "Erreur de lecture : « %s » : %s" -#: src/util/configuration.c:1017 +#: src/util/configuration.c:1034 #, c-format msgid "" "Configuration value '%s' for '%s' in section '%s' is not in set of legal " "choices\n" msgstr "" -#: src/util/configuration.c:1136 +#: src/util/configuration.c:1153 #, c-format msgid "Recursive expansion suspected, aborting $-expansion for term `%s'\n" msgstr "" -#: src/util/configuration.c:1169 +#: src/util/configuration.c:1186 #, c-format msgid "Missing closing `%s' in option `%s'\n" msgstr "" -#: src/util/configuration.c:1237 +#: src/util/configuration.c:1254 #, c-format msgid "" "Failed to expand `%s' in `%s' as it is neither found in [PATHS] nor defined " @@ -7802,31 +7972,31 @@ msgstr "" msgid "EdDSA signature verification failed at %s:%d: %s\n" msgstr "" -#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:160 -#: src/util/crypto_ecc_setup.c:278 src/util/crypto_ecc_setup.c:316 +#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:161 +#: src/util/crypto_ecc_setup.c:279 src/util/crypto_ecc_setup.c:317 #, c-format msgid "Could not acquire lock on file `%s': %s...\n" msgstr "" -#: src/util/crypto_ecc_setup.c:127 src/util/crypto_ecc_setup.c:283 +#: src/util/crypto_ecc_setup.c:128 src/util/crypto_ecc_setup.c:284 msgid "Creating a new private key. This may take a while.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:164 src/util/crypto_ecc_setup.c:320 +#: src/util/crypto_ecc_setup.c:165 src/util/crypto_ecc_setup.c:322 msgid "This may be ok if someone is currently generating a private key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:194 src/util/crypto_ecc_setup.c:350 +#: src/util/crypto_ecc_setup.c:195 src/util/crypto_ecc_setup.c:352 #, c-format msgid "" "When trying to read key file `%s' I found %u bytes but I need at least %u.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:198 src/util/crypto_ecc_setup.c:354 +#: src/util/crypto_ecc_setup.c:199 src/util/crypto_ecc_setup.c:356 msgid "This may be ok if someone is currently generating a key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:413 +#: src/util/crypto_ecc_setup.c:415 msgid "Could not load peer's private key\n" msgstr "" @@ -8014,29 +8184,29 @@ msgstr "" msgid "Manipulate GNUnet configuration files" msgstr "" -#: src/util/gnunet-ecc.c:84 +#: src/util/gnunet-ecc.c:89 #, c-format msgid "Failed to open `%s': %s\n" msgstr "" -#: src/util/gnunet-ecc.c:120 +#: src/util/gnunet-ecc.c:125 #, c-format msgid "Generating %u keys like %s, please wait" msgstr "" -#: src/util/gnunet-ecc.c:133 +#: src/util/gnunet-ecc.c:138 #, c-format msgid "Generating %u keys, please wait" msgstr "" -#: src/util/gnunet-ecc.c:174 +#: src/util/gnunet-ecc.c:179 #, c-format msgid "" "\n" "Failed to write to `%s': %s\n" msgstr "" -#: src/util/gnunet-ecc.c:184 +#: src/util/gnunet-ecc.c:189 #, c-format msgid "" "\n" @@ -8045,53 +8215,57 @@ msgstr "" "\n" "Terminé !\n" -#: src/util/gnunet-ecc.c:187 +#: src/util/gnunet-ecc.c:192 #, c-format msgid "" "\n" "Error, %u keys not generated\n" msgstr "" -#: src/util/gnunet-ecc.c:280 +#: src/util/gnunet-ecc.c:283 #, c-format msgid "Hostkeys file `%s' not found\n" msgstr "" -#: src/util/gnunet-ecc.c:291 +#: src/util/gnunet-ecc.c:294 #, c-format msgid "Hostkeys file `%s' is empty\n" msgstr "" -#: src/util/gnunet-ecc.c:313 +#: src/util/gnunet-ecc.c:316 #, c-format msgid "Could not read hostkey file: %s\n" msgstr "" -#: src/util/gnunet-ecc.c:364 +#: src/util/gnunet-ecc.c:367 msgid "No hostkey file specified on command line\n" msgstr "" -#: src/util/gnunet-ecc.c:416 +#: src/util/gnunet-ecc.c:425 msgid "list keys included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:421 +#: src/util/gnunet-ecc.c:430 msgid "number of keys to list included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:426 +#: src/util/gnunet-ecc.c:435 msgid "create COUNT public-private key pairs (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:430 +#: src/util/gnunet-ecc.c:439 msgid "print the public key in ASCII format" msgstr "" -#: src/util/gnunet-ecc.c:434 +#: src/util/gnunet-ecc.c:443 +msgid "print the public key in HEX format" +msgstr "" + +#: src/util/gnunet-ecc.c:447 msgid "print examples of ECC operations (used for compatibility testing)" msgstr "" -#: src/util/gnunet-ecc.c:449 +#: src/util/gnunet-ecc.c:463 msgid "Manipulate GNUnet private ECC key files" msgstr "" @@ -8183,7 +8357,7 @@ msgstr "" msgid "Unable to shorten unix path `%s' while keeping name unique\n" msgstr "" -#: src/util/network.c:1793 src/util/network.c:1969 +#: src/util/network.c:1793 src/util/network.c:1977 #, c-format msgid "" "Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n" @@ -8235,7 +8409,7 @@ msgstr "" msgid "Could not determine plugin installation path.\n" msgstr "" -#: src/util/resolver_api.c:204 +#: src/util/resolver_api.c:203 #, c-format msgid "" "Missing `%s' for `%s' in configuration, DNS resolution will be unavailable.\n" @@ -8248,32 +8422,32 @@ msgid "" "resolution will be unavailable.\n" msgstr "" -#: src/util/resolver_api.c:815 +#: src/util/resolver_api.c:826 #, c-format msgid "Timeout trying to resolve hostname `%s'.\n" msgstr "" -#: src/util/resolver_api.c:827 +#: src/util/resolver_api.c:839 #, c-format msgid "Timeout trying to resolve IP address `%s'.\n" msgstr "" -#: src/util/resolver_api.c:1004 +#: src/util/resolver_api.c:1023 msgid "Resolver not configured correctly.\n" msgstr "" -#: src/util/resolver_api.c:1086 src/util/resolver_api.c:1107 -#: src/util/resolver_api.c:1121 +#: src/util/resolver_api.c:1109 src/util/resolver_api.c:1132 +#: src/util/resolver_api.c:1146 #, fuzzy, c-format msgid "Could not resolve our FQDN: %s\n" msgstr "Résolution de « %s » échouée : %s\n" -#: src/util/service.c:1306 +#: src/util/service.c:1305 msgid "" "Could not bind to any of the ports I was supposed to, refusing to run!\n" msgstr "" -#: src/util/service.c:2082 +#: src/util/service.c:2081 #, c-format msgid "" "Processing code for message of type %u did not call " @@ -8348,63 +8522,63 @@ msgstr "jours" msgid "end of time" msgstr "fin du temps" -#: src/util/strings.c:1269 +#: src/util/strings.c:1270 msgid "IPv6 address did not start with `['\n" msgstr "" -#: src/util/strings.c:1277 +#: src/util/strings.c:1278 msgid "IPv6 address did contain ':' to separate port number\n" msgstr "" -#: src/util/strings.c:1283 +#: src/util/strings.c:1284 msgid "IPv6 address did contain ']' before ':' to separate port number\n" msgstr "" -#: src/util/strings.c:1290 +#: src/util/strings.c:1291 msgid "IPv6 address did contain a valid port number after the last ':'\n" msgstr "" -#: src/util/strings.c:1299 +#: src/util/strings.c:1300 #, c-format msgid "Invalid IPv6 address `%s': %s\n" msgstr "" -#: src/util/strings.c:1571 src/util/strings.c:1587 +#: src/util/strings.c:1572 src/util/strings.c:1588 msgid "Port not in range\n" msgstr "" -#: src/util/strings.c:1596 +#: src/util/strings.c:1597 #, c-format msgid "Malformed port policy `%s'\n" msgstr "" -#: src/util/strings.c:1679 src/util/strings.c:1710 src/util/strings.c:1758 -#: src/util/strings.c:1779 +#: src/util/strings.c:1680 src/util/strings.c:1711 src/util/strings.c:1759 +#: src/util/strings.c:1780 #, c-format msgid "Invalid format for IP: `%s'\n" msgstr "" -#: src/util/strings.c:1736 +#: src/util/strings.c:1737 #, c-format msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)." msgstr "" -#: src/util/strings.c:1788 +#: src/util/strings.c:1789 #, c-format msgid "Invalid format: `%s'\n" msgstr "fornat invalide : « %s »\n" -#: src/util/strings.c:1840 +#: src/util/strings.c:1841 #, c-format msgid "Invalid network notation (does not end with ';': `%s')\n" msgstr "" -#: src/util/strings.c:1890 +#: src/util/strings.c:1891 #, c-format msgid "Wrong format `%s' for netmask\n" msgstr "" -#: src/util/strings.c:1921 +#: src/util/strings.c:1922 #, c-format msgid "Wrong format `%s' for network\n" msgstr "" @@ -8573,26 +8747,30 @@ msgstr "" msgid "Setup tunnels via VPN." msgstr "Configurer des tunnels via VPN." -#: src/zonemaster/gnunet-service-zonemaster.c:705 +#: src/zonemaster/gnunet-service-zonemaster.c:706 msgid "Failed to connect to the namestore!\n" msgstr "" -#: src/include/gnunet_common.h:674 src/include/gnunet_common.h:681 -#: src/include/gnunet_common.h:691 src/include/gnunet_common.h:699 +#: src/include/gnunet_common.h:689 src/include/gnunet_common.h:696 +#: src/include/gnunet_common.h:706 src/include/gnunet_common.h:714 #, c-format msgid "Assertion failed at %s:%d.\n" msgstr "" -#: src/include/gnunet_common.h:711 +#: src/include/gnunet_common.h:726 #, c-format msgid "External protocol violation detected at %s:%d.\n" msgstr "" -#: src/include/gnunet_common.h:738 src/include/gnunet_common.h:747 +#: src/include/gnunet_common.h:753 src/include/gnunet_common.h:762 #, c-format msgid "`%s' failed on file `%s' at %s:%d with error: %s\n" msgstr "" +#, fuzzy +#~ msgid "Unable to connect to Postgres database '%s': %s\n" +#~ msgstr "Résolution de « %s » échouée\n" + #~ msgid "ARM API is busy" #~ msgstr "API ARM occupé" @@ -8670,10 +8848,6 @@ msgstr "" #~ msgid "Failed to start resolver!\n" #~ msgstr "Échec du démarrage de %s\n" -#, fuzzy -#~ msgid "Failed to start NAT test for plugin `%s'\n" -#~ msgstr "Résolution de « %s » échouée\n" - #~ msgid "Benchmarking done\n" #~ msgstr "Benchmark terminé\n" diff --git a/po/sv.po b/po/sv.po index 3120e6594..f03bfb2b9 100644 --- a/po/sv.po +++ b/po/sv.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: GNUnet 0.7.0b\n" "Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n" -"POT-Creation-Date: 2017-03-31 19:22-0500\n" +"POT-Creation-Date: 2017-10-20 15:14+0000\n" "PO-Revision-Date: 2006-01-21 17:16+0100\n" "Last-Translator: Daniel Nylander \n" "Language-Team: Swedish \n" @@ -273,7 +273,7 @@ msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n" msgstr "" #: src/arm/gnunet-service-arm.c:513 -#: src/transport/plugin_transport_http_server.c:2621 +#: src/transport/plugin_transport_http_server.c:2684 #: src/transport/plugin_transport_tcp.c:1259 #: src/transport/tcp_service_legacy.c:696 src/util/service.c:782 #, fuzzy, c-format @@ -281,7 +281,7 @@ msgid "Failed to resolve `%s': %s\n" msgstr "Misslyckades att leverera \"%s\" meddelande.\n" #: src/arm/gnunet-service-arm.c:532 -#: src/transport/plugin_transport_http_server.c:2639 +#: src/transport/plugin_transport_http_server.c:2702 #: src/transport/plugin_transport_tcp.c:1278 #: src/transport/tcp_service_legacy.c:715 src/util/service.c:802 #, fuzzy, c-format @@ -355,134 +355,14 @@ msgstr "" msgid "Initiating shutdown as requested by client.\n" msgstr "" -#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 -#, c-format -msgid "" -"Could not load quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2799 -#, c-format -msgid "" -"No outbound quota configured for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2840 -#, c-format -msgid "" -"No outbound quota configure for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3294 -#: src/ats-tests/gnunet-solver-eval.c:939 -msgid "solver to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3299 -#: src/ats-tests/gnunet-solver-eval.c:945 -#: src/ats-tests/gnunet-solver-eval.c:950 -msgid "experiment to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3306 -#, fuzzy -msgid "print logging" -msgstr "Startade samling \"%s\".\n" - -#: src/ats/gnunet-ats-solver-eval.c:3311 -msgid "save logging to disk" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3316 -msgid "disable normalization" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:304 -#, c-format -msgid "" -"Could not load %s quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:314 -#, c-format -msgid "%s quota configured for network `%s' is %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:359 -#, c-format -msgid "" -"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:451 -#, fuzzy, c-format -msgid "Failed to initialize solver `%s'!\n" -msgstr "Kunde inte initiera SQLite.\n" - -#: src/ats/plugin_ats_mlp.c:1274 -msgid "Problem size too large, cannot allocate memory!\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1869 -#, fuzzy, c-format -msgid "Adding address for peer `%s' multiple times\n" -msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n" - -#: src/ats/plugin_ats_mlp.c:1913 -#, fuzzy, c-format -msgid "Updating address property for peer `%s' %p not added before\n" -msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n" - -#: src/ats/plugin_ats_mlp.c:2475 -msgid "" -"MLP solver is not optimizing for anything, changing to feasibility check\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 -#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 -#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 -#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 -#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 -#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 -#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 -#, fuzzy, c-format -msgid "Invalid %s configuration %f \n" -msgstr "Kunde inte spara konfigurationsfil \"%s\":" - -#: src/ats/plugin_ats_mlp.c:2670 -#, c-format -msgid "" -"Adjusting inconsistent outbound quota configuration for network `%s', is " -"%llu must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2679 -#, c-format -msgid "" -"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " -"must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2689 -#, c-format -msgid "" -"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2698 -#, c-format -msgid "" -"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" +#: src/ats-tests/ats-testing-log.c:837 +msgid "Stop logging\n" msgstr "" -#: src/ats/plugin_ats_proportional.c:1164 +#: src/ats-tests/ats-testing-log.c:892 #, fuzzy, c-format -msgid "Invalid %s configuration %f\n" -msgstr "Kunde inte spara konfigurationsfil \"%s\":" +msgid "Start logging `%s'\n" +msgstr "Startade samling \"%s\".\n" #: src/ats-tests/ats-testing.c:422 #, c-format @@ -494,15 +374,6 @@ msgstr "" msgid "Failed to connect master peer [%u] with slave [%u]\n" msgstr "Misslyckades att ansluta till gnunetd.\n" -#: src/ats-tests/ats-testing-log.c:837 -msgid "Stop logging\n" -msgstr "" - -#: src/ats-tests/ats-testing-log.c:892 -#, fuzzy, c-format -msgid "Start logging `%s'\n" -msgstr "Startade samling \"%s\".\n" - #: src/ats-tests/gnunet-ats-sim.c:90 #, c-format msgid "" @@ -510,6 +381,15 @@ msgid "" "= %u KiB/s\n" msgstr "" +#: src/ats-tests/gnunet-solver-eval.c:939 src/ats/gnunet-ats-solver-eval.c:3294 +msgid "solver to use" +msgstr "" + +#: src/ats-tests/gnunet-solver-eval.c:945 +#: src/ats-tests/gnunet-solver-eval.c:950 src/ats/gnunet-ats-solver-eval.c:3299 +msgid "experiment to use" +msgstr "" + #: src/ats-tool/gnunet-ats.c:307 #, c-format msgid "%u address resolutions had a timeout\n" @@ -631,6 +511,124 @@ msgstr "" msgid "Print information about ATS state" msgstr "Skriv ut information om GNUnets motparter." +#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 +#, c-format +msgid "" +"Could not load quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2799 +#, c-format +msgid "" +"No outbound quota configured for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2840 +#, c-format +msgid "" +"No outbound quota configure for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3306 +#, fuzzy +msgid "print logging" +msgstr "Startade samling \"%s\".\n" + +#: src/ats/gnunet-ats-solver-eval.c:3311 +msgid "save logging to disk" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3316 +msgid "disable normalization" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:304 +#, c-format +msgid "" +"Could not load %s quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:314 +#, c-format +msgid "%s quota configured for network `%s' is %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:359 +#, c-format +msgid "" +"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:451 +#, fuzzy, c-format +msgid "Failed to initialize solver `%s'!\n" +msgstr "Kunde inte initiera SQLite.\n" + +#: src/ats/plugin_ats_mlp.c:1274 +msgid "Problem size too large, cannot allocate memory!\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1869 +#, fuzzy, c-format +msgid "Adding address for peer `%s' multiple times\n" +msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n" + +#: src/ats/plugin_ats_mlp.c:1913 +#, fuzzy, c-format +msgid "Updating address property for peer `%s' %p not added before\n" +msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n" + +#: src/ats/plugin_ats_mlp.c:2475 +msgid "" +"MLP solver is not optimizing for anything, changing to feasibility check\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 +#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 +#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 +#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 +#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 +#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 +#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 +#, fuzzy, c-format +msgid "Invalid %s configuration %f \n" +msgstr "Kunde inte spara konfigurationsfil \"%s\":" + +#: src/ats/plugin_ats_mlp.c:2670 +#, c-format +msgid "" +"Adjusting inconsistent outbound quota configuration for network `%s', is " +"%llu must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2679 +#, c-format +msgid "" +"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " +"must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2689 +#, c-format +msgid "" +"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2698 +#, c-format +msgid "" +"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_proportional.c:1164 +#, fuzzy, c-format +msgid "Invalid %s configuration %f\n" +msgstr "Kunde inte spara konfigurationsfil \"%s\":" + #: src/auction/gnunet-auction-create.c:163 msgid "description of the item to be sold" msgstr "" @@ -779,6 +777,28 @@ msgstr "" msgid "Connection to conversation service lost, trying to reconnect\n" msgstr "" +#: src/conversation/gnunet-conversation-test.c:119 +#, c-format +msgid "" +"\n" +"End of transmission. Have a GNU day.\n" +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:145 +#, c-format +msgid "" +"\n" +"We are now playing your recording back. If you can hear it, your audio " +"settings are working..." +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:210 +#, c-format +msgid "" +"We will now be recording you for %s. After that time, the recording will be " +"played back to you..." +msgstr "" + #: src/conversation/gnunet-conversation.c:269 #, c-format msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n" @@ -1036,30 +1056,8 @@ msgstr "" msgid "Enables having a conversation with other GNUnet users." msgstr "" -#: src/conversation/gnunet-conversation-test.c:119 -#, c-format -msgid "" -"\n" -"End of transmission. Have a GNU day.\n" -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:145 -#, c-format -msgid "" -"\n" -"We are now playing your recording back. If you can hear it, your audio " -"settings are working..." -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:210 -#, c-format -msgid "" -"We will now be recording you for %s. After that time, the recording will be " -"played back to you..." -msgstr "" - -#: src/conversation/gnunet_gst.c:622 #: src/conversation/gnunet-helper-audio-playback-gst.c:356 +#: src/conversation/gnunet_gst.c:622 #, c-format msgid "Read error from STDIN: %d %s\n" msgstr "" @@ -1191,6 +1189,11 @@ msgstr "\"%s\" %s misslyckades: %s\n" msgid "Failed to allocate %u bytes for second packet\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" +#: src/conversation/gnunet-service-conversation.c:1276 +#, fuzzy, c-format +msgid "Could not open line, port %s already in use!\n" +msgstr "Kunde inte ansluta till gnunetd.\n" + #: src/conversation/microphone.c:119 #, fuzzy msgid "Could not start record audio helper\n" @@ -1490,8 +1493,140 @@ msgstr "# krypterade PONG-meddelanden mottagna" msgid "# updates to my type map" msgstr "" +#: src/credential/credential_misc.c:88 +#, fuzzy, c-format +msgid "Unable to parse CRED record string `%s'\n" +msgstr "Misslyckades att läsa kompislista från \"%s\"\n" + +#: src/credential/gnunet-credential.c:278 src/namestore/gnunet-namestore.c:776 +#: src/namestore/plugin_rest_namestore.c:1009 +#, fuzzy, c-format +msgid "Ego `%s' not known to identity service\n" +msgstr "\"%s\": okänd tjänst: %s\n" + +#: src/credential/gnunet-credential.c:294 +#: src/credential/gnunet-credential.c:446 +#, fuzzy, c-format +msgid "Issuer public key `%s' is not well-formed\n" +msgstr "Ogiltigt argument: \"%s\"\n" + +#: src/credential/gnunet-credential.c:375 +#: src/credential/gnunet-credential.c:435 +#, fuzzy, c-format +msgid "Issuer public key not well-formed\n" +msgstr "Ogiltigt argument: \"%s\"\n" + +#: src/credential/gnunet-credential.c:386 +#: src/credential/gnunet-credential.c:455 +#, fuzzy, c-format +msgid "Failed to connect to CREDENTIAL\n" +msgstr "Misslyckades att ansluta till gnunetd.\n" + +#: src/credential/gnunet-credential.c:392 +#, c-format +msgid "You must provide issuer the attribute\n" +msgstr "" + +#: src/credential/gnunet-credential.c:399 +#, c-format +msgid "ego required\n" +msgstr "" + +#: src/credential/gnunet-credential.c:415 +#, c-format +msgid "Subject public key needed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:426 +#, fuzzy, c-format +msgid "Subject public key `%s' is not well-formed\n" +msgstr "Ogiltigt argument: \"%s\"\n" + +#: src/credential/gnunet-credential.c:461 +#, c-format +msgid "You must provide issuer and subject attributes\n" +msgstr "" + +#: src/credential/gnunet-credential.c:511 +#, c-format +msgid "Issuer ego required\n" +msgstr "" + +#: src/credential/gnunet-credential.c:523 +#, c-format +msgid "Please specify name to lookup, subject key and issuer key!\n" +msgstr "" + +#: src/credential/gnunet-credential.c:543 +msgid "create credential" +msgstr "" + +#: src/credential/gnunet-credential.c:547 +msgid "verify credential against attribute" +msgstr "" + +#: src/credential/gnunet-credential.c:552 +#, fuzzy +msgid "The public key of the subject to lookup the credential for" +msgstr "ange prioritet för innehållet" + +#: src/credential/gnunet-credential.c:557 +msgid "The name of the credential presented by the subject" +msgstr "" + +#: src/credential/gnunet-credential.c:562 +#, fuzzy +msgid "The public key of the authority to verify the credential against" +msgstr "ange prioritet för innehållet" + +#: src/credential/gnunet-credential.c:567 +#, fuzzy +msgid "The ego to use" +msgstr "meddelandestorlek" + +#: src/credential/gnunet-credential.c:572 +msgid "The issuer attribute to verify against or to issue" +msgstr "" + +#: src/credential/gnunet-credential.c:577 +msgid "The time to live for the credential" +msgstr "" + +#: src/credential/gnunet-credential.c:581 +msgid "collect credentials" +msgstr "" + +#: src/credential/gnunet-credential.c:595 +#, fuzzy +msgid "GNUnet credential resolver tool" +msgstr "Spåra GNUnets nätverkstopologi." + +#: src/credential/gnunet-service-credential.c:1204 +#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:355 +#, fuzzy, c-format +msgid "Failed to connect to GNS\n" +msgstr "Misslyckades att ansluta till gnunetd.\n" + +#: src/credential/gnunet-service-credential.c:1210 +#: src/namestore/gnunet-namestore-fcfsd.c:1034 +#: src/namestore/gnunet-namestore.c:802 +#: src/namestore/plugin_rest_namestore.c:1022 +#, fuzzy, c-format +msgid "Failed to connect to namestore\n" +msgstr "Misslyckades att ansluta till gnunetd.\n" + +#: src/credential/plugin_gnsrecord_credential.c:186 +#, fuzzy, c-format +msgid "Unable to parse ATTR record string `%s'\n" +msgstr "Misslyckades att läsa kompislista från \"%s\"\n" + +#: src/credential/plugin_rest_credential.c:1155 src/gns/plugin_rest_gns.c:668 +#, fuzzy +msgid "GNS REST API initialized\n" +msgstr " Anslutning misslyckades\n" + #: src/datacache/datacache.c:119 src/datacache/datacache.c:294 -#: src/datastore/gnunet-service-datastore.c:775 +#: src/datastore/gnunet-service-datastore.c:757 #, fuzzy msgid "# bytes stored" msgstr "# byte krypterade" @@ -1536,13 +1671,12 @@ msgstr "" #: src/datacache/plugin_datacache_sqlite.c:113 #: src/datacache/plugin_datacache_sqlite.c:122 -#: src/datastore/plugin_datastore_mysql.c:980 +#: src/datastore/plugin_datastore_mysql.c:892 #: src/datastore/plugin_datastore_sqlite.c:58 -#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:80 src/my/my.c:92 -#: src/mysql/mysql.c:42 src/mysql/mysql.c:49 -#: src/namecache/plugin_namecache_postgres.c:53 +#: src/datastore/plugin_datastore_sqlite.c:66 +#: src/identity-provider/plugin_identity_provider_sqlite.c:52 src/my/my.c:80 +#: src/my/my.c:92 src/mysql/mysql.c:42 src/mysql/mysql.c:49 #: src/namecache/plugin_namecache_sqlite.c:53 -#: src/namestore/plugin_namestore_postgres.c:53 #: src/namestore/plugin_namestore_sqlite.c:53 #: src/peerstore/plugin_peerstore_sqlite.c:52 #: src/psycstore/plugin_psycstore_mysql.c:62 @@ -1551,14 +1685,15 @@ msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:56 #: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:52 #: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39 -#: src/include/gnunet_common.h:720 src/include/gnunet_common.h:729 +#: src/include/gnunet_common.h:735 src/include/gnunet_common.h:744 #: src/scalarproduct/scalarproduct.h:35 #, c-format msgid "`%s' failed at %s:%d with error: %s\n" msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n" #: src/datacache/plugin_datacache_sqlite.c:817 -#: src/datastore/plugin_datastore_sqlite.c:475 +#: src/datastore/plugin_datastore_sqlite.c:456 +#: src/identity-provider/plugin_identity_provider_sqlite.c:336 #: src/namecache/plugin_namecache_sqlite.c:296 #: src/namestore/plugin_namestore_sqlite.c:355 msgid "Tried to close sqlite without finalizing all prepared statements.\n" @@ -1626,23 +1761,75 @@ msgstr "" msgid "# GET requests executed" msgstr "" -#: src/datastore/gnunet-datastore.c:113 +#: src/datastore/gnunet-datastore.c:189 +#, c-format +msgid "Dumped % records\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:217 src/datastore/gnunet-datastore.c:229 +#, c-format +msgid "Short write to file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:261 +#, fuzzy +msgid "Error queueing datastore GET operation\n" +msgstr "Fel vid skapandet av användare" + +#: src/datastore/gnunet-datastore.c:287 src/datastore/gnunet-datastore.c:412 +#, fuzzy, c-format +msgid "Unable to open dump file: %s\n" +msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n" + +#: src/datastore/gnunet-datastore.c:326 #, fuzzy, c-format msgid "Failed to store item: %s, aborting\n" msgstr "Misslyckades att leverera \"%s\" meddelande.\n" -#: src/datastore/gnunet-datastore.c:209 +#: src/datastore/gnunet-datastore.c:340 #, c-format -msgid "Cannot use the same configuration for source and destination\n" +msgid "Inserted % records\n" msgstr "" -#: src/datastore/gnunet-datastore.c:256 -msgid "" -"specifies the configuration to use to access an alternative datastore; will " -"merge that datastore into our current datastore" +#: src/datastore/gnunet-datastore.c:349 src/datastore/gnunet-datastore.c:363 +#, c-format +msgid "Short read from file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:389 +#, fuzzy +msgid "Error queueing datastore PUT operation\n" +msgstr "Fel vid skapandet av användare" + +#: src/datastore/gnunet-datastore.c:432 +msgid "Input file is not of a supported format\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:458 +#, fuzzy +msgid "Failed connecting to the datastore.\n" +msgstr "Misslyckades att ansluta till gnunetd.\n" + +#: src/datastore/gnunet-datastore.c:470 +#, c-format +msgid "Please choose at least one operation: %s, %s\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:493 +#, fuzzy +msgid "Dump all records from the datastore" +msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n" + +#: src/datastore/gnunet-datastore.c:497 +#, fuzzy +msgid "Insert records into the datastore" +msgstr "# byte krypterade" + +#: src/datastore/gnunet-datastore.c:502 +msgid "File to dump or insert" msgstr "" -#: src/datastore/gnunet-datastore.c:265 +#: src/datastore/gnunet-datastore.c:511 #, fuzzy msgid "Manipulate GNUnet datastore" msgstr "skriv ut ett värde från konfigurationsfilen till standard ut" @@ -1686,8 +1873,8 @@ msgstr "" #: src/datastore/gnunet-service-datastore.c:634 #: src/datastore/gnunet-service-datastore.c:689 -#: src/datastore/gnunet-service-datastore.c:977 -#: src/datastore/gnunet-service-datastore.c:1633 +#: src/datastore/gnunet-service-datastore.c:837 +#: src/datastore/gnunet-service-datastore.c:1469 msgid "# reserved" msgstr "" @@ -1695,147 +1882,148 @@ msgstr "" msgid "Could not find matching reservation" msgstr "" -#: src/datastore/gnunet-service-datastore.c:792 +#: src/datastore/gnunet-service-datastore.c:773 #, c-format msgid "Need %llu bytes more space (%llu allowed, using %llu)\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1026 +#: src/datastore/gnunet-service-datastore.c:876 #, fuzzy msgid "# GET requests received" msgstr "# byte mottogs via TCP" -#: src/datastore/gnunet-service-datastore.c:1058 +#: src/datastore/gnunet-service-datastore.c:907 #, fuzzy msgid "# GET KEY requests received" msgstr "# byte mottogs via TCP" -#: src/datastore/gnunet-service-datastore.c:1071 +#: src/datastore/gnunet-service-datastore.c:920 msgid "# requests filtered by bloomfilter" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1108 +#: src/datastore/gnunet-service-datastore.c:956 msgid "# GET REPLICATION requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1141 +#: src/datastore/gnunet-service-datastore.c:989 msgid "# GET ZERO ANONYMITY requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1190 +#: src/datastore/gnunet-service-datastore.c:1036 #, fuzzy msgid "Content not found" msgstr "Kommando \"%s\" hittades inte!\n" -#: src/datastore/gnunet-service-datastore.c:1199 +#: src/datastore/gnunet-service-datastore.c:1043 msgid "# bytes removed (explicit request)" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1246 +#: src/datastore/gnunet-service-datastore.c:1088 #, fuzzy msgid "# REMOVE requests received" msgstr "# byte mottogs via TCP" -#: src/datastore/gnunet-service-datastore.c:1301 +#: src/datastore/gnunet-service-datastore.c:1137 #, c-format msgid "" "Datastore payload must have been inaccurate (%lld < %lld). Recomputing it.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1307 -#: src/datastore/gnunet-service-datastore.c:1482 +#: src/datastore/gnunet-service-datastore.c:1143 +#: src/datastore/gnunet-service-datastore.c:1318 #, c-format msgid "New payload: %lld\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1361 +#: src/datastore/gnunet-service-datastore.c:1197 #, c-format msgid "Loading `%s' datastore plugin\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1373 +#: src/datastore/gnunet-service-datastore.c:1209 #, fuzzy, c-format msgid "Failed to load datastore plugin for `%s'\n" msgstr "Kunde inte slå upp \"%s\": %s\n" -#: src/datastore/gnunet-service-datastore.c:1433 +#: src/datastore/gnunet-service-datastore.c:1269 msgid "Bloomfilter construction complete.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1489 +#: src/datastore/gnunet-service-datastore.c:1325 msgid "Rebuilding bloomfilter. Please be patient.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1500 +#: src/datastore/gnunet-service-datastore.c:1336 msgid "Plugin does not support get_keys function. Please fix!\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1670 +#: src/datastore/gnunet-service-datastore.c:1506 #, fuzzy, c-format msgid "# bytes used in file-sharing datastore `%s'" msgstr "# byte krypterade" -#: src/datastore/gnunet-service-datastore.c:1686 +#: src/datastore/gnunet-service-datastore.c:1522 msgid "# quota" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1691 +#: src/datastore/gnunet-service-datastore.c:1527 msgid "# cache size" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1707 +#: src/datastore/gnunet-service-datastore.c:1543 #, c-format msgid "Could not use specified filename `%s' for bloomfilter.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1725 -#: src/datastore/gnunet-service-datastore.c:1741 +#: src/datastore/gnunet-service-datastore.c:1561 +#: src/datastore/gnunet-service-datastore.c:1577 #, fuzzy, c-format msgid "Failed to remove bogus bloomfilter file `%s'\n" msgstr "Kunde inte spara konfigurationsfil \"%s\":" -#: src/datastore/gnunet-service-datastore.c:1773 +#: src/datastore/gnunet-service-datastore.c:1609 #, fuzzy msgid "Failed to initialize bloomfilter.\n" msgstr "Misslyckades att initiera tjänsten \"%s\".\n" -#: src/datastore/plugin_datastore_heap.c:769 +#: src/datastore/plugin_datastore_heap.c:893 msgid "Heap database running\n" msgstr "" -#: src/datastore/plugin_datastore_mysql.c:377 -#: src/datastore/plugin_datastore_sqlite.c:590 +#: src/datastore/plugin_datastore_mysql.c:371 +#: src/datastore/plugin_datastore_mysql.c:423 +#: src/datastore/plugin_datastore_mysql.c:1075 +msgid "MySQL statement run failure" +msgstr "" + +#: src/datastore/plugin_datastore_mysql.c:410 +#: src/datastore/plugin_datastore_sqlite.c:626 #, fuzzy msgid "Data too large" msgstr "antal iterationer" -#: src/datastore/plugin_datastore_mysql.c:393 -msgid "MySQL statement run failure" -msgstr "" - -#: src/datastore/plugin_datastore_mysql.c:936 +#: src/datastore/plugin_datastore_mysql.c:848 #, fuzzy, c-format msgid "`%s' for `%s' failed at %s:%d with error: %s\n" msgstr "\"%s\" till \"%s\" misslyckades vid %s:%d med fel: %s\n" -#: src/datastore/plugin_datastore_mysql.c:1208 +#: src/datastore/plugin_datastore_mysql.c:1180 #: src/psycstore/plugin_psycstore_mysql.c:1936 msgid "Mysql database running\n" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:345 +#: src/datastore/plugin_datastore_postgres.c:274 +#: src/datastore/plugin_datastore_postgres.c:891 msgid "Postgress exec failure" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:866 +#: src/datastore/plugin_datastore_postgres.c:852 #, fuzzy msgid "Failed to drop table from database.\n" msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n" -#: src/datastore/plugin_datastore_postgres.c:903 -#: src/namecache/plugin_namecache_postgres.c:398 -#: src/namestore/plugin_namestore_postgres.c:571 -#: src/psycstore/plugin_psycstore_postgres.c:1721 +#: src/datastore/plugin_datastore_postgres.c:950 +#: src/psycstore/plugin_psycstore_postgres.c:1506 msgid "Postgres database running\n" msgstr "" @@ -1847,7 +2035,8 @@ msgstr "" msgid "`%s' failed at %s:%u with error: %s" msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n" -#: src/datastore/plugin_datastore_sqlite.c:281 +#: src/datastore/plugin_datastore_sqlite.c:271 +#: src/identity-provider/plugin_identity_provider_sqlite.c:212 #: src/namecache/plugin_namecache_sqlite.c:194 #: src/namestore/plugin_namestore_sqlite.c:222 #: src/peerstore/plugin_peerstore_sqlite.c:535 @@ -1856,24 +2045,29 @@ msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n" msgid "Unable to initialize SQLite: %s.\n" msgstr "Kunde inte initiera SQLite.\n" -#: src/datastore/plugin_datastore_sqlite.c:1234 +#: src/datastore/plugin_datastore_sqlite.c:577 +msgid "sqlite bind failure" +msgstr "" + +#: src/datastore/plugin_datastore_sqlite.c:1259 msgid "sqlite version to old to determine size, assuming zero\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1268 +#: src/datastore/plugin_datastore_sqlite.c:1293 #, c-format msgid "" "Using sqlite page utilization to estimate payload (%llu pages of size %llu " "bytes)\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1312 +#: src/datastore/plugin_datastore_sqlite.c:1337 +#: src/identity-provider/plugin_identity_provider_sqlite.c:711 #: src/namecache/plugin_namecache_sqlite.c:603 #: src/namestore/plugin_namestore_sqlite.c:802 msgid "Sqlite database running\n" msgstr "" -#: src/datastore/plugin_datastore_template.c:259 +#: src/datastore/plugin_datastore_template.c:253 msgid "Template database running\n" msgstr "" @@ -1935,53 +2129,6 @@ msgstr "" msgid "Prints all packets that go through the DHT." msgstr "" -#: src/dht/gnunet_dht_profiler.c:1161 -#: src/testbed/gnunet-testbed-profiler.c:255 -#, fuzzy, c-format -msgid "Exiting as the number of peers is %u\n" -msgstr "Maximalt antal chattklienter uppnått.\n" - -#: src/dht/gnunet_dht_profiler.c:1188 -#, fuzzy -msgid "number of peers to start" -msgstr "antal iterationer" - -#: src/dht/gnunet_dht_profiler.c:1194 -msgid "" -"maximum number of times we try to search for successor circle formation (0 " -"for R5N)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 -#: src/testbed/gnunet-testbed-profiler.c:305 -msgid "name of the file with the login information for the testbed" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1206 -msgid "delay between rounds for collecting statistics (default: 30 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1212 -msgid "delay to start doing PUTs (default: 1 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1218 -msgid "delay to start doing GETs (default: 5 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1223 -msgid "replication degree for DHT PUTs" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1230 -msgid "timeout for DHT PUT and GET requests (default: 1 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1248 -#, fuzzy -msgid "Measure quality and performance of the DHT service." -msgstr "Kan inte tillgå tjänsten" - #: src/dht/gnunet-dht-put.c:120 #, fuzzy msgid "PUT request sent with key" @@ -2258,6 +2405,52 @@ msgstr "" msgid "# DHT requests combined" msgstr "# byte mottogs via TCP" +#: src/dht/gnunet_dht_profiler.c:1161 src/testbed/gnunet-testbed-profiler.c:255 +#, fuzzy, c-format +msgid "Exiting as the number of peers is %u\n" +msgstr "Maximalt antal chattklienter uppnått.\n" + +#: src/dht/gnunet_dht_profiler.c:1188 +#, fuzzy +msgid "number of peers to start" +msgstr "antal iterationer" + +#: src/dht/gnunet_dht_profiler.c:1194 +msgid "" +"maximum number of times we try to search for successor circle formation (0 " +"for R5N)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 +#: src/testbed/gnunet-testbed-profiler.c:305 +msgid "name of the file with the login information for the testbed" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1206 +msgid "delay between rounds for collecting statistics (default: 30 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1212 +msgid "delay to start doing PUTs (default: 1 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1218 +msgid "delay to start doing GETs (default: 5 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1223 +msgid "replication degree for DHT PUTs" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1230 +msgid "timeout for DHT PUT and GET requests (default: 1 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1248 +#, fuzzy +msgid "Measure quality and performance of the DHT service." +msgstr "Kan inte tillgå tjänsten" + #: src/dht/plugin_block_dht.c:187 #, fuzzy, c-format msgid "Block not of type %u\n" @@ -2591,7 +2784,7 @@ msgstr "" msgid "No useful service enabled. Exiting.\n" msgstr "" -#: src/exit/gnunet-daemon-exit.c:3969 +#: src/exit/gnunet-daemon-exit.c:3970 msgid "Daemon to run to provide an IP exit node for the VPN" msgstr "" @@ -3244,15 +3437,6 @@ msgid "" "chk/...)" msgstr "" -#: src/fs/gnunet-fs.c:119 -msgid "print a list of all indexed files" -msgstr "" - -#: src/fs/gnunet-fs.c:130 -#, fuzzy -msgid "Special file-sharing operations" -msgstr "Visa alla alternativ" - #: src/fs/gnunet-fs-profiler.c:211 msgid "run the experiment with COUNT peers" msgstr "" @@ -3269,6 +3453,15 @@ msgstr "" msgid "run a testbed to measure file-sharing performance" msgstr "" +#: src/fs/gnunet-fs.c:119 +msgid "print a list of all indexed files" +msgstr "" + +#: src/fs/gnunet-fs.c:130 +#, fuzzy +msgid "Special file-sharing operations" +msgstr "Visa alla alternativ" + #: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231 #, c-format msgid "Publishing `%s' at %llu/%llu (%s remaining)\n" @@ -3956,22 +4149,11 @@ msgstr "" msgid "GNUnet DNS-to-GNS proxy (a DNS server)" msgstr "" -#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 -#, c-format -msgid "Invalid typename specified, assuming `ANY'\n" -msgstr "" - -#: src/gns/gnunet-gns.c:252 -#, c-format -msgid "Please specify name to lookup!\n" -msgstr "" - -#: src/gns/gnunet-gns.c:276 -#, c-format -msgid "Ego for `%s' not found, cannot perform lookup.\n" +#: src/gns/gnunet-gns-helper-service-w32.c:602 +msgid "Not ready to process requests, lacking ego data\n" msgstr "" -#: src/gns/gnunet-gns.c:315 src/gns/gnunet-gns-helper-service-w32.c:701 +#: src/gns/gnunet-gns-helper-service-w32.c:701 src/gns/gnunet-gns.c:315 #: src/gns/plugin_rest_gns.c:422 #, c-format msgid "" @@ -3979,59 +4161,12 @@ msgid "" "gns-import.sh?\n" msgstr "" -#: src/gns/gnunet-gns.c:355 src/gns/gnunet-gns-helper-service-w32.c:727 -#, fuzzy, c-format -msgid "Failed to connect to GNS\n" -msgstr "Misslyckades att ansluta till gnunetd.\n" - -#: src/gns/gnunet-gns.c:374 -#, c-format -msgid "Public key `%s' is not well-formed\n" -msgstr "" - -#: src/gns/gnunet-gns.c:428 -msgid "Lookup a record for the given name" -msgstr "" - -#: src/gns/gnunet-gns.c:434 -#, fuzzy -msgid "Specify the type of the record to lookup" -msgstr "ange prioritet för innehållet" - -#: src/gns/gnunet-gns.c:440 -#, fuzzy -msgid "Specify timeout for the lookup" -msgstr "ange prioritet för innehållet" - -#: src/gns/gnunet-gns.c:445 -msgid "No unneeded output" -msgstr "" - -#: src/gns/gnunet-gns.c:451 -#, fuzzy -msgid "Specify the public key of the zone to lookup the record in" -msgstr "ange prioritet för innehållet" - -#: src/gns/gnunet-gns.c:457 -#, fuzzy -msgid "Specify the name of the ego of the zone to lookup the record in" -msgstr "ange prioritet för innehållet" - -#: src/gns/gnunet-gns.c:476 -#, fuzzy -msgid "GNUnet GNS resolver tool" -msgstr "Spåra GNUnets nätverkstopologi." - -#: src/gns/gnunet-gns-helper-service-w32.c:602 -msgid "Not ready to process requests, lacking ego data\n" -msgstr "" - #: src/gns/gnunet-gns-helper-service-w32.c:739 #, fuzzy, c-format msgid "Failed to connect to identity service\n" msgstr "Misslyckades att ansluta till gnunetd.\n" -#: src/gns/gnunet-gns-import.c:489 +#: src/gns/gnunet-gns-import.c:452 msgid "This program will import some GNS authorities into your GNS namestore." msgstr "" @@ -4148,13 +4283,66 @@ msgstr "Misslyckades att läsa kompislista från \"%s\"\n" msgid "listen on specified port (default: 7777)" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3275 -msgid "pem file to use as CA" -msgstr "" +#: src/gns/gnunet-gns-proxy.c:3275 +msgid "pem file to use as CA" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3300 +msgid "GNUnet GNS proxy" +msgstr "" + +#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 +#, c-format +msgid "Invalid typename specified, assuming `ANY'\n" +msgstr "" + +#: src/gns/gnunet-gns.c:252 +#, c-format +msgid "Please specify name to lookup!\n" +msgstr "" + +#: src/gns/gnunet-gns.c:276 +#, c-format +msgid "Ego for `%s' not found, cannot perform lookup.\n" +msgstr "" + +#: src/gns/gnunet-gns.c:374 +#, c-format +msgid "Public key `%s' is not well-formed\n" +msgstr "" + +#: src/gns/gnunet-gns.c:428 +msgid "Lookup a record for the given name" +msgstr "" + +#: src/gns/gnunet-gns.c:434 +#, fuzzy +msgid "Specify the type of the record to lookup" +msgstr "ange prioritet för innehållet" + +#: src/gns/gnunet-gns.c:440 +#, fuzzy +msgid "Specify timeout for the lookup" +msgstr "ange prioritet för innehållet" + +#: src/gns/gnunet-gns.c:445 +msgid "No unneeded output" +msgstr "" + +#: src/gns/gnunet-gns.c:451 +#, fuzzy +msgid "Specify the public key of the zone to lookup the record in" +msgstr "ange prioritet för innehållet" -#: src/gns/gnunet-gns-proxy.c:3300 -msgid "GNUnet GNS proxy" -msgstr "" +#: src/gns/gnunet-gns.c:457 +#, fuzzy +msgid "Specify the name of the ego of the zone to lookup the record in" +msgstr "ange prioritet för innehållet" + +#: src/gns/gnunet-gns.c:476 +#, fuzzy +msgid "GNUnet GNS resolver tool" +msgstr "Spåra GNUnets nätverkstopologi." #: src/gns/gnunet-service-gns.c:442 #, fuzzy @@ -4162,7 +4350,7 @@ msgid "Failed to connect to the namecache!\n" msgstr "Misslyckades att ansluta till gnunetd.\n" #: src/gns/gnunet-service-gns.c:461 -#: src/zonemaster/gnunet-service-zonemaster.c:741 +#: src/zonemaster/gnunet-service-zonemaster.c:742 #, fuzzy msgid "Could not connect to DHT!\n" msgstr "Kunde inte ansluta till gnunetd.\n" @@ -4220,45 +4408,35 @@ msgstr "" msgid "Hostname `%s' is not well-formed, resolution fails\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:203 +#: src/gns/plugin_gnsrecord_gns.c:179 #, fuzzy, c-format msgid "Unable to parse PKEY record `%s'\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" -#: src/gns/plugin_gnsrecord_gns.c:232 +#: src/gns/plugin_gnsrecord_gns.c:208 #, fuzzy, c-format msgid "Unable to parse GNS2DNS record `%s'\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" -#: src/gns/plugin_gnsrecord_gns.c:253 +#: src/gns/plugin_gnsrecord_gns.c:229 #, fuzzy, c-format msgid "Failed to serialize GNS2DNS record with value `%s'\n" msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n" -#: src/gns/plugin_gnsrecord_gns.c:276 +#: src/gns/plugin_gnsrecord_gns.c:252 #, fuzzy, c-format msgid "Unable to parse VPN record string `%s'\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" -#: src/gns/plugin_gnsrecord_gns.c:312 +#: src/gns/plugin_gnsrecord_gns.c:288 #, fuzzy, c-format msgid "Unable to parse BOX record string `%s'\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" -#: src/gns/plugin_gnsrecord_gns.c:360 -#, fuzzy, c-format -msgid "Unable to parse REVERSE record string `%s'\n" -msgstr "Misslyckades att läsa kompislista från \"%s\"\n" - #: src/gns/plugin_rest_gns.c:384 msgid "Ego for not found, cannot perform lookup.\n" msgstr "" -#: src/gns/plugin_rest_gns.c:668 -#, fuzzy -msgid "GNS REST API initialized\n" -msgstr " Anslutning misslyckades\n" - #: src/gnsrecord/plugin_gnsrecord_dns.c:359 #, fuzzy, c-format msgid "Unable to parse IPv4 address `%s'\n" @@ -4689,6 +4867,53 @@ msgstr "\"%s\" är inte tillgänglig." msgid "Could not start hostlist HTTP server on port %u\n" msgstr "" +#: src/identity-provider/gnunet-idp.c:348 +#, fuzzy +msgid "Ego is required\n" +msgstr "%s: flagga \"%s\" är tvetydig\n" + +#: src/identity-provider/gnunet-idp.c:370 +msgid "Add attribute" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:376 +msgid "Attribute value" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:381 +msgid "Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:386 +msgid "Audience (relying party)" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:390 +msgid "List attributes for Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:395 +msgid "Issue a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:400 +msgid "Consume a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:405 +msgid "Revoke a ticket" +msgstr "" + +#: src/identity-provider/identity_provider_api.c:429 +#, fuzzy +msgid "failed to store record\n" +msgstr "Misslyckades att starta samling.\n" + +#: src/identity-provider/plugin_rest_identity_provider.c:1175 +#, fuzzy +msgid "Identity Provider REST API initialized\n" +msgstr " Anslutning misslyckades\n" + #: src/identity/gnunet-identity.c:179 #, fuzzy, c-format msgid "Failed to create ego: %s\n" @@ -4776,34 +5001,11 @@ msgstr "Kunde inte spara konfigurationsfil \"%s\":" msgid "Failed to create directory `%s' for storing egos\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" -#: src/identity/plugin_rest_identity.c:967 +#: src/identity/plugin_rest_identity.c:964 #, fuzzy msgid "Identity REST API initialized\n" msgstr " Anslutning misslyckades\n" -#: src/identity-provider/gnunet-identity-token.c:66 -#, fuzzy -msgid "Option `-t' is required\n" -msgstr "%s: flagga \"%s\" är tvetydig\n" - -#: src/identity-provider/gnunet-identity-token.c:77 -#, fuzzy, c-format -msgid "Token `%s' is malformed\n" -msgstr "Ogiltigt argument: \"%s\"\n" - -#: src/identity-provider/gnunet-identity-token.c:166 -msgid "GNUid token" -msgstr "" - -#: src/identity-provider/gnunet-identity-token.c:171 -msgid "Print token contents" -msgstr "" - -#: src/identity-provider/plugin_rest_identity_provider.c:1166 -#, fuzzy -msgid "Identity Token REST API initialized\n" -msgstr " Anslutning misslyckades\n" - #: src/json/json.c:119 #, fuzzy, c-format msgid "Failed to parse JSON in option `%s': %s (%s)\n" @@ -4904,12 +5106,66 @@ msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n" msgid "flat plugin running\n" msgstr "" -#: src/namecache/plugin_namecache_postgres.c:90 -#: src/namestore/plugin_namestore_postgres.c:97 -#, fuzzy -msgid "Failed to create indices\n" +#: src/namestore/gnunet-namestore-fcfsd.c:508 +#, fuzzy, c-format +msgid "Unsupported form value `%s'\n" +msgstr "Kommando \"%s\" stöds ej. Avbryter.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:535 +#, fuzzy, c-format +msgid "Failed to create record for domain `%s': %s\n" +msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:555 +msgid "Error when mapping zone to name\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:585 +#, c-format +msgid "Found existing name `%s' for the given key\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:662 +#, c-format +msgid "Found %u existing records for domain `%s'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:718 +#, fuzzy, c-format +msgid "Failed to create page for `%s'\n" msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n" +#: src/namestore/gnunet-namestore-fcfsd.c:734 +#, fuzzy, c-format +msgid "Failed to setup post processor for `%s'\n" +msgstr "Misslyckades att läsa kompislista från \"%s\"\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:770 +msgid "Domain name must not contain `.'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:778 +msgid "Domain name must not contain `+'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:974 +msgid "No ego configured for `fcfsd` subsystem\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:1000 +#, fuzzy +msgid "Failed to start HTTP server\n" +msgstr "Misslyckades att starta samling.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1042 +#, fuzzy +msgid "Failed to connect to identity\n" +msgstr "Misslyckades att ansluta till gnunetd.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1074 +msgid "GNU Name System First Come First Serve name registration service" +msgstr "" + #: src/namestore/gnunet-namestore.c:301 #, fuzzy, c-format msgid "Adding record failed: %s\n" @@ -4918,7 +5174,7 @@ msgstr "" "Fel vid uppladdning av fil: %s\n" #: src/namestore/gnunet-namestore.c:330 -#: src/namestore/plugin_rest_namestore.c:562 +#: src/namestore/plugin_rest_namestore.c:567 #, fuzzy, c-format msgid "Deleting record failed, record does not exist%s%s\n" msgstr "" @@ -4926,7 +5182,7 @@ msgstr "" "Fel vid uppladdning av fil: %s\n" #: src/namestore/gnunet-namestore.c:337 -#: src/namestore/plugin_rest_namestore.c:571 +#: src/namestore/plugin_rest_namestore.c:576 #, fuzzy, c-format msgid "Deleting record failed%s%s\n" msgstr "" @@ -4946,7 +5202,7 @@ msgid "Records already exist under `%s', cannot add `%s' record.\n" msgstr "" #: src/namestore/gnunet-namestore.c:698 -#: src/namestore/plugin_rest_namestore.c:597 +#: src/namestore/plugin_rest_namestore.c:602 #, c-format msgid "There are no records under label `%s' that could be deleted.\n" msgstr "" @@ -4957,24 +5213,11 @@ msgid "" "There are no records under label `%s' that match the request for deletion.\n" msgstr "" -#: src/namestore/gnunet-namestore.c:776 -#: src/namestore/plugin_rest_namestore.c:1004 -#, fuzzy, c-format -msgid "Ego `%s' not known to identity service\n" -msgstr "\"%s\": okänd tjänst: %s\n" - #: src/namestore/gnunet-namestore.c:791 #, c-format msgid "No options given\n" msgstr "" -#: src/namestore/gnunet-namestore.c:802 -#: src/namestore/gnunet-namestore-fcfsd.c:1034 -#: src/namestore/plugin_rest_namestore.c:1017 -#, fuzzy -msgid "Failed to connect to namestore\n" -msgstr "Misslyckades att ansluta till gnunetd.\n" - #: src/namestore/gnunet-namestore.c:810 src/namestore/gnunet-namestore.c:819 #: src/namestore/gnunet-namestore.c:838 src/namestore/gnunet-namestore.c:861 #: src/namestore/gnunet-namestore.c:915 @@ -4988,14 +5231,14 @@ msgid "add" msgstr "" #: src/namestore/gnunet-namestore.c:829 -#: src/namestore/plugin_rest_namestore.c:671 +#: src/namestore/plugin_rest_namestore.c:676 #, fuzzy, c-format msgid "Unsupported type `%s'\n" msgstr "Kommando \"%s\" stöds ej. Avbryter.\n" #: src/namestore/gnunet-namestore.c:851 -#: src/namestore/plugin_rest_namestore.c:689 -#: src/namestore/plugin_rest_namestore.c:729 +#: src/namestore/plugin_rest_namestore.c:694 +#: src/namestore/plugin_rest_namestore.c:734 #, fuzzy, c-format msgid "Value `%s' invalid for record type `%s'\n" msgstr "%s: symbolvärde \"%s\" ogiltigt för %s\n" @@ -5014,8 +5257,7 @@ msgstr "" msgid "Invalid public key for reverse lookup `%s'\n" msgstr "Ogiltigt argument: \"%s\"\n" -#: src/namestore/gnunet-namestore.c:979 -#: src/peerinfo-tool/gnunet-peerinfo.c:775 +#: src/namestore/gnunet-namestore.c:979 src/peerinfo-tool/gnunet-peerinfo.c:775 #, fuzzy, c-format msgid "Invalid URI `%s'\n" msgstr "Ogiltiga argument: " @@ -5026,13 +5268,13 @@ msgid "Invalid nick `%s'\n" msgstr "Ogiltiga argument: " #: src/namestore/gnunet-namestore.c:1051 -#: src/namestore/plugin_rest_namestore.c:1047 +#: src/namestore/plugin_rest_namestore.c:1052 #, fuzzy, c-format msgid "No default ego configured in identity service\n" msgstr "\"%s\": okänd tjänst: %s\n" #: src/namestore/gnunet-namestore.c:1108 -#: src/namestore/plugin_rest_namestore.c:1143 +#: src/namestore/plugin_rest_namestore.c:1148 #, fuzzy, c-format msgid "Cannot connect to identity service\n" msgstr "Kunde inte ansluta till gnunetd.\n" @@ -5096,67 +5338,7 @@ msgstr "" msgid "name of the ego controlling the zone" msgstr "Visa värde av alternativet" -#: src/namestore/gnunet-namestore-fcfsd.c:508 -#, fuzzy, c-format -msgid "Unsupported form value `%s'\n" -msgstr "Kommando \"%s\" stöds ej. Avbryter.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:535 -#, fuzzy, c-format -msgid "Failed to create record for domain `%s': %s\n" -msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:555 -msgid "Error when mapping zone to name\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:585 -#, c-format -msgid "Found existing name `%s' for the given key\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:662 -#, c-format -msgid "Found %u existing records for domain `%s'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:718 -#, fuzzy, c-format -msgid "Failed to create page for `%s'\n" -msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:734 -#, fuzzy, c-format -msgid "Failed to setup post processor for `%s'\n" -msgstr "Misslyckades att läsa kompislista från \"%s\"\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:770 -msgid "Domain name must not contain `.'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:778 -msgid "Domain name must not contain `+'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:974 -msgid "No ego configured for `fcfsd` subsystem\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:1000 -#, fuzzy -msgid "Failed to start HTTP server\n" -msgstr "Misslyckades att starta samling.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1042 -#, fuzzy -msgid "Failed to connect to identity\n" -msgstr "Misslyckades att ansluta till gnunetd.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1074 -msgid "GNU Name System First Come First Serve name registration service" -msgstr "" - -#: src/namestore/gnunet-service-namestore.c:612 +#: src/namestore/gnunet-service-namestore.c:615 #, fuzzy, c-format msgid "Failed to replicate block in namecache: %s\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" @@ -5169,7 +5351,7 @@ msgstr "" msgid "flat file database running\n" msgstr "" -#: src/namestore/plugin_rest_namestore.c:1188 +#: src/namestore/plugin_rest_namestore.c:1193 #, fuzzy msgid "Namestore REST API initialized\n" msgstr " Anslutning misslyckades\n" @@ -5460,11 +5642,6 @@ msgstr "" msgid "`upnpc' command not found\n" msgstr "" -#: src/nse/gnunet-nse.c:122 -#, fuzzy -msgid "Show network size estimates from NSE service." -msgstr "# byte mottogs via TCP" - #: src/nse/gnunet-nse-profiler.c:842 #, fuzzy msgid "limit to the number of connections to NSE services, 0 for none" @@ -5491,66 +5668,16 @@ msgstr "" msgid "Measure quality and performance of the NSE service." msgstr "Kan inte tillgå tjänsten" -#: src/nse/gnunet-service-nse.c:1534 -#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 -msgid "Value is too large.\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:178 -#, fuzzy, c-format -msgid "Removing expired address of transport `%s'\n" -msgstr "Tillgängliga transport(er): %s\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:310 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s': %s\n" -msgstr "Misslyckades att läsa kompislista från \"%s\"\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:331 -#: src/peerinfo/gnunet-service-peerinfo.c:362 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s'\n" -msgstr "Misslyckades att läsa kompislista från \"%s\"\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:446 -msgid "# peers known" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:489 -#, c-format -msgid "" -"File `%s' in directory `%s' does not match naming convention. Removed.\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:655 -#, fuzzy, c-format -msgid "Scanning directory `%s'\n" -msgstr "Misslyckades att läsa kompislista från \"%s\"\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:663 -#, c-format -msgid "Still no peers found in `%s'!\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:1076 -#, fuzzy, c-format -msgid "Cleaning up directory `%s'\n" -msgstr "Misslyckades att läsa kompislista från \"%s\"\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1405 -#, c-format -msgid "Importing HELLOs from `%s'\n" -msgstr "" +#: src/nse/gnunet-nse.c:122 +#, fuzzy +msgid "Show network size estimates from NSE service." +msgstr "# byte mottogs via TCP" -#: src/peerinfo/gnunet-service-peerinfo.c:1418 -msgid "Skipping import of included HELLOs\n" +#: src/nse/gnunet-service-nse.c:1534 +#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 +msgid "Value is too large.\n" msgstr "" -#: src/peerinfo/peerinfo_api.c:220 -#, fuzzy -msgid "Failed to receive response from `PEERINFO' service." -msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n" - #: src/peerinfo-tool/gnunet-peerinfo.c:239 #, fuzzy, c-format msgid "%sPeer `%s'\n" @@ -5641,6 +5768,61 @@ msgstr "Testar transport(er) %s\n" msgid "Failed to load transport plugin for `%s'\n" msgstr "Kunde inte slå upp \"%s\": %s\n" +#: src/peerinfo/gnunet-service-peerinfo.c:178 +#, fuzzy, c-format +msgid "Removing expired address of transport `%s'\n" +msgstr "Tillgängliga transport(er): %s\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:310 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s': %s\n" +msgstr "Misslyckades att läsa kompislista från \"%s\"\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:331 +#: src/peerinfo/gnunet-service-peerinfo.c:362 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s'\n" +msgstr "Misslyckades att läsa kompislista från \"%s\"\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:446 +msgid "# peers known" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:489 +#, c-format +msgid "" +"File `%s' in directory `%s' does not match naming convention. Removed.\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:655 +#, fuzzy, c-format +msgid "Scanning directory `%s'\n" +msgstr "Misslyckades att läsa kompislista från \"%s\"\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:663 +#, c-format +msgid "Still no peers found in `%s'!\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1076 +#, fuzzy, c-format +msgid "Cleaning up directory `%s'\n" +msgstr "Misslyckades att läsa kompislista från \"%s\"\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1405 +#, c-format +msgid "Importing HELLOs from `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1418 +msgid "Skipping import of included HELLOs\n" +msgstr "" + +#: src/peerinfo/peerinfo_api.c:220 +#, fuzzy +msgid "Failed to receive response from `PEERINFO' service." +msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n" + #: src/peerstore/gnunet-peerstore.c:91 msgid "peerstore" msgstr "" @@ -5690,15 +5872,10 @@ msgstr "Fel vid skapandet av användare" msgid "Unable to create indices: %s.\n" msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n" -#: src/postgres/postgres.c:67 -#, fuzzy, c-format -msgid "`%s:%s' failed at %s:%d with error: %s\n" -msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n" - -#: src/postgres/postgres.c:192 +#: src/pq/pq_prepare.c:80 #, fuzzy, c-format -msgid "Unable to connect to Postgres database '%s': %s\n" -msgstr "Kunde inte spara konfigurationsfil \"%s\":" +msgid "PQprepare (`%s' as `%s') failed with error: %s\n" +msgstr "\"%s\" till \"%s\" misslyckades vid %s:%d med fel: %s\n" #: src/psycstore/gnunet-service-psycstore.c:249 #, fuzzy @@ -5878,61 +6055,61 @@ msgstr "GNUnet-konfiguration" msgid "Daemon to announce regular expressions for the peer using cadet." msgstr "" -#: src/regex/gnunet-regex-profiler.c:1314 +#: src/regex/gnunet-regex-profiler.c:1386 #, fuzzy msgid "No configuration file given. Exiting\n" msgstr "använd konfigurationsfil FILNAMN" -#: src/regex/gnunet-regex-profiler.c:1355 +#: src/regex/gnunet-regex-profiler.c:1427 #: src/regex/gnunet-regex-simulation-profiler.c:630 #, c-format msgid "No policy directory specified on command line. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1361 +#: src/regex/gnunet-regex-profiler.c:1433 #: src/regex/gnunet-regex-simulation-profiler.c:638 #, c-format msgid "Specified policies directory does not exist. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1368 +#: src/regex/gnunet-regex-profiler.c:1440 #, fuzzy, c-format msgid "No files found in `%s'\n" msgstr "%d filer hittades i katalog.\n" -#: src/regex/gnunet-regex-profiler.c:1377 +#: src/regex/gnunet-regex-profiler.c:1449 msgid "No search strings file given. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1397 +#: src/regex/gnunet-regex-profiler.c:1469 #, fuzzy msgid "Error loading search strings. Exiting.\n" msgstr "Fel vid lämning av DHT.\n" -#: src/regex/gnunet-regex-profiler.c:1485 +#: src/regex/gnunet-regex-profiler.c:1557 #, fuzzy msgid "name of the file for writing statistics" msgstr "Visa värde av alternativet" -#: src/regex/gnunet-regex-profiler.c:1491 +#: src/regex/gnunet-regex-profiler.c:1563 msgid "wait TIMEOUT before ending the experiment" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1497 +#: src/regex/gnunet-regex-profiler.c:1569 msgid "directory with policy files" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1504 +#: src/regex/gnunet-regex-profiler.c:1576 #, fuzzy msgid "name of file with input strings" msgstr "Visa värde av alternativet" -#: src/regex/gnunet-regex-profiler.c:1510 +#: src/regex/gnunet-regex-profiler.c:1582 #, fuzzy msgid "name of file with hosts' names" msgstr "Visa värde av alternativet" -#: src/regex/gnunet-regex-profiler.c:1523 +#: src/regex/gnunet-regex-profiler.c:1595 msgid "Profiler for regex" msgstr "" @@ -6166,10 +6343,10 @@ msgstr "" msgid "Calculate the Vectorproduct with a GNUnet peer." msgstr "" -#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1407 -#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 -#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1180 +#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172 #: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063 +#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401 +#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 #, fuzzy msgid "Connect to CADET failed\n" msgstr " Anslutning misslyckades (fel?)\n" @@ -6194,7 +6371,7 @@ msgstr "" msgid "also profile decryption" msgstr "" -#: src/set/gnunet-service-set.c:1948 +#: src/set/gnunet-service-set.c:1989 #, fuzzy msgid "Could not connect to CADET service\n" msgstr "Kunde inte ansluta till gnunetd.\n" @@ -6254,116 +6431,116 @@ msgstr "" msgid "say good-bye and leave somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1227 src/social/gnunet-social.c:1232 +#: src/social/gnunet-social.c:1227 msgid "create a place" msgstr "" -#: src/social/gnunet-social.c:1237 +#: src/social/gnunet-social.c:1232 msgid "destroy a place we were hosting" msgstr "" -#: src/social/gnunet-social.c:1242 +#: src/social/gnunet-social.c:1237 msgid "enter somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1248 +#: src/social/gnunet-social.c:1243 msgid "find state matching name prefix" msgstr "" -#: src/social/gnunet-social.c:1253 +#: src/social/gnunet-social.c:1248 msgid "replay history of messages up to the given --limit" msgstr "" -#: src/social/gnunet-social.c:1258 +#: src/social/gnunet-social.c:1253 msgid "reconnect to a previously created place" msgstr "" -#: src/social/gnunet-social.c:1263 +#: src/social/gnunet-social.c:1258 msgid "publish something to a place we are hosting" msgstr "" -#: src/social/gnunet-social.c:1268 +#: src/social/gnunet-social.c:1263 msgid "reconnect to a previously entered place" msgstr "" -#: src/social/gnunet-social.c:1273 +#: src/social/gnunet-social.c:1268 msgid "search for state matching exact name" msgstr "" -#: src/social/gnunet-social.c:1278 +#: src/social/gnunet-social.c:1273 msgid "submit something to somebody's place" msgstr "" -#: src/social/gnunet-social.c:1283 +#: src/social/gnunet-social.c:1278 msgid "list of egos and subscribed places" msgstr "" -#: src/social/gnunet-social.c:1288 +#: src/social/gnunet-social.c:1283 msgid "extract and replay history between message IDs --start and --until" msgstr "" -#: src/social/gnunet-social.c:1297 +#: src/social/gnunet-social.c:1292 msgid "application ID to use when connecting" msgstr "" -#: src/social/gnunet-social.c:1303 +#: src/social/gnunet-social.c:1298 msgid "message body or state value" msgstr "" -#: src/social/gnunet-social.c:1309 +#: src/social/gnunet-social.c:1304 #, fuzzy msgid "name or public key of ego" msgstr "Ogiltigt argument: \"%s\"\n" -#: src/social/gnunet-social.c:1314 +#: src/social/gnunet-social.c:1309 #, fuzzy msgid "wait for incoming messages" msgstr "Misslyckades att leverera \"%s\" meddelande.\n" -#: src/social/gnunet-social.c:1320 +#: src/social/gnunet-social.c:1315 #, fuzzy msgid "GNS name" msgstr "Visa _namn" -#: src/social/gnunet-social.c:1326 +#: src/social/gnunet-social.c:1321 msgid "peer ID for --guest-enter" msgstr "" -#: src/social/gnunet-social.c:1332 +#: src/social/gnunet-social.c:1327 msgid "name (key) to query from state" msgstr "" -#: src/social/gnunet-social.c:1338 +#: src/social/gnunet-social.c:1333 #, fuzzy msgid "method name" msgstr "Visa _namn" -#: src/social/gnunet-social.c:1344 +#: src/social/gnunet-social.c:1339 #, fuzzy msgid "number of messages to replay from history" msgstr "antal meddelanden att använda per iteration" -#: src/social/gnunet-social.c:1350 +#: src/social/gnunet-social.c:1345 msgid "key address of place" msgstr "" -#: src/social/gnunet-social.c:1356 +#: src/social/gnunet-social.c:1351 msgid "start message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1361 +#: src/social/gnunet-social.c:1356 msgid "respond to entry requests by admitting all guests" msgstr "" -#: src/social/gnunet-social.c:1367 +#: src/social/gnunet-social.c:1362 msgid "end message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1372 +#: src/social/gnunet-social.c:1367 msgid "respond to entry requests by refusing all guests" msgstr "" -#: src/social/gnunet-social.c:1382 +#: src/social/gnunet-social.c:1377 msgid "" "gnunet-social - Interact with the social service: enter/leave, send/receive " "messages, access history and state.\n" @@ -6556,7 +6733,7 @@ msgid "" msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:231 src/testing/list-keys.c:46 -#: src/testing/testing.c:288 src/util/gnunet-ecc.c:298 +#: src/testing/testing.c:288 src/util/gnunet-ecc.c:301 #, c-format msgid "Incorrect hostkey file format: %s\n" msgstr "" @@ -6626,16 +6803,6 @@ msgstr "" msgid "%.s Unknown result code." msgstr "" -#: src/testbed/gnunet_testbed_mpi_spawn.c:118 -#, fuzzy -msgid "Waiting for child to exit.\n" -msgstr "Väntar på att motparter ska ansluta (%u iterationer kvar)...\n" - -#: src/testbed/gnunet_testbed_mpi_spawn.c:241 -#, fuzzy, c-format -msgid "Spawning process `%s'\n" -msgstr "Startade samling \"%s\".\n" - #: src/testbed/gnunet-testbed-profiler.c:290 msgid "tolerate COUNT number of continious timeout failures" msgstr "" @@ -6647,6 +6814,16 @@ msgid "" "signal is received" msgstr "" +#: src/testbed/gnunet_testbed_mpi_spawn.c:118 +#, fuzzy +msgid "Waiting for child to exit.\n" +msgstr "Väntar på att motparter ska ansluta (%u iterationer kvar)...\n" + +#: src/testbed/gnunet_testbed_mpi_spawn.c:241 +#, fuzzy, c-format +msgid "Spawning process `%s'\n" +msgstr "Startade samling \"%s\".\n" + #: src/testbed/testbed_api.c:410 #, fuzzy, c-format msgid "Adding host %u failed with error: %s\n" @@ -6943,10 +7120,6 @@ msgstr "# krypterade PONG-meddelanden mottagna" msgid "GNUnet topology control" msgstr "" -#: src/transport/gnunet-service-transport_ats.c:141 -msgid "# Addresses given to ATS" -msgstr "" - #: src/transport/gnunet-service-transport.c:448 msgid "# messages dropped due to slow client" msgstr "" @@ -6995,6 +7168,10 @@ msgstr "" msgid "Transport service is lacking key configuration settings. Exiting.\n" msgstr "GNUnet-konfiguration" +#: src/transport/gnunet-service-transport_ats.c:141 +msgid "# Addresses given to ATS" +msgstr "" + #: src/transport/gnunet-service-transport_hello.c:195 msgid "# refreshed my HELLO" msgstr "" @@ -7326,6 +7503,46 @@ msgstr "" msgid "# validations succeeded" msgstr "" +#: src/transport/gnunet-transport-profiler.c:219 +#, c-format +msgid "%llu B in %llu ms == %.2f KB/s!\n" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:617 +msgid "send data to peer" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:621 +#, fuzzy +msgid "receive data from peer" +msgstr "# byte mottagna av typen %d" + +#: src/transport/gnunet-transport-profiler.c:626 +#, fuzzy +msgid "iterations" +msgstr "Visa alla alternativ" + +#: src/transport/gnunet-transport-profiler.c:631 +#, fuzzy +msgid "number of messages to send" +msgstr "antal meddelanden att använda per iteration" + +#: src/transport/gnunet-transport-profiler.c:636 +#, fuzzy +msgid "message size to use" +msgstr "meddelandestorlek" + +#: src/transport/gnunet-transport-profiler.c:641 +#: src/transport/gnunet-transport.c:1462 +msgid "peer identity" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:652 +#: src/transport/gnunet-transport.c:1482 +#, fuzzy +msgid "Direct access to transport service." +msgstr "Misslyckades att ansluta till gnunetd.\n" + #: src/transport/gnunet-transport.c:413 #, fuzzy, c-format msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n" @@ -7465,11 +7682,6 @@ msgstr "Skriv ut information om GNUnets motparter." msgid "do not resolve hostnames" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" -#: src/transport/gnunet-transport.c:1462 -#: src/transport/gnunet-transport-profiler.c:641 -msgid "peer identity" -msgstr "" - #: src/transport/gnunet-transport.c:1466 msgid "monitor plugin sessions" msgstr "" @@ -7478,44 +7690,9 @@ msgstr "" msgid "send data for benchmarking to the other peer (until CTRL-C)" msgstr "" -#: src/transport/gnunet-transport.c:1482 -#: src/transport/gnunet-transport-profiler.c:652 -#, fuzzy -msgid "Direct access to transport service." -msgstr "Misslyckades att ansluta till gnunetd.\n" - -#: src/transport/gnunet-transport-profiler.c:219 -#, c-format -msgid "%llu B in %llu ms == %.2f KB/s!\n" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:617 -msgid "send data to peer" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:621 -#, fuzzy -msgid "receive data from peer" -msgstr "# byte mottagna av typen %d" - -#: src/transport/gnunet-transport-profiler.c:626 -#, fuzzy -msgid "iterations" -msgstr "Visa alla alternativ" - -#: src/transport/gnunet-transport-profiler.c:631 -#, fuzzy -msgid "number of messages to send" -msgstr "antal meddelanden att använda per iteration" - -#: src/transport/gnunet-transport-profiler.c:636 -#, fuzzy -msgid "message size to use" -msgstr "meddelandestorlek" - #: src/transport/plugin_transport_http_client.c:1474 -#: src/transport/plugin_transport_http_server.c:2249 -#: src/transport/plugin_transport_http_server.c:3463 +#: src/transport/plugin_transport_http_server.c:2312 +#: src/transport/plugin_transport_http_server.c:3526 #: src/transport/plugin_transport_tcp.c:3890 #: src/transport/plugin_transport_tcp.c:3897 msgid "TCP_STEALTH not supported on this platform.\n" @@ -7527,13 +7704,13 @@ msgid "Could not initialize curl multi handle, failed to start %s plugin!\n" msgstr "" #: src/transport/plugin_transport_http_client.c:2164 -#: src/transport/plugin_transport_http_server.c:3178 +#: src/transport/plugin_transport_http_server.c:3241 #, fuzzy, c-format msgid "Shutting down plugin `%s'\n" msgstr "Testar transport(er) %s\n" #: src/transport/plugin_transport_http_client.c:2181 -#: src/transport/plugin_transport_http_server.c:3248 +#: src/transport/plugin_transport_http_server.c:3311 #, fuzzy, c-format msgid "Shutdown for plugin `%s' complete\n" msgstr "" @@ -7544,108 +7721,108 @@ msgstr "" msgid "Maximum number of requests is %u\n" msgstr "Maximalt antal chattklienter uppnått.\n" -#: src/transport/plugin_transport_http_server.c:1727 +#: src/transport/plugin_transport_http_server.c:1756 #, c-format msgid "" "Access from connection %p (%u of %u) for `%s' `%s' url `%s' with upload data " "size %u\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1967 +#: src/transport/plugin_transport_http_server.c:2028 #, c-format msgid "Accepting connection (%u of %u) from `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1975 +#: src/transport/plugin_transport_http_server.c:2036 #, c-format msgid "" "Server reached maximum number connections (%u), rejecting new connection\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2125 +#: src/transport/plugin_transport_http_server.c:2186 msgid "" "Could not create a new TLS certificate, program `gnunet-transport-" "certificate-creation' could not be started!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2148 +#: src/transport/plugin_transport_http_server.c:2209 #, c-format msgid "No usable TLS certificate found and creating one at `%s/%s' failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2275 +#: src/transport/plugin_transport_http_server.c:2338 msgid "Could not load or create server certificate! Loading plugin failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2587 +#: src/transport/plugin_transport_http_server.c:2650 #, fuzzy msgid "Require valid port number for service in configuration!\n" msgstr "Inga applikationer definierade i konfiguration!\n" -#: src/transport/plugin_transport_http_server.c:2752 +#: src/transport/plugin_transport_http_server.c:2815 #, c-format msgid "Found %u addresses to report to NAT service\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2838 +#: src/transport/plugin_transport_http_server.c:2901 #: src/transport/plugin_transport_udp.c:3622 msgid "Disabling IPv6 since it is not supported on this system!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2944 +#: src/transport/plugin_transport_http_server.c:3007 #, c-format msgid "IPv4 support is %s\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2959 +#: src/transport/plugin_transport_http_server.c:3022 #, c-format msgid "IPv6 support is %s\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2965 +#: src/transport/plugin_transport_http_server.c:3028 msgid "Neither IPv4 nor IPv6 are enabled! Fix in configuration\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2976 +#: src/transport/plugin_transport_http_server.c:3039 #, fuzzy msgid "Port is required! Fix in configuration\n" msgstr " gconfig\tGTK-konfiguration\n" -#: src/transport/plugin_transport_http_server.c:2982 +#: src/transport/plugin_transport_http_server.c:3045 #, fuzzy, c-format msgid "Using port %u\n" msgstr "Testar transport(er) %s\n" -#: src/transport/plugin_transport_http_server.c:3001 +#: src/transport/plugin_transport_http_server.c:3064 #, fuzzy, c-format msgid "Specific IPv4 address `%s' in configuration file is invalid!\n" msgstr "" "Du måste ange ett positivt nummer för \"%s\" i konfigurationen i sektion \"%s" "\".\n" -#: src/transport/plugin_transport_http_server.c:3036 +#: src/transport/plugin_transport_http_server.c:3099 #, fuzzy, c-format msgid "Specific IPv6 address `%s' in configuration file is invalid!\n" msgstr "" "Du måste ange ett positivt nummer för \"%s\" i konfigurationen i sektion \"%s" "\".\n" -#: src/transport/plugin_transport_http_server.c:3111 +#: src/transport/plugin_transport_http_server.c:3174 #, fuzzy, c-format msgid "Using external hostname `%s'\n" msgstr "Startade samling \"%s\".\n" -#: src/transport/plugin_transport_http_server.c:3132 +#: src/transport/plugin_transport_http_server.c:3195 #, fuzzy, c-format msgid "Notifying transport only about hostname `%s'\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" -#: src/transport/plugin_transport_http_server.c:3149 +#: src/transport/plugin_transport_http_server.c:3212 #, fuzzy, c-format msgid "Maximum number of connections is %u\n" msgstr "Maximalt antal chattklienter uppnått.\n" -#: src/transport/plugin_transport_http_server.c:3475 +#: src/transport/plugin_transport_http_server.c:3538 #, fuzzy msgid "Unable to compile URL regex\n" msgstr "Kunde inte initiera SQLite.\n" @@ -7800,21 +7977,6 @@ msgstr "" msgid "TCP transport advertises itself as being on port %llu\n" msgstr "" -#: src/transport/plugin_transport_udp_broadcasting.c:168 -#, fuzzy -msgid "# Multicast HELLO beacons received via UDP" -msgstr "# krypterade PONG-meddelanden mottagna" - -#: src/transport/plugin_transport_udp_broadcasting.c:548 -msgid "" -"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" -msgstr "" - -#: src/transport/plugin_transport_udp_broadcasting.c:565 -#, c-format -msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" -msgstr "" - #: src/transport/plugin_transport_udp.c:3366 #, c-format msgid "" @@ -7863,6 +8025,21 @@ msgstr "\"%s\" är inte tillgänglig." msgid "Failed to create UDP network sockets\n" msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n" +#: src/transport/plugin_transport_udp_broadcasting.c:168 +#, fuzzy +msgid "# Multicast HELLO beacons received via UDP" +msgstr "# krypterade PONG-meddelanden mottagna" + +#: src/transport/plugin_transport_udp_broadcasting.c:548 +msgid "" +"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" +msgstr "" + +#: src/transport/plugin_transport_udp_broadcasting.c:565 +#, c-format +msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" +msgstr "" + #: src/transport/plugin_transport_unix.c:1403 #, fuzzy, c-format msgid "Cannot create path to `%s'\n" @@ -7978,7 +8155,7 @@ msgid "" "`GNUNET_SERVER_receive_done' after %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2337 +#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2336 #, fuzzy, c-format msgid "Unknown address family %d\n" msgstr "Okänd operation \"%s\"\n" @@ -8023,51 +8200,51 @@ msgstr "Fel vid %s:%d.\n" msgid "Service `%s' runs at %s\n" msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n" -#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1501 +#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1500 msgid "Service process failed to initialize\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1505 +#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1504 msgid "Service process could not initialize server function\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1509 +#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1508 msgid "Service process failed to report status\n" msgstr "" #: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1488 -#: src/util/service.c:1379 +#: src/util/service.c:1378 #, fuzzy, c-format msgid "Cannot obtain information about user `%s': %s\n" msgstr "Kan inte öppna konfigurationsfil \"%s\".\n" -#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1381 +#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1380 msgid "No such user" msgstr "" -#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1400 +#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1399 #, c-format msgid "Cannot change user/group to `%s': %s\n" msgstr "Kan inte ändra användare/grupp till \"%s\": %s\n" -#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1728 +#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1727 msgid "do daemonize (detach from terminal)" msgstr "" #: src/transport/tcp_service_legacy.c:1448 src/util/program.c:244 -#: src/util/service.c:1791 +#: src/util/service.c:1790 #, fuzzy, c-format msgid "Malformed configuration file `%s', exit ...\n" msgstr "Kunde inte spara konfigurationsfil \"%s\":" #: src/transport/tcp_service_legacy.c:1458 src/util/program.c:261 -#: src/util/service.c:1802 +#: src/util/service.c:1801 #, fuzzy msgid "Malformed configuration, exit ...\n" msgstr "Kunde inte spara konfigurationsfil \"%s\":" #: src/transport/tcp_service_legacy.c:1463 src/util/program.c:256 -#: src/util/service.c:1808 +#: src/util/service.c:1807 #, fuzzy, c-format msgid "Could not access configuration file `%s'\n" msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n" @@ -8112,86 +8289,86 @@ msgstr "" msgid "Need a non-empty hostname for service `%s'.\n" msgstr "" -#: src/util/common_logging.c:256 src/util/common_logging.c:1129 +#: src/util/common_logging.c:259 src/util/common_logging.c:1132 msgid "DEBUG" msgstr "FELSÖKNING" -#: src/util/common_logging.c:258 src/util/common_logging.c:1127 +#: src/util/common_logging.c:261 src/util/common_logging.c:1130 msgid "INFO" msgstr "INFO" -#: src/util/common_logging.c:260 src/util/common_logging.c:1125 +#: src/util/common_logging.c:263 src/util/common_logging.c:1128 msgid "MESSAGE" msgstr "MEDDELANDE" -#: src/util/common_logging.c:262 src/util/common_logging.c:1123 +#: src/util/common_logging.c:265 src/util/common_logging.c:1126 msgid "WARNING" msgstr "VARNING" -#: src/util/common_logging.c:264 src/util/common_logging.c:1121 +#: src/util/common_logging.c:267 src/util/common_logging.c:1124 msgid "ERROR" msgstr "FEL" -#: src/util/common_logging.c:266 src/util/common_logging.c:1131 +#: src/util/common_logging.c:269 src/util/common_logging.c:1134 msgid "NONE" msgstr "" -#: src/util/common_logging.c:879 +#: src/util/common_logging.c:882 #, c-format msgid "Message `%.*s' repeated %u times in the last %s\n" msgstr "" -#: src/util/common_logging.c:1132 +#: src/util/common_logging.c:1135 msgid "INVALID" msgstr "" -#: src/util/common_logging.c:1302 +#: src/util/common_logging.c:1326 msgid "unknown address" msgstr "" -#: src/util/common_logging.c:1344 +#: src/util/common_logging.c:1368 msgid "invalid address" msgstr "" -#: src/util/common_logging.c:1362 +#: src/util/common_logging.c:1386 #, fuzzy, c-format msgid "Configuration fails to specify option `%s' in section `%s'!\n" msgstr "Konfigurationsfil \"%s\" skapad.\n" -#: src/util/common_logging.c:1383 +#: src/util/common_logging.c:1407 #, fuzzy, c-format msgid "" "Configuration specifies invalid value for option `%s' in section `%s': %s\n" msgstr "Konfigurationsfil \"%s\" hittades inte. Kör \"gnunet-setup -d\"!\n" -#: src/util/configuration.c:286 +#: src/util/configuration.c:296 #, fuzzy, c-format msgid "Syntax error while deserializing in line %u\n" msgstr "Syntaxfel i konfigurationsfil \"%s\" på rad %d.\n" -#: src/util/configuration.c:344 +#: src/util/configuration.c:355 #, fuzzy, c-format msgid "Error while reading file `%s'\n" msgstr "Fel vid nedladdning: %s\n" -#: src/util/configuration.c:1017 +#: src/util/configuration.c:1034 #, c-format msgid "" "Configuration value '%s' for '%s' in section '%s' is not in set of legal " "choices\n" msgstr "" -#: src/util/configuration.c:1136 +#: src/util/configuration.c:1153 #, c-format msgid "Recursive expansion suspected, aborting $-expansion for term `%s'\n" msgstr "" -#: src/util/configuration.c:1169 +#: src/util/configuration.c:1186 #, fuzzy, c-format msgid "Missing closing `%s' in option `%s'\n" msgstr "Konfigurationsfil \"%s\" skapad.\n" -#: src/util/configuration.c:1237 +#: src/util/configuration.c:1254 #, c-format msgid "" "Failed to expand `%s' in `%s' as it is neither found in [PATHS] nor defined " @@ -8225,32 +8402,32 @@ msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n" msgid "EdDSA signature verification failed at %s:%d: %s\n" msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n" -#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:160 -#: src/util/crypto_ecc_setup.c:278 src/util/crypto_ecc_setup.c:316 +#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:161 +#: src/util/crypto_ecc_setup.c:279 src/util/crypto_ecc_setup.c:317 #, fuzzy, c-format msgid "Could not acquire lock on file `%s': %s...\n" msgstr "Kunde inte slå upp \"%s\": %s\n" -#: src/util/crypto_ecc_setup.c:127 src/util/crypto_ecc_setup.c:283 +#: src/util/crypto_ecc_setup.c:128 src/util/crypto_ecc_setup.c:284 #, fuzzy msgid "Creating a new private key. This may take a while.\n" msgstr "Skapar ny värdnyckel (det här kan ta en stund).\n" -#: src/util/crypto_ecc_setup.c:164 src/util/crypto_ecc_setup.c:320 +#: src/util/crypto_ecc_setup.c:165 src/util/crypto_ecc_setup.c:322 msgid "This may be ok if someone is currently generating a private key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:194 src/util/crypto_ecc_setup.c:350 +#: src/util/crypto_ecc_setup.c:195 src/util/crypto_ecc_setup.c:352 #, c-format msgid "" "When trying to read key file `%s' I found %u bytes but I need at least %u.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:198 src/util/crypto_ecc_setup.c:354 +#: src/util/crypto_ecc_setup.c:199 src/util/crypto_ecc_setup.c:356 msgid "This may be ok if someone is currently generating a key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:413 +#: src/util/crypto_ecc_setup.c:415 #, fuzzy msgid "Could not load peer's private key\n" msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n" @@ -8444,82 +8621,86 @@ msgstr "" msgid "Manipulate GNUnet configuration files" msgstr "skriv ut ett värde från konfigurationsfilen till standard ut" -#: src/util/gnunet-ecc.c:84 +#: src/util/gnunet-ecc.c:89 #, fuzzy, c-format msgid "Failed to open `%s': %s\n" msgstr "Misslyckades att leverera \"%s\" meddelande.\n" -#: src/util/gnunet-ecc.c:120 +#: src/util/gnunet-ecc.c:125 #, c-format msgid "Generating %u keys like %s, please wait" msgstr "" -#: src/util/gnunet-ecc.c:133 +#: src/util/gnunet-ecc.c:138 #, c-format msgid "Generating %u keys, please wait" msgstr "" -#: src/util/gnunet-ecc.c:174 +#: src/util/gnunet-ecc.c:179 #, fuzzy, c-format msgid "" "\n" "Failed to write to `%s': %s\n" msgstr "Fel vid %s:%d.\n" -#: src/util/gnunet-ecc.c:184 +#: src/util/gnunet-ecc.c:189 #, fuzzy, c-format msgid "" "\n" "Finished!\n" msgstr "Slutför" -#: src/util/gnunet-ecc.c:187 +#: src/util/gnunet-ecc.c:192 #, c-format msgid "" "\n" "Error, %u keys not generated\n" msgstr "" -#: src/util/gnunet-ecc.c:280 +#: src/util/gnunet-ecc.c:283 #, fuzzy, c-format msgid "Hostkeys file `%s' not found\n" msgstr "\"%s\" misslyckades: tabell hittades inte!\n" -#: src/util/gnunet-ecc.c:291 +#: src/util/gnunet-ecc.c:294 #, fuzzy, c-format msgid "Hostkeys file `%s' is empty\n" msgstr "antal meddelanden att använda per iteration" -#: src/util/gnunet-ecc.c:313 +#: src/util/gnunet-ecc.c:316 #, fuzzy, c-format msgid "Could not read hostkey file: %s\n" msgstr "Kunde inte skapa värdnyckel!\n" -#: src/util/gnunet-ecc.c:364 +#: src/util/gnunet-ecc.c:367 msgid "No hostkey file specified on command line\n" msgstr "" -#: src/util/gnunet-ecc.c:416 +#: src/util/gnunet-ecc.c:425 msgid "list keys included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:421 +#: src/util/gnunet-ecc.c:430 msgid "number of keys to list included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:426 +#: src/util/gnunet-ecc.c:435 msgid "create COUNT public-private key pairs (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:430 +#: src/util/gnunet-ecc.c:439 msgid "print the public key in ASCII format" msgstr "" -#: src/util/gnunet-ecc.c:434 +#: src/util/gnunet-ecc.c:443 +msgid "print the public key in HEX format" +msgstr "" + +#: src/util/gnunet-ecc.c:447 msgid "print examples of ECC operations (used for compatibility testing)" msgstr "" -#: src/util/gnunet-ecc.c:449 +#: src/util/gnunet-ecc.c:463 #, fuzzy msgid "Manipulate GNUnet private ECC key files" msgstr "skriv ut ett värde från konfigurationsfilen till standard ut" @@ -8613,7 +8794,7 @@ msgstr "Fel vid skapandet av användare" msgid "Unable to shorten unix path `%s' while keeping name unique\n" msgstr "" -#: src/util/network.c:1793 src/util/network.c:1969 +#: src/util/network.c:1793 src/util/network.c:1977 #, c-format msgid "" "Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n" @@ -8667,7 +8848,7 @@ msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n" msgid "Could not determine plugin installation path.\n" msgstr "Kunde inte fastställa min publika IPv6-adress.\n" -#: src/util/resolver_api.c:204 +#: src/util/resolver_api.c:203 #, c-format msgid "" "Missing `%s' for `%s' in configuration, DNS resolution will be unavailable.\n" @@ -8682,32 +8863,32 @@ msgstr "" "Du måste ange ett positivt nummer för \"%s\" i konfigurationen i sektion \"%s" "\".\n" -#: src/util/resolver_api.c:815 +#: src/util/resolver_api.c:826 #, fuzzy, c-format msgid "Timeout trying to resolve hostname `%s'.\n" msgstr "Misslyckades att läsa kompislista från \"%s\"\n" -#: src/util/resolver_api.c:827 +#: src/util/resolver_api.c:839 #, c-format msgid "Timeout trying to resolve IP address `%s'.\n" msgstr "" -#: src/util/resolver_api.c:1004 +#: src/util/resolver_api.c:1023 msgid "Resolver not configured correctly.\n" msgstr "" -#: src/util/resolver_api.c:1086 src/util/resolver_api.c:1107 -#: src/util/resolver_api.c:1121 +#: src/util/resolver_api.c:1109 src/util/resolver_api.c:1132 +#: src/util/resolver_api.c:1146 #, fuzzy, c-format msgid "Could not resolve our FQDN: %s\n" msgstr "Kunde inte slå upp \"%s\": %s\n" -#: src/util/service.c:1306 +#: src/util/service.c:1305 msgid "" "Could not bind to any of the ports I was supposed to, refusing to run!\n" msgstr "" -#: src/util/service.c:2082 +#: src/util/service.c:2081 #, c-format msgid "" "Processing code for message of type %u did not call " @@ -8784,63 +8965,63 @@ msgstr " dagar" msgid "end of time" msgstr "" -#: src/util/strings.c:1269 +#: src/util/strings.c:1270 msgid "IPv6 address did not start with `['\n" msgstr "" -#: src/util/strings.c:1277 +#: src/util/strings.c:1278 msgid "IPv6 address did contain ':' to separate port number\n" msgstr "" -#: src/util/strings.c:1283 +#: src/util/strings.c:1284 msgid "IPv6 address did contain ']' before ':' to separate port number\n" msgstr "" -#: src/util/strings.c:1290 +#: src/util/strings.c:1291 msgid "IPv6 address did contain a valid port number after the last ':'\n" msgstr "" -#: src/util/strings.c:1299 +#: src/util/strings.c:1300 #, fuzzy, c-format msgid "Invalid IPv6 address `%s': %s\n" msgstr "Ogiltigt svar på \"%s\".\n" -#: src/util/strings.c:1571 src/util/strings.c:1587 +#: src/util/strings.c:1572 src/util/strings.c:1588 msgid "Port not in range\n" msgstr "" -#: src/util/strings.c:1596 +#: src/util/strings.c:1597 #, fuzzy, c-format msgid "Malformed port policy `%s'\n" msgstr "Misslyckades att starta samling.\n" -#: src/util/strings.c:1679 src/util/strings.c:1710 src/util/strings.c:1758 -#: src/util/strings.c:1779 +#: src/util/strings.c:1680 src/util/strings.c:1711 src/util/strings.c:1759 +#: src/util/strings.c:1780 #, c-format msgid "Invalid format for IP: `%s'\n" msgstr "Ogiltigt format för IP: \"%s\"\n" -#: src/util/strings.c:1736 +#: src/util/strings.c:1737 #, c-format msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)." msgstr "Ogiltig nätverksnotation (\"/%d\" är inte giltig i IPv4 CIDR)." -#: src/util/strings.c:1788 +#: src/util/strings.c:1789 #, fuzzy, c-format msgid "Invalid format: `%s'\n" msgstr "Ogiltigt format för IP: \"%s\"\n" -#: src/util/strings.c:1840 +#: src/util/strings.c:1841 #, c-format msgid "Invalid network notation (does not end with ';': `%s')\n" msgstr "Ogiltig nätverksnotation (slutar inte med \";\": \"%s\")\n" -#: src/util/strings.c:1890 +#: src/util/strings.c:1891 #, fuzzy, c-format msgid "Wrong format `%s' for netmask\n" msgstr "Fel format \"%s\" för nätmask: %s\n" -#: src/util/strings.c:1921 +#: src/util/strings.c:1922 #, fuzzy, c-format msgid "Wrong format `%s' for network\n" msgstr "Fel format \"%s\" för nätverk: %s\n" @@ -9023,27 +9204,43 @@ msgstr "# byte mottagna via UDP" msgid "Setup tunnels via VPN." msgstr "" -#: src/zonemaster/gnunet-service-zonemaster.c:705 +#: src/zonemaster/gnunet-service-zonemaster.c:706 #, fuzzy msgid "Failed to connect to the namestore!\n" msgstr "Misslyckades att ansluta till gnunetd.\n" -#: src/include/gnunet_common.h:674 src/include/gnunet_common.h:681 -#: src/include/gnunet_common.h:691 src/include/gnunet_common.h:699 +#: src/include/gnunet_common.h:689 src/include/gnunet_common.h:696 +#: src/include/gnunet_common.h:706 src/include/gnunet_common.h:714 #, fuzzy, c-format msgid "Assertion failed at %s:%d.\n" msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n" -#: src/include/gnunet_common.h:711 +#: src/include/gnunet_common.h:726 #, c-format msgid "External protocol violation detected at %s:%d.\n" msgstr "" -#: src/include/gnunet_common.h:738 src/include/gnunet_common.h:747 +#: src/include/gnunet_common.h:753 src/include/gnunet_common.h:762 #, c-format msgid "`%s' failed on file `%s' at %s:%d with error: %s\n" msgstr "\"%s\" misslyckades för fil \"%s\" vid %s:%d med fel: %s\n" +#, fuzzy +#~ msgid "Token `%s' is malformed\n" +#~ msgstr "Ogiltigt argument: \"%s\"\n" + +#, fuzzy +#~ msgid "Failed to create indices\n" +#~ msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n" + +#, fuzzy +#~ msgid "`%s:%s' failed at %s:%d with error: %s\n" +#~ msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n" + +#, fuzzy +#~ msgid "Unable to connect to Postgres database '%s': %s\n" +#~ msgstr "Kunde inte spara konfigurationsfil \"%s\":" + #, fuzzy #~ msgid "Misconfiguration (can not connect to the ARM service)" #~ msgstr "Misslyckades att ansluta till gnunetd.\n" @@ -9152,10 +9349,6 @@ msgstr "\"%s\" misslyckades för fil \"%s\" vid %s:%d med fel: %s\n" #~ msgid "# transmission request failures" #~ msgstr "# klartext PONG-meddelanden mottagna" -#, fuzzy -#~ msgid "# bytes sent to datastore" -#~ msgstr "# byte krypterade" - #, fuzzy #~ msgid "Failed to receive status response from database." #~ msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n" @@ -9445,10 +9638,6 @@ msgstr "\"%s\" misslyckades för fil \"%s\" vid %s:%d med fel: %s\n" #~ msgid "Timeout transmitting iteration request to `SENSOR' service." #~ msgstr "Misslyckades att initiera tjänsten \"%s\".\n" -#, fuzzy -#~ msgid "Error reading sensor version\n" -#~ msgstr "Fel vid skapandet av användare" - #, fuzzy #~ msgid "Error reading sensor category\n" #~ msgstr "Fel vid skapandet av användare" @@ -10004,10 +10193,6 @@ msgstr "\"%s\" misslyckades för fil \"%s\" vid %s:%d med fel: %s\n" #~ msgid "Failed to put new set of records in database" #~ msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n" -#, fuzzy -#~ msgid "Failed to remove records from database" -#~ msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n" - #, fuzzy #~ msgid "Failed to access database" #~ msgstr "Misslyckades att leverera \"%s\" meddelande.\n" diff --git a/po/vi.po b/po/vi.po index a9f00a20d..05b1f1381 100644 --- a/po/vi.po +++ b/po/vi.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gnunet 0.8.0a\n" "Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n" -"POT-Creation-Date: 2017-03-31 19:22-0500\n" +"POT-Creation-Date: 2017-10-20 15:14+0000\n" "PO-Revision-Date: 2008-09-10 22:05+0930\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" @@ -280,7 +280,7 @@ msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n" msgstr "" #: src/arm/gnunet-service-arm.c:513 -#: src/transport/plugin_transport_http_server.c:2621 +#: src/transport/plugin_transport_http_server.c:2684 #: src/transport/plugin_transport_tcp.c:1259 #: src/transport/tcp_service_legacy.c:696 src/util/service.c:782 #, fuzzy, c-format @@ -288,7 +288,7 @@ msgid "Failed to resolve `%s': %s\n" msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n" #: src/arm/gnunet-service-arm.c:532 -#: src/transport/plugin_transport_http_server.c:2639 +#: src/transport/plugin_transport_http_server.c:2702 #: src/transport/plugin_transport_tcp.c:1278 #: src/transport/tcp_service_legacy.c:715 src/util/service.c:802 #, fuzzy, c-format @@ -362,134 +362,15 @@ msgstr "" msgid "Initiating shutdown as requested by client.\n" msgstr "" -#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 -#, c-format -msgid "" -"Could not load quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2799 -#, c-format -msgid "" -"No outbound quota configured for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2840 -#, c-format -msgid "" -"No outbound quota configure for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3294 -#: src/ats-tests/gnunet-solver-eval.c:939 -msgid "solver to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3299 -#: src/ats-tests/gnunet-solver-eval.c:945 -#: src/ats-tests/gnunet-solver-eval.c:950 -msgid "experiment to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3306 +#: src/ats-tests/ats-testing-log.c:837 #, fuzzy -msgid "print logging" +msgid "Stop logging\n" msgstr "Theo dõi" -#: src/ats/gnunet-ats-solver-eval.c:3311 -msgid "save logging to disk" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3316 -msgid "disable normalization" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:304 -#, c-format -msgid "" -"Could not load %s quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:314 -#, c-format -msgid "%s quota configured for network `%s' is %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:359 -#, c-format -msgid "" -"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:451 -#, fuzzy, c-format -msgid "Failed to initialize solver `%s'!\n" -msgstr "Không thể sơ khởi SQLite: %s.\n" - -#: src/ats/plugin_ats_mlp.c:1274 -msgid "Problem size too large, cannot allocate memory!\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1869 -#, fuzzy, c-format -msgid "Adding address for peer `%s' multiple times\n" -msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n" - -#: src/ats/plugin_ats_mlp.c:1913 -#, fuzzy, c-format -msgid "Updating address property for peer `%s' %p not added before\n" -msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n" - -#: src/ats/plugin_ats_mlp.c:2475 -msgid "" -"MLP solver is not optimizing for anything, changing to feasibility check\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 -#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 -#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 -#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 -#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 -#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 -#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 -#, fuzzy, c-format -msgid "Invalid %s configuration %f \n" -msgstr "Không thể lưu tập tin cấu hình « %s »:" - -#: src/ats/plugin_ats_mlp.c:2670 -#, c-format -msgid "" -"Adjusting inconsistent outbound quota configuration for network `%s', is " -"%llu must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2679 -#, c-format -msgid "" -"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " -"must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2689 -#, c-format -msgid "" -"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2698 -#, c-format -msgid "" -"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" -msgstr "" - -#: src/ats/plugin_ats_proportional.c:1164 +#: src/ats-tests/ats-testing-log.c:892 #, fuzzy, c-format -msgid "Invalid %s configuration %f\n" -msgstr "Không thể lưu tập tin cấu hình « %s »:" +msgid "Start logging `%s'\n" +msgstr "Đang bắt đầu tài về « %s »\n" #: src/ats-tests/ats-testing.c:422 #, c-format @@ -501,16 +382,6 @@ msgstr "" msgid "Failed to connect master peer [%u] with slave [%u]\n" msgstr "Lỗi kết nối đến gnunetd.\n" -#: src/ats-tests/ats-testing-log.c:837 -#, fuzzy -msgid "Stop logging\n" -msgstr "Theo dõi" - -#: src/ats-tests/ats-testing-log.c:892 -#, fuzzy, c-format -msgid "Start logging `%s'\n" -msgstr "Đang bắt đầu tài về « %s »\n" - #: src/ats-tests/gnunet-ats-sim.c:90 #, c-format msgid "" @@ -518,6 +389,15 @@ msgid "" "= %u KiB/s\n" msgstr "" +#: src/ats-tests/gnunet-solver-eval.c:939 src/ats/gnunet-ats-solver-eval.c:3294 +msgid "solver to use" +msgstr "" + +#: src/ats-tests/gnunet-solver-eval.c:945 +#: src/ats-tests/gnunet-solver-eval.c:950 src/ats/gnunet-ats-solver-eval.c:3299 +msgid "experiment to use" +msgstr "" + #: src/ats-tool/gnunet-ats.c:307 #, c-format msgid "%u address resolutions had a timeout\n" @@ -640,6 +520,124 @@ msgstr "" msgid "Print information about ATS state" msgstr "In ra thông tin về các đồng đẳng GNUnet." +#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 +#, c-format +msgid "" +"Could not load quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2799 +#, c-format +msgid "" +"No outbound quota configured for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2840 +#, c-format +msgid "" +"No outbound quota configure for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3306 +#, fuzzy +msgid "print logging" +msgstr "Theo dõi" + +#: src/ats/gnunet-ats-solver-eval.c:3311 +msgid "save logging to disk" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3316 +msgid "disable normalization" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:304 +#, c-format +msgid "" +"Could not load %s quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:314 +#, c-format +msgid "%s quota configured for network `%s' is %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:359 +#, c-format +msgid "" +"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:451 +#, fuzzy, c-format +msgid "Failed to initialize solver `%s'!\n" +msgstr "Không thể sơ khởi SQLite: %s.\n" + +#: src/ats/plugin_ats_mlp.c:1274 +msgid "Problem size too large, cannot allocate memory!\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1869 +#, fuzzy, c-format +msgid "Adding address for peer `%s' multiple times\n" +msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n" + +#: src/ats/plugin_ats_mlp.c:1913 +#, fuzzy, c-format +msgid "Updating address property for peer `%s' %p not added before\n" +msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n" + +#: src/ats/plugin_ats_mlp.c:2475 +msgid "" +"MLP solver is not optimizing for anything, changing to feasibility check\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 +#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 +#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 +#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 +#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 +#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 +#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 +#, fuzzy, c-format +msgid "Invalid %s configuration %f \n" +msgstr "Không thể lưu tập tin cấu hình « %s »:" + +#: src/ats/plugin_ats_mlp.c:2670 +#, c-format +msgid "" +"Adjusting inconsistent outbound quota configuration for network `%s', is " +"%llu must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2679 +#, c-format +msgid "" +"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " +"must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2689 +#, c-format +msgid "" +"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2698 +#, c-format +msgid "" +"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_proportional.c:1164 +#, fuzzy, c-format +msgid "Invalid %s configuration %f\n" +msgstr "Không thể lưu tập tin cấu hình « %s »:" + #: src/auction/gnunet-auction-create.c:163 msgid "description of the item to be sold" msgstr "" @@ -788,6 +786,28 @@ msgstr "" msgid "Connection to conversation service lost, trying to reconnect\n" msgstr "" +#: src/conversation/gnunet-conversation-test.c:119 +#, c-format +msgid "" +"\n" +"End of transmission. Have a GNU day.\n" +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:145 +#, c-format +msgid "" +"\n" +"We are now playing your recording back. If you can hear it, your audio " +"settings are working..." +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:210 +#, c-format +msgid "" +"We will now be recording you for %s. After that time, the recording will be " +"played back to you..." +msgstr "" + #: src/conversation/gnunet-conversation.c:269 #, c-format msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n" @@ -1045,30 +1065,8 @@ msgstr "" msgid "Enables having a conversation with other GNUnet users." msgstr "" -#: src/conversation/gnunet-conversation-test.c:119 -#, c-format -msgid "" -"\n" -"End of transmission. Have a GNU day.\n" -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:145 -#, c-format -msgid "" -"\n" -"We are now playing your recording back. If you can hear it, your audio " -"settings are working..." -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:210 -#, c-format -msgid "" -"We will now be recording you for %s. After that time, the recording will be " -"played back to you..." -msgstr "" - -#: src/conversation/gnunet_gst.c:622 #: src/conversation/gnunet-helper-audio-playback-gst.c:356 +#: src/conversation/gnunet_gst.c:622 #, c-format msgid "Read error from STDIN: %d %s\n" msgstr "" @@ -1198,6 +1196,11 @@ msgstr "SMTP: « %s » bị lỗi: %s\n" msgid "Failed to allocate %u bytes for second packet\n" msgstr "Lỗi tạo thư mục tạm thời." +#: src/conversation/gnunet-service-conversation.c:1276 +#, fuzzy, c-format +msgid "Could not open line, port %s already in use!\n" +msgstr "Không thể kết nối tới %s:%u: %s\n" + #: src/conversation/microphone.c:119 #, fuzzy msgid "Could not start record audio helper\n" @@ -1499,8 +1502,140 @@ msgstr "# các thông báo phát hiện dht được nhận" msgid "# updates to my type map" msgstr "" +#: src/credential/credential_misc.c:88 +#, fuzzy, c-format +msgid "Unable to parse CRED record string `%s'\n" +msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" + +#: src/credential/gnunet-credential.c:278 src/namestore/gnunet-namestore.c:776 +#: src/namestore/plugin_rest_namestore.c:1009 +#, c-format +msgid "Ego `%s' not known to identity service\n" +msgstr "" + +#: src/credential/gnunet-credential.c:294 +#: src/credential/gnunet-credential.c:446 +#, fuzzy, c-format +msgid "Issuer public key `%s' is not well-formed\n" +msgstr "Đối số không hợp lệ cho « %s ».\n" + +#: src/credential/gnunet-credential.c:375 +#: src/credential/gnunet-credential.c:435 +#, fuzzy, c-format +msgid "Issuer public key not well-formed\n" +msgstr "Đối số không hợp lệ cho « %s ».\n" + +#: src/credential/gnunet-credential.c:386 +#: src/credential/gnunet-credential.c:455 +#, fuzzy, c-format +msgid "Failed to connect to CREDENTIAL\n" +msgstr "Lỗi kết nối đến gnunetd.\n" + +#: src/credential/gnunet-credential.c:392 +#, c-format +msgid "You must provide issuer the attribute\n" +msgstr "" + +#: src/credential/gnunet-credential.c:399 +#, c-format +msgid "ego required\n" +msgstr "" + +#: src/credential/gnunet-credential.c:415 +#, c-format +msgid "Subject public key needed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:426 +#, fuzzy, c-format +msgid "Subject public key `%s' is not well-formed\n" +msgstr "Đối số không hợp lệ cho « %s ».\n" + +#: src/credential/gnunet-credential.c:461 +#, c-format +msgid "You must provide issuer and subject attributes\n" +msgstr "" + +#: src/credential/gnunet-credential.c:511 +#, c-format +msgid "Issuer ego required\n" +msgstr "" + +#: src/credential/gnunet-credential.c:523 +#, c-format +msgid "Please specify name to lookup, subject key and issuer key!\n" +msgstr "" + +#: src/credential/gnunet-credential.c:543 +msgid "create credential" +msgstr "" + +#: src/credential/gnunet-credential.c:547 +msgid "verify credential against attribute" +msgstr "" + +#: src/credential/gnunet-credential.c:552 +#, fuzzy +msgid "The public key of the subject to lookup the credential for" +msgstr "xác định mức ưu tiên của nội dung" + +#: src/credential/gnunet-credential.c:557 +msgid "The name of the credential presented by the subject" +msgstr "" + +#: src/credential/gnunet-credential.c:562 +#, fuzzy +msgid "The public key of the authority to verify the credential against" +msgstr "xác định mức ưu tiên của nội dung" + +#: src/credential/gnunet-credential.c:567 +#, fuzzy +msgid "The ego to use" +msgstr "kích cỡ tin nhắn" + +#: src/credential/gnunet-credential.c:572 +msgid "The issuer attribute to verify against or to issue" +msgstr "" + +#: src/credential/gnunet-credential.c:577 +msgid "The time to live for the credential" +msgstr "" + +#: src/credential/gnunet-credential.c:581 +msgid "collect credentials" +msgstr "" + +#: src/credential/gnunet-credential.c:595 +#, fuzzy +msgid "GNUnet credential resolver tool" +msgstr "Bản ghi lỗi GNUnet" + +#: src/credential/gnunet-service-credential.c:1204 +#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:355 +#, fuzzy, c-format +msgid "Failed to connect to GNS\n" +msgstr "Lỗi kết nối đến gnunetd.\n" + +#: src/credential/gnunet-service-credential.c:1210 +#: src/namestore/gnunet-namestore-fcfsd.c:1034 +#: src/namestore/gnunet-namestore.c:802 +#: src/namestore/plugin_rest_namestore.c:1022 +#, fuzzy, c-format +msgid "Failed to connect to namestore\n" +msgstr "Không kết nối được đến trình nền gnunetd." + +#: src/credential/plugin_gnsrecord_credential.c:186 +#, fuzzy, c-format +msgid "Unable to parse ATTR record string `%s'\n" +msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" + +#: src/credential/plugin_rest_credential.c:1155 src/gns/plugin_rest_gns.c:668 +#, fuzzy +msgid "GNS REST API initialized\n" +msgstr "Lỗi sơ khởi lõi.\n" + #: src/datacache/datacache.c:119 src/datacache/datacache.c:294 -#: src/datastore/gnunet-service-datastore.c:775 +#: src/datastore/gnunet-service-datastore.c:757 #, fuzzy msgid "# bytes stored" msgstr "# các byte trong kho dữ liệu" @@ -1546,13 +1681,12 @@ msgstr "kho dữ liệu sqlite" #: src/datacache/plugin_datacache_sqlite.c:113 #: src/datacache/plugin_datacache_sqlite.c:122 -#: src/datastore/plugin_datastore_mysql.c:980 +#: src/datastore/plugin_datastore_mysql.c:892 #: src/datastore/plugin_datastore_sqlite.c:58 -#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:80 src/my/my.c:92 -#: src/mysql/mysql.c:42 src/mysql/mysql.c:49 -#: src/namecache/plugin_namecache_postgres.c:53 +#: src/datastore/plugin_datastore_sqlite.c:66 +#: src/identity-provider/plugin_identity_provider_sqlite.c:52 src/my/my.c:80 +#: src/my/my.c:92 src/mysql/mysql.c:42 src/mysql/mysql.c:49 #: src/namecache/plugin_namecache_sqlite.c:53 -#: src/namestore/plugin_namestore_postgres.c:53 #: src/namestore/plugin_namestore_sqlite.c:53 #: src/peerstore/plugin_peerstore_sqlite.c:52 #: src/psycstore/plugin_psycstore_mysql.c:62 @@ -1561,14 +1695,15 @@ msgstr "kho dữ liệu sqlite" #: src/testbed/gnunet-daemon-testbed-underlay.c:56 #: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:52 #: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39 -#: src/include/gnunet_common.h:720 src/include/gnunet_common.h:729 +#: src/include/gnunet_common.h:735 src/include/gnunet_common.h:744 #: src/scalarproduct/scalarproduct.h:35 #, c-format msgid "`%s' failed at %s:%d with error: %s\n" msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n" #: src/datacache/plugin_datacache_sqlite.c:817 -#: src/datastore/plugin_datastore_sqlite.c:475 +#: src/datastore/plugin_datastore_sqlite.c:456 +#: src/identity-provider/plugin_identity_provider_sqlite.c:336 #: src/namecache/plugin_namecache_sqlite.c:296 #: src/namestore/plugin_namestore_sqlite.c:355 msgid "Tried to close sqlite without finalizing all prepared statements.\n" @@ -1613,50 +1748,104 @@ msgstr "# các kết nối dht" msgid "# PUT requests executed" msgstr "# các yêu cầu dht được định tuyến" -#: src/datastore/datastore_api.c:1116 +#: src/datastore/datastore_api.c:1116 +#, fuzzy +msgid "# RESERVE requests executed" +msgstr "# các yêu cầu dht được định tuyến" + +#: src/datastore/datastore_api.c:1181 +msgid "# RELEASE RESERVE requests executed" +msgstr "" + +#: src/datastore/datastore_api.c:1259 +#, fuzzy +msgid "# REMOVE requests executed" +msgstr "# các yêu cầu dht được định tuyến" + +#: src/datastore/datastore_api.c:1319 +msgid "# GET REPLICATION requests executed" +msgstr "" + +#: src/datastore/datastore_api.c:1381 +msgid "# GET ZERO ANONYMITY requests executed" +msgstr "" + +#: src/datastore/datastore_api.c:1462 +#, fuzzy +msgid "# GET requests executed" +msgstr "# các yêu cầu dht được định tuyến" + +#: src/datastore/gnunet-datastore.c:189 +#, c-format +msgid "Dumped % records\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:217 src/datastore/gnunet-datastore.c:229 +#, c-format +msgid "Short write to file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:261 +#, fuzzy +msgid "Error queueing datastore GET operation\n" +msgstr "Gặp lỗi khi tạo người dùng" + +#: src/datastore/gnunet-datastore.c:287 src/datastore/gnunet-datastore.c:412 +#, fuzzy, c-format +msgid "Unable to open dump file: %s\n" +msgstr "Không thể tạo miền tên.\n" + +#: src/datastore/gnunet-datastore.c:326 +#, fuzzy, c-format +msgid "Failed to store item: %s, aborting\n" +msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n" + +#: src/datastore/gnunet-datastore.c:340 +#, c-format +msgid "Inserted % records\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:349 src/datastore/gnunet-datastore.c:363 +#, c-format +msgid "Short read from file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:389 #, fuzzy -msgid "# RESERVE requests executed" -msgstr "# các yêu cầu dht được định tuyến" +msgid "Error queueing datastore PUT operation\n" +msgstr "Gặp lỗi khi tạo người dùng" -#: src/datastore/datastore_api.c:1181 -msgid "# RELEASE RESERVE requests executed" +#: src/datastore/gnunet-datastore.c:432 +msgid "Input file is not of a supported format\n" msgstr "" -#: src/datastore/datastore_api.c:1259 +#: src/datastore/gnunet-datastore.c:458 #, fuzzy -msgid "# REMOVE requests executed" -msgstr "# các yêu cầu dht được định tuyến" +msgid "Failed connecting to the datastore.\n" +msgstr "Không kết nối được đến trình nền gnunetd." -#: src/datastore/datastore_api.c:1319 -msgid "# GET REPLICATION requests executed" +#: src/datastore/gnunet-datastore.c:470 +#, c-format +msgid "Please choose at least one operation: %s, %s\n" msgstr "" -#: src/datastore/datastore_api.c:1381 -msgid "# GET ZERO ANONYMITY requests executed" +#: src/datastore/gnunet-datastore.c:493 +#, fuzzy +msgid "Dump all records from the datastore" msgstr "" +"\n" +"Không nhận được đáp ứng từ gnunetd.\n" -#: src/datastore/datastore_api.c:1462 +#: src/datastore/gnunet-datastore.c:497 #, fuzzy -msgid "# GET requests executed" -msgstr "# các yêu cầu dht được định tuyến" - -#: src/datastore/gnunet-datastore.c:113 -#, fuzzy, c-format -msgid "Failed to store item: %s, aborting\n" -msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n" - -#: src/datastore/gnunet-datastore.c:209 -#, c-format -msgid "Cannot use the same configuration for source and destination\n" -msgstr "" +msgid "Insert records into the datastore" +msgstr "# các byte trong kho dữ liệu" -#: src/datastore/gnunet-datastore.c:256 -msgid "" -"specifies the configuration to use to access an alternative datastore; will " -"merge that datastore into our current datastore" +#: src/datastore/gnunet-datastore.c:502 +msgid "File to dump or insert" msgstr "" -#: src/datastore/gnunet-datastore.c:265 +#: src/datastore/gnunet-datastore.c:511 #, fuzzy msgid "Manipulate GNUnet datastore" msgstr "cập nhật một giá trị trong tập tin cấu hình" @@ -1700,8 +1889,8 @@ msgstr "" #: src/datastore/gnunet-service-datastore.c:634 #: src/datastore/gnunet-service-datastore.c:689 -#: src/datastore/gnunet-service-datastore.c:977 -#: src/datastore/gnunet-service-datastore.c:1633 +#: src/datastore/gnunet-service-datastore.c:837 +#: src/datastore/gnunet-service-datastore.c:1469 msgid "# reserved" msgstr "" @@ -1709,152 +1898,153 @@ msgstr "" msgid "Could not find matching reservation" msgstr "" -#: src/datastore/gnunet-service-datastore.c:792 +#: src/datastore/gnunet-service-datastore.c:773 #, c-format msgid "Need %llu bytes more space (%llu allowed, using %llu)\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1026 +#: src/datastore/gnunet-service-datastore.c:876 #, fuzzy msgid "# GET requests received" msgstr "# các yêu cầu get (lấy) dht được nhận" -#: src/datastore/gnunet-service-datastore.c:1058 +#: src/datastore/gnunet-service-datastore.c:907 #, fuzzy msgid "# GET KEY requests received" msgstr "# các yêu cầu get (lấy) dht được nhận" -#: src/datastore/gnunet-service-datastore.c:1071 +#: src/datastore/gnunet-service-datastore.c:920 #, fuzzy msgid "# requests filtered by bloomfilter" msgstr "# các yêu cầu được lọc theo bộ lọc bloom" -#: src/datastore/gnunet-service-datastore.c:1108 +#: src/datastore/gnunet-service-datastore.c:956 #, fuzzy msgid "# GET REPLICATION requests received" msgstr "# các yêu cầu get (lấy) dht được nhận" -#: src/datastore/gnunet-service-datastore.c:1141 +#: src/datastore/gnunet-service-datastore.c:989 #, fuzzy msgid "# GET ZERO ANONYMITY requests received" msgstr "# các yêu cầu get (lấy) dht được nhận" -#: src/datastore/gnunet-service-datastore.c:1190 +#: src/datastore/gnunet-service-datastore.c:1036 msgid "Content not found" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1199 +#: src/datastore/gnunet-service-datastore.c:1043 msgid "# bytes removed (explicit request)" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1246 +#: src/datastore/gnunet-service-datastore.c:1088 #, fuzzy msgid "# REMOVE requests received" msgstr "# các yêu cầu get (lấy) dht được nhận" -#: src/datastore/gnunet-service-datastore.c:1301 +#: src/datastore/gnunet-service-datastore.c:1137 #, c-format msgid "" "Datastore payload must have been inaccurate (%lld < %lld). Recomputing it.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1307 -#: src/datastore/gnunet-service-datastore.c:1482 +#: src/datastore/gnunet-service-datastore.c:1143 +#: src/datastore/gnunet-service-datastore.c:1318 #, c-format msgid "New payload: %lld\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1361 +#: src/datastore/gnunet-service-datastore.c:1197 #, c-format msgid "Loading `%s' datastore plugin\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1373 +#: src/datastore/gnunet-service-datastore.c:1209 #, fuzzy, c-format msgid "Failed to load datastore plugin for `%s'\n" msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n" -#: src/datastore/gnunet-service-datastore.c:1433 +#: src/datastore/gnunet-service-datastore.c:1269 msgid "Bloomfilter construction complete.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1489 +#: src/datastore/gnunet-service-datastore.c:1325 msgid "Rebuilding bloomfilter. Please be patient.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1500 +#: src/datastore/gnunet-service-datastore.c:1336 msgid "Plugin does not support get_keys function. Please fix!\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1670 +#: src/datastore/gnunet-service-datastore.c:1506 #, fuzzy, c-format msgid "# bytes used in file-sharing datastore `%s'" msgstr "# các byte được phép trong kho dữ liệu" -#: src/datastore/gnunet-service-datastore.c:1686 +#: src/datastore/gnunet-service-datastore.c:1522 msgid "# quota" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1691 +#: src/datastore/gnunet-service-datastore.c:1527 msgid "# cache size" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1707 +#: src/datastore/gnunet-service-datastore.c:1543 #, c-format msgid "Could not use specified filename `%s' for bloomfilter.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1725 -#: src/datastore/gnunet-service-datastore.c:1741 +#: src/datastore/gnunet-service-datastore.c:1561 +#: src/datastore/gnunet-service-datastore.c:1577 #, fuzzy, c-format msgid "Failed to remove bogus bloomfilter file `%s'\n" msgstr "Không thể lưu tập tin cấu hình « %s »:" -#: src/datastore/gnunet-service-datastore.c:1773 +#: src/datastore/gnunet-service-datastore.c:1609 #, fuzzy msgid "Failed to initialize bloomfilter.\n" msgstr "Lỗi sơ khởi dịch vụ « %s ».\n" -#: src/datastore/plugin_datastore_heap.c:769 +#: src/datastore/plugin_datastore_heap.c:893 #, fuzzy msgid "Heap database running\n" msgstr "kho dữ liệu sqlite" -#: src/datastore/plugin_datastore_mysql.c:377 -#: src/datastore/plugin_datastore_sqlite.c:590 +#: src/datastore/plugin_datastore_mysql.c:371 +#: src/datastore/plugin_datastore_mysql.c:423 +#: src/datastore/plugin_datastore_mysql.c:1075 +msgid "MySQL statement run failure" +msgstr "" + +#: src/datastore/plugin_datastore_mysql.c:410 +#: src/datastore/plugin_datastore_sqlite.c:626 #, fuzzy msgid "Data too large" msgstr "số lần lặp lại" -#: src/datastore/plugin_datastore_mysql.c:393 -msgid "MySQL statement run failure" -msgstr "" - -#: src/datastore/plugin_datastore_mysql.c:936 +#: src/datastore/plugin_datastore_mysql.c:848 #, fuzzy, c-format msgid "`%s' for `%s' failed at %s:%d with error: %s\n" msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n" -#: src/datastore/plugin_datastore_mysql.c:1208 +#: src/datastore/plugin_datastore_mysql.c:1180 #: src/psycstore/plugin_psycstore_mysql.c:1936 msgid "Mysql database running\n" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:345 +#: src/datastore/plugin_datastore_postgres.c:274 +#: src/datastore/plugin_datastore_postgres.c:891 msgid "Postgress exec failure" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:866 +#: src/datastore/plugin_datastore_postgres.c:852 #, fuzzy msgid "Failed to drop table from database.\n" msgstr "" "\n" "Không nhận được đáp ứng từ gnunetd.\n" -#: src/datastore/plugin_datastore_postgres.c:903 -#: src/namecache/plugin_namecache_postgres.c:398 -#: src/namestore/plugin_namestore_postgres.c:571 -#: src/psycstore/plugin_psycstore_postgres.c:1721 +#: src/datastore/plugin_datastore_postgres.c:950 +#: src/psycstore/plugin_psycstore_postgres.c:1506 msgid "Postgres database running\n" msgstr "" @@ -1866,7 +2056,8 @@ msgstr "" msgid "`%s' failed at %s:%u with error: %s" msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s" -#: src/datastore/plugin_datastore_sqlite.c:281 +#: src/datastore/plugin_datastore_sqlite.c:271 +#: src/identity-provider/plugin_identity_provider_sqlite.c:212 #: src/namecache/plugin_namecache_sqlite.c:194 #: src/namestore/plugin_namestore_sqlite.c:222 #: src/peerstore/plugin_peerstore_sqlite.c:535 @@ -1875,25 +2066,30 @@ msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s" msgid "Unable to initialize SQLite: %s.\n" msgstr "Không thể sơ khởi SQLite: %s.\n" -#: src/datastore/plugin_datastore_sqlite.c:1234 +#: src/datastore/plugin_datastore_sqlite.c:577 +msgid "sqlite bind failure" +msgstr "" + +#: src/datastore/plugin_datastore_sqlite.c:1259 msgid "sqlite version to old to determine size, assuming zero\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1268 +#: src/datastore/plugin_datastore_sqlite.c:1293 #, c-format msgid "" "Using sqlite page utilization to estimate payload (%llu pages of size %llu " "bytes)\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1312 +#: src/datastore/plugin_datastore_sqlite.c:1337 +#: src/identity-provider/plugin_identity_provider_sqlite.c:711 #: src/namecache/plugin_namecache_sqlite.c:603 #: src/namestore/plugin_namestore_sqlite.c:802 #, fuzzy msgid "Sqlite database running\n" msgstr "kho dữ liệu sqlite" -#: src/datastore/plugin_datastore_template.c:259 +#: src/datastore/plugin_datastore_template.c:253 msgid "Template database running\n" msgstr "" @@ -1955,53 +2151,6 @@ msgstr "" msgid "Prints all packets that go through the DHT." msgstr "" -#: src/dht/gnunet_dht_profiler.c:1161 -#: src/testbed/gnunet-testbed-profiler.c:255 -#, fuzzy, c-format -msgid "Exiting as the number of peers is %u\n" -msgstr "tăng sổ tối đa các kết nối TCP/IP" - -#: src/dht/gnunet_dht_profiler.c:1188 -#, fuzzy -msgid "number of peers to start" -msgstr "số lần lặp lại" - -#: src/dht/gnunet_dht_profiler.c:1194 -msgid "" -"maximum number of times we try to search for successor circle formation (0 " -"for R5N)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 -#: src/testbed/gnunet-testbed-profiler.c:305 -msgid "name of the file with the login information for the testbed" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1206 -msgid "delay between rounds for collecting statistics (default: 30 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1212 -msgid "delay to start doing PUTs (default: 1 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1218 -msgid "delay to start doing GETs (default: 5 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1223 -msgid "replication degree for DHT PUTs" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1230 -msgid "timeout for DHT PUT and GET requests (default: 1 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1248 -#, fuzzy -msgid "Measure quality and performance of the DHT service." -msgstr "Không thể truy cập đến dịch vụ" - #: src/dht/gnunet-dht-put.c:120 #, fuzzy msgid "PUT request sent with key" @@ -2279,6 +2428,52 @@ msgstr "" msgid "# DHT requests combined" msgstr "# các yêu cầu get (lấy) dht được nhận" +#: src/dht/gnunet_dht_profiler.c:1161 src/testbed/gnunet-testbed-profiler.c:255 +#, fuzzy, c-format +msgid "Exiting as the number of peers is %u\n" +msgstr "tăng sổ tối đa các kết nối TCP/IP" + +#: src/dht/gnunet_dht_profiler.c:1188 +#, fuzzy +msgid "number of peers to start" +msgstr "số lần lặp lại" + +#: src/dht/gnunet_dht_profiler.c:1194 +msgid "" +"maximum number of times we try to search for successor circle formation (0 " +"for R5N)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 +#: src/testbed/gnunet-testbed-profiler.c:305 +msgid "name of the file with the login information for the testbed" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1206 +msgid "delay between rounds for collecting statistics (default: 30 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1212 +msgid "delay to start doing PUTs (default: 1 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1218 +msgid "delay to start doing GETs (default: 5 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1223 +msgid "replication degree for DHT PUTs" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1230 +msgid "timeout for DHT PUT and GET requests (default: 1 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1248 +#, fuzzy +msgid "Measure quality and performance of the DHT service." +msgstr "Không thể truy cập đến dịch vụ" + #: src/dht/plugin_block_dht.c:187 #, fuzzy, c-format msgid "Block not of type %u\n" @@ -2612,7 +2807,7 @@ msgstr "" msgid "No useful service enabled. Exiting.\n" msgstr "" -#: src/exit/gnunet-daemon-exit.c:3969 +#: src/exit/gnunet-daemon-exit.c:3970 msgid "Daemon to run to provide an IP exit node for the VPN" msgstr "" @@ -3265,15 +3460,6 @@ msgid "" "chk/...)" msgstr "" -#: src/fs/gnunet-fs.c:119 -msgid "print a list of all indexed files" -msgstr "" - -#: src/fs/gnunet-fs.c:130 -#, fuzzy -msgid "Special file-sharing operations" -msgstr "Tùy chọn chia sẻ tập tin" - #: src/fs/gnunet-fs-profiler.c:211 msgid "run the experiment with COUNT peers" msgstr "" @@ -3290,6 +3476,15 @@ msgstr "" msgid "run a testbed to measure file-sharing performance" msgstr "" +#: src/fs/gnunet-fs.c:119 +msgid "print a list of all indexed files" +msgstr "" + +#: src/fs/gnunet-fs.c:130 +#, fuzzy +msgid "Special file-sharing operations" +msgstr "Tùy chọn chia sẻ tập tin" + #: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231 #, c-format msgid "Publishing `%s' at %llu/%llu (%s remaining)\n" @@ -4000,22 +4195,11 @@ msgstr "" msgid "GNUnet DNS-to-GNS proxy (a DNS server)" msgstr "" -#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 -#, c-format -msgid "Invalid typename specified, assuming `ANY'\n" -msgstr "" - -#: src/gns/gnunet-gns.c:252 -#, c-format -msgid "Please specify name to lookup!\n" -msgstr "" - -#: src/gns/gnunet-gns.c:276 -#, c-format -msgid "Ego for `%s' not found, cannot perform lookup.\n" +#: src/gns/gnunet-gns-helper-service-w32.c:602 +msgid "Not ready to process requests, lacking ego data\n" msgstr "" -#: src/gns/gnunet-gns.c:315 src/gns/gnunet-gns-helper-service-w32.c:701 +#: src/gns/gnunet-gns-helper-service-w32.c:701 src/gns/gnunet-gns.c:315 #: src/gns/plugin_rest_gns.c:422 #, c-format msgid "" @@ -4023,59 +4207,12 @@ msgid "" "gns-import.sh?\n" msgstr "" -#: src/gns/gnunet-gns.c:355 src/gns/gnunet-gns-helper-service-w32.c:727 -#, fuzzy, c-format -msgid "Failed to connect to GNS\n" -msgstr "Lỗi kết nối đến gnunetd.\n" - -#: src/gns/gnunet-gns.c:374 -#, c-format -msgid "Public key `%s' is not well-formed\n" -msgstr "" - -#: src/gns/gnunet-gns.c:428 -msgid "Lookup a record for the given name" -msgstr "" - -#: src/gns/gnunet-gns.c:434 -#, fuzzy -msgid "Specify the type of the record to lookup" -msgstr "xác định mức ưu tiên của nội dung" - -#: src/gns/gnunet-gns.c:440 -#, fuzzy -msgid "Specify timeout for the lookup" -msgstr "xác định mức ưu tiên của nội dung" - -#: src/gns/gnunet-gns.c:445 -msgid "No unneeded output" -msgstr "" - -#: src/gns/gnunet-gns.c:451 -#, fuzzy -msgid "Specify the public key of the zone to lookup the record in" -msgstr "xác định mức ưu tiên của nội dung" - -#: src/gns/gnunet-gns.c:457 -#, fuzzy -msgid "Specify the name of the ego of the zone to lookup the record in" -msgstr "xác định mức ưu tiên của nội dung" - -#: src/gns/gnunet-gns.c:476 -#, fuzzy -msgid "GNUnet GNS resolver tool" -msgstr "Bản ghi lỗi GNUnet" - -#: src/gns/gnunet-gns-helper-service-w32.c:602 -msgid "Not ready to process requests, lacking ego data\n" -msgstr "" - #: src/gns/gnunet-gns-helper-service-w32.c:739 #, fuzzy, c-format msgid "Failed to connect to identity service\n" msgstr "Lỗi kết nối đến gnunetd.\n" -#: src/gns/gnunet-gns-import.c:489 +#: src/gns/gnunet-gns-import.c:452 msgid "This program will import some GNS authorities into your GNS namestore." msgstr "" @@ -4196,9 +4333,62 @@ msgstr "" msgid "pem file to use as CA" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3300 -msgid "GNUnet GNS proxy" -msgstr "" +#: src/gns/gnunet-gns-proxy.c:3300 +msgid "GNUnet GNS proxy" +msgstr "" + +#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 +#, c-format +msgid "Invalid typename specified, assuming `ANY'\n" +msgstr "" + +#: src/gns/gnunet-gns.c:252 +#, c-format +msgid "Please specify name to lookup!\n" +msgstr "" + +#: src/gns/gnunet-gns.c:276 +#, c-format +msgid "Ego for `%s' not found, cannot perform lookup.\n" +msgstr "" + +#: src/gns/gnunet-gns.c:374 +#, c-format +msgid "Public key `%s' is not well-formed\n" +msgstr "" + +#: src/gns/gnunet-gns.c:428 +msgid "Lookup a record for the given name" +msgstr "" + +#: src/gns/gnunet-gns.c:434 +#, fuzzy +msgid "Specify the type of the record to lookup" +msgstr "xác định mức ưu tiên của nội dung" + +#: src/gns/gnunet-gns.c:440 +#, fuzzy +msgid "Specify timeout for the lookup" +msgstr "xác định mức ưu tiên của nội dung" + +#: src/gns/gnunet-gns.c:445 +msgid "No unneeded output" +msgstr "" + +#: src/gns/gnunet-gns.c:451 +#, fuzzy +msgid "Specify the public key of the zone to lookup the record in" +msgstr "xác định mức ưu tiên của nội dung" + +#: src/gns/gnunet-gns.c:457 +#, fuzzy +msgid "Specify the name of the ego of the zone to lookup the record in" +msgstr "xác định mức ưu tiên của nội dung" + +#: src/gns/gnunet-gns.c:476 +#, fuzzy +msgid "GNUnet GNS resolver tool" +msgstr "Bản ghi lỗi GNUnet" #: src/gns/gnunet-service-gns.c:442 #, fuzzy @@ -4206,7 +4396,7 @@ msgid "Failed to connect to the namecache!\n" msgstr "Không kết nối được đến trình nền gnunetd." #: src/gns/gnunet-service-gns.c:461 -#: src/zonemaster/gnunet-service-zonemaster.c:741 +#: src/zonemaster/gnunet-service-zonemaster.c:742 #, fuzzy msgid "Could not connect to DHT!\n" msgstr "Không thể kết nối tới %s:%u: %s\n" @@ -4265,45 +4455,35 @@ msgstr "" msgid "Hostname `%s' is not well-formed, resolution fails\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:203 +#: src/gns/plugin_gnsrecord_gns.c:179 #, fuzzy, c-format msgid "Unable to parse PKEY record `%s'\n" msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" -#: src/gns/plugin_gnsrecord_gns.c:232 +#: src/gns/plugin_gnsrecord_gns.c:208 #, fuzzy, c-format msgid "Unable to parse GNS2DNS record `%s'\n" msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" -#: src/gns/plugin_gnsrecord_gns.c:253 +#: src/gns/plugin_gnsrecord_gns.c:229 #, fuzzy, c-format msgid "Failed to serialize GNS2DNS record with value `%s'\n" msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n" -#: src/gns/plugin_gnsrecord_gns.c:276 +#: src/gns/plugin_gnsrecord_gns.c:252 #, fuzzy, c-format msgid "Unable to parse VPN record string `%s'\n" msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" -#: src/gns/plugin_gnsrecord_gns.c:312 +#: src/gns/plugin_gnsrecord_gns.c:288 #, fuzzy, c-format msgid "Unable to parse BOX record string `%s'\n" msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" -#: src/gns/plugin_gnsrecord_gns.c:360 -#, fuzzy, c-format -msgid "Unable to parse REVERSE record string `%s'\n" -msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" - #: src/gns/plugin_rest_gns.c:384 msgid "Ego for not found, cannot perform lookup.\n" msgstr "" -#: src/gns/plugin_rest_gns.c:668 -#, fuzzy -msgid "GNS REST API initialized\n" -msgstr "Lỗi sơ khởi lõi.\n" - #: src/gnsrecord/plugin_gnsrecord_dns.c:359 #, fuzzy, c-format msgid "Unable to parse IPv4 address `%s'\n" @@ -4746,6 +4926,53 @@ msgstr "« %s » không sẵn sàng.\n" msgid "Could not start hostlist HTTP server on port %u\n" msgstr "Cổng cho trình phục vụ HTTP danh sách máy chủ thống nhất" +#: src/identity-provider/gnunet-idp.c:348 +#, fuzzy +msgid "Ego is required\n" +msgstr "Bị từ chối đặt tùy chọn « %s » trong phần « %s » thành « %s ».\n" + +#: src/identity-provider/gnunet-idp.c:370 +msgid "Add attribute" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:376 +msgid "Attribute value" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:381 +msgid "Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:386 +msgid "Audience (relying party)" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:390 +msgid "List attributes for Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:395 +msgid "Issue a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:400 +msgid "Consume a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:405 +msgid "Revoke a ticket" +msgstr "" + +#: src/identity-provider/identity_provider_api.c:429 +#, fuzzy +msgid "failed to store record\n" +msgstr "Lỗi bắt đầu thu thập.\n" + +#: src/identity-provider/plugin_rest_identity_provider.c:1175 +#, fuzzy +msgid "Identity Provider REST API initialized\n" +msgstr "Lỗi sơ khởi lõi.\n" + #: src/identity/gnunet-identity.c:179 #, fuzzy, c-format msgid "Failed to create ego: %s\n" @@ -4833,34 +5060,11 @@ msgstr "Không thể lưu tập tin cấu hình « %s »:" msgid "Failed to create directory `%s' for storing egos\n" msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" -#: src/identity/plugin_rest_identity.c:967 +#: src/identity/plugin_rest_identity.c:964 #, fuzzy msgid "Identity REST API initialized\n" msgstr "Lỗi sơ khởi lõi.\n" -#: src/identity-provider/gnunet-identity-token.c:66 -#, fuzzy -msgid "Option `-t' is required\n" -msgstr "Bị từ chối đặt tùy chọn « %s » trong phần « %s » thành « %s ».\n" - -#: src/identity-provider/gnunet-identity-token.c:77 -#, fuzzy, c-format -msgid "Token `%s' is malformed\n" -msgstr "Đối số không hợp lệ cho « %s ».\n" - -#: src/identity-provider/gnunet-identity-token.c:166 -msgid "GNUid token" -msgstr "" - -#: src/identity-provider/gnunet-identity-token.c:171 -msgid "Print token contents" -msgstr "" - -#: src/identity-provider/plugin_rest_identity_provider.c:1166 -#, fuzzy -msgid "Identity Token REST API initialized\n" -msgstr "Lỗi sơ khởi lõi.\n" - #: src/json/json.c:119 #, fuzzy, c-format msgid "Failed to parse JSON in option `%s': %s (%s)\n" @@ -4962,25 +5166,79 @@ msgstr "Không thể tạo miền tên.\n" msgid "flat plugin running\n" msgstr "kho dữ liệu sqlite" -#: src/namecache/plugin_namecache_postgres.c:90 -#: src/namestore/plugin_namestore_postgres.c:97 -#, fuzzy -msgid "Failed to create indices\n" +#: src/namestore/gnunet-namestore-fcfsd.c:508 +#, fuzzy, c-format +msgid "Unsupported form value `%s'\n" +msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:535 +#, fuzzy, c-format +msgid "Failed to create record for domain `%s': %s\n" +msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:555 +msgid "Error when mapping zone to name\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:585 +#, c-format +msgid "Found existing name `%s' for the given key\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:662 +#, c-format +msgid "Found %u existing records for domain `%s'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:718 +#, fuzzy, c-format +msgid "Failed to create page for `%s'\n" msgstr "Không thể tạo miền tên.\n" +#: src/namestore/gnunet-namestore-fcfsd.c:734 +#, fuzzy, c-format +msgid "Failed to setup post processor for `%s'\n" +msgstr "Lỗi cập nhật dữ liệu cho mô-đun « %s »\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:770 +msgid "Domain name must not contain `.'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:778 +msgid "Domain name must not contain `+'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:974 +msgid "No ego configured for `fcfsd` subsystem\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:1000 +#, fuzzy +msgid "Failed to start HTTP server\n" +msgstr "Lỗi bắt đầu thu thập.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1042 +#, fuzzy +msgid "Failed to connect to identity\n" +msgstr "Lỗi kết nối đến gnunetd.\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1074 +msgid "GNU Name System First Come First Serve name registration service" +msgstr "" + #: src/namestore/gnunet-namestore.c:301 #, fuzzy, c-format msgid "Adding record failed: %s\n" msgstr "Gặp lỗi khi tải lên tập tin: %s\n" #: src/namestore/gnunet-namestore.c:330 -#: src/namestore/plugin_rest_namestore.c:562 +#: src/namestore/plugin_rest_namestore.c:567 #, fuzzy, c-format msgid "Deleting record failed, record does not exist%s%s\n" msgstr "Gặp lỗi khi tải lên tập tin: %s\n" #: src/namestore/gnunet-namestore.c:337 -#: src/namestore/plugin_rest_namestore.c:571 +#: src/namestore/plugin_rest_namestore.c:576 #, fuzzy, c-format msgid "Deleting record failed%s%s\n" msgstr "Gặp lỗi khi tải lên tập tin: %s\n" @@ -4998,7 +5256,7 @@ msgid "Records already exist under `%s', cannot add `%s' record.\n" msgstr "" #: src/namestore/gnunet-namestore.c:698 -#: src/namestore/plugin_rest_namestore.c:597 +#: src/namestore/plugin_rest_namestore.c:602 #, c-format msgid "There are no records under label `%s' that could be deleted.\n" msgstr "" @@ -5009,24 +5267,11 @@ msgid "" "There are no records under label `%s' that match the request for deletion.\n" msgstr "" -#: src/namestore/gnunet-namestore.c:776 -#: src/namestore/plugin_rest_namestore.c:1004 -#, c-format -msgid "Ego `%s' not known to identity service\n" -msgstr "" - #: src/namestore/gnunet-namestore.c:791 #, fuzzy, c-format msgid "No options given\n" msgstr "chưa đưa ra tên" -#: src/namestore/gnunet-namestore.c:802 -#: src/namestore/gnunet-namestore-fcfsd.c:1034 -#: src/namestore/plugin_rest_namestore.c:1017 -#, fuzzy -msgid "Failed to connect to namestore\n" -msgstr "Không kết nối được đến trình nền gnunetd." - #: src/namestore/gnunet-namestore.c:810 src/namestore/gnunet-namestore.c:819 #: src/namestore/gnunet-namestore.c:838 src/namestore/gnunet-namestore.c:861 #: src/namestore/gnunet-namestore.c:915 @@ -5040,14 +5285,14 @@ msgid "add" msgstr "" #: src/namestore/gnunet-namestore.c:829 -#: src/namestore/plugin_rest_namestore.c:671 +#: src/namestore/plugin_rest_namestore.c:676 #, fuzzy, c-format msgid "Unsupported type `%s'\n" msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n" #: src/namestore/gnunet-namestore.c:851 -#: src/namestore/plugin_rest_namestore.c:689 -#: src/namestore/plugin_rest_namestore.c:729 +#: src/namestore/plugin_rest_namestore.c:694 +#: src/namestore/plugin_rest_namestore.c:734 #, c-format msgid "Value `%s' invalid for record type `%s'\n" msgstr "" @@ -5066,8 +5311,7 @@ msgstr "" msgid "Invalid public key for reverse lookup `%s'\n" msgstr "Đối số không hợp lệ cho « %s ».\n" -#: src/namestore/gnunet-namestore.c:979 -#: src/peerinfo-tool/gnunet-peerinfo.c:775 +#: src/namestore/gnunet-namestore.c:979 src/peerinfo-tool/gnunet-peerinfo.c:775 #, fuzzy, c-format msgid "Invalid URI `%s'\n" msgstr "Dữ liệu nhập không hợp lệ.\n" @@ -5078,13 +5322,13 @@ msgid "Invalid nick `%s'\n" msgstr "Dữ liệu nhập không hợp lệ.\n" #: src/namestore/gnunet-namestore.c:1051 -#: src/namestore/plugin_rest_namestore.c:1047 +#: src/namestore/plugin_rest_namestore.c:1052 #, c-format msgid "No default ego configured in identity service\n" msgstr "" #: src/namestore/gnunet-namestore.c:1108 -#: src/namestore/plugin_rest_namestore.c:1143 +#: src/namestore/plugin_rest_namestore.c:1148 #, fuzzy, c-format msgid "Cannot connect to identity service\n" msgstr "Không thể kết nối tới %s:%u: %s\n" @@ -5147,67 +5391,7 @@ msgstr "" msgid "name of the ego controlling the zone" msgstr "" -#: src/namestore/gnunet-namestore-fcfsd.c:508 -#, fuzzy, c-format -msgid "Unsupported form value `%s'\n" -msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:535 -#, fuzzy, c-format -msgid "Failed to create record for domain `%s': %s\n" -msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:555 -msgid "Error when mapping zone to name\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:585 -#, c-format -msgid "Found existing name `%s' for the given key\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:662 -#, c-format -msgid "Found %u existing records for domain `%s'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:718 -#, fuzzy, c-format -msgid "Failed to create page for `%s'\n" -msgstr "Không thể tạo miền tên.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:734 -#, fuzzy, c-format -msgid "Failed to setup post processor for `%s'\n" -msgstr "Lỗi cập nhật dữ liệu cho mô-đun « %s »\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:770 -msgid "Domain name must not contain `.'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:778 -msgid "Domain name must not contain `+'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:974 -msgid "No ego configured for `fcfsd` subsystem\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:1000 -#, fuzzy -msgid "Failed to start HTTP server\n" -msgstr "Lỗi bắt đầu thu thập.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1042 -#, fuzzy -msgid "Failed to connect to identity\n" -msgstr "Lỗi kết nối đến gnunetd.\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1074 -msgid "GNU Name System First Come First Serve name registration service" -msgstr "" - -#: src/namestore/gnunet-service-namestore.c:612 +#: src/namestore/gnunet-service-namestore.c:615 #, fuzzy, c-format msgid "Failed to replicate block in namecache: %s\n" msgstr "Lỗi cập nhật dữ liệu cho mô-đun « %s »\n" @@ -5221,7 +5405,7 @@ msgstr "" msgid "flat file database running\n" msgstr "kho dữ liệu sqlite" -#: src/namestore/plugin_rest_namestore.c:1188 +#: src/namestore/plugin_rest_namestore.c:1193 #, fuzzy msgid "Namestore REST API initialized\n" msgstr "Lỗi sơ khởi lõi.\n" @@ -5508,11 +5692,6 @@ msgstr "" msgid "`upnpc' command not found\n" msgstr "" -#: src/nse/gnunet-nse.c:122 -#, fuzzy -msgid "Show network size estimates from NSE service." -msgstr "# các yêu cầu get (lấy) dht được nhận" - #: src/nse/gnunet-nse-profiler.c:842 #, fuzzy msgid "limit to the number of connections to NSE services, 0 for none" @@ -5539,70 +5718,16 @@ msgstr "" msgid "Measure quality and performance of the NSE service." msgstr "Không thể truy cập đến dịch vụ" -#: src/nse/gnunet-service-nse.c:1534 -#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 +#: src/nse/gnunet-nse.c:122 #, fuzzy -msgid "Value is too large.\n" -msgstr "Giá trị không nằm trong phạm vi được phép." - -#: src/peerinfo/gnunet-service-peerinfo.c:178 -#, fuzzy, c-format -msgid "Removing expired address of transport `%s'\n" -msgstr "Đã nạp truyền tải « %s »\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:310 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s': %s\n" -msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:331 -#: src/peerinfo/gnunet-service-peerinfo.c:362 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s'\n" -msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:446 -msgid "# peers known" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:489 -#, c-format -msgid "" -"File `%s' in directory `%s' does not match naming convention. Removed.\n" -msgstr "" -"Tập tin « %s » trong thư mục « %s » không tùy theo quy ước đặt tên. Bị gỡ " -"bỏ.\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:655 -#, fuzzy, c-format -msgid "Scanning directory `%s'\n" -msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:663 -#, c-format -msgid "Still no peers found in `%s'!\n" -msgstr "Vẫn còn không tìm thấy đồng đẳng trong « %s ».\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1076 -#, fuzzy, c-format -msgid "Cleaning up directory `%s'\n" -msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1405 -#, c-format -msgid "Importing HELLOs from `%s'\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:1418 -msgid "Skipping import of included HELLOs\n" -msgstr "" +msgid "Show network size estimates from NSE service." +msgstr "# các yêu cầu get (lấy) dht được nhận" -#: src/peerinfo/peerinfo_api.c:220 +#: src/nse/gnunet-service-nse.c:1534 +#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 #, fuzzy -msgid "Failed to receive response from `PEERINFO' service." -msgstr "" -"\n" -"Không nhận được đáp ứng từ gnunetd.\n" +msgid "Value is too large.\n" +msgstr "Giá trị không nằm trong phạm vi được phép." #: src/peerinfo-tool/gnunet-peerinfo.c:239 #, fuzzy, c-format @@ -5695,6 +5820,65 @@ msgstr "Đang nạp các truyền tải « %s »\n" msgid "Failed to load transport plugin for `%s'\n" msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n" +#: src/peerinfo/gnunet-service-peerinfo.c:178 +#, fuzzy, c-format +msgid "Removing expired address of transport `%s'\n" +msgstr "Đã nạp truyền tải « %s »\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:310 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s': %s\n" +msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:331 +#: src/peerinfo/gnunet-service-peerinfo.c:362 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s'\n" +msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:446 +msgid "# peers known" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:489 +#, c-format +msgid "" +"File `%s' in directory `%s' does not match naming convention. Removed.\n" +msgstr "" +"Tập tin « %s » trong thư mục « %s » không tùy theo quy ước đặt tên. Bị gỡ " +"bỏ.\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:655 +#, fuzzy, c-format +msgid "Scanning directory `%s'\n" +msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:663 +#, c-format +msgid "Still no peers found in `%s'!\n" +msgstr "Vẫn còn không tìm thấy đồng đẳng trong « %s ».\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1076 +#, fuzzy, c-format +msgid "Cleaning up directory `%s'\n" +msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1405 +#, c-format +msgid "Importing HELLOs from `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1418 +msgid "Skipping import of included HELLOs\n" +msgstr "" + +#: src/peerinfo/peerinfo_api.c:220 +#, fuzzy +msgid "Failed to receive response from `PEERINFO' service." +msgstr "" +"\n" +"Không nhận được đáp ứng từ gnunetd.\n" + #: src/peerstore/gnunet-peerstore.c:91 msgid "peerstore" msgstr "" @@ -5744,15 +5928,10 @@ msgstr "Gặp lỗi khi tạo người dùng" msgid "Unable to create indices: %s.\n" msgstr "Không thể tạo miền tên.\n" -#: src/postgres/postgres.c:67 -#, fuzzy, c-format -msgid "`%s:%s' failed at %s:%d with error: %s\n" -msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s" - -#: src/postgres/postgres.c:192 +#: src/pq/pq_prepare.c:80 #, fuzzy, c-format -msgid "Unable to connect to Postgres database '%s': %s\n" -msgstr "Không thể lưu tập tin cấu hình « %s »:" +msgid "PQprepare (`%s' as `%s') failed with error: %s\n" +msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n" #: src/psycstore/gnunet-service-psycstore.c:249 #, fuzzy @@ -5932,61 +6111,61 @@ msgstr "Lưu cấu hình ngay bây giờ không?" msgid "Daemon to announce regular expressions for the peer using cadet." msgstr "" -#: src/regex/gnunet-regex-profiler.c:1314 +#: src/regex/gnunet-regex-profiler.c:1386 #, fuzzy msgid "No configuration file given. Exiting\n" msgstr "dùng tập tin cấu hình TÊN_TẬP_TIN" -#: src/regex/gnunet-regex-profiler.c:1355 +#: src/regex/gnunet-regex-profiler.c:1427 #: src/regex/gnunet-regex-simulation-profiler.c:630 #, c-format msgid "No policy directory specified on command line. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1361 +#: src/regex/gnunet-regex-profiler.c:1433 #: src/regex/gnunet-regex-simulation-profiler.c:638 #, c-format msgid "Specified policies directory does not exist. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1368 +#: src/regex/gnunet-regex-profiler.c:1440 #, fuzzy, c-format msgid "No files found in `%s'\n" msgstr "Vẫn còn không tìm thấy đồng đẳng trong « %s ».\n" -#: src/regex/gnunet-regex-profiler.c:1377 +#: src/regex/gnunet-regex-profiler.c:1449 msgid "No search strings file given. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1397 +#: src/regex/gnunet-regex-profiler.c:1469 #, fuzzy msgid "Error loading search strings. Exiting.\n" msgstr "Gặp lỗi khi tải xuống: %s\n" -#: src/regex/gnunet-regex-profiler.c:1485 +#: src/regex/gnunet-regex-profiler.c:1557 #, fuzzy msgid "name of the file for writing statistics" msgstr "Lỗi lấy thông kê về truyền tải.\n" -#: src/regex/gnunet-regex-profiler.c:1491 +#: src/regex/gnunet-regex-profiler.c:1563 msgid "wait TIMEOUT before ending the experiment" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1497 +#: src/regex/gnunet-regex-profiler.c:1569 msgid "directory with policy files" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1504 +#: src/regex/gnunet-regex-profiler.c:1576 #, fuzzy msgid "name of file with input strings" msgstr "Lỗi lấy thông kê về truyền tải.\n" -#: src/regex/gnunet-regex-profiler.c:1510 +#: src/regex/gnunet-regex-profiler.c:1582 #, fuzzy msgid "name of file with hosts' names" msgstr "Lỗi lấy thông kê về truyền tải.\n" -#: src/regex/gnunet-regex-profiler.c:1523 +#: src/regex/gnunet-regex-profiler.c:1595 msgid "Profiler for regex" msgstr "" @@ -6219,10 +6398,10 @@ msgstr "" msgid "Calculate the Vectorproduct with a GNUnet peer." msgstr "" -#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1407 -#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 -#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1180 +#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172 #: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063 +#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401 +#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 #, fuzzy msgid "Connect to CADET failed\n" msgstr " Không kết nối được (lỗi ?)\n" @@ -6247,7 +6426,7 @@ msgstr "" msgid "also profile decryption" msgstr "" -#: src/set/gnunet-service-set.c:1948 +#: src/set/gnunet-service-set.c:1989 #, fuzzy msgid "Could not connect to CADET service\n" msgstr "Không thể kết nối tới %s:%u: %s\n" @@ -6307,114 +6486,114 @@ msgstr "" msgid "say good-bye and leave somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1227 src/social/gnunet-social.c:1232 +#: src/social/gnunet-social.c:1227 msgid "create a place" msgstr "" -#: src/social/gnunet-social.c:1237 +#: src/social/gnunet-social.c:1232 msgid "destroy a place we were hosting" msgstr "" -#: src/social/gnunet-social.c:1242 +#: src/social/gnunet-social.c:1237 msgid "enter somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1248 +#: src/social/gnunet-social.c:1243 msgid "find state matching name prefix" msgstr "" -#: src/social/gnunet-social.c:1253 +#: src/social/gnunet-social.c:1248 msgid "replay history of messages up to the given --limit" msgstr "" -#: src/social/gnunet-social.c:1258 +#: src/social/gnunet-social.c:1253 msgid "reconnect to a previously created place" msgstr "" -#: src/social/gnunet-social.c:1263 +#: src/social/gnunet-social.c:1258 msgid "publish something to a place we are hosting" msgstr "" -#: src/social/gnunet-social.c:1268 +#: src/social/gnunet-social.c:1263 msgid "reconnect to a previously entered place" msgstr "" -#: src/social/gnunet-social.c:1273 +#: src/social/gnunet-social.c:1268 msgid "search for state matching exact name" msgstr "" -#: src/social/gnunet-social.c:1278 +#: src/social/gnunet-social.c:1273 msgid "submit something to somebody's place" msgstr "" -#: src/social/gnunet-social.c:1283 +#: src/social/gnunet-social.c:1278 msgid "list of egos and subscribed places" msgstr "" -#: src/social/gnunet-social.c:1288 +#: src/social/gnunet-social.c:1283 msgid "extract and replay history between message IDs --start and --until" msgstr "" -#: src/social/gnunet-social.c:1297 +#: src/social/gnunet-social.c:1292 msgid "application ID to use when connecting" msgstr "" -#: src/social/gnunet-social.c:1303 +#: src/social/gnunet-social.c:1298 msgid "message body or state value" msgstr "" -#: src/social/gnunet-social.c:1309 +#: src/social/gnunet-social.c:1304 #, fuzzy msgid "name or public key of ego" msgstr "Đối số không hợp lệ cho « %s ».\n" -#: src/social/gnunet-social.c:1314 +#: src/social/gnunet-social.c:1309 #, fuzzy msgid "wait for incoming messages" msgstr "Lỗi gửi tin nhẳn.\n" -#: src/social/gnunet-social.c:1320 +#: src/social/gnunet-social.c:1315 msgid "GNS name" msgstr "" -#: src/social/gnunet-social.c:1326 +#: src/social/gnunet-social.c:1321 msgid "peer ID for --guest-enter" msgstr "" -#: src/social/gnunet-social.c:1332 +#: src/social/gnunet-social.c:1327 msgid "name (key) to query from state" msgstr "" -#: src/social/gnunet-social.c:1338 +#: src/social/gnunet-social.c:1333 msgid "method name" msgstr "" -#: src/social/gnunet-social.c:1344 +#: src/social/gnunet-social.c:1339 #, fuzzy msgid "number of messages to replay from history" msgstr "số tin nhắn cần dùng mỗi lần lặp" -#: src/social/gnunet-social.c:1350 +#: src/social/gnunet-social.c:1345 msgid "key address of place" msgstr "" -#: src/social/gnunet-social.c:1356 +#: src/social/gnunet-social.c:1351 msgid "start message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1361 +#: src/social/gnunet-social.c:1356 msgid "respond to entry requests by admitting all guests" msgstr "" -#: src/social/gnunet-social.c:1367 +#: src/social/gnunet-social.c:1362 msgid "end message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1372 +#: src/social/gnunet-social.c:1367 msgid "respond to entry requests by refusing all guests" msgstr "" -#: src/social/gnunet-social.c:1382 +#: src/social/gnunet-social.c:1377 msgid "" "gnunet-social - Interact with the social service: enter/leave, send/receive " "messages, access history and state.\n" @@ -6607,7 +6786,7 @@ msgid "" msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:231 src/testing/list-keys.c:46 -#: src/testing/testing.c:288 src/util/gnunet-ecc.c:298 +#: src/testing/testing.c:288 src/util/gnunet-ecc.c:301 #, c-format msgid "Incorrect hostkey file format: %s\n" msgstr "" @@ -6677,16 +6856,6 @@ msgstr "« %s » đang tắt.\n" msgid "%.s Unknown result code." msgstr "" -#: src/testbed/gnunet_testbed_mpi_spawn.c:118 -#, fuzzy -msgid "Waiting for child to exit.\n" -msgstr "Đang đợi các đồng đẳng kết nối" - -#: src/testbed/gnunet_testbed_mpi_spawn.c:241 -#, fuzzy, c-format -msgid "Spawning process `%s'\n" -msgstr "Đang bắt đầu tài về « %s »\n" - #: src/testbed/gnunet-testbed-profiler.c:290 msgid "tolerate COUNT number of continious timeout failures" msgstr "" @@ -6698,6 +6867,16 @@ msgid "" "signal is received" msgstr "" +#: src/testbed/gnunet_testbed_mpi_spawn.c:118 +#, fuzzy +msgid "Waiting for child to exit.\n" +msgstr "Đang đợi các đồng đẳng kết nối" + +#: src/testbed/gnunet_testbed_mpi_spawn.c:241 +#, fuzzy, c-format +msgid "Spawning process `%s'\n" +msgstr "Đang bắt đầu tài về « %s »\n" + #: src/testbed/testbed_api.c:410 #, fuzzy, c-format msgid "Adding host %u failed with error: %s\n" @@ -7000,10 +7179,6 @@ msgstr "# các thông báo PONG đã mật mã được nhận" msgid "GNUnet topology control" msgstr "" -#: src/transport/gnunet-service-transport_ats.c:141 -msgid "# Addresses given to ATS" -msgstr "" - #: src/transport/gnunet-service-transport.c:448 #, fuzzy msgid "# messages dropped due to slow client" @@ -7053,6 +7228,10 @@ msgstr "" msgid "Transport service is lacking key configuration settings. Exiting.\n" msgstr "Lưu cấu hình ngay bây giờ không?" +#: src/transport/gnunet-service-transport_ats.c:141 +msgid "# Addresses given to ATS" +msgstr "" + #: src/transport/gnunet-service-transport_hello.c:195 msgid "# refreshed my HELLO" msgstr "" @@ -7387,6 +7566,46 @@ msgstr "" msgid "# validations succeeded" msgstr "" +#: src/transport/gnunet-transport-profiler.c:219 +#, c-format +msgid "%llu B in %llu ms == %.2f KB/s!\n" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:617 +msgid "send data to peer" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:621 +#, fuzzy +msgid "receive data from peer" +msgstr "Yêu cầu cấp %d từ đồng đẳng %d\n" + +#: src/transport/gnunet-transport-profiler.c:626 +#, fuzzy +msgid "iterations" +msgstr "Tùy chọn chung" + +#: src/transport/gnunet-transport-profiler.c:631 +#, fuzzy +msgid "number of messages to send" +msgstr "số tin nhắn cần dùng mỗi lần lặp" + +#: src/transport/gnunet-transport-profiler.c:636 +#, fuzzy +msgid "message size to use" +msgstr "kích cỡ tin nhắn" + +#: src/transport/gnunet-transport-profiler.c:641 +#: src/transport/gnunet-transport.c:1462 +msgid "peer identity" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:652 +#: src/transport/gnunet-transport.c:1482 +#, fuzzy +msgid "Direct access to transport service." +msgstr "Lỗi kết nối đến gnunetd.\n" + #: src/transport/gnunet-transport.c:413 #, fuzzy, c-format msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n" @@ -7526,11 +7745,6 @@ msgstr "In ra thông tin về các đồng đẳng GNUnet." msgid "do not resolve hostnames" msgstr "không quyết định các tên máy" -#: src/transport/gnunet-transport.c:1462 -#: src/transport/gnunet-transport-profiler.c:641 -msgid "peer identity" -msgstr "" - #: src/transport/gnunet-transport.c:1466 msgid "monitor plugin sessions" msgstr "" @@ -7539,44 +7753,9 @@ msgstr "" msgid "send data for benchmarking to the other peer (until CTRL-C)" msgstr "" -#: src/transport/gnunet-transport.c:1482 -#: src/transport/gnunet-transport-profiler.c:652 -#, fuzzy -msgid "Direct access to transport service." -msgstr "Lỗi kết nối đến gnunetd.\n" - -#: src/transport/gnunet-transport-profiler.c:219 -#, c-format -msgid "%llu B in %llu ms == %.2f KB/s!\n" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:617 -msgid "send data to peer" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:621 -#, fuzzy -msgid "receive data from peer" -msgstr "Yêu cầu cấp %d từ đồng đẳng %d\n" - -#: src/transport/gnunet-transport-profiler.c:626 -#, fuzzy -msgid "iterations" -msgstr "Tùy chọn chung" - -#: src/transport/gnunet-transport-profiler.c:631 -#, fuzzy -msgid "number of messages to send" -msgstr "số tin nhắn cần dùng mỗi lần lặp" - -#: src/transport/gnunet-transport-profiler.c:636 -#, fuzzy -msgid "message size to use" -msgstr "kích cỡ tin nhắn" - #: src/transport/plugin_transport_http_client.c:1474 -#: src/transport/plugin_transport_http_server.c:2249 -#: src/transport/plugin_transport_http_server.c:3463 +#: src/transport/plugin_transport_http_server.c:2312 +#: src/transport/plugin_transport_http_server.c:3526 #: src/transport/plugin_transport_tcp.c:3890 #: src/transport/plugin_transport_tcp.c:3897 msgid "TCP_STEALTH not supported on this platform.\n" @@ -7588,13 +7767,13 @@ msgid "Could not initialize curl multi handle, failed to start %s plugin!\n" msgstr "" #: src/transport/plugin_transport_http_client.c:2164 -#: src/transport/plugin_transport_http_server.c:3178 +#: src/transport/plugin_transport_http_server.c:3241 #, fuzzy, c-format msgid "Shutting down plugin `%s'\n" msgstr "Đang nạp các truyền tải « %s »\n" #: src/transport/plugin_transport_http_client.c:2181 -#: src/transport/plugin_transport_http_server.c:3248 +#: src/transport/plugin_transport_http_server.c:3311 #, fuzzy, c-format msgid "Shutdown for plugin `%s' complete\n" msgstr "Tải lên « %s » hoàn thành, địa chỉ URI là « %s ».\n" @@ -7604,106 +7783,106 @@ msgstr "Tải lên « %s » hoàn thành, địa chỉ URI là « %s ».\n" msgid "Maximum number of requests is %u\n" msgstr "tăng sổ tối đa các kết nối TCP/IP" -#: src/transport/plugin_transport_http_server.c:1727 +#: src/transport/plugin_transport_http_server.c:1756 #, c-format msgid "" "Access from connection %p (%u of %u) for `%s' `%s' url `%s' with upload data " "size %u\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1967 +#: src/transport/plugin_transport_http_server.c:2028 #, c-format msgid "Accepting connection (%u of %u) from `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1975 +#: src/transport/plugin_transport_http_server.c:2036 #, c-format msgid "" "Server reached maximum number connections (%u), rejecting new connection\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2125 +#: src/transport/plugin_transport_http_server.c:2186 msgid "" "Could not create a new TLS certificate, program `gnunet-transport-" "certificate-creation' could not be started!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2148 +#: src/transport/plugin_transport_http_server.c:2209 #, c-format msgid "No usable TLS certificate found and creating one at `%s/%s' failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2275 +#: src/transport/plugin_transport_http_server.c:2338 msgid "Could not load or create server certificate! Loading plugin failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2587 +#: src/transport/plugin_transport_http_server.c:2650 #, fuzzy msgid "Require valid port number for service in configuration!\n" msgstr "Lỗi lưu cấu hình." -#: src/transport/plugin_transport_http_server.c:2752 +#: src/transport/plugin_transport_http_server.c:2815 #, c-format msgid "Found %u addresses to report to NAT service\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2838 +#: src/transport/plugin_transport_http_server.c:2901 #: src/transport/plugin_transport_udp.c:3622 msgid "Disabling IPv6 since it is not supported on this system!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2944 +#: src/transport/plugin_transport_http_server.c:3007 #, c-format msgid "IPv4 support is %s\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2959 +#: src/transport/plugin_transport_http_server.c:3022 #, c-format msgid "IPv6 support is %s\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2965 +#: src/transport/plugin_transport_http_server.c:3028 msgid "Neither IPv4 nor IPv6 are enabled! Fix in configuration\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2976 +#: src/transport/plugin_transport_http_server.c:3039 #, fuzzy msgid "Port is required! Fix in configuration\n" msgstr "" "\n" "Kết thúc cấu hình.\n" -#: src/transport/plugin_transport_http_server.c:2982 +#: src/transport/plugin_transport_http_server.c:3045 #, fuzzy, c-format msgid "Using port %u\n" msgstr "Đang thử nghiệm (các) truyền tải %s\n" -#: src/transport/plugin_transport_http_server.c:3001 +#: src/transport/plugin_transport_http_server.c:3064 #, fuzzy, c-format msgid "Specific IPv4 address `%s' in configuration file is invalid!\n" msgstr "Đang thử dùng tập tin « %s » cho cấu hình MySQL.\n" -#: src/transport/plugin_transport_http_server.c:3036 +#: src/transport/plugin_transport_http_server.c:3099 #, fuzzy, c-format msgid "Specific IPv6 address `%s' in configuration file is invalid!\n" msgstr "Đang thử dùng tập tin « %s » cho cấu hình MySQL.\n" -#: src/transport/plugin_transport_http_server.c:3111 +#: src/transport/plugin_transport_http_server.c:3174 #, fuzzy, c-format msgid "Using external hostname `%s'\n" msgstr "Đang bắt đầu tài về « %s »\n" -#: src/transport/plugin_transport_http_server.c:3132 +#: src/transport/plugin_transport_http_server.c:3195 #, fuzzy, c-format msgid "Notifying transport only about hostname `%s'\n" msgstr "không quyết định các tên máy" -#: src/transport/plugin_transport_http_server.c:3149 +#: src/transport/plugin_transport_http_server.c:3212 #, fuzzy, c-format msgid "Maximum number of connections is %u\n" msgstr "tăng sổ tối đa các kết nối TCP/IP" -#: src/transport/plugin_transport_http_server.c:3475 +#: src/transport/plugin_transport_http_server.c:3538 #, fuzzy msgid "Unable to compile URL regex\n" msgstr "Không thể sơ khởi SQLite: %s.\n" @@ -7852,21 +8031,6 @@ msgstr "" msgid "TCP transport advertises itself as being on port %llu\n" msgstr "" -#: src/transport/plugin_transport_udp_broadcasting.c:168 -#, fuzzy -msgid "# Multicast HELLO beacons received via UDP" -msgstr "# các thông báo PONG đã mật mã được nhận" - -#: src/transport/plugin_transport_udp_broadcasting.c:548 -msgid "" -"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" -msgstr "" - -#: src/transport/plugin_transport_udp_broadcasting.c:565 -#, c-format -msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" -msgstr "" - #: src/transport/plugin_transport_udp.c:3366 #, c-format msgid "" @@ -7915,6 +8079,21 @@ msgstr "« %s » không sẵn sàng.\n" msgid "Failed to create UDP network sockets\n" msgstr "Không thể tạo miền tên.\n" +#: src/transport/plugin_transport_udp_broadcasting.c:168 +#, fuzzy +msgid "# Multicast HELLO beacons received via UDP" +msgstr "# các thông báo PONG đã mật mã được nhận" + +#: src/transport/plugin_transport_udp_broadcasting.c:548 +msgid "" +"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" +msgstr "" + +#: src/transport/plugin_transport_udp_broadcasting.c:565 +#, c-format +msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" +msgstr "" + #: src/transport/plugin_transport_unix.c:1403 #, fuzzy, c-format msgid "Cannot create path to `%s'\n" @@ -8029,7 +8208,7 @@ msgid "" "`GNUNET_SERVER_receive_done' after %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2337 +#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2336 #, fuzzy, c-format msgid "Unknown address family %d\n" msgstr "\tKhông rõ miền tên « %s »\n" @@ -8074,51 +8253,51 @@ msgstr "Lỗi chạy %s: %s %d\n" msgid "Service `%s' runs at %s\n" msgstr "Đồng đẳng « %s » có mức tin cậy %8u\n" -#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1501 +#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1500 msgid "Service process failed to initialize\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1505 +#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1504 msgid "Service process could not initialize server function\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1509 +#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1508 msgid "Service process failed to report status\n" msgstr "" #: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1488 -#: src/util/service.c:1379 +#: src/util/service.c:1378 #, c-format msgid "Cannot obtain information about user `%s': %s\n" msgstr "Không thể lấy thông tin về người dùng « %s »: %s\n" -#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1381 +#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1380 msgid "No such user" msgstr "Không có người dùng như vậy" -#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1400 +#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1399 #, c-format msgid "Cannot change user/group to `%s': %s\n" msgstr "Không thể thay đổi người dùng/nhóm thành « %s »: %s\n" -#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1728 +#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1727 msgid "do daemonize (detach from terminal)" msgstr "" #: src/transport/tcp_service_legacy.c:1448 src/util/program.c:244 -#: src/util/service.c:1791 +#: src/util/service.c:1790 #, fuzzy, c-format msgid "Malformed configuration file `%s', exit ...\n" msgstr "Không thể lưu tập tin cấu hình « %s »:" #: src/transport/tcp_service_legacy.c:1458 src/util/program.c:261 -#: src/util/service.c:1802 +#: src/util/service.c:1801 #, fuzzy msgid "Malformed configuration, exit ...\n" msgstr "Không thể lưu tập tin cấu hình « %s »:" #: src/transport/tcp_service_legacy.c:1463 src/util/program.c:256 -#: src/util/service.c:1808 +#: src/util/service.c:1807 #, fuzzy, c-format msgid "Could not access configuration file `%s'\n" msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n" @@ -8162,71 +8341,71 @@ msgstr "" msgid "Need a non-empty hostname for service `%s'.\n" msgstr "" -#: src/util/common_logging.c:256 src/util/common_logging.c:1129 +#: src/util/common_logging.c:259 src/util/common_logging.c:1132 msgid "DEBUG" msgstr "GỠ LỖI" -#: src/util/common_logging.c:258 src/util/common_logging.c:1127 +#: src/util/common_logging.c:261 src/util/common_logging.c:1130 msgid "INFO" msgstr "TIN" -#: src/util/common_logging.c:260 src/util/common_logging.c:1125 +#: src/util/common_logging.c:263 src/util/common_logging.c:1128 msgid "MESSAGE" msgstr "" -#: src/util/common_logging.c:262 src/util/common_logging.c:1123 +#: src/util/common_logging.c:265 src/util/common_logging.c:1126 msgid "WARNING" msgstr "CẢNH BÁO" -#: src/util/common_logging.c:264 src/util/common_logging.c:1121 +#: src/util/common_logging.c:267 src/util/common_logging.c:1124 msgid "ERROR" msgstr "LỖI" -#: src/util/common_logging.c:266 src/util/common_logging.c:1131 +#: src/util/common_logging.c:269 src/util/common_logging.c:1134 msgid "NONE" msgstr "" -#: src/util/common_logging.c:879 +#: src/util/common_logging.c:882 #, fuzzy, c-format msgid "Message `%.*s' repeated %u times in the last %s\n" msgstr "Thông điệp « %.*s » đã lặp lại %u lần trong %llu giây trước\n" -#: src/util/common_logging.c:1132 +#: src/util/common_logging.c:1135 msgid "INVALID" msgstr "" -#: src/util/common_logging.c:1302 +#: src/util/common_logging.c:1326 msgid "unknown address" msgstr "" -#: src/util/common_logging.c:1344 +#: src/util/common_logging.c:1368 msgid "invalid address" msgstr "" -#: src/util/common_logging.c:1362 +#: src/util/common_logging.c:1386 #, fuzzy, c-format msgid "Configuration fails to specify option `%s' in section `%s'!\n" msgstr "" "Cấu hình không thỏa mãn các ràng buộc của tập tin đặc tả cấu hình « %s ».\n" -#: src/util/common_logging.c:1383 +#: src/util/common_logging.c:1407 #, fuzzy, c-format msgid "" "Configuration specifies invalid value for option `%s' in section `%s': %s\n" msgstr "" "Cấu hình không thỏa mãn các ràng buộc của tập tin đặc tả cấu hình « %s ».\n" -#: src/util/configuration.c:286 +#: src/util/configuration.c:296 #, fuzzy, c-format msgid "Syntax error while deserializing in line %u\n" msgstr "Gặp lỗi cú pháp trong tập tin cấu hình « %s » tại dòng %d.\n" -#: src/util/configuration.c:344 +#: src/util/configuration.c:355 #, fuzzy, c-format msgid "Error while reading file `%s'\n" msgstr "Gặp lỗi khi tải xuống: %s\n" -#: src/util/configuration.c:1017 +#: src/util/configuration.c:1034 #, c-format msgid "" "Configuration value '%s' for '%s' in section '%s' is not in set of legal " @@ -8235,17 +8414,17 @@ msgstr "" "Giá trị cấu hình « %s » cho « %s » trong phần « %s » không phải nằm trong " "tập hợp các sự chọn được phép\n" -#: src/util/configuration.c:1136 +#: src/util/configuration.c:1153 #, c-format msgid "Recursive expansion suspected, aborting $-expansion for term `%s'\n" msgstr "" -#: src/util/configuration.c:1169 +#: src/util/configuration.c:1186 #, fuzzy, c-format msgid "Missing closing `%s' in option `%s'\n" msgstr "Giá trị cấu hình « %s » cho « %s » trong phần « %s » nên là con số\n" -#: src/util/configuration.c:1237 +#: src/util/configuration.c:1254 #, c-format msgid "" "Failed to expand `%s' in `%s' as it is neither found in [PATHS] nor defined " @@ -8279,32 +8458,32 @@ msgstr "Lỗi thẩm tra chữ ký RSA tại %s:%d: %s\n" msgid "EdDSA signature verification failed at %s:%d: %s\n" msgstr "Lỗi thẩm tra chữ ký RSA tại %s:%d: %s\n" -#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:160 -#: src/util/crypto_ecc_setup.c:278 src/util/crypto_ecc_setup.c:316 +#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:161 +#: src/util/crypto_ecc_setup.c:279 src/util/crypto_ecc_setup.c:317 #, fuzzy, c-format msgid "Could not acquire lock on file `%s': %s...\n" msgstr "Lỗi mở tập tin theo dõi « %s »: %s\n" -#: src/util/crypto_ecc_setup.c:127 src/util/crypto_ecc_setup.c:283 +#: src/util/crypto_ecc_setup.c:128 src/util/crypto_ecc_setup.c:284 #, fuzzy msgid "Creating a new private key. This may take a while.\n" msgstr "Đang tạo khoá máy mới (có thể hơi lâu).\n" -#: src/util/crypto_ecc_setup.c:164 src/util/crypto_ecc_setup.c:320 +#: src/util/crypto_ecc_setup.c:165 src/util/crypto_ecc_setup.c:322 msgid "This may be ok if someone is currently generating a private key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:194 src/util/crypto_ecc_setup.c:350 +#: src/util/crypto_ecc_setup.c:195 src/util/crypto_ecc_setup.c:352 #, c-format msgid "" "When trying to read key file `%s' I found %u bytes but I need at least %u.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:198 src/util/crypto_ecc_setup.c:354 +#: src/util/crypto_ecc_setup.c:199 src/util/crypto_ecc_setup.c:356 msgid "This may be ok if someone is currently generating a key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:413 +#: src/util/crypto_ecc_setup.c:415 #, fuzzy msgid "Could not load peer's private key\n" msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n" @@ -8499,82 +8678,86 @@ msgstr "" msgid "Manipulate GNUnet configuration files" msgstr "cập nhật một giá trị trong tập tin cấu hình" -#: src/util/gnunet-ecc.c:84 +#: src/util/gnunet-ecc.c:89 #, fuzzy, c-format msgid "Failed to open `%s': %s\n" msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n" -#: src/util/gnunet-ecc.c:120 +#: src/util/gnunet-ecc.c:125 #, c-format msgid "Generating %u keys like %s, please wait" msgstr "" -#: src/util/gnunet-ecc.c:133 +#: src/util/gnunet-ecc.c:138 #, c-format msgid "Generating %u keys, please wait" msgstr "" -#: src/util/gnunet-ecc.c:174 +#: src/util/gnunet-ecc.c:179 #, fuzzy, c-format msgid "" "\n" "Failed to write to `%s': %s\n" msgstr "Lỗi chạy %s: %s %d\n" -#: src/util/gnunet-ecc.c:184 +#: src/util/gnunet-ecc.c:189 #, c-format msgid "" "\n" "Finished!\n" msgstr "" -#: src/util/gnunet-ecc.c:187 +#: src/util/gnunet-ecc.c:192 #, c-format msgid "" "\n" "Error, %u keys not generated\n" msgstr "" -#: src/util/gnunet-ecc.c:280 +#: src/util/gnunet-ecc.c:283 #, fuzzy, c-format msgid "Hostkeys file `%s' not found\n" msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n" -#: src/util/gnunet-ecc.c:291 +#: src/util/gnunet-ecc.c:294 #, fuzzy, c-format msgid "Hostkeys file `%s' is empty\n" msgstr "Định dạng của tập tin « %s » là không hợp lệ.\n" -#: src/util/gnunet-ecc.c:313 +#: src/util/gnunet-ecc.c:316 #, fuzzy, c-format msgid "Could not read hostkey file: %s\n" msgstr "Không thể đọc danh sách bạn bè « %s »\n" -#: src/util/gnunet-ecc.c:364 +#: src/util/gnunet-ecc.c:367 msgid "No hostkey file specified on command line\n" msgstr "" -#: src/util/gnunet-ecc.c:416 +#: src/util/gnunet-ecc.c:425 msgid "list keys included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:421 +#: src/util/gnunet-ecc.c:430 msgid "number of keys to list included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:426 +#: src/util/gnunet-ecc.c:435 msgid "create COUNT public-private key pairs (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:430 +#: src/util/gnunet-ecc.c:439 msgid "print the public key in ASCII format" msgstr "" -#: src/util/gnunet-ecc.c:434 +#: src/util/gnunet-ecc.c:443 +msgid "print the public key in HEX format" +msgstr "" + +#: src/util/gnunet-ecc.c:447 msgid "print examples of ECC operations (used for compatibility testing)" msgstr "" -#: src/util/gnunet-ecc.c:449 +#: src/util/gnunet-ecc.c:463 #, fuzzy msgid "Manipulate GNUnet private ECC key files" msgstr "cập nhật một giá trị trong tập tin cấu hình" @@ -8668,7 +8851,7 @@ msgstr "Gặp lỗi khi tạo người dùng" msgid "Unable to shorten unix path `%s' while keeping name unique\n" msgstr "" -#: src/util/network.c:1793 src/util/network.c:1969 +#: src/util/network.c:1793 src/util/network.c:1977 #, c-format msgid "" "Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n" @@ -8721,7 +8904,7 @@ msgstr "« %s » thất bại cho thư viện « %s » với lỗi: %s\n" msgid "Could not determine plugin installation path.\n" msgstr "Không thể truy cập đến thông tin về không gian tên.\n" -#: src/util/resolver_api.c:204 +#: src/util/resolver_api.c:203 #, c-format msgid "" "Missing `%s' for `%s' in configuration, DNS resolution will be unavailable.\n" @@ -8734,32 +8917,32 @@ msgid "" "resolution will be unavailable.\n" msgstr "" -#: src/util/resolver_api.c:815 +#: src/util/resolver_api.c:826 #, fuzzy, c-format msgid "Timeout trying to resolve hostname `%s'.\n" msgstr "không quyết định các tên máy" -#: src/util/resolver_api.c:827 +#: src/util/resolver_api.c:839 #, fuzzy, c-format msgid "Timeout trying to resolve IP address `%s'.\n" msgstr "GNUnet bây giờ sử dụng địa chỉ IP %s.\n" -#: src/util/resolver_api.c:1004 +#: src/util/resolver_api.c:1023 msgid "Resolver not configured correctly.\n" msgstr "" -#: src/util/resolver_api.c:1086 src/util/resolver_api.c:1107 -#: src/util/resolver_api.c:1121 +#: src/util/resolver_api.c:1109 src/util/resolver_api.c:1132 +#: src/util/resolver_api.c:1146 #, fuzzy, c-format msgid "Could not resolve our FQDN: %s\n" msgstr "Không thể giải quyết « %s » (%s): %s\n" -#: src/util/service.c:1306 +#: src/util/service.c:1305 msgid "" "Could not bind to any of the ports I was supposed to, refusing to run!\n" msgstr "" -#: src/util/service.c:2082 +#: src/util/service.c:2081 #, c-format msgid "" "Processing code for message of type %u did not call " @@ -8837,63 +9020,63 @@ msgstr " ngày" msgid "end of time" msgstr "" -#: src/util/strings.c:1269 +#: src/util/strings.c:1270 msgid "IPv6 address did not start with `['\n" msgstr "" -#: src/util/strings.c:1277 +#: src/util/strings.c:1278 msgid "IPv6 address did contain ':' to separate port number\n" msgstr "" -#: src/util/strings.c:1283 +#: src/util/strings.c:1284 msgid "IPv6 address did contain ']' before ':' to separate port number\n" msgstr "" -#: src/util/strings.c:1290 +#: src/util/strings.c:1291 msgid "IPv6 address did contain a valid port number after the last ':'\n" msgstr "" -#: src/util/strings.c:1299 +#: src/util/strings.c:1300 #, fuzzy, c-format msgid "Invalid IPv6 address `%s': %s\n" msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n" -#: src/util/strings.c:1571 src/util/strings.c:1587 +#: src/util/strings.c:1572 src/util/strings.c:1588 msgid "Port not in range\n" msgstr "" -#: src/util/strings.c:1596 +#: src/util/strings.c:1597 #, fuzzy, c-format msgid "Malformed port policy `%s'\n" msgstr "Lỗi bắt đầu thu thập.\n" -#: src/util/strings.c:1679 src/util/strings.c:1710 src/util/strings.c:1758 -#: src/util/strings.c:1779 +#: src/util/strings.c:1680 src/util/strings.c:1711 src/util/strings.c:1759 +#: src/util/strings.c:1780 #, c-format msgid "Invalid format for IP: `%s'\n" msgstr "Địa chỉ IP định dạng sai: %s\n" -#: src/util/strings.c:1736 +#: src/util/strings.c:1737 #, c-format msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)." msgstr "Ký hiệu mạng sai (« /%d » không hợp lệ trong CIDR IPv4)." -#: src/util/strings.c:1788 +#: src/util/strings.c:1789 #, fuzzy, c-format msgid "Invalid format: `%s'\n" msgstr "Địa chỉ IP định dạng sai: %s\n" -#: src/util/strings.c:1840 +#: src/util/strings.c:1841 #, c-format msgid "Invalid network notation (does not end with ';': `%s')\n" msgstr "Ký hiệu mạng sai (không kết thúc với « ; »: « %s »)\n" -#: src/util/strings.c:1890 +#: src/util/strings.c:1891 #, fuzzy, c-format msgid "Wrong format `%s' for netmask\n" msgstr "Mặt nạ mạng có định dạng sai « %s »: %s\n" -#: src/util/strings.c:1921 +#: src/util/strings.c:1922 #, fuzzy, c-format msgid "Wrong format `%s' for network\n" msgstr "Mạng có định dạng sai « %s »: %s\n" @@ -9076,27 +9259,43 @@ msgstr "# các byte đã nhận qua UDP" msgid "Setup tunnels via VPN." msgstr "" -#: src/zonemaster/gnunet-service-zonemaster.c:705 +#: src/zonemaster/gnunet-service-zonemaster.c:706 #, fuzzy msgid "Failed to connect to the namestore!\n" msgstr "Không kết nối được đến trình nền gnunetd." -#: src/include/gnunet_common.h:674 src/include/gnunet_common.h:681 -#: src/include/gnunet_common.h:691 src/include/gnunet_common.h:699 +#: src/include/gnunet_common.h:689 src/include/gnunet_common.h:696 +#: src/include/gnunet_common.h:706 src/include/gnunet_common.h:714 #, fuzzy, c-format msgid "Assertion failed at %s:%d.\n" msgstr "Lỗi nội bộ : khẳng định không thành công tại %s:%d.\n" -#: src/include/gnunet_common.h:711 +#: src/include/gnunet_common.h:726 #, fuzzy, c-format msgid "External protocol violation detected at %s:%d.\n" msgstr "Lỗi nội bộ : khẳng định không thành công tại %s:%d.\n" -#: src/include/gnunet_common.h:738 src/include/gnunet_common.h:747 +#: src/include/gnunet_common.h:753 src/include/gnunet_common.h:762 #, c-format msgid "`%s' failed on file `%s' at %s:%d with error: %s\n" msgstr "« %s » thất bại ở tập tin « %s » tại %s:%d với lỗi: %s\n" +#, fuzzy +#~ msgid "Token `%s' is malformed\n" +#~ msgstr "Đối số không hợp lệ cho « %s ».\n" + +#, fuzzy +#~ msgid "Failed to create indices\n" +#~ msgstr "Không thể tạo miền tên.\n" + +#, fuzzy +#~ msgid "`%s:%s' failed at %s:%d with error: %s\n" +#~ msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s" + +#, fuzzy +#~ msgid "Unable to connect to Postgres database '%s': %s\n" +#~ msgstr "Không thể lưu tập tin cấu hình « %s »:" + #, fuzzy #~ msgid "Misconfiguration (can not connect to the ARM service)" #~ msgstr "Lỗi kết nối đến gnunetd.\n" @@ -9205,10 +9404,6 @@ msgstr "« %s » thất bại ở tập tin « %s » tại %s:%d với lỗi: %s #~ msgid "# transmission request failures" #~ msgstr "# các sự truyền PONG bị lỗi" -#, fuzzy -#~ msgid "# bytes sent to datastore" -#~ msgstr "# các byte trong kho dữ liệu" - #, fuzzy #~ msgid "Failed to receive status response from database." #~ msgstr "" @@ -9525,10 +9720,6 @@ msgstr "« %s » thất bại ở tập tin « %s » tại %s:%d với lỗi: %s #~ msgid "Timeout transmitting iteration request to `SENSOR' service." #~ msgstr "Lỗi sơ khởi dịch vụ « %s ».\n" -#, fuzzy -#~ msgid "Error reading sensor version\n" -#~ msgstr "Gặp lỗi khi tạo người dùng" - #, fuzzy #~ msgid "Error reading sensor category\n" #~ msgstr "Gặp lỗi khi tạo người dùng" @@ -10133,12 +10324,6 @@ msgstr "« %s » thất bại ở tập tin « %s » tại %s:%d với lỗi: %s #~ "\n" #~ "Không nhận được đáp ứng từ gnunetd.\n" -#, fuzzy -#~ msgid "Failed to remove records from database" -#~ msgstr "" -#~ "\n" -#~ "Không nhận được đáp ứng từ gnunetd.\n" - #, fuzzy #~ msgid "Failed to access database" #~ msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n" diff --git a/po/zh_CN.po b/po/zh_CN.po index fee065a9d..2539296c2 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gnunet-0.8.1\n" "Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n" -"POT-Creation-Date: 2017-03-31 19:22-0500\n" +"POT-Creation-Date: 2017-10-20 15:14+0000\n" "PO-Revision-Date: 2011-07-09 12:12+0800\n" "Last-Translator: Wylmer Wang \n" "Language-Team: Chinese (simplified) \n" @@ -267,7 +267,7 @@ msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n" msgstr "" #: src/arm/gnunet-service-arm.c:513 -#: src/transport/plugin_transport_http_server.c:2621 +#: src/transport/plugin_transport_http_server.c:2684 #: src/transport/plugin_transport_tcp.c:1259 #: src/transport/tcp_service_legacy.c:696 src/util/service.c:782 #, fuzzy, c-format @@ -275,7 +275,7 @@ msgid "Failed to resolve `%s': %s\n" msgstr "打开日志文件“%s”失败:%s\n" #: src/arm/gnunet-service-arm.c:532 -#: src/transport/plugin_transport_http_server.c:2639 +#: src/transport/plugin_transport_http_server.c:2702 #: src/transport/plugin_transport_tcp.c:1278 #: src/transport/tcp_service_legacy.c:715 src/util/service.c:802 #, fuzzy, c-format @@ -349,134 +349,14 @@ msgstr "" msgid "Initiating shutdown as requested by client.\n" msgstr "" -#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 -#, c-format -msgid "" -"Could not load quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2799 -#, c-format -msgid "" -"No outbound quota configured for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:2840 -#, c-format -msgid "" -"No outbound quota configure for network `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3294 -#: src/ats-tests/gnunet-solver-eval.c:939 -msgid "solver to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3299 -#: src/ats-tests/gnunet-solver-eval.c:945 -#: src/ats-tests/gnunet-solver-eval.c:950 -msgid "experiment to use" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3306 -#, fuzzy -msgid "print logging" -msgstr "未知的命令“%s”。\n" - -#: src/ats/gnunet-ats-solver-eval.c:3311 -msgid "save logging to disk" -msgstr "" - -#: src/ats/gnunet-ats-solver-eval.c:3316 -msgid "disable normalization" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:304 -#, c-format -msgid "" -"Could not load %s quota for network `%s': `%s', assigning default bandwidth " -"%llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:314 -#, c-format -msgid "%s quota configured for network `%s' is %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:359 -#, c-format -msgid "" -"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" -msgstr "" - -#: src/ats/gnunet-service-ats_plugins.c:451 -#, fuzzy, c-format -msgid "Failed to initialize solver `%s'!\n" -msgstr "无法初始化 SQLite:%s。\n" - -#: src/ats/plugin_ats_mlp.c:1274 -msgid "Problem size too large, cannot allocate memory!\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1869 -#, c-format -msgid "Adding address for peer `%s' multiple times\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:1913 -#, c-format -msgid "Updating address property for peer `%s' %p not added before\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2475 -msgid "" -"MLP solver is not optimizing for anything, changing to feasibility check\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 -#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 -#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 -#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 -#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 -#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 -#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 -#, fuzzy, c-format -msgid "Invalid %s configuration %f \n" -msgstr "解析配置文件“%s”失败\n" - -#: src/ats/plugin_ats_mlp.c:2670 -#, c-format -msgid "" -"Adjusting inconsistent outbound quota configuration for network `%s', is " -"%llu must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2679 -#, c-format -msgid "" -"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " -"must be at least %llu\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2689 -#, c-format -msgid "" -"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" -msgstr "" - -#: src/ats/plugin_ats_mlp.c:2698 -#, c-format -msgid "" -"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" +#: src/ats-tests/ats-testing-log.c:837 +msgid "Stop logging\n" msgstr "" -#: src/ats/plugin_ats_proportional.c:1164 +#: src/ats-tests/ats-testing-log.c:892 #, fuzzy, c-format -msgid "Invalid %s configuration %f\n" -msgstr "解析配置文件“%s”失败\n" +msgid "Start logging `%s'\n" +msgstr "未知的命令“%s”。\n" #: src/ats-tests/ats-testing.c:422 #, c-format @@ -488,15 +368,6 @@ msgstr "" msgid "Failed to connect master peer [%u] with slave [%u]\n" msgstr "初始化“%s”服务失败。\n" -#: src/ats-tests/ats-testing-log.c:837 -msgid "Stop logging\n" -msgstr "" - -#: src/ats-tests/ats-testing-log.c:892 -#, fuzzy, c-format -msgid "Start logging `%s'\n" -msgstr "未知的命令“%s”。\n" - #: src/ats-tests/gnunet-ats-sim.c:90 #, c-format msgid "" @@ -504,6 +375,15 @@ msgid "" "= %u KiB/s\n" msgstr "" +#: src/ats-tests/gnunet-solver-eval.c:939 src/ats/gnunet-ats-solver-eval.c:3294 +msgid "solver to use" +msgstr "" + +#: src/ats-tests/gnunet-solver-eval.c:945 +#: src/ats-tests/gnunet-solver-eval.c:950 src/ats/gnunet-ats-solver-eval.c:3299 +msgid "experiment to use" +msgstr "" + #: src/ats-tool/gnunet-ats.c:307 #, c-format msgid "%u address resolutions had a timeout\n" @@ -625,6 +505,124 @@ msgstr "" msgid "Print information about ATS state" msgstr "无法获取有关用户“%s”的信息:%s\n" +#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822 +#, c-format +msgid "" +"Could not load quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2799 +#, c-format +msgid "" +"No outbound quota configured for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:2840 +#, c-format +msgid "" +"No outbound quota configure for network `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3306 +#, fuzzy +msgid "print logging" +msgstr "未知的命令“%s”。\n" + +#: src/ats/gnunet-ats-solver-eval.c:3311 +msgid "save logging to disk" +msgstr "" + +#: src/ats/gnunet-ats-solver-eval.c:3316 +msgid "disable normalization" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:304 +#, c-format +msgid "" +"Could not load %s quota for network `%s': `%s', assigning default bandwidth " +"%llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:314 +#, c-format +msgid "%s quota configured for network `%s' is %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:359 +#, c-format +msgid "" +"No %s-quota configured for network `%s', assigning default bandwidth %llu\n" +msgstr "" + +#: src/ats/gnunet-service-ats_plugins.c:451 +#, fuzzy, c-format +msgid "Failed to initialize solver `%s'!\n" +msgstr "无法初始化 SQLite:%s。\n" + +#: src/ats/plugin_ats_mlp.c:1274 +msgid "Problem size too large, cannot allocate memory!\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1869 +#, c-format +msgid "Adding address for peer `%s' multiple times\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:1913 +#, c-format +msgid "Updating address property for peer `%s' %p not added before\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2475 +msgid "" +"MLP solver is not optimizing for anything, changing to feasibility check\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2515 src/ats/plugin_ats_mlp.c:2532 +#: src/ats/plugin_ats_mlp.c:2564 src/ats/plugin_ats_mlp.c:2582 +#: src/ats/plugin_ats_mlp.c:2601 src/ats/plugin_ats_proportional.c:1141 +#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629 +#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663 +#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697 +#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731 +#, fuzzy, c-format +msgid "Invalid %s configuration %f \n" +msgstr "解析配置文件“%s”失败\n" + +#: src/ats/plugin_ats_mlp.c:2670 +#, c-format +msgid "" +"Adjusting inconsistent outbound quota configuration for network `%s', is " +"%llu must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2679 +#, c-format +msgid "" +"Adjusting inconsistent inbound quota configuration for network `%s', is %llu " +"must be at least %llu\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2689 +#, c-format +msgid "" +"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_mlp.c:2698 +#, c-format +msgid "" +"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n" +msgstr "" + +#: src/ats/plugin_ats_proportional.c:1164 +#, fuzzy, c-format +msgid "Invalid %s configuration %f\n" +msgstr "解析配置文件“%s”失败\n" + #: src/auction/gnunet-auction-create.c:163 msgid "description of the item to be sold" msgstr "" @@ -770,6 +768,28 @@ msgstr "" msgid "Connection to conversation service lost, trying to reconnect\n" msgstr "" +#: src/conversation/gnunet-conversation-test.c:119 +#, c-format +msgid "" +"\n" +"End of transmission. Have a GNU day.\n" +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:145 +#, c-format +msgid "" +"\n" +"We are now playing your recording back. If you can hear it, your audio " +"settings are working..." +msgstr "" + +#: src/conversation/gnunet-conversation-test.c:210 +#, c-format +msgid "" +"We will now be recording you for %s. After that time, the recording will be " +"played back to you..." +msgstr "" + #: src/conversation/gnunet-conversation.c:269 #, c-format msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n" @@ -1026,30 +1046,8 @@ msgstr "" msgid "Enables having a conversation with other GNUnet users." msgstr "" -#: src/conversation/gnunet-conversation-test.c:119 -#, c-format -msgid "" -"\n" -"End of transmission. Have a GNU day.\n" -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:145 -#, c-format -msgid "" -"\n" -"We are now playing your recording back. If you can hear it, your audio " -"settings are working..." -msgstr "" - -#: src/conversation/gnunet-conversation-test.c:210 -#, c-format -msgid "" -"We will now be recording you for %s. After that time, the recording will be " -"played back to you..." -msgstr "" - -#: src/conversation/gnunet_gst.c:622 #: src/conversation/gnunet-helper-audio-playback-gst.c:356 +#: src/conversation/gnunet_gst.c:622 #, c-format msgid "Read error from STDIN: %d %s\n" msgstr "" @@ -1175,6 +1173,11 @@ msgstr "“%s”说:%s\n" msgid "Failed to allocate %u bytes for second packet\n" msgstr "初始化“%s”服务失败。\n" +#: src/conversation/gnunet-service-conversation.c:1276 +#, fuzzy, c-format +msgid "Could not open line, port %s already in use!\n" +msgstr "无法连接到 %s:%u:%s\n" + #: src/conversation/microphone.c:119 #, fuzzy msgid "Could not start record audio helper\n" @@ -1444,12 +1447,141 @@ msgstr "保存配置失败。" msgid "# type maps received" msgstr "" -#: src/core/gnunet-service-core_typemap.c:212 -msgid "# updates to my type map" +#: src/core/gnunet-service-core_typemap.c:212 +msgid "# updates to my type map" +msgstr "" + +#: src/credential/credential_misc.c:88 +#, fuzzy, c-format +msgid "Unable to parse CRED record string `%s'\n" +msgstr "解析配置文件“%s”失败\n" + +#: src/credential/gnunet-credential.c:278 src/namestore/gnunet-namestore.c:776 +#: src/namestore/plugin_rest_namestore.c:1009 +#, c-format +msgid "Ego `%s' not known to identity service\n" +msgstr "" + +#: src/credential/gnunet-credential.c:294 +#: src/credential/gnunet-credential.c:446 +#, fuzzy, c-format +msgid "Issuer public key `%s' is not well-formed\n" +msgstr "“%s”的参数无效。\n" + +#: src/credential/gnunet-credential.c:375 +#: src/credential/gnunet-credential.c:435 +#, fuzzy, c-format +msgid "Issuer public key not well-formed\n" +msgstr "“%s”的参数无效。\n" + +#: src/credential/gnunet-credential.c:386 +#: src/credential/gnunet-credential.c:455 +#, fuzzy, c-format +msgid "Failed to connect to CREDENTIAL\n" +msgstr "初始化“%s”服务失败。\n" + +#: src/credential/gnunet-credential.c:392 +#, c-format +msgid "You must provide issuer the attribute\n" +msgstr "" + +#: src/credential/gnunet-credential.c:399 +#, c-format +msgid "ego required\n" +msgstr "" + +#: src/credential/gnunet-credential.c:415 +#, c-format +msgid "Subject public key needed\n" +msgstr "" + +#: src/credential/gnunet-credential.c:426 +#, fuzzy, c-format +msgid "Subject public key `%s' is not well-formed\n" +msgstr "“%s”的参数无效。\n" + +#: src/credential/gnunet-credential.c:461 +#, c-format +msgid "You must provide issuer and subject attributes\n" +msgstr "" + +#: src/credential/gnunet-credential.c:511 +#, c-format +msgid "Issuer ego required\n" +msgstr "" + +#: src/credential/gnunet-credential.c:523 +#, c-format +msgid "Please specify name to lookup, subject key and issuer key!\n" +msgstr "" + +#: src/credential/gnunet-credential.c:543 +msgid "create credential" +msgstr "" + +#: src/credential/gnunet-credential.c:547 +msgid "verify credential against attribute" +msgstr "" + +#: src/credential/gnunet-credential.c:552 +msgid "The public key of the subject to lookup the credential for" +msgstr "" + +#: src/credential/gnunet-credential.c:557 +msgid "The name of the credential presented by the subject" +msgstr "" + +#: src/credential/gnunet-credential.c:562 +msgid "The public key of the authority to verify the credential against" +msgstr "" + +#: src/credential/gnunet-credential.c:567 +#, fuzzy +msgid "The ego to use" +msgstr "消息尺寸" + +#: src/credential/gnunet-credential.c:572 +msgid "The issuer attribute to verify against or to issue" +msgstr "" + +#: src/credential/gnunet-credential.c:577 +msgid "The time to live for the credential" +msgstr "" + +#: src/credential/gnunet-credential.c:581 +msgid "collect credentials" +msgstr "" + +#: src/credential/gnunet-credential.c:595 +#, fuzzy +msgid "GNUnet credential resolver tool" +msgstr "GNUnet 错误日志" + +#: src/credential/gnunet-service-credential.c:1204 +#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:355 +#, fuzzy, c-format +msgid "Failed to connect to GNS\n" +msgstr "初始化“%s”服务失败。\n" + +#: src/credential/gnunet-service-credential.c:1210 +#: src/namestore/gnunet-namestore-fcfsd.c:1034 +#: src/namestore/gnunet-namestore.c:802 +#: src/namestore/plugin_rest_namestore.c:1022 +#, fuzzy, c-format +msgid "Failed to connect to namestore\n" +msgstr "初始化“%s”服务失败。\n" + +#: src/credential/plugin_gnsrecord_credential.c:186 +#, fuzzy, c-format +msgid "Unable to parse ATTR record string `%s'\n" +msgstr "解析配置文件“%s”失败\n" + +#: src/credential/plugin_rest_credential.c:1155 src/gns/plugin_rest_gns.c:668 +msgid "GNS REST API initialized\n" msgstr "" #: src/datacache/datacache.c:119 src/datacache/datacache.c:294 -#: src/datastore/gnunet-service-datastore.c:775 +#: src/datastore/gnunet-service-datastore.c:757 msgid "# bytes stored" msgstr "" @@ -1490,13 +1622,12 @@ msgstr "sqlite 数据仓库" #: src/datacache/plugin_datacache_sqlite.c:113 #: src/datacache/plugin_datacache_sqlite.c:122 -#: src/datastore/plugin_datastore_mysql.c:980 +#: src/datastore/plugin_datastore_mysql.c:892 #: src/datastore/plugin_datastore_sqlite.c:58 -#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:80 src/my/my.c:92 -#: src/mysql/mysql.c:42 src/mysql/mysql.c:49 -#: src/namecache/plugin_namecache_postgres.c:53 +#: src/datastore/plugin_datastore_sqlite.c:66 +#: src/identity-provider/plugin_identity_provider_sqlite.c:52 src/my/my.c:80 +#: src/my/my.c:92 src/mysql/mysql.c:42 src/mysql/mysql.c:49 #: src/namecache/plugin_namecache_sqlite.c:53 -#: src/namestore/plugin_namestore_postgres.c:53 #: src/namestore/plugin_namestore_sqlite.c:53 #: src/peerstore/plugin_peerstore_sqlite.c:52 #: src/psycstore/plugin_psycstore_mysql.c:62 @@ -1505,14 +1636,15 @@ msgstr "sqlite 数据仓库" #: src/testbed/gnunet-daemon-testbed-underlay.c:56 #: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:52 #: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39 -#: src/include/gnunet_common.h:720 src/include/gnunet_common.h:729 +#: src/include/gnunet_common.h:735 src/include/gnunet_common.h:744 #: src/scalarproduct/scalarproduct.h:35 #, fuzzy, c-format msgid "`%s' failed at %s:%d with error: %s\n" msgstr "“%s”于 %s:%d 处失败,错误为:%s\n" #: src/datacache/plugin_datacache_sqlite.c:817 -#: src/datastore/plugin_datastore_sqlite.c:475 +#: src/datastore/plugin_datastore_sqlite.c:456 +#: src/identity-provider/plugin_identity_provider_sqlite.c:336 #: src/namecache/plugin_namecache_sqlite.c:296 #: src/namestore/plugin_namestore_sqlite.c:355 msgid "Tried to close sqlite without finalizing all prepared statements.\n" @@ -1576,23 +1708,74 @@ msgstr "" msgid "# GET requests executed" msgstr "" -#: src/datastore/gnunet-datastore.c:113 +#: src/datastore/gnunet-datastore.c:189 +#, c-format +msgid "Dumped % records\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:217 src/datastore/gnunet-datastore.c:229 +#, c-format +msgid "Short write to file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:261 +#, fuzzy +msgid "Error queueing datastore GET operation\n" +msgstr "创建用户出错" + +#: src/datastore/gnunet-datastore.c:287 src/datastore/gnunet-datastore.c:412 +#, fuzzy, c-format +msgid "Unable to open dump file: %s\n" +msgstr "发送消息失败。\n" + +#: src/datastore/gnunet-datastore.c:326 #, fuzzy, c-format msgid "Failed to store item: %s, aborting\n" msgstr "打开日志文件“%s”失败:%s\n" -#: src/datastore/gnunet-datastore.c:209 +#: src/datastore/gnunet-datastore.c:340 #, c-format -msgid "Cannot use the same configuration for source and destination\n" +msgid "Inserted % records\n" msgstr "" -#: src/datastore/gnunet-datastore.c:256 -msgid "" -"specifies the configuration to use to access an alternative datastore; will " -"merge that datastore into our current datastore" +#: src/datastore/gnunet-datastore.c:349 src/datastore/gnunet-datastore.c:363 +#, c-format +msgid "Short read from file: %zd bytes expecting %zd\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:389 +#, fuzzy +msgid "Error queueing datastore PUT operation\n" +msgstr "创建用户出错" + +#: src/datastore/gnunet-datastore.c:432 +msgid "Input file is not of a supported format\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:458 +#, fuzzy +msgid "Failed connecting to the datastore.\n" +msgstr "初始化“%s”服务失败。\n" + +#: src/datastore/gnunet-datastore.c:470 +#, c-format +msgid "Please choose at least one operation: %s, %s\n" +msgstr "" + +#: src/datastore/gnunet-datastore.c:493 +#, fuzzy +msgid "Dump all records from the datastore" +msgstr "发送消息失败。\n" + +#: src/datastore/gnunet-datastore.c:497 +msgid "Insert records into the datastore" +msgstr "" + +#: src/datastore/gnunet-datastore.c:502 +msgid "File to dump or insert" msgstr "" -#: src/datastore/gnunet-datastore.c:265 +#: src/datastore/gnunet-datastore.c:511 #, fuzzy msgid "Manipulate GNUnet datastore" msgstr "更改配置文件中的一个值" @@ -1635,8 +1818,8 @@ msgstr "" #: src/datastore/gnunet-service-datastore.c:634 #: src/datastore/gnunet-service-datastore.c:689 -#: src/datastore/gnunet-service-datastore.c:977 -#: src/datastore/gnunet-service-datastore.c:1633 +#: src/datastore/gnunet-service-datastore.c:837 +#: src/datastore/gnunet-service-datastore.c:1469 msgid "# reserved" msgstr "" @@ -1644,144 +1827,145 @@ msgstr "" msgid "Could not find matching reservation" msgstr "" -#: src/datastore/gnunet-service-datastore.c:792 +#: src/datastore/gnunet-service-datastore.c:773 #, c-format msgid "Need %llu bytes more space (%llu allowed, using %llu)\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1026 +#: src/datastore/gnunet-service-datastore.c:876 msgid "# GET requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1058 +#: src/datastore/gnunet-service-datastore.c:907 msgid "# GET KEY requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1071 +#: src/datastore/gnunet-service-datastore.c:920 msgid "# requests filtered by bloomfilter" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1108 +#: src/datastore/gnunet-service-datastore.c:956 msgid "# GET REPLICATION requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1141 +#: src/datastore/gnunet-service-datastore.c:989 msgid "# GET ZERO ANONYMITY requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1190 +#: src/datastore/gnunet-service-datastore.c:1036 msgid "Content not found" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1199 +#: src/datastore/gnunet-service-datastore.c:1043 msgid "# bytes removed (explicit request)" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1246 +#: src/datastore/gnunet-service-datastore.c:1088 msgid "# REMOVE requests received" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1301 +#: src/datastore/gnunet-service-datastore.c:1137 #, c-format msgid "" "Datastore payload must have been inaccurate (%lld < %lld). Recomputing it.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1307 -#: src/datastore/gnunet-service-datastore.c:1482 +#: src/datastore/gnunet-service-datastore.c:1143 +#: src/datastore/gnunet-service-datastore.c:1318 #, c-format msgid "New payload: %lld\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1361 +#: src/datastore/gnunet-service-datastore.c:1197 #, c-format msgid "Loading `%s' datastore plugin\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1373 +#: src/datastore/gnunet-service-datastore.c:1209 #, fuzzy, c-format msgid "Failed to load datastore plugin for `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/datastore/gnunet-service-datastore.c:1433 +#: src/datastore/gnunet-service-datastore.c:1269 msgid "Bloomfilter construction complete.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1489 +#: src/datastore/gnunet-service-datastore.c:1325 msgid "Rebuilding bloomfilter. Please be patient.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1500 +#: src/datastore/gnunet-service-datastore.c:1336 msgid "Plugin does not support get_keys function. Please fix!\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1670 +#: src/datastore/gnunet-service-datastore.c:1506 #, c-format msgid "# bytes used in file-sharing datastore `%s'" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1686 +#: src/datastore/gnunet-service-datastore.c:1522 msgid "# quota" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1691 +#: src/datastore/gnunet-service-datastore.c:1527 msgid "# cache size" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1707 +#: src/datastore/gnunet-service-datastore.c:1543 #, c-format msgid "Could not use specified filename `%s' for bloomfilter.\n" msgstr "" -#: src/datastore/gnunet-service-datastore.c:1725 -#: src/datastore/gnunet-service-datastore.c:1741 +#: src/datastore/gnunet-service-datastore.c:1561 +#: src/datastore/gnunet-service-datastore.c:1577 #, fuzzy, c-format msgid "Failed to remove bogus bloomfilter file `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/datastore/gnunet-service-datastore.c:1773 +#: src/datastore/gnunet-service-datastore.c:1609 #, fuzzy msgid "Failed to initialize bloomfilter.\n" msgstr "初始化“%s”服务失败。\n" -#: src/datastore/plugin_datastore_heap.c:769 +#: src/datastore/plugin_datastore_heap.c:893 #, fuzzy msgid "Heap database running\n" msgstr "sqlite 数据仓库" -#: src/datastore/plugin_datastore_mysql.c:377 -#: src/datastore/plugin_datastore_sqlite.c:590 +#: src/datastore/plugin_datastore_mysql.c:371 +#: src/datastore/plugin_datastore_mysql.c:423 +#: src/datastore/plugin_datastore_mysql.c:1075 +msgid "MySQL statement run failure" +msgstr "" + +#: src/datastore/plugin_datastore_mysql.c:410 +#: src/datastore/plugin_datastore_sqlite.c:626 #, fuzzy msgid "Data too large" msgstr "迭代次数" -#: src/datastore/plugin_datastore_mysql.c:393 -msgid "MySQL statement run failure" -msgstr "" - -#: src/datastore/plugin_datastore_mysql.c:936 +#: src/datastore/plugin_datastore_mysql.c:848 #, fuzzy, c-format msgid "`%s' for `%s' failed at %s:%d with error: %s\n" msgstr "“%s”于 %s:%d 处失败,错误为:%s\n" -#: src/datastore/plugin_datastore_mysql.c:1208 +#: src/datastore/plugin_datastore_mysql.c:1180 #: src/psycstore/plugin_psycstore_mysql.c:1936 msgid "Mysql database running\n" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:345 +#: src/datastore/plugin_datastore_postgres.c:274 +#: src/datastore/plugin_datastore_postgres.c:891 msgid "Postgress exec failure" msgstr "" -#: src/datastore/plugin_datastore_postgres.c:866 +#: src/datastore/plugin_datastore_postgres.c:852 #, fuzzy msgid "Failed to drop table from database.\n" msgstr "发送消息失败。\n" -#: src/datastore/plugin_datastore_postgres.c:903 -#: src/namecache/plugin_namecache_postgres.c:398 -#: src/namestore/plugin_namestore_postgres.c:571 -#: src/psycstore/plugin_psycstore_postgres.c:1721 +#: src/datastore/plugin_datastore_postgres.c:950 +#: src/psycstore/plugin_psycstore_postgres.c:1506 msgid "Postgres database running\n" msgstr "" @@ -1793,7 +1977,8 @@ msgstr "" msgid "`%s' failed at %s:%u with error: %s" msgstr "“%s”于 %s:%d 处失败,错误为:%s\n" -#: src/datastore/plugin_datastore_sqlite.c:281 +#: src/datastore/plugin_datastore_sqlite.c:271 +#: src/identity-provider/plugin_identity_provider_sqlite.c:212 #: src/namecache/plugin_namecache_sqlite.c:194 #: src/namestore/plugin_namestore_sqlite.c:222 #: src/peerstore/plugin_peerstore_sqlite.c:535 @@ -1802,25 +1987,30 @@ msgstr "“%s”于 %s:%d 处失败,错误为:%s\n" msgid "Unable to initialize SQLite: %s.\n" msgstr "无法初始化 SQLite:%s。\n" -#: src/datastore/plugin_datastore_sqlite.c:1234 +#: src/datastore/plugin_datastore_sqlite.c:577 +msgid "sqlite bind failure" +msgstr "" + +#: src/datastore/plugin_datastore_sqlite.c:1259 msgid "sqlite version to old to determine size, assuming zero\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1268 +#: src/datastore/plugin_datastore_sqlite.c:1293 #, c-format msgid "" "Using sqlite page utilization to estimate payload (%llu pages of size %llu " "bytes)\n" msgstr "" -#: src/datastore/plugin_datastore_sqlite.c:1312 +#: src/datastore/plugin_datastore_sqlite.c:1337 +#: src/identity-provider/plugin_identity_provider_sqlite.c:711 #: src/namecache/plugin_namecache_sqlite.c:603 #: src/namestore/plugin_namestore_sqlite.c:802 #, fuzzy msgid "Sqlite database running\n" msgstr "sqlite 数据仓库" -#: src/datastore/plugin_datastore_template.c:259 +#: src/datastore/plugin_datastore_template.c:253 msgid "Template database running\n" msgstr "" @@ -1882,53 +2072,6 @@ msgstr "" msgid "Prints all packets that go through the DHT." msgstr "" -#: src/dht/gnunet_dht_profiler.c:1161 -#: src/testbed/gnunet-testbed-profiler.c:255 -#, fuzzy, c-format -msgid "Exiting as the number of peers is %u\n" -msgstr "增加 TCP/IP 的最大连接数" - -#: src/dht/gnunet_dht_profiler.c:1188 -#, fuzzy -msgid "number of peers to start" -msgstr "迭代次数" - -#: src/dht/gnunet_dht_profiler.c:1194 -msgid "" -"maximum number of times we try to search for successor circle formation (0 " -"for R5N)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 -#: src/testbed/gnunet-testbed-profiler.c:305 -msgid "name of the file with the login information for the testbed" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1206 -msgid "delay between rounds for collecting statistics (default: 30 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1212 -msgid "delay to start doing PUTs (default: 1 sec)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1218 -msgid "delay to start doing GETs (default: 5 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1223 -msgid "replication degree for DHT PUTs" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1230 -msgid "timeout for DHT PUT and GET requests (default: 1 min)" -msgstr "" - -#: src/dht/gnunet_dht_profiler.c:1248 -#, fuzzy -msgid "Measure quality and performance of the DHT service." -msgstr "无法访问该服务" - #: src/dht/gnunet-dht-put.c:120 msgid "PUT request sent with key" msgstr "" @@ -2178,6 +2321,52 @@ msgstr "" msgid "# DHT requests combined" msgstr "" +#: src/dht/gnunet_dht_profiler.c:1161 src/testbed/gnunet-testbed-profiler.c:255 +#, fuzzy, c-format +msgid "Exiting as the number of peers is %u\n" +msgstr "增加 TCP/IP 的最大连接数" + +#: src/dht/gnunet_dht_profiler.c:1188 +#, fuzzy +msgid "number of peers to start" +msgstr "迭代次数" + +#: src/dht/gnunet_dht_profiler.c:1194 +msgid "" +"maximum number of times we try to search for successor circle formation (0 " +"for R5N)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1200 src/nse/gnunet-nse-profiler.c:853 +#: src/testbed/gnunet-testbed-profiler.c:305 +msgid "name of the file with the login information for the testbed" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1206 +msgid "delay between rounds for collecting statistics (default: 30 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1212 +msgid "delay to start doing PUTs (default: 1 sec)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1218 +msgid "delay to start doing GETs (default: 5 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1223 +msgid "replication degree for DHT PUTs" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1230 +msgid "timeout for DHT PUT and GET requests (default: 1 min)" +msgstr "" + +#: src/dht/gnunet_dht_profiler.c:1248 +#, fuzzy +msgid "Measure quality and performance of the DHT service." +msgstr "无法访问该服务" + #: src/dht/plugin_block_dht.c:187 #, c-format msgid "Block not of type %u\n" @@ -2500,7 +2689,7 @@ msgstr "" msgid "No useful service enabled. Exiting.\n" msgstr "" -#: src/exit/gnunet-daemon-exit.c:3969 +#: src/exit/gnunet-daemon-exit.c:3970 msgid "Daemon to run to provide an IP exit node for the VPN" msgstr "" @@ -3132,14 +3321,6 @@ msgid "" "chk/...)" msgstr "" -#: src/fs/gnunet-fs.c:119 -msgid "print a list of all indexed files" -msgstr "" - -#: src/fs/gnunet-fs.c:130 -msgid "Special file-sharing operations" -msgstr "" - #: src/fs/gnunet-fs-profiler.c:211 msgid "run the experiment with COUNT peers" msgstr "" @@ -3156,6 +3337,14 @@ msgstr "" msgid "run a testbed to measure file-sharing performance" msgstr "" +#: src/fs/gnunet-fs.c:119 +msgid "print a list of all indexed files" +msgstr "" + +#: src/fs/gnunet-fs.c:130 +msgid "Special file-sharing operations" +msgstr "" + #: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231 #, c-format msgid "Publishing `%s' at %llu/%llu (%s remaining)\n" @@ -3810,22 +3999,11 @@ msgstr "" msgid "GNUnet DNS-to-GNS proxy (a DNS server)" msgstr "" -#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 -#, c-format -msgid "Invalid typename specified, assuming `ANY'\n" -msgstr "" - -#: src/gns/gnunet-gns.c:252 -#, c-format -msgid "Please specify name to lookup!\n" -msgstr "" - -#: src/gns/gnunet-gns.c:276 -#, c-format -msgid "Ego for `%s' not found, cannot perform lookup.\n" +#: src/gns/gnunet-gns-helper-service-w32.c:602 +msgid "Not ready to process requests, lacking ego data\n" msgstr "" -#: src/gns/gnunet-gns.c:315 src/gns/gnunet-gns-helper-service-w32.c:701 +#: src/gns/gnunet-gns-helper-service-w32.c:701 src/gns/gnunet-gns.c:315 #: src/gns/plugin_rest_gns.c:422 #, c-format msgid "" @@ -3833,55 +4011,12 @@ msgid "" "gns-import.sh?\n" msgstr "" -#: src/gns/gnunet-gns.c:355 src/gns/gnunet-gns-helper-service-w32.c:727 -#, fuzzy, c-format -msgid "Failed to connect to GNS\n" -msgstr "初始化“%s”服务失败。\n" - -#: src/gns/gnunet-gns.c:374 -#, c-format -msgid "Public key `%s' is not well-formed\n" -msgstr "" - -#: src/gns/gnunet-gns.c:428 -msgid "Lookup a record for the given name" -msgstr "" - -#: src/gns/gnunet-gns.c:434 -msgid "Specify the type of the record to lookup" -msgstr "" - -#: src/gns/gnunet-gns.c:440 -msgid "Specify timeout for the lookup" -msgstr "" - -#: src/gns/gnunet-gns.c:445 -msgid "No unneeded output" -msgstr "" - -#: src/gns/gnunet-gns.c:451 -msgid "Specify the public key of the zone to lookup the record in" -msgstr "" - -#: src/gns/gnunet-gns.c:457 -msgid "Specify the name of the ego of the zone to lookup the record in" -msgstr "" - -#: src/gns/gnunet-gns.c:476 -#, fuzzy -msgid "GNUnet GNS resolver tool" -msgstr "GNUnet 错误日志" - -#: src/gns/gnunet-gns-helper-service-w32.c:602 -msgid "Not ready to process requests, lacking ego data\n" -msgstr "" - #: src/gns/gnunet-gns-helper-service-w32.c:739 #, fuzzy, c-format msgid "Failed to connect to identity service\n" msgstr "初始化“%s”服务失败。\n" -#: src/gns/gnunet-gns-import.c:489 +#: src/gns/gnunet-gns-import.c:452 msgid "This program will import some GNS authorities into your GNS namestore." msgstr "" @@ -3994,25 +4129,74 @@ msgstr "" msgid "Failed to load SSL/TLS key and certificate from `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/gns/gnunet-gns-proxy.c:3269 -msgid "listen on specified port (default: 7777)" +#: src/gns/gnunet-gns-proxy.c:3269 +msgid "listen on specified port (default: 7777)" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3275 +msgid "pem file to use as CA" +msgstr "" + +#: src/gns/gnunet-gns-proxy.c:3300 +msgid "GNUnet GNS proxy" +msgstr "" + +#: src/gns/gnunet-gns.c:235 src/gns/plugin_rest_gns.c:346 +#, c-format +msgid "Invalid typename specified, assuming `ANY'\n" +msgstr "" + +#: src/gns/gnunet-gns.c:252 +#, c-format +msgid "Please specify name to lookup!\n" +msgstr "" + +#: src/gns/gnunet-gns.c:276 +#, c-format +msgid "Ego for `%s' not found, cannot perform lookup.\n" +msgstr "" + +#: src/gns/gnunet-gns.c:374 +#, c-format +msgid "Public key `%s' is not well-formed\n" +msgstr "" + +#: src/gns/gnunet-gns.c:428 +msgid "Lookup a record for the given name" +msgstr "" + +#: src/gns/gnunet-gns.c:434 +msgid "Specify the type of the record to lookup" +msgstr "" + +#: src/gns/gnunet-gns.c:440 +msgid "Specify timeout for the lookup" +msgstr "" + +#: src/gns/gnunet-gns.c:445 +msgid "No unneeded output" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3275 -msgid "pem file to use as CA" +#: src/gns/gnunet-gns.c:451 +msgid "Specify the public key of the zone to lookup the record in" msgstr "" -#: src/gns/gnunet-gns-proxy.c:3300 -msgid "GNUnet GNS proxy" +#: src/gns/gnunet-gns.c:457 +msgid "Specify the name of the ego of the zone to lookup the record in" msgstr "" +#: src/gns/gnunet-gns.c:476 +#, fuzzy +msgid "GNUnet GNS resolver tool" +msgstr "GNUnet 错误日志" + #: src/gns/gnunet-service-gns.c:442 #, fuzzy msgid "Failed to connect to the namecache!\n" msgstr "初始化“%s”服务失败。\n" #: src/gns/gnunet-service-gns.c:461 -#: src/zonemaster/gnunet-service-zonemaster.c:741 +#: src/zonemaster/gnunet-service-zonemaster.c:742 #, fuzzy msgid "Could not connect to DHT!\n" msgstr "无法连接到 %s:%u:%s\n" @@ -4070,44 +4254,35 @@ msgstr "" msgid "Hostname `%s' is not well-formed, resolution fails\n" msgstr "" -#: src/gns/plugin_gnsrecord_gns.c:203 +#: src/gns/plugin_gnsrecord_gns.c:179 #, fuzzy, c-format msgid "Unable to parse PKEY record `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/gns/plugin_gnsrecord_gns.c:232 +#: src/gns/plugin_gnsrecord_gns.c:208 #, fuzzy, c-format msgid "Unable to parse GNS2DNS record `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/gns/plugin_gnsrecord_gns.c:253 +#: src/gns/plugin_gnsrecord_gns.c:229 #, fuzzy, c-format msgid "Failed to serialize GNS2DNS record with value `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/gns/plugin_gnsrecord_gns.c:276 +#: src/gns/plugin_gnsrecord_gns.c:252 #, fuzzy, c-format msgid "Unable to parse VPN record string `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/gns/plugin_gnsrecord_gns.c:312 +#: src/gns/plugin_gnsrecord_gns.c:288 #, fuzzy, c-format msgid "Unable to parse BOX record string `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/gns/plugin_gnsrecord_gns.c:360 -#, fuzzy, c-format -msgid "Unable to parse REVERSE record string `%s'\n" -msgstr "解析配置文件“%s”失败\n" - #: src/gns/plugin_rest_gns.c:384 msgid "Ego for not found, cannot perform lookup.\n" msgstr "" -#: src/gns/plugin_rest_gns.c:668 -msgid "GNS REST API initialized\n" -msgstr "" - #: src/gnsrecord/plugin_gnsrecord_dns.c:359 #, fuzzy, c-format msgid "Unable to parse IPv4 address `%s'\n" @@ -4532,6 +4707,52 @@ msgstr "“%s”不可用。\n" msgid "Could not start hostlist HTTP server on port %u\n" msgstr "" +#: src/identity-provider/gnunet-idp.c:348 +#, fuzzy +msgid "Ego is required\n" +msgstr "%s:选项“%s”有歧义\n" + +#: src/identity-provider/gnunet-idp.c:370 +msgid "Add attribute" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:376 +msgid "Attribute value" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:381 +msgid "Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:386 +msgid "Audience (relying party)" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:390 +msgid "List attributes for Ego" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:395 +msgid "Issue a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:400 +msgid "Consume a ticket" +msgstr "" + +#: src/identity-provider/gnunet-idp.c:405 +msgid "Revoke a ticket" +msgstr "" + +#: src/identity-provider/identity_provider_api.c:429 +#, fuzzy +msgid "failed to store record\n" +msgstr "运行 %s失败:%s %d\n" + +#: src/identity-provider/plugin_rest_identity_provider.c:1175 +msgid "Identity Provider REST API initialized\n" +msgstr "" + #: src/identity/gnunet-identity.c:179 #, fuzzy, c-format msgid "Failed to create ego: %s\n" @@ -4619,32 +4840,10 @@ msgstr "解析配置文件“%s”失败\n" msgid "Failed to create directory `%s' for storing egos\n" msgstr "解析配置文件“%s”失败\n" -#: src/identity/plugin_rest_identity.c:967 +#: src/identity/plugin_rest_identity.c:964 msgid "Identity REST API initialized\n" msgstr "" -#: src/identity-provider/gnunet-identity-token.c:66 -#, fuzzy -msgid "Option `-t' is required\n" -msgstr "%s:选项“%s”有歧义\n" - -#: src/identity-provider/gnunet-identity-token.c:77 -#, fuzzy, c-format -msgid "Token `%s' is malformed\n" -msgstr "“%s”的参数无效。\n" - -#: src/identity-provider/gnunet-identity-token.c:166 -msgid "GNUid token" -msgstr "" - -#: src/identity-provider/gnunet-identity-token.c:171 -msgid "Print token contents" -msgstr "" - -#: src/identity-provider/plugin_rest_identity_provider.c:1166 -msgid "Identity Token REST API initialized\n" -msgstr "" - #: src/json/json.c:119 #, fuzzy, c-format msgid "Failed to parse JSON in option `%s': %s (%s)\n" @@ -4745,25 +4944,79 @@ msgstr "发送消息失败。\n" msgid "flat plugin running\n" msgstr "sqlite 数据仓库" -#: src/namecache/plugin_namecache_postgres.c:90 -#: src/namestore/plugin_namestore_postgres.c:97 -#, fuzzy -msgid "Failed to create indices\n" +#: src/namestore/gnunet-namestore-fcfsd.c:508 +#, fuzzy, c-format +msgid "Unsupported form value `%s'\n" +msgstr "未知的命令“%s”。\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:535 +#, fuzzy, c-format +msgid "Failed to create record for domain `%s': %s\n" +msgstr "解析配置文件“%s”失败\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:555 +msgid "Error when mapping zone to name\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:585 +#, c-format +msgid "Found existing name `%s' for the given key\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:662 +#, c-format +msgid "Found %u existing records for domain `%s'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:718 +#, fuzzy, c-format +msgid "Failed to create page for `%s'\n" msgstr "发送消息失败。\n" +#: src/namestore/gnunet-namestore-fcfsd.c:734 +#, fuzzy, c-format +msgid "Failed to setup post processor for `%s'\n" +msgstr "解析配置文件“%s”失败\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:770 +msgid "Domain name must not contain `.'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:778 +msgid "Domain name must not contain `+'\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:974 +msgid "No ego configured for `fcfsd` subsystem\n" +msgstr "" + +#: src/namestore/gnunet-namestore-fcfsd.c:1000 +#, fuzzy +msgid "Failed to start HTTP server\n" +msgstr "初始化“%s”服务失败。\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1042 +#, fuzzy +msgid "Failed to connect to identity\n" +msgstr "初始化“%s”服务失败。\n" + +#: src/namestore/gnunet-namestore-fcfsd.c:1074 +msgid "GNU Name System First Come First Serve name registration service" +msgstr "" + #: src/namestore/gnunet-namestore.c:301 #, c-format msgid "Adding record failed: %s\n" msgstr "" #: src/namestore/gnunet-namestore.c:330 -#: src/namestore/plugin_rest_namestore.c:562 +#: src/namestore/plugin_rest_namestore.c:567 #, c-format msgid "Deleting record failed, record does not exist%s%s\n" msgstr "" #: src/namestore/gnunet-namestore.c:337 -#: src/namestore/plugin_rest_namestore.c:571 +#: src/namestore/plugin_rest_namestore.c:576 #, c-format msgid "Deleting record failed%s%s\n" msgstr "" @@ -4781,7 +5034,7 @@ msgid "Records already exist under `%s', cannot add `%s' record.\n" msgstr "" #: src/namestore/gnunet-namestore.c:698 -#: src/namestore/plugin_rest_namestore.c:597 +#: src/namestore/plugin_rest_namestore.c:602 #, c-format msgid "There are no records under label `%s' that could be deleted.\n" msgstr "" @@ -4792,24 +5045,11 @@ msgid "" "There are no records under label `%s' that match the request for deletion.\n" msgstr "" -#: src/namestore/gnunet-namestore.c:776 -#: src/namestore/plugin_rest_namestore.c:1004 -#, c-format -msgid "Ego `%s' not known to identity service\n" -msgstr "" - #: src/namestore/gnunet-namestore.c:791 #, c-format msgid "No options given\n" msgstr "" -#: src/namestore/gnunet-namestore.c:802 -#: src/namestore/gnunet-namestore-fcfsd.c:1034 -#: src/namestore/plugin_rest_namestore.c:1017 -#, fuzzy -msgid "Failed to connect to namestore\n" -msgstr "初始化“%s”服务失败。\n" - #: src/namestore/gnunet-namestore.c:810 src/namestore/gnunet-namestore.c:819 #: src/namestore/gnunet-namestore.c:838 src/namestore/gnunet-namestore.c:861 #: src/namestore/gnunet-namestore.c:915 @@ -4823,14 +5063,14 @@ msgid "add" msgstr "" #: src/namestore/gnunet-namestore.c:829 -#: src/namestore/plugin_rest_namestore.c:671 +#: src/namestore/plugin_rest_namestore.c:676 #, fuzzy, c-format msgid "Unsupported type `%s'\n" msgstr "未知的命令“%s”。\n" #: src/namestore/gnunet-namestore.c:851 -#: src/namestore/plugin_rest_namestore.c:689 -#: src/namestore/plugin_rest_namestore.c:729 +#: src/namestore/plugin_rest_namestore.c:694 +#: src/namestore/plugin_rest_namestore.c:734 #, c-format msgid "Value `%s' invalid for record type `%s'\n" msgstr "" @@ -4849,8 +5089,7 @@ msgstr "" msgid "Invalid public key for reverse lookup `%s'\n" msgstr "“%s”的参数无效。\n" -#: src/namestore/gnunet-namestore.c:979 -#: src/peerinfo-tool/gnunet-peerinfo.c:775 +#: src/namestore/gnunet-namestore.c:979 src/peerinfo-tool/gnunet-peerinfo.c:775 #, fuzzy, c-format msgid "Invalid URI `%s'\n" msgstr "无效条目。\n" @@ -4861,13 +5100,13 @@ msgid "Invalid nick `%s'\n" msgstr "无效条目。\n" #: src/namestore/gnunet-namestore.c:1051 -#: src/namestore/plugin_rest_namestore.c:1047 +#: src/namestore/plugin_rest_namestore.c:1052 #, c-format msgid "No default ego configured in identity service\n" msgstr "" #: src/namestore/gnunet-namestore.c:1108 -#: src/namestore/plugin_rest_namestore.c:1143 +#: src/namestore/plugin_rest_namestore.c:1148 #, fuzzy, c-format msgid "Cannot connect to identity service\n" msgstr "无法连接到 %s:%u:%s\n" @@ -4930,67 +5169,7 @@ msgstr "" msgid "name of the ego controlling the zone" msgstr "" -#: src/namestore/gnunet-namestore-fcfsd.c:508 -#, fuzzy, c-format -msgid "Unsupported form value `%s'\n" -msgstr "未知的命令“%s”。\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:535 -#, fuzzy, c-format -msgid "Failed to create record for domain `%s': %s\n" -msgstr "解析配置文件“%s”失败\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:555 -msgid "Error when mapping zone to name\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:585 -#, c-format -msgid "Found existing name `%s' for the given key\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:662 -#, c-format -msgid "Found %u existing records for domain `%s'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:718 -#, fuzzy, c-format -msgid "Failed to create page for `%s'\n" -msgstr "发送消息失败。\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:734 -#, fuzzy, c-format -msgid "Failed to setup post processor for `%s'\n" -msgstr "解析配置文件“%s”失败\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:770 -msgid "Domain name must not contain `.'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:778 -msgid "Domain name must not contain `+'\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:974 -msgid "No ego configured for `fcfsd` subsystem\n" -msgstr "" - -#: src/namestore/gnunet-namestore-fcfsd.c:1000 -#, fuzzy -msgid "Failed to start HTTP server\n" -msgstr "初始化“%s”服务失败。\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1042 -#, fuzzy -msgid "Failed to connect to identity\n" -msgstr "初始化“%s”服务失败。\n" - -#: src/namestore/gnunet-namestore-fcfsd.c:1074 -msgid "GNU Name System First Come First Serve name registration service" -msgstr "" - -#: src/namestore/gnunet-service-namestore.c:612 +#: src/namestore/gnunet-service-namestore.c:615 #, fuzzy, c-format msgid "Failed to replicate block in namecache: %s\n" msgstr "发送消息失败。\n" @@ -5004,7 +5183,7 @@ msgstr "" msgid "flat file database running\n" msgstr "sqlite 数据仓库" -#: src/namestore/plugin_rest_namestore.c:1188 +#: src/namestore/plugin_rest_namestore.c:1193 msgid "Namestore REST API initialized\n" msgstr "" @@ -5287,10 +5466,6 @@ msgstr "" msgid "`upnpc' command not found\n" msgstr "" -#: src/nse/gnunet-nse.c:122 -msgid "Show network size estimates from NSE service." -msgstr "" - #: src/nse/gnunet-nse-profiler.c:842 msgid "limit to the number of connections to NSE services, 0 for none" msgstr "" @@ -5302,80 +5477,30 @@ msgstr "" #: src/nse/gnunet-nse-profiler.c:859 msgid "name of the file for writing the main results" msgstr "" - -#: src/nse/gnunet-nse-profiler.c:866 -msgid "Number of peers to run in each round, separated by commas" -msgstr "" - -#: src/nse/gnunet-nse-profiler.c:877 -msgid "delay between rounds" -msgstr "" - -#: src/nse/gnunet-nse-profiler.c:886 -#, fuzzy -msgid "Measure quality and performance of the NSE service." -msgstr "无法访问该服务" - -#: src/nse/gnunet-service-nse.c:1534 -#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 -#, fuzzy -msgid "Value is too large.\n" -msgstr "值不在合法范围内。" - -#: src/peerinfo/gnunet-service-peerinfo.c:178 -#, c-format -msgid "Removing expired address of transport `%s'\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:310 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s': %s\n" -msgstr "解析配置文件“%s”失败\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:331 -#: src/peerinfo/gnunet-service-peerinfo.c:362 -#, fuzzy, c-format -msgid "Failed to parse HELLO in file `%s'\n" -msgstr "解析配置文件“%s”失败\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:446 -msgid "# peers known" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:489 -#, c-format -msgid "" -"File `%s' in directory `%s' does not match naming convention. Removed.\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:655 -#, fuzzy, c-format -msgid "Scanning directory `%s'\n" -msgstr "解析配置文件“%s”失败\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:663 -#, c-format -msgid "Still no peers found in `%s'!\n" -msgstr "" - -#: src/peerinfo/gnunet-service-peerinfo.c:1076 -#, fuzzy, c-format -msgid "Cleaning up directory `%s'\n" -msgstr "解析配置文件“%s”失败\n" - -#: src/peerinfo/gnunet-service-peerinfo.c:1405 -#, c-format -msgid "Importing HELLOs from `%s'\n" + +#: src/nse/gnunet-nse-profiler.c:866 +msgid "Number of peers to run in each round, separated by commas" msgstr "" -#: src/peerinfo/gnunet-service-peerinfo.c:1418 -msgid "Skipping import of included HELLOs\n" +#: src/nse/gnunet-nse-profiler.c:877 +msgid "delay between rounds" msgstr "" -#: src/peerinfo/peerinfo_api.c:220 -msgid "Failed to receive response from `PEERINFO' service." +#: src/nse/gnunet-nse-profiler.c:886 +#, fuzzy +msgid "Measure quality and performance of the NSE service." +msgstr "无法访问该服务" + +#: src/nse/gnunet-nse.c:122 +msgid "Show network size estimates from NSE service." msgstr "" +#: src/nse/gnunet-service-nse.c:1534 +#: src/revocation/gnunet-service-revocation.c:838 src/util/gnunet-scrypt.c:276 +#, fuzzy +msgid "Value is too large.\n" +msgstr "值不在合法范围内。" + #: src/peerinfo-tool/gnunet-peerinfo.c:239 #, fuzzy, c-format msgid "%sPeer `%s'\n" @@ -5467,6 +5592,60 @@ msgstr "" msgid "Failed to load transport plugin for `%s'\n" msgstr "解析配置文件“%s”失败\n" +#: src/peerinfo/gnunet-service-peerinfo.c:178 +#, c-format +msgid "Removing expired address of transport `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:310 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s': %s\n" +msgstr "解析配置文件“%s”失败\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:331 +#: src/peerinfo/gnunet-service-peerinfo.c:362 +#, fuzzy, c-format +msgid "Failed to parse HELLO in file `%s'\n" +msgstr "解析配置文件“%s”失败\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:446 +msgid "# peers known" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:489 +#, c-format +msgid "" +"File `%s' in directory `%s' does not match naming convention. Removed.\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:655 +#, fuzzy, c-format +msgid "Scanning directory `%s'\n" +msgstr "解析配置文件“%s”失败\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:663 +#, c-format +msgid "Still no peers found in `%s'!\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1076 +#, fuzzy, c-format +msgid "Cleaning up directory `%s'\n" +msgstr "解析配置文件“%s”失败\n" + +#: src/peerinfo/gnunet-service-peerinfo.c:1405 +#, c-format +msgid "Importing HELLOs from `%s'\n" +msgstr "" + +#: src/peerinfo/gnunet-service-peerinfo.c:1418 +msgid "Skipping import of included HELLOs\n" +msgstr "" + +#: src/peerinfo/peerinfo_api.c:220 +msgid "Failed to receive response from `PEERINFO' service." +msgstr "" + #: src/peerstore/gnunet-peerstore.c:91 msgid "peerstore" msgstr "" @@ -5516,16 +5695,11 @@ msgstr "创建用户出错" msgid "Unable to create indices: %s.\n" msgstr "发送消息失败。\n" -#: src/postgres/postgres.c:67 +#: src/pq/pq_prepare.c:80 #, fuzzy, c-format -msgid "`%s:%s' failed at %s:%d with error: %s\n" +msgid "PQprepare (`%s' as `%s') failed with error: %s\n" msgstr "“%s”于 %s:%d 处失败,错误为:%s\n" -#: src/postgres/postgres.c:192 -#, fuzzy, c-format -msgid "Unable to connect to Postgres database '%s': %s\n" -msgstr "无法保存配置文件“%s”:" - #: src/psycstore/gnunet-service-psycstore.c:249 #, fuzzy msgid "Failed to store membership information!\n" @@ -5696,60 +5870,60 @@ msgstr "立即保存配置?" msgid "Daemon to announce regular expressions for the peer using cadet." msgstr "" -#: src/regex/gnunet-regex-profiler.c:1314 +#: src/regex/gnunet-regex-profiler.c:1386 msgid "No configuration file given. Exiting\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1355 +#: src/regex/gnunet-regex-profiler.c:1427 #: src/regex/gnunet-regex-simulation-profiler.c:630 #, c-format msgid "No policy directory specified on command line. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1361 +#: src/regex/gnunet-regex-profiler.c:1433 #: src/regex/gnunet-regex-simulation-profiler.c:638 #, c-format msgid "Specified policies directory does not exist. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1368 +#: src/regex/gnunet-regex-profiler.c:1440 #, fuzzy, c-format msgid "No files found in `%s'\n" msgstr "运行 %s失败:%s %d\n" -#: src/regex/gnunet-regex-profiler.c:1377 +#: src/regex/gnunet-regex-profiler.c:1449 msgid "No search strings file given. Exiting.\n" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1397 +#: src/regex/gnunet-regex-profiler.c:1469 #, fuzzy msgid "Error loading search strings. Exiting.\n" msgstr "创建用户出错" -#: src/regex/gnunet-regex-profiler.c:1485 +#: src/regex/gnunet-regex-profiler.c:1557 #, fuzzy msgid "name of the file for writing statistics" msgstr "初始化“%s”服务失败。\n" -#: src/regex/gnunet-regex-profiler.c:1491 +#: src/regex/gnunet-regex-profiler.c:1563 msgid "wait TIMEOUT before ending the experiment" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1497 +#: src/regex/gnunet-regex-profiler.c:1569 msgid "directory with policy files" msgstr "" -#: src/regex/gnunet-regex-profiler.c:1504 +#: src/regex/gnunet-regex-profiler.c:1576 #, fuzzy msgid "name of file with input strings" msgstr "初始化“%s”服务失败。\n" -#: src/regex/gnunet-regex-profiler.c:1510 +#: src/regex/gnunet-regex-profiler.c:1582 #, fuzzy msgid "name of file with hosts' names" msgstr "初始化“%s”服务失败。\n" -#: src/regex/gnunet-regex-profiler.c:1523 +#: src/regex/gnunet-regex-profiler.c:1595 msgid "Profiler for regex" msgstr "" @@ -5980,10 +6154,10 @@ msgstr "" msgid "Calculate the Vectorproduct with a GNUnet peer." msgstr "" -#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1407 -#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 -#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1180 +#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172 #: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063 +#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401 +#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345 #, fuzzy msgid "Connect to CADET failed\n" msgstr "“%s”已连接到“%s”。\n" @@ -6008,7 +6182,7 @@ msgstr "" msgid "also profile decryption" msgstr "" -#: src/set/gnunet-service-set.c:1948 +#: src/set/gnunet-service-set.c:1989 #, fuzzy msgid "Could not connect to CADET service\n" msgstr "无法连接到 %s:%u:%s\n" @@ -6068,114 +6242,114 @@ msgstr "" msgid "say good-bye and leave somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1227 src/social/gnunet-social.c:1232 +#: src/social/gnunet-social.c:1227 msgid "create a place" msgstr "" -#: src/social/gnunet-social.c:1237 +#: src/social/gnunet-social.c:1232 msgid "destroy a place we were hosting" msgstr "" -#: src/social/gnunet-social.c:1242 +#: src/social/gnunet-social.c:1237 msgid "enter somebody else's place" msgstr "" -#: src/social/gnunet-social.c:1248 +#: src/social/gnunet-social.c:1243 msgid "find state matching name prefix" msgstr "" -#: src/social/gnunet-social.c:1253 +#: src/social/gnunet-social.c:1248 msgid "replay history of messages up to the given --limit" msgstr "" -#: src/social/gnunet-social.c:1258 +#: src/social/gnunet-social.c:1253 msgid "reconnect to a previously created place" msgstr "" -#: src/social/gnunet-social.c:1263 +#: src/social/gnunet-social.c:1258 msgid "publish something to a place we are hosting" msgstr "" -#: src/social/gnunet-social.c:1268 +#: src/social/gnunet-social.c:1263 msgid "reconnect to a previously entered place" msgstr "" -#: src/social/gnunet-social.c:1273 +#: src/social/gnunet-social.c:1268 msgid "search for state matching exact name" msgstr "" -#: src/social/gnunet-social.c:1278 +#: src/social/gnunet-social.c:1273 msgid "submit something to somebody's place" msgstr "" -#: src/social/gnunet-social.c:1283 +#: src/social/gnunet-social.c:1278 msgid "list of egos and subscribed places" msgstr "" -#: src/social/gnunet-social.c:1288 +#: src/social/gnunet-social.c:1283 msgid "extract and replay history between message IDs --start and --until" msgstr "" -#: src/social/gnunet-social.c:1297 +#: src/social/gnunet-social.c:1292 msgid "application ID to use when connecting" msgstr "" -#: src/social/gnunet-social.c:1303 +#: src/social/gnunet-social.c:1298 msgid "message body or state value" msgstr "" -#: src/social/gnunet-social.c:1309 +#: src/social/gnunet-social.c:1304 #, fuzzy msgid "name or public key of ego" msgstr "“%s”的参数无效。\n" -#: src/social/gnunet-social.c:1314 +#: src/social/gnunet-social.c:1309 #, fuzzy msgid "wait for incoming messages" msgstr "发送消息失败。\n" -#: src/social/gnunet-social.c:1320 +#: src/social/gnunet-social.c:1315 msgid "GNS name" msgstr "" -#: src/social/gnunet-social.c:1326 +#: src/social/gnunet-social.c:1321 msgid "peer ID for --guest-enter" msgstr "" -#: src/social/gnunet-social.c:1332 +#: src/social/gnunet-social.c:1327 msgid "name (key) to query from state" msgstr "" -#: src/social/gnunet-social.c:1338 +#: src/social/gnunet-social.c:1333 msgid "method name" msgstr "" -#: src/social/gnunet-social.c:1344 +#: src/social/gnunet-social.c:1339 #, fuzzy msgid "number of messages to replay from history" msgstr "每次迭代所使用的消息数量" -#: src/social/gnunet-social.c:1350 +#: src/social/gnunet-social.c:1345 msgid "key address of place" msgstr "" -#: src/social/gnunet-social.c:1356 +#: src/social/gnunet-social.c:1351 msgid "start message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1361 +#: src/social/gnunet-social.c:1356 msgid "respond to entry requests by admitting all guests" msgstr "" -#: src/social/gnunet-social.c:1367 +#: src/social/gnunet-social.c:1362 msgid "end message ID for history replay" msgstr "" -#: src/social/gnunet-social.c:1372 +#: src/social/gnunet-social.c:1367 msgid "respond to entry requests by refusing all guests" msgstr "" -#: src/social/gnunet-social.c:1382 +#: src/social/gnunet-social.c:1377 msgid "" "gnunet-social - Interact with the social service: enter/leave, send/receive " "messages, access history and state.\n" @@ -6368,7 +6542,7 @@ msgid "" msgstr "" #: src/testbed/gnunet-daemon-testbed-underlay.c:231 src/testing/list-keys.c:46 -#: src/testing/testing.c:288 src/util/gnunet-ecc.c:298 +#: src/testing/testing.c:288 src/util/gnunet-ecc.c:301 #, c-format msgid "Incorrect hostkey file format: %s\n" msgstr "" @@ -6438,15 +6612,6 @@ msgstr "" msgid "%.s Unknown result code." msgstr "" -#: src/testbed/gnunet_testbed_mpi_spawn.c:118 -msgid "Waiting for child to exit.\n" -msgstr "" - -#: src/testbed/gnunet_testbed_mpi_spawn.c:241 -#, fuzzy, c-format -msgid "Spawning process `%s'\n" -msgstr "卸载 GNUnet 服务" - #: src/testbed/gnunet-testbed-profiler.c:290 msgid "tolerate COUNT number of continious timeout failures" msgstr "" @@ -6458,6 +6623,15 @@ msgid "" "signal is received" msgstr "" +#: src/testbed/gnunet_testbed_mpi_spawn.c:118 +msgid "Waiting for child to exit.\n" +msgstr "" + +#: src/testbed/gnunet_testbed_mpi_spawn.c:241 +#, fuzzy, c-format +msgid "Spawning process `%s'\n" +msgstr "卸载 GNUnet 服务" + #: src/testbed/testbed_api.c:410 #, fuzzy, c-format msgid "Adding host %u failed with error: %s\n" @@ -6754,10 +6928,6 @@ msgstr "" msgid "GNUnet topology control" msgstr "" -#: src/transport/gnunet-service-transport_ats.c:141 -msgid "# Addresses given to ATS" -msgstr "" - #: src/transport/gnunet-service-transport.c:448 msgid "# messages dropped due to slow client" msgstr "" @@ -6803,6 +6973,10 @@ msgstr "" msgid "Transport service is lacking key configuration settings. Exiting.\n" msgstr "立即保存配置?" +#: src/transport/gnunet-service-transport_ats.c:141 +msgid "# Addresses given to ATS" +msgstr "" + #: src/transport/gnunet-service-transport_hello.c:195 msgid "# refreshed my HELLO" msgstr "" @@ -7107,6 +7281,44 @@ msgstr "" msgid "# validations succeeded" msgstr "" +#: src/transport/gnunet-transport-profiler.c:219 +#, c-format +msgid "%llu B in %llu ms == %.2f KB/s!\n" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:617 +msgid "send data to peer" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:621 +msgid "receive data from peer" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:626 +msgid "iterations" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:631 +#, fuzzy +msgid "number of messages to send" +msgstr "每次迭代所使用的消息数量" + +#: src/transport/gnunet-transport-profiler.c:636 +#, fuzzy +msgid "message size to use" +msgstr "消息尺寸" + +#: src/transport/gnunet-transport-profiler.c:641 +#: src/transport/gnunet-transport.c:1462 +msgid "peer identity" +msgstr "" + +#: src/transport/gnunet-transport-profiler.c:652 +#: src/transport/gnunet-transport.c:1482 +#, fuzzy +msgid "Direct access to transport service." +msgstr "初始化“%s”服务失败。\n" + #: src/transport/gnunet-transport.c:413 #, c-format msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n" @@ -7243,11 +7455,6 @@ msgstr "" msgid "do not resolve hostnames" msgstr "" -#: src/transport/gnunet-transport.c:1462 -#: src/transport/gnunet-transport-profiler.c:641 -msgid "peer identity" -msgstr "" - #: src/transport/gnunet-transport.c:1466 msgid "monitor plugin sessions" msgstr "" @@ -7256,42 +7463,9 @@ msgstr "" msgid "send data for benchmarking to the other peer (until CTRL-C)" msgstr "" -#: src/transport/gnunet-transport.c:1482 -#: src/transport/gnunet-transport-profiler.c:652 -#, fuzzy -msgid "Direct access to transport service." -msgstr "初始化“%s”服务失败。\n" - -#: src/transport/gnunet-transport-profiler.c:219 -#, c-format -msgid "%llu B in %llu ms == %.2f KB/s!\n" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:617 -msgid "send data to peer" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:621 -msgid "receive data from peer" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:626 -msgid "iterations" -msgstr "" - -#: src/transport/gnunet-transport-profiler.c:631 -#, fuzzy -msgid "number of messages to send" -msgstr "每次迭代所使用的消息数量" - -#: src/transport/gnunet-transport-profiler.c:636 -#, fuzzy -msgid "message size to use" -msgstr "消息尺寸" - #: src/transport/plugin_transport_http_client.c:1474 -#: src/transport/plugin_transport_http_server.c:2249 -#: src/transport/plugin_transport_http_server.c:3463 +#: src/transport/plugin_transport_http_server.c:2312 +#: src/transport/plugin_transport_http_server.c:3526 #: src/transport/plugin_transport_tcp.c:3890 #: src/transport/plugin_transport_tcp.c:3897 msgid "TCP_STEALTH not supported on this platform.\n" @@ -7303,13 +7477,13 @@ msgid "Could not initialize curl multi handle, failed to start %s plugin!\n" msgstr "" #: src/transport/plugin_transport_http_client.c:2164 -#: src/transport/plugin_transport_http_server.c:3178 +#: src/transport/plugin_transport_http_server.c:3241 #, fuzzy, c-format msgid "Shutting down plugin `%s'\n" msgstr "未知的命令“%s”。\n" #: src/transport/plugin_transport_http_client.c:2181 -#: src/transport/plugin_transport_http_server.c:3248 +#: src/transport/plugin_transport_http_server.c:3311 #, c-format msgid "Shutdown for plugin `%s' complete\n" msgstr "" @@ -7319,106 +7493,106 @@ msgstr "" msgid "Maximum number of requests is %u\n" msgstr "增加 TCP/IP 的最大连接数" -#: src/transport/plugin_transport_http_server.c:1727 +#: src/transport/plugin_transport_http_server.c:1756 #, c-format msgid "" "Access from connection %p (%u of %u) for `%s' `%s' url `%s' with upload data " "size %u\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1967 +#: src/transport/plugin_transport_http_server.c:2028 #, c-format msgid "Accepting connection (%u of %u) from `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:1975 +#: src/transport/plugin_transport_http_server.c:2036 #, c-format msgid "" "Server reached maximum number connections (%u), rejecting new connection\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2125 +#: src/transport/plugin_transport_http_server.c:2186 msgid "" "Could not create a new TLS certificate, program `gnunet-transport-" "certificate-creation' could not be started!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2148 +#: src/transport/plugin_transport_http_server.c:2209 #, c-format msgid "No usable TLS certificate found and creating one at `%s/%s' failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2275 +#: src/transport/plugin_transport_http_server.c:2338 msgid "Could not load or create server certificate! Loading plugin failed!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2587 +#: src/transport/plugin_transport_http_server.c:2650 #, fuzzy msgid "Require valid port number for service in configuration!\n" msgstr "保存配置失败。" -#: src/transport/plugin_transport_http_server.c:2752 +#: src/transport/plugin_transport_http_server.c:2815 #, c-format msgid "Found %u addresses to report to NAT service\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2838 +#: src/transport/plugin_transport_http_server.c:2901 #: src/transport/plugin_transport_udp.c:3622 msgid "Disabling IPv6 since it is not supported on this system!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2944 +#: src/transport/plugin_transport_http_server.c:3007 #, c-format msgid "IPv4 support is %s\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2959 +#: src/transport/plugin_transport_http_server.c:3022 #, c-format msgid "IPv6 support is %s\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2965 +#: src/transport/plugin_transport_http_server.c:3028 msgid "Neither IPv4 nor IPv6 are enabled! Fix in configuration\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:2976 +#: src/transport/plugin_transport_http_server.c:3039 #, fuzzy msgid "Port is required! Fix in configuration\n" msgstr "" "\n" "结束配置。\n" -#: src/transport/plugin_transport_http_server.c:2982 +#: src/transport/plugin_transport_http_server.c:3045 #, c-format msgid "Using port %u\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3001 +#: src/transport/plugin_transport_http_server.c:3064 #, c-format msgid "Specific IPv4 address `%s' in configuration file is invalid!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3036 +#: src/transport/plugin_transport_http_server.c:3099 #, c-format msgid "Specific IPv6 address `%s' in configuration file is invalid!\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3111 +#: src/transport/plugin_transport_http_server.c:3174 #, fuzzy, c-format msgid "Using external hostname `%s'\n" msgstr "卸载 GNUnet 服务" -#: src/transport/plugin_transport_http_server.c:3132 +#: src/transport/plugin_transport_http_server.c:3195 #, c-format msgid "Notifying transport only about hostname `%s'\n" msgstr "" -#: src/transport/plugin_transport_http_server.c:3149 +#: src/transport/plugin_transport_http_server.c:3212 #, fuzzy, c-format msgid "Maximum number of connections is %u\n" msgstr "增加 TCP/IP 的最大连接数" -#: src/transport/plugin_transport_http_server.c:3475 +#: src/transport/plugin_transport_http_server.c:3538 #, fuzzy msgid "Unable to compile URL regex\n" msgstr "无法初始化 SQLite:%s。\n" @@ -7565,20 +7739,6 @@ msgstr "" msgid "TCP transport advertises itself as being on port %llu\n" msgstr "" -#: src/transport/plugin_transport_udp_broadcasting.c:168 -msgid "# Multicast HELLO beacons received via UDP" -msgstr "" - -#: src/transport/plugin_transport_udp_broadcasting.c:548 -msgid "" -"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" -msgstr "" - -#: src/transport/plugin_transport_udp_broadcasting.c:565 -#, c-format -msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" -msgstr "" - #: src/transport/plugin_transport_udp.c:3366 #, c-format msgid "" @@ -7627,6 +7787,20 @@ msgstr "“%s”不可用。\n" msgid "Failed to create UDP network sockets\n" msgstr "发送消息失败。\n" +#: src/transport/plugin_transport_udp_broadcasting.c:168 +msgid "# Multicast HELLO beacons received via UDP" +msgstr "" + +#: src/transport/plugin_transport_udp_broadcasting.c:548 +msgid "" +"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n" +msgstr "" + +#: src/transport/plugin_transport_udp_broadcasting.c:565 +#, c-format +msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n" +msgstr "" + #: src/transport/plugin_transport_unix.c:1403 #, fuzzy, c-format msgid "Cannot create path to `%s'\n" @@ -7731,7 +7905,7 @@ msgid "" "`GNUNET_SERVER_receive_done' after %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2337 +#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2336 #, c-format msgid "Unknown address family %d\n" msgstr "" @@ -7776,51 +7950,51 @@ msgstr "运行 %s失败:%s %d\n" msgid "Service `%s' runs at %s\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1501 +#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1500 msgid "Service process failed to initialize\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1505 +#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1504 msgid "Service process could not initialize server function\n" msgstr "" -#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1509 +#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1508 msgid "Service process failed to report status\n" msgstr "" #: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1488 -#: src/util/service.c:1379 +#: src/util/service.c:1378 #, c-format msgid "Cannot obtain information about user `%s': %s\n" msgstr "无法获取有关用户“%s”的信息:%s\n" -#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1381 +#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1380 msgid "No such user" msgstr "无此用户" -#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1400 +#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1399 #, c-format msgid "Cannot change user/group to `%s': %s\n" msgstr "无法更改用户/组为“%s”:%s\n" -#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1728 +#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1727 msgid "do daemonize (detach from terminal)" msgstr "" #: src/transport/tcp_service_legacy.c:1448 src/util/program.c:244 -#: src/util/service.c:1791 +#: src/util/service.c:1790 #, fuzzy, c-format msgid "Malformed configuration file `%s', exit ...\n" msgstr "解析配置文件“%s”失败\n" #: src/transport/tcp_service_legacy.c:1458 src/util/program.c:261 -#: src/util/service.c:1802 +#: src/util/service.c:1801 #, fuzzy msgid "Malformed configuration, exit ...\n" msgstr "解析配置文件“%s”失败\n" #: src/transport/tcp_service_legacy.c:1463 src/util/program.c:256 -#: src/util/service.c:1808 +#: src/util/service.c:1807 #, fuzzy, c-format msgid "Could not access configuration file `%s'\n" msgstr "找不到接口“%s”的一个 IP 地址。\n" @@ -7864,86 +8038,86 @@ msgstr "" msgid "Need a non-empty hostname for service `%s'.\n" msgstr "" -#: src/util/common_logging.c:256 src/util/common_logging.c:1129 +#: src/util/common_logging.c:259 src/util/common_logging.c:1132 msgid "DEBUG" msgstr "调试" -#: src/util/common_logging.c:258 src/util/common_logging.c:1127 +#: src/util/common_logging.c:261 src/util/common_logging.c:1130 msgid "INFO" msgstr "信息" -#: src/util/common_logging.c:260 src/util/common_logging.c:1125 +#: src/util/common_logging.c:263 src/util/common_logging.c:1128 msgid "MESSAGE" msgstr "" -#: src/util/common_logging.c:262 src/util/common_logging.c:1123 +#: src/util/common_logging.c:265 src/util/common_logging.c:1126 msgid "WARNING" msgstr "警告" -#: src/util/common_logging.c:264 src/util/common_logging.c:1121 +#: src/util/common_logging.c:267 src/util/common_logging.c:1124 msgid "ERROR" msgstr "错误" -#: src/util/common_logging.c:266 src/util/common_logging.c:1131 +#: src/util/common_logging.c:269 src/util/common_logging.c:1134 msgid "NONE" msgstr "" -#: src/util/common_logging.c:879 +#: src/util/common_logging.c:882 #, fuzzy, c-format msgid "Message `%.*s' repeated %u times in the last %s\n" msgstr "消息“%.*s”重复了 %u 次,在最近 %llu 秒内\n" -#: src/util/common_logging.c:1132 +#: src/util/common_logging.c:1135 msgid "INVALID" msgstr "" -#: src/util/common_logging.c:1302 +#: src/util/common_logging.c:1326 msgid "unknown address" msgstr "" -#: src/util/common_logging.c:1344 +#: src/util/common_logging.c:1368 msgid "invalid address" msgstr "" -#: src/util/common_logging.c:1362 +#: src/util/common_logging.c:1386 #, fuzzy, c-format msgid "Configuration fails to specify option `%s' in section `%s'!\n" msgstr "配置不满足配置规范文件“%s”的约束!\n" -#: src/util/common_logging.c:1383 +#: src/util/common_logging.c:1407 #, fuzzy, c-format msgid "" "Configuration specifies invalid value for option `%s' in section `%s': %s\n" msgstr "配置不满足配置规范文件“%s”的约束!\n" -#: src/util/configuration.c:286 +#: src/util/configuration.c:296 #, fuzzy, c-format msgid "Syntax error while deserializing in line %u\n" msgstr "配置文件“%s”第 %d 行有语法错误。\n" -#: src/util/configuration.c:344 +#: src/util/configuration.c:355 #, fuzzy, c-format msgid "Error while reading file `%s'\n" msgstr "解析 dscl 输出时出错。\n" -#: src/util/configuration.c:1017 +#: src/util/configuration.c:1034 #, c-format msgid "" "Configuration value '%s' for '%s' in section '%s' is not in set of legal " "choices\n" msgstr "" -#: src/util/configuration.c:1136 +#: src/util/configuration.c:1153 #, c-format msgid "Recursive expansion suspected, aborting $-expansion for term `%s'\n" msgstr "" -#: src/util/configuration.c:1169 +#: src/util/configuration.c:1186 #, fuzzy, c-format msgid "Missing closing `%s' in option `%s'\n" msgstr "配置文件“%s”已写入。\n" -#: src/util/configuration.c:1237 +#: src/util/configuration.c:1254 #, c-format msgid "" "Failed to expand `%s' in `%s' as it is neither found in [PATHS] nor defined " @@ -7977,32 +8151,32 @@ msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n" msgid "EdDSA signature verification failed at %s:%d: %s\n" msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n" -#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:160 -#: src/util/crypto_ecc_setup.c:278 src/util/crypto_ecc_setup.c:316 +#: src/util/crypto_ecc_setup.c:122 src/util/crypto_ecc_setup.c:161 +#: src/util/crypto_ecc_setup.c:279 src/util/crypto_ecc_setup.c:317 #, fuzzy, c-format msgid "Could not acquire lock on file `%s': %s...\n" msgstr "无法解析“%s”(%s):%s\n" -#: src/util/crypto_ecc_setup.c:127 src/util/crypto_ecc_setup.c:283 +#: src/util/crypto_ecc_setup.c:128 src/util/crypto_ecc_setup.c:284 #, fuzzy msgid "Creating a new private key. This may take a while.\n" msgstr "正在启动数据仓库转换(可能需要一段时间)。\n" -#: src/util/crypto_ecc_setup.c:164 src/util/crypto_ecc_setup.c:320 +#: src/util/crypto_ecc_setup.c:165 src/util/crypto_ecc_setup.c:322 msgid "This may be ok if someone is currently generating a private key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:194 src/util/crypto_ecc_setup.c:350 +#: src/util/crypto_ecc_setup.c:195 src/util/crypto_ecc_setup.c:352 #, c-format msgid "" "When trying to read key file `%s' I found %u bytes but I need at least %u.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:198 src/util/crypto_ecc_setup.c:354 +#: src/util/crypto_ecc_setup.c:199 src/util/crypto_ecc_setup.c:356 msgid "This may be ok if someone is currently generating a key.\n" msgstr "" -#: src/util/crypto_ecc_setup.c:413 +#: src/util/crypto_ecc_setup.c:415 #, fuzzy msgid "Could not load peer's private key\n" msgstr "找不到接口“%s”的一个 IP 地址。\n" @@ -8193,82 +8367,86 @@ msgstr "" msgid "Manipulate GNUnet configuration files" msgstr "更改配置文件中的一个值" -#: src/util/gnunet-ecc.c:84 +#: src/util/gnunet-ecc.c:89 #, fuzzy, c-format msgid "Failed to open `%s': %s\n" msgstr "打开日志文件“%s”失败:%s\n" -#: src/util/gnunet-ecc.c:120 +#: src/util/gnunet-ecc.c:125 #, c-format msgid "Generating %u keys like %s, please wait" msgstr "" -#: src/util/gnunet-ecc.c:133 +#: src/util/gnunet-ecc.c:138 #, c-format msgid "Generating %u keys, please wait" msgstr "" -#: src/util/gnunet-ecc.c:174 +#: src/util/gnunet-ecc.c:179 #, fuzzy, c-format msgid "" "\n" "Failed to write to `%s': %s\n" msgstr "运行 %s失败:%s %d\n" -#: src/util/gnunet-ecc.c:184 +#: src/util/gnunet-ecc.c:189 #, c-format msgid "" "\n" "Finished!\n" msgstr "" -#: src/util/gnunet-ecc.c:187 +#: src/util/gnunet-ecc.c:192 #, c-format msgid "" "\n" "Error, %u keys not generated\n" msgstr "" -#: src/util/gnunet-ecc.c:280 +#: src/util/gnunet-ecc.c:283 #, c-format msgid "Hostkeys file `%s' not found\n" msgstr "" -#: src/util/gnunet-ecc.c:291 +#: src/util/gnunet-ecc.c:294 #, fuzzy, c-format msgid "Hostkeys file `%s' is empty\n" msgstr "找不到接口“%s”的一个 IP 地址。\n" -#: src/util/gnunet-ecc.c:313 +#: src/util/gnunet-ecc.c:316 #, fuzzy, c-format msgid "Could not read hostkey file: %s\n" msgstr "找不到接口“%s”的一个 IP 地址。\n" -#: src/util/gnunet-ecc.c:364 +#: src/util/gnunet-ecc.c:367 msgid "No hostkey file specified on command line\n" msgstr "" -#: src/util/gnunet-ecc.c:416 +#: src/util/gnunet-ecc.c:425 msgid "list keys included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:421 +#: src/util/gnunet-ecc.c:430 msgid "number of keys to list included in a file (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:426 +#: src/util/gnunet-ecc.c:435 msgid "create COUNT public-private key pairs (for testing)" msgstr "" -#: src/util/gnunet-ecc.c:430 +#: src/util/gnunet-ecc.c:439 msgid "print the public key in ASCII format" msgstr "" -#: src/util/gnunet-ecc.c:434 +#: src/util/gnunet-ecc.c:443 +msgid "print the public key in HEX format" +msgstr "" + +#: src/util/gnunet-ecc.c:447 msgid "print examples of ECC operations (used for compatibility testing)" msgstr "" -#: src/util/gnunet-ecc.c:449 +#: src/util/gnunet-ecc.c:463 #, fuzzy msgid "Manipulate GNUnet private ECC key files" msgstr "更改配置文件中的一个值" @@ -8362,7 +8540,7 @@ msgstr "创建用户出错" msgid "Unable to shorten unix path `%s' while keeping name unique\n" msgstr "" -#: src/util/network.c:1793 src/util/network.c:1969 +#: src/util/network.c:1793 src/util/network.c:1977 #, c-format msgid "" "Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n" @@ -8415,7 +8593,7 @@ msgstr "" msgid "Could not determine plugin installation path.\n" msgstr "无法确定用户界面定义文件。" -#: src/util/resolver_api.c:204 +#: src/util/resolver_api.c:203 #, c-format msgid "" "Missing `%s' for `%s' in configuration, DNS resolution will be unavailable.\n" @@ -8428,32 +8606,32 @@ msgid "" "resolution will be unavailable.\n" msgstr "" -#: src/util/resolver_api.c:815 +#: src/util/resolver_api.c:826 #, c-format msgid "Timeout trying to resolve hostname `%s'.\n" msgstr "" -#: src/util/resolver_api.c:827 +#: src/util/resolver_api.c:839 #, fuzzy, c-format msgid "Timeout trying to resolve IP address `%s'.\n" msgstr "GNUnet 现在使用 IP 地址 %s。\n" -#: src/util/resolver_api.c:1004 +#: src/util/resolver_api.c:1023 msgid "Resolver not configured correctly.\n" msgstr "" -#: src/util/resolver_api.c:1086 src/util/resolver_api.c:1107 -#: src/util/resolver_api.c:1121 +#: src/util/resolver_api.c:1109 src/util/resolver_api.c:1132 +#: src/util/resolver_api.c:1146 #, fuzzy, c-format msgid "Could not resolve our FQDN: %s\n" msgstr "无法解析“%s”(%s):%s\n" -#: src/util/service.c:1306 +#: src/util/service.c:1305 msgid "" "Could not bind to any of the ports I was supposed to, refusing to run!\n" msgstr "" -#: src/util/service.c:2082 +#: src/util/service.c:2081 #, c-format msgid "" "Processing code for message of type %u did not call " @@ -8530,63 +8708,63 @@ msgstr " 天" msgid "end of time" msgstr "" -#: src/util/strings.c:1269 +#: src/util/strings.c:1270 msgid "IPv6 address did not start with `['\n" msgstr "" -#: src/util/strings.c:1277 +#: src/util/strings.c:1278 msgid "IPv6 address did contain ':' to separate port number\n" msgstr "" -#: src/util/strings.c:1283 +#: src/util/strings.c:1284 msgid "IPv6 address did contain ']' before ':' to separate port number\n" msgstr "" -#: src/util/strings.c:1290 +#: src/util/strings.c:1291 msgid "IPv6 address did contain a valid port number after the last ':'\n" msgstr "" -#: src/util/strings.c:1299 +#: src/util/strings.c:1300 #, fuzzy, c-format msgid "Invalid IPv6 address `%s': %s\n" msgstr "无效的进程优先级“%s”\n" -#: src/util/strings.c:1571 src/util/strings.c:1587 +#: src/util/strings.c:1572 src/util/strings.c:1588 msgid "Port not in range\n" msgstr "" -#: src/util/strings.c:1596 +#: src/util/strings.c:1597 #, fuzzy, c-format msgid "Malformed port policy `%s'\n" msgstr "解析配置文件“%s”失败\n" -#: src/util/strings.c:1679 src/util/strings.c:1710 src/util/strings.c:1758 -#: src/util/strings.c:1779 +#: src/util/strings.c:1680 src/util/strings.c:1711 src/util/strings.c:1759 +#: src/util/strings.c:1780 #, c-format msgid "Invalid format for IP: `%s'\n" msgstr "IP 格式无效:“%s”\n" -#: src/util/strings.c:1736 +#: src/util/strings.c:1737 #, c-format msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)." msgstr "网络表示法无效(“/%d” 在 IPv4 CIDR 中是非法的)。" -#: src/util/strings.c:1788 +#: src/util/strings.c:1789 #, fuzzy, c-format msgid "Invalid format: `%s'\n" msgstr "IP 格式无效:“%s”\n" -#: src/util/strings.c:1840 +#: src/util/strings.c:1841 #, c-format msgid "Invalid network notation (does not end with ';': `%s')\n" msgstr "无效的网络表示法(没有以“;”结尾:“%s”)\n" -#: src/util/strings.c:1890 +#: src/util/strings.c:1891 #, c-format msgid "Wrong format `%s' for netmask\n" msgstr "网络掩码的格式“%s”错误\n" -#: src/util/strings.c:1921 +#: src/util/strings.c:1922 #, c-format msgid "Wrong format `%s' for network\n" msgstr "网络的格式“%s”错误\n" @@ -8761,27 +8939,43 @@ msgstr "" msgid "Setup tunnels via VPN." msgstr "" -#: src/zonemaster/gnunet-service-zonemaster.c:705 +#: src/zonemaster/gnunet-service-zonemaster.c:706 #, fuzzy msgid "Failed to connect to the namestore!\n" msgstr "初始化“%s”服务失败。\n" -#: src/include/gnunet_common.h:674 src/include/gnunet_common.h:681 -#: src/include/gnunet_common.h:691 src/include/gnunet_common.h:699 +#: src/include/gnunet_common.h:689 src/include/gnunet_common.h:696 +#: src/include/gnunet_common.h:706 src/include/gnunet_common.h:714 #, c-format msgid "Assertion failed at %s:%d.\n" msgstr "" -#: src/include/gnunet_common.h:711 +#: src/include/gnunet_common.h:726 #, c-format msgid "External protocol violation detected at %s:%d.\n" msgstr "" -#: src/include/gnunet_common.h:738 src/include/gnunet_common.h:747 +#: src/include/gnunet_common.h:753 src/include/gnunet_common.h:762 #, c-format msgid "`%s' failed on file `%s' at %s:%d with error: %s\n" msgstr "" +#, fuzzy +#~ msgid "Token `%s' is malformed\n" +#~ msgstr "“%s”的参数无效。\n" + +#, fuzzy +#~ msgid "Failed to create indices\n" +#~ msgstr "发送消息失败。\n" + +#, fuzzy +#~ msgid "`%s:%s' failed at %s:%d with error: %s\n" +#~ msgstr "“%s”于 %s:%d 处失败,错误为:%s\n" + +#, fuzzy +#~ msgid "Unable to connect to Postgres database '%s': %s\n" +#~ msgstr "无法保存配置文件“%s”:" + #, fuzzy #~ msgid "Misconfiguration (can not connect to the ARM service)" #~ msgstr "初始化“%s”服务失败。\n" @@ -9078,10 +9272,6 @@ msgstr "" #~ msgid "Timeout transmitting iteration request to `SENSOR' service." #~ msgstr "初始化“%s”服务失败。\n" -#, fuzzy -#~ msgid "Error reading sensor version\n" -#~ msgstr "创建用户出错" - #, fuzzy #~ msgid "Error reading sensor category\n" #~ msgstr "创建用户出错" @@ -9404,10 +9594,6 @@ msgstr "" #~ msgid "Could not parse zone key file `%s'\n" #~ msgstr "找不到接口“%s”的一个 IP 地址。\n" -#, fuzzy -#~ msgid "Failed to remove records from database" -#~ msgstr "发送消息失败。\n" - #, fuzzy #~ msgid "Failed to access database" #~ msgstr "打开日志文件“%s”失败:%s\n" -- cgit v1.2.3 From a9a7ac802811e76e33b54040bf31f00ea9438cea Mon Sep 17 00:00:00 2001 From: "Schanzenbach, Martin" Date: Sat, 2 Dec 2017 22:32:28 +0100 Subject: -refactored --- configure.ac | 1 + po/POTFILES.in | 3 +- src/Makefile.am | 2 + src/identity-attribute/Makefile.am | 44 ++++ src/identity-attribute/identity_attribute.c | 245 +++++++++++++++++++++ src/identity-attribute/identity_attribute.h | 56 +++++ .../plugin_identity_attribute_gnuid.c | 184 ++++++++++++++++ src/identity-provider/Makefile.am | 12 +- src/identity-provider/gnunet-idp.c | 26 +-- .../gnunet-service-identity-provider.c | 120 +++++----- src/identity-provider/identity_attribute.c | 245 --------------------- src/identity-provider/identity_attribute.h | 149 ------------- src/identity-provider/identity_provider_api.c | 49 ++--- .../plugin_identity_provider_sqlite.c | 14 +- .../plugin_rest_identity_provider.c | 11 +- src/include/gnunet_identity_attribute_lib.h | 231 +++++++++++++++++++ src/include/gnunet_identity_attribute_plugin.h | 149 +++++++++++++ src/include/gnunet_identity_provider_plugin.h | 5 +- src/include/gnunet_identity_provider_service.h | 109 +-------- 19 files changed, 1027 insertions(+), 628 deletions(-) create mode 100644 src/identity-attribute/Makefile.am create mode 100644 src/identity-attribute/identity_attribute.c create mode 100644 src/identity-attribute/identity_attribute.h create mode 100644 src/identity-attribute/plugin_identity_attribute_gnuid.c delete mode 100644 src/identity-provider/identity_attribute.c delete mode 100644 src/identity-provider/identity_attribute.h create mode 100644 src/include/gnunet_identity_attribute_lib.h create mode 100644 src/include/gnunet_identity_attribute_plugin.h (limited to 'po') diff --git a/configure.ac b/configure.ac index 206a407fa..e0d92fb8c 100644 --- a/configure.ac +++ b/configure.ac @@ -1654,6 +1654,7 @@ src/vpn/vpn.conf src/zonemaster/Makefile src/zonemaster/zonemaster.conf src/rest/Makefile +src/identity-attribute/Makefile src/identity-provider/Makefile pkgconfig/Makefile pkgconfig/gnunetarm.pc diff --git a/po/POTFILES.in b/po/POTFILES.in index 3444e321b..b06eb3a9f 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -196,9 +196,10 @@ src/hello/hello.c src/hostlist/gnunet-daemon-hostlist.c src/hostlist/gnunet-daemon-hostlist_client.c src/hostlist/gnunet-daemon-hostlist_server.c +src/identity-attribute/identity_attribute.c +src/identity-attribute/plugin_identity_attribute_type_gnuid.c src/identity-provider/gnunet-idp.c src/identity-provider/gnunet-service-identity-provider.c -src/identity-provider/identity_attribute.c src/identity-provider/identity_provider_api.c src/identity-provider/jwt.c src/identity-provider/plugin_gnsrecord_identity_provider.c diff --git a/src/Makefile.am b/src/Makefile.am index e4d7d8924..68878b5a0 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -17,6 +17,7 @@ endif if HAVE_JSON if HAVE_MHD + ATTRIBUTE_DIR = identity-attribute PROVIDER_DIR = identity-provider endif endif @@ -131,6 +132,7 @@ SUBDIRS = \ social \ $(AUCTION_DIR) \ $(EXP_DIR) \ + $(ATTRIBUTE_DIR) \ $(PROVIDER_DIR) endif diff --git a/src/identity-attribute/Makefile.am b/src/identity-attribute/Makefile.am new file mode 100644 index 000000000..770bc2ead --- /dev/null +++ b/src/identity-attribute/Makefile.am @@ -0,0 +1,44 @@ +# This Makefile.am is in the public domain +AM_CPPFLAGS = -I$(top_srcdir)/src/include + +plugindir = $(libdir)/gnunet + +pkgcfgdir= $(pkgdatadir)/config.d/ + +libexecdir= $(pkglibdir)/libexec/ + +if MINGW + WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols +endif + +if USE_COVERAGE + AM_CFLAGS = --coverage -O0 + XLIBS = -lgcov +endif + +lib_LTLIBRARIES = \ + libgnunetidentityattribute.la + +libgnunetidentityattribute_la_SOURCES = \ + identity_attribute.c +libgnunetidentityattribute_la_LIBADD = \ + $(top_builddir)/src/util/libgnunetutil.la \ + $(GN_LIBINTL) +libgnunetidentityattribute_la_LDFLAGS = \ + $(GN_LIB_LDFLAGS) $(WINFLAGS) \ + -version-info 0:0:0 + + +plugin_LTLIBRARIES = \ + libgnunet_plugin_identity_attribute_gnuid.la + + +libgnunet_plugin_identity_attribute_gnuid_la_SOURCES = \ + plugin_identity_attribute_gnuid.c +libgnunet_plugin_identity_attribute_gnuid_la_LIBADD = \ + $(top_builddir)/src/util/libgnunetutil.la \ + $(LTLIBINTL) +libgnunet_plugin_gnsrecord_dns_la_LDFLAGS = \ + $(GN_PLUGIN_LDFLAGS) + + diff --git a/src/identity-attribute/identity_attribute.c b/src/identity-attribute/identity_attribute.c new file mode 100644 index 000000000..377eb3211 --- /dev/null +++ b/src/identity-attribute/identity_attribute.c @@ -0,0 +1,245 @@ +/* + This file is part of GNUnet + Copyright (C) 2010-2015 GNUnet e.V. + + GNUnet is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNUnet; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + */ + +/** + * @file identity-provider/identity_attribute.c + * @brief helper library to manage identity attributes + * @author Martin Schanzenbach + */ +#include "platform.h" +#include "gnunet_util_lib.h" +#include "identity_attribute.h" + +/** + * Create a new attribute. + * + * @param name the attribute name + * @param type the attribute type + * @param data the attribute value + * @param data_size the attribute value size + * @return the new attribute + */ +struct GNUNET_IDENTITY_ATTRIBUTE_Claim * +GNUNET_IDENTITY_ATTRIBUTE_claim_new (const char* attr_name, + uint32_t attr_type, + const void* data, + size_t data_size) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr; + char *write_ptr; + + attr = GNUNET_malloc (sizeof (struct GNUNET_IDENTITY_ATTRIBUTE_Claim) + + strlen (attr_name) + 1 + + data_size); + attr->type = attr_type; + attr->data_size = data_size; + attr->version = 0; + write_ptr = (char*)&attr[1]; + GNUNET_memcpy (write_ptr, + attr_name, + strlen (attr_name) + 1); + attr->name = write_ptr; + write_ptr += strlen (attr->name) + 1; + GNUNET_memcpy (write_ptr, + data, + data_size); + attr->data = write_ptr; + return attr; +} + +size_t +GNUNET_IDENTITY_ATTRIBUTE_list_serialize_get_size (const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; + size_t len = 0; + for (le = attrs->list_head; NULL != le; le = le->next) + len += GNUNET_IDENTITY_ATTRIBUTE_serialize_get_size (le->claim); + return len; +} + +size_t +GNUNET_IDENTITY_ATTRIBUTE_list_serialize (const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs, + char *result) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; + size_t len; + size_t total_len; + char* write_ptr; + + write_ptr = result; + total_len = 0; + for (le = attrs->list_head; NULL != le; le = le->next) + { + len = GNUNET_IDENTITY_ATTRIBUTE_serialize (le->claim, + write_ptr); + total_len += len; + write_ptr += len; + } + return total_len; +} + +struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList * +GNUNET_IDENTITY_ATTRIBUTE_list_deserialize (const char* data, + size_t data_size) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; + size_t attr_len; + const char* read_ptr; + + if (data_size < sizeof (struct Attribute)) + return NULL; + + attrs = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList); + read_ptr = data; + while (((data + data_size) - read_ptr) >= sizeof (struct Attribute)) + { + + le = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry); + le->claim = GNUNET_IDENTITY_ATTRIBUTE_deserialize (read_ptr, + data_size - (read_ptr - data)); + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "Deserialized attribute %s\n", le->claim->name); + GNUNET_CONTAINER_DLL_insert (attrs->list_head, + attrs->list_tail, + le); + attr_len = GNUNET_IDENTITY_ATTRIBUTE_serialize_get_size (le->claim); + read_ptr += attr_len; + } + return attrs; +} + +struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList* +GNUNET_IDENTITY_ATTRIBUTE_list_dup (const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *result_le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *result; + size_t len; + + result = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList); + for (le = attrs->list_head; NULL != le; le = le->next) + { + result_le = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry); + len = sizeof (struct GNUNET_IDENTITY_ATTRIBUTE_Claim) + le->claim->data_size; + result_le->claim = GNUNET_malloc (len); + GNUNET_memcpy (result_le->claim, + le->claim, + len); + result_le->claim->name = (const char*)&result_le->claim[1]; + GNUNET_CONTAINER_DLL_insert (result->list_head, + result->list_tail, + result_le); + } + return result; +} + + +void +GNUNET_IDENTITY_ATTRIBUTE_list_destroy (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *tmp_le; + + for (le = attrs->list_head; NULL != le;) + { + GNUNET_free (le->claim); + tmp_le = le; + le = le->next; + GNUNET_free (tmp_le); + } + GNUNET_free (attrs); + +} + +size_t +GNUNET_IDENTITY_ATTRIBUTE_serialize_get_size (const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr) +{ + return sizeof (struct Attribute) + + strlen (attr->name) + + attr->data_size; +} + +size_t +GNUNET_IDENTITY_ATTRIBUTE_serialize (const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr, + char *result) +{ + size_t data_len_ser; + size_t name_len; + struct Attribute *attr_ser; + char* write_ptr; + + attr_ser = (struct Attribute*)result; + attr_ser->attribute_type = htons (attr->type); + attr_ser->attribute_version = htonl (attr->version); + name_len = strlen (attr->name); + attr_ser->name_len = htons (name_len); + write_ptr = (char*)&attr_ser[1]; + GNUNET_memcpy (write_ptr, attr->name, name_len); + write_ptr += name_len; + //TODO plugin-ize + //data_len_ser = plugin->serialize_attribute_value (attr, + // &attr_ser[1]); + data_len_ser = attr->data_size; + GNUNET_memcpy (write_ptr, attr->data, attr->data_size); + attr_ser->data_size = htons (data_len_ser); + + return sizeof (struct Attribute) + strlen (attr->name) + attr->data_size; +} + +struct GNUNET_IDENTITY_ATTRIBUTE_Claim * +GNUNET_IDENTITY_ATTRIBUTE_deserialize (const char* data, + size_t data_size) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr; + struct Attribute *attr_ser; + size_t data_len; + size_t name_len; + char* write_ptr; + + if (data_size < sizeof (struct Attribute)) + return NULL; + + attr_ser = (struct Attribute*)data; + data_len = ntohs (attr_ser->data_size); + name_len = ntohs (attr_ser->name_len); + attr = GNUNET_malloc (sizeof (struct GNUNET_IDENTITY_ATTRIBUTE_Claim) + + data_len + name_len + 1); + attr->type = ntohs (attr_ser->attribute_type); + attr->version = ntohl (attr_ser->attribute_version); + attr->data_size = ntohs (attr_ser->data_size); + + write_ptr = (char*)&attr[1]; + GNUNET_memcpy (write_ptr, + &attr_ser[1], + name_len); + write_ptr[name_len] = '\0'; + attr->name = write_ptr; + + write_ptr += name_len + 1; + GNUNET_memcpy (write_ptr, + (char*)&attr_ser[1] + name_len, + attr->data_size); + attr->data = write_ptr; + return attr; + +} + +/* end of identity_attribute.c */ diff --git a/src/identity-attribute/identity_attribute.h b/src/identity-attribute/identity_attribute.h new file mode 100644 index 000000000..046321807 --- /dev/null +++ b/src/identity-attribute/identity_attribute.h @@ -0,0 +1,56 @@ +/* + This file is part of GNUnet. + Copyright (C) 2012-2015 GNUnet e.V. + + GNUnet is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNUnet; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + */ +/** + * @author Martin Schanzenbach + * @file identity-provider/identity_attribute.h + * @brief GNUnet Identity Provider library + * + */ +#ifndef IDENTITY_ATTRIBUTE_H +#define IDENTITY_ATTRIBUTE_H + +#include "gnunet_identity_provider_service.h" + +struct Attribute +{ + /** + * Attribute type + */ + uint32_t attribute_type; + + /** + * Attribute version + */ + uint32_t attribute_version; + + /** + * Name length + */ + uint32_t name_len; + + /** + * Data size + */ + uint32_t data_size; + + //followed by data_size Attribute value data +}; + +#endif diff --git a/src/identity-attribute/plugin_identity_attribute_gnuid.c b/src/identity-attribute/plugin_identity_attribute_gnuid.c new file mode 100644 index 000000000..ba460d0a5 --- /dev/null +++ b/src/identity-attribute/plugin_identity_attribute_gnuid.c @@ -0,0 +1,184 @@ +/* + This file is part of GNUnet + Copyright (C) 2013, 2014, 2016 GNUnet e.V. + + GNUnet is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNUnet; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +/** + * @file identity-provider/plugin_identity_attribute_gnuid.c + * @brief identity attribute plugin to provide the API for fundamental + * attribute types. + * + * @author Martin Schanzenbach + */ +#include "platform.h" +#include "gnunet_util_lib.h" +#include "gnunet_identity_attribute_plugin.h" +#include + + +/** + * Convert the 'value' of an attribute to a string. + * + * @param cls closure, unused + * @param type type of the attribute + * @param data value in binary encoding + * @param data_size number of bytes in @a data + * @return NULL on error, otherwise human-readable representation of the value + */ +static char * +gnuid_value_to_string (void *cls, + uint32_t type, + const void *data, + size_t data_size) +{ + + switch (type) + { + case GNUNET_IDENTITY_ATTRIBUTE_TYPE_STRING: + return GNUNET_strndup (data, data_size); + default: + return NULL; + } +} + + +/** + * Convert human-readable version of a 'value' of an attribute to the binary + * representation. + * + * @param cls closure, unused + * @param type type of the attribute + * @param s human-readable string + * @param data set to value in binary encoding (will be allocated) + * @param data_size set to number of bytes in @a data + * @return #GNUNET_OK on success + */ +static int +gnuid_string_to_value (void *cls, + uint32_t type, + const char *s, + void **data, + size_t *data_size) +{ + if (NULL == s) + return GNUNET_SYSERR; + switch (type) + { + + case GNUNET_IDENTITY_ATTRIBUTE_TYPE_STRING: + *data = GNUNET_strdup (s); + *data_size = strlen (s); + return GNUNET_OK; + default: + return GNUNET_SYSERR; + } +} + + +/** + * Mapping of attribute type numbers to human-readable + * attribute type names. + */ +static struct { + const char *name; + uint32_t number; +} gnuid_name_map[] = { + { "STRING", GNUNET_IDENTITY_ATTRIBUTE_TYPE_STRING }, + { NULL, UINT32_MAX } +}; + + +/** + * Convert a type name to the corresponding number. + * + * @param cls closure, unused + * @param gnuid_typename name to convert + * @return corresponding number, UINT32_MAX on error + */ +static uint32_t +gnuid_typename_to_number (void *cls, + const char *gnuid_typename) +{ + unsigned int i; + + i=0; + while ( (NULL != gnuid_name_map[i].name) && + (0 != strcasecmp (gnuid_typename, + gnuid_name_map[i].name)) ) + i++; + return gnuid_name_map[i].number; +} + + +/** + * Convert a type number (i.e. 1) to the corresponding type string + * + * @param cls closure, unused + * @param type number of a type to convert + * @return corresponding typestring, NULL on error + */ +static const char * +gnuid_number_to_typename (void *cls, + uint32_t type) +{ + unsigned int i; + + i=0; + while ( (NULL != gnuid_name_map[i].name) && + (type != gnuid_name_map[i].number) ) + i++; + return gnuid_name_map[i].name; +} + + +/** + * Entry point for the plugin. + * + * @param cls NULL + * @return the exported block API + */ +void * +libgnunet_plugin_attribute_type_gnuid_init (void *cls) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_PluginFunctions *api; + + api = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_PluginFunctions); + api->value_to_string = &gnuid_value_to_string; + api->string_to_value = &gnuid_string_to_value; + api->typename_to_number = &gnuid_typename_to_number; + api->number_to_typename = &gnuid_number_to_typename; + return api; +} + + +/** + * Exit point from the plugin. + * + * @param cls the return value from #libgnunet_plugin_block_test_init() + * @return NULL + */ +void * +libgnunet_plugin_attribute_type_gnuid_done (void *cls) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_PluginFunctions *api = cls; + + GNUNET_free (api); + return NULL; +} + +/* end of plugin_identity_attribute_type_gnuid.c */ diff --git a/src/identity-provider/Makefile.am b/src/identity-provider/Makefile.am index f64f1aa68..3b072e59d 100644 --- a/src/identity-provider/Makefile.am +++ b/src/identity-provider/Makefile.am @@ -63,8 +63,7 @@ libgnunet_plugin_identity_provider_sqlite_la_LDFLAGS = \ gnunet_service_identity_provider_SOURCES = \ - gnunet-service-identity-provider.c \ - identity_attribute.h + gnunet-service-identity-provider.c gnunet_service_identity_provider_LDADD = \ $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \ $(top_builddir)/src/util/libgnunetutil.la \ @@ -72,14 +71,14 @@ gnunet_service_identity_provider_LDADD = \ $(top_builddir)/src/identity/libgnunetidentity.la \ $(top_builddir)/src/statistics/libgnunetstatistics.la \ $(top_builddir)/src/credential/libgnunetcredential.la \ + $(top_builddir)/src/identity-attribute/libgnunetidentityattribute.la \ libgnunetidentityprovider.la \ $(top_builddir)/src/gns/libgnunetgns.la \ $(GN_LIBINTL) libgnunetidentityprovider_la_SOURCES = \ identity_provider_api.c \ - identity_provider.h \ - identity_attribute.c + identity_provider.h libgnunetidentityprovider_la_LIBADD = \ $(top_builddir)/src/util/libgnunetutil.la \ $(GN_LIBINTL) $(XLIB) @@ -88,13 +87,13 @@ libgnunetidentityprovider_la_LDFLAGS = \ -version-info 0:0:0 libgnunet_plugin_rest_identity_provider_la_SOURCES = \ - plugin_rest_identity_provider.c \ - jwt.c + plugin_rest_identity_provider.c libgnunet_plugin_rest_identity_provider_la_LIBADD = \ $(top_builddir)/src/identity/libgnunetidentity.la \ libgnunetidentityprovider.la \ $(top_builddir)/src/rest/libgnunetrest.la \ $(top_builddir)/src/jsonapi/libgnunetjsonapi.la \ + $(top_builddir)/src/identity-attribute/libgnunetidentityattribute.la \ $(top_builddir)/src/namestore/libgnunetnamestore.la \ $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) \ $(LTLIBINTL) -ljansson -lmicrohttpd @@ -108,6 +107,7 @@ gnunet_idp_LDADD = \ $(top_builddir)/src/namestore/libgnunetnamestore.la \ libgnunetidentityprovider.la \ $(top_builddir)/src/identity/libgnunetidentity.la \ + $(top_builddir)/src/identity-attribute/libgnunetidentityattribute.la \ $(GN_LIBINTL) check_SCRIPTS = \ diff --git a/src/identity-provider/gnunet-idp.c b/src/identity-provider/gnunet-idp.c index 88136c124..18a5676c0 100644 --- a/src/identity-provider/gnunet-idp.c +++ b/src/identity-provider/gnunet-idp.c @@ -119,7 +119,7 @@ static struct GNUNET_IDENTITY_PROVIDER_Ticket ticket; /** * Attribute list */ -static struct GNUNET_IDENTITY_PROVIDER_AttributeList *attr_list; +static struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attr_list; static void do_cleanup(void *cls) @@ -166,7 +166,7 @@ store_attr_cont (void *cls, static void process_attrs (void *cls, const struct GNUNET_CRYPTO_EcdsaPublicKey *identity, - const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr) + const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr) { if (NULL == identity) { @@ -207,7 +207,7 @@ process_rvk (void *cls, int success, const char* msg) static void iter_finished (void *cls) { - struct GNUNET_IDENTITY_PROVIDER_Attribute *attr; + struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr; attr_iterator = NULL; if (list) @@ -244,8 +244,8 @@ iter_finished (void *cls) NULL); return; } - attr = GNUNET_IDENTITY_PROVIDER_attribute_new (attr_name, - GNUNET_IDENTITY_PROVIDER_AT_STRING, + attr = GNUNET_IDENTITY_ATTRIBUTE_claim_new (attr_name, + GNUNET_IDENTITY_ATTRIBUTE_TYPE_STRING, attr_value, strlen (attr_value) + 1); idp_op = GNUNET_IDENTITY_PROVIDER_attribute_store (idp_handle, @@ -260,9 +260,9 @@ iter_finished (void *cls) static void iter_cb (void *cls, const struct GNUNET_CRYPTO_EcdsaPublicKey *identity, - const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr) + const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr) { - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; char *attrs_tmp; char *attr_str; @@ -275,11 +275,11 @@ iter_cb (void *cls, attr_str = strtok (NULL, ","); continue; } - le = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry); - le->attribute = GNUNET_IDENTITY_PROVIDER_attribute_new (attr->name, - attr->attribute_type, - attr->data, - attr->data_size); + le = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry); + le->claim = GNUNET_IDENTITY_ATTRIBUTE_claim_new (attr->name, + attr->type, + attr->data, + attr->data_size); GNUNET_CONTAINER_DLL_insert (attr_list->list_head, attr_list->list_tail, le); @@ -321,7 +321,7 @@ ego_cb (void *cls, sizeof (struct GNUNET_IDENTITY_PROVIDER_Ticket)); - attr_list = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeList); + attr_list = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList); attr_iterator = GNUNET_IDENTITY_PROVIDER_get_attributes_start (idp_handle, pkey, diff --git a/src/identity-provider/gnunet-service-identity-provider.c b/src/identity-provider/gnunet-service-identity-provider.c index 58dea88a7..a5c178aa5 100644 --- a/src/identity-provider/gnunet-service-identity-provider.c +++ b/src/identity-provider/gnunet-service-identity-provider.c @@ -34,9 +34,9 @@ #include "gnunet_statistics_service.h" #include "gnunet_gns_service.h" #include "gnunet_identity_provider_plugin.h" +#include "gnunet_identity_attribute_lib.h" #include "gnunet_signatures.h" #include "identity_provider.h" -#include "identity_attribute.h" /** * First pass state @@ -365,7 +365,7 @@ struct AttributeStoreHandle /** * The attribute to store */ - struct GNUNET_IDENTITY_PROVIDER_Attribute *attribute; + struct GNUNET_IDENTITY_ATTRIBUTE_Claim *claim; /** * request id @@ -428,7 +428,7 @@ struct ConsumeTicketHandle /** * Attributes */ - struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs; /** * Lookup time @@ -490,12 +490,12 @@ struct TicketRevocationHandle /** * Attributes to reissue */ - struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs; /** * Attributes to revoke */ - struct GNUNET_IDENTITY_PROVIDER_AttributeList *rvk_attrs; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *rvk_attrs; /** * Issuer Key @@ -549,7 +549,7 @@ struct TicketIssueHandle /** * Attributes to issue */ - struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs; /** * Issuer Key @@ -809,7 +809,7 @@ static void cleanup_ticket_issue_handle (struct TicketIssueHandle *handle) { if (NULL != handle->attrs) - attribute_list_destroy (handle->attrs); + GNUNET_IDENTITY_ATTRIBUTE_list_destroy (handle->attrs); if (NULL != handle->ns_qe) GNUNET_NAMESTORE_cancel (handle->ns_qe); GNUNET_free (handle); @@ -820,7 +820,7 @@ static void send_ticket_result (struct IdpClient *client, uint32_t r_id, const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs) + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs) { struct TicketResultMessage *irm; struct GNUNET_MQ_Envelope *env; @@ -873,13 +873,13 @@ store_ticket_issue_cont (void *cls, int serialize_abe_keyinfo2 (const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs, + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs, const struct GNUNET_CRYPTO_AbeKey *rp_key, struct GNUNET_CRYPTO_EcdhePrivateKey **ecdh_privkey, char **result) { struct GNUNET_CRYPTO_EcdhePublicKey ecdh_pubkey; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; char *enc_keyinfo; char *serialized_key; char *buf; @@ -896,7 +896,7 @@ serialize_abe_keyinfo2 (const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, (void**)&serialized_key); attrs_str_len = 0; for (le = attrs->list_head; NULL != le; le = le->next) { - attrs_str_len += strlen (le->attribute->name) + 1; + attrs_str_len += strlen (le->claim->name) + 1; } buf = GNUNET_malloc (attrs_str_len + size); write_ptr = buf; @@ -904,14 +904,14 @@ serialize_abe_keyinfo2 (const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, "Writing attributes\n"); for (le = attrs->list_head; NULL != le; le = le->next) { GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, - "%s\n", le->attribute->name); + "%s\n", le->claim->name); GNUNET_memcpy (write_ptr, - le->attribute->name, - strlen (le->attribute->name)); - write_ptr[strlen (le->attribute->name)] = ','; - write_ptr += strlen (le->attribute->name) + 1; + le->claim->name, + strlen (le->claim->name)); + write_ptr[strlen (le->claim->name)] = ','; + write_ptr += strlen (le->claim->name) + 1; } write_ptr--; write_ptr[0] = '\0'; //replace last , with a 0-terminator @@ -954,7 +954,7 @@ issue_ticket_after_abe_bootstrap (void *cls, struct GNUNET_CRYPTO_AbeMasterKey *abe_key) { struct TicketIssueHandle *ih = cls; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; struct GNUNET_CRYPTO_EcdhePrivateKey *ecdhe_privkey; struct GNUNET_GNSRECORD_Data code_record[1]; struct GNUNET_CRYPTO_AbeKey *rp_key; @@ -974,8 +974,8 @@ issue_ticket_after_abe_bootstrap (void *cls, i = 0; for (le = ih->attrs->list_head; NULL != le; le = le->next) { GNUNET_asprintf (&policy, "%s_%lu", - le->attribute->name, - le->attribute->attribute_version); + le->claim->name, + le->claim->version); GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Adding attribute to key: %s\n", policy); @@ -1061,7 +1061,7 @@ handle_issue_ticket_message (void *cls, ih = GNUNET_new (struct TicketIssueHandle); attrs_len = ntohs (im->attr_len); - ih->attrs = attribute_list_deserialize ((char*)&im[1], attrs_len); + ih->attrs = GNUNET_IDENTITY_ATTRIBUTE_list_deserialize ((char*)&im[1], attrs_len); ih->r_id = ntohl (im->id); ih->client = idp; ih->identity = im->identity; @@ -1087,9 +1087,9 @@ static void cleanup_revoke_ticket_handle (struct TicketRevocationHandle *handle) { if (NULL != handle->attrs) - attribute_list_destroy (handle->attrs); + GNUNET_IDENTITY_ATTRIBUTE_list_destroy (handle->attrs); if (NULL != handle->rvk_attrs) - attribute_list_destroy (handle->rvk_attrs); + GNUNET_IDENTITY_ATTRIBUTE_list_destroy (handle->rvk_attrs); if (NULL != handle->abe_key) GNUNET_CRYPTO_cpabe_delete_master_key (handle->abe_key); if (NULL != handle->ns_qe) @@ -1132,7 +1132,7 @@ send_revocation_finished (struct TicketRevocationHandle *rh, static void ticket_reissue_proc (void *cls, const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs); + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs); static void revocation_reissue_tickets (struct TicketRevocationHandle *rh); @@ -1176,11 +1176,11 @@ reissue_ticket_cont (void *cls, static void ticket_reissue_proc (void *cls, const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs) + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs) { struct TicketRevocationHandle *rh = cls; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le_rollover; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le_rollover; struct GNUNET_CRYPTO_EcdhePrivateKey *ecdhe_privkey; struct GNUNET_GNSRECORD_Data code_record[1]; struct GNUNET_CRYPTO_AbeKey *rp_key; @@ -1223,11 +1223,11 @@ ticket_reissue_proc (void *cls, NULL != le_rollover; le_rollover = le_rollover->next) { - if (0 == strcmp (le_rollover->attribute->name, - le->attribute->name)) + if (0 == strcmp (le_rollover->claim->name, + le->claim->name)) { reissue_ticket = GNUNET_YES; - le->attribute->attribute_version = le_rollover->attribute->attribute_version; + le->claim->version = le_rollover->claim->version; } } } @@ -1255,8 +1255,8 @@ ticket_reissue_proc (void *cls, i = 0; for (le = attrs->list_head; NULL != le; le = le->next) { GNUNET_asprintf (&policy, "%s_%lu", - le->attribute->name, - le->attribute->attribute_version); + le->claim->name, + le->claim->version); GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Recreating key with %s\n", policy); attr_arr[i] = policy; @@ -1349,14 +1349,14 @@ reenc_next_attribute (struct TicketRevocationHandle *rh) revocation_reissue_tickets (rh); return; } - buf_size = attribute_serialize_get_size (rh->attrs->list_head->attribute); + buf_size = GNUNET_IDENTITY_ATTRIBUTE_serialize_get_size (rh->attrs->list_head->claim); buf = GNUNET_malloc (buf_size); - attribute_serialize (rh->attrs->list_head->attribute, + GNUNET_IDENTITY_ATTRIBUTE_serialize (rh->attrs->list_head->claim, buf); - rh->attrs->list_head->attribute->attribute_version++; + rh->attrs->list_head->claim->version++; GNUNET_asprintf (&policy, "%s_%lu", - rh->attrs->list_head->attribute->name, - rh->attrs->list_head->attribute->attribute_version); + rh->attrs->list_head->claim->name, + rh->attrs->list_head->claim->version); GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Encrypting with policy %s\n", policy); /** @@ -1371,7 +1371,7 @@ reenc_next_attribute (struct TicketRevocationHandle *rh) GNUNET_free (policy); rd[0].data_size = enc_size + sizeof (uint32_t); rd_buf = GNUNET_malloc (rd[0].data_size); - attr_ver = htonl (rh->attrs->list_head->attribute->attribute_version); + attr_ver = htonl (rh->attrs->list_head->claim->version); GNUNET_memcpy (rd_buf, &attr_ver, sizeof (uint32_t)); @@ -1384,7 +1384,7 @@ reenc_next_attribute (struct TicketRevocationHandle *rh) rd[0].expiration_time = GNUNET_TIME_UNIT_HOURS.rel_value_us; //TODO sane? rh->ns_qe = GNUNET_NAMESTORE_records_store (ns_handle, &rh->identity, - rh->attrs->list_head->attribute->name, + rh->attrs->list_head->claim->name, 1, rd, &attr_reenc_cont, @@ -1403,7 +1403,7 @@ attr_reenc_cont (void *cls, const char *emsg) { struct TicketRevocationHandle *rh = cls; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; if (GNUNET_SYSERR == success) { @@ -1437,11 +1437,11 @@ attr_reenc_cont (void *cls, static void process_attributes_to_update (void *cls, const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs) + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs) { struct TicketRevocationHandle *rh = cls; - rh->attrs = attribute_list_dup (attrs); + rh->attrs = GNUNET_IDENTITY_ATTRIBUTE_list_dup (attrs); GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Revocation Phase I: Collecting attributes\n"); /* Reencrypt all attributes with new key */ @@ -1514,7 +1514,7 @@ handle_revoke_ticket_message (void *cls, rh = GNUNET_new (struct TicketRevocationHandle); ticket = (struct GNUNET_IDENTITY_PROVIDER_Ticket*)&rm[1]; - rh->rvk_attrs = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeList); + rh->rvk_attrs = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList); rh->ticket = *ticket; rh->r_id = ntohl (rm->id); rh->client = idp; @@ -1537,7 +1537,7 @@ cleanup_consume_ticket_handle (struct ConsumeTicketHandle *handle) GNUNET_CRYPTO_cpabe_delete_key (handle->key, GNUNET_YES); if (NULL != handle->attrs) - attribute_list_destroy (handle->attrs); + GNUNET_IDENTITY_ATTRIBUTE_list_destroy (handle->attrs); GNUNET_free (handle); } @@ -1575,7 +1575,7 @@ process_parallel_lookup2 (void *cls, uint32_t rd_count, struct ConsumeTicketHandle *handle = parallel_lookup->handle; struct ConsumeTicketResultMessage *crm; struct GNUNET_MQ_Envelope *env; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *attr_le; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *attr_le; struct GNUNET_TIME_Absolute decrypt_duration; char *data; char *data_tmp; @@ -1618,10 +1618,10 @@ process_parallel_lookup2 (void *cls, uint32_t rd_count, 1, GNUNET_YES); - attr_le = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry); - attr_le->attribute = attribute_deserialize (data, + attr_le = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry); + attr_le->claim = GNUNET_IDENTITY_ATTRIBUTE_deserialize (data, attr_len); - attr_le->attribute->attribute_version = ntohl(*(uint32_t*)rd->data); + attr_le->claim->version = ntohl(*(uint32_t*)rd->data); GNUNET_CONTAINER_DLL_insert (handle->attrs->list_head, handle->attrs->list_tail, attr_le); @@ -1643,7 +1643,7 @@ process_parallel_lookup2 (void *cls, uint32_t rd_count, } GNUNET_SCHEDULER_cancel (handle->kill_task); - attrs_len = attribute_list_serialize_get_size (handle->attrs); + attrs_len = GNUNET_IDENTITY_ATTRIBUTE_list_serialize_get_size (handle->attrs); env = GNUNET_MQ_msg_extra (crm, attrs_len, GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_CONSUME_TICKET_RESULT); @@ -1651,7 +1651,7 @@ process_parallel_lookup2 (void *cls, uint32_t rd_count, crm->attrs_len = htons (attrs_len); crm->identity = handle->ticket.identity; data_tmp = (char *) &crm[1]; - attribute_list_serialize (handle->attrs, + GNUNET_IDENTITY_ATTRIBUTE_list_serialize (handle->attrs, data_tmp); GNUNET_MQ_send (handle->client->mq, env); cleanup_consume_ticket_handle (handle); @@ -1802,7 +1802,7 @@ handle_consume_ticket_message (void *cls, ch->r_id = ntohl (cm->id); ch->client = idp; ch->identity = cm->identity; - ch->attrs = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeList); + ch->attrs = GNUNET_new (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList); GNUNET_CRYPTO_ecdsa_key_get_public (&ch->identity, &ch->identity_pub); ch->ticket = *((struct GNUNET_IDENTITY_PROVIDER_Ticket*)&cm[1]); @@ -1830,8 +1830,8 @@ handle_consume_ticket_message (void *cls, static void cleanup_as_handle (struct AttributeStoreHandle *handle) { - if (NULL != handle->attribute) - GNUNET_free (handle->attribute); + if (NULL != handle->claim) + GNUNET_free (handle->claim); if (NULL != handle->abe_key) GNUNET_CRYPTO_cpabe_delete_master_key (handle->abe_key); GNUNET_free (handle); @@ -1882,16 +1882,16 @@ attr_store_task (void *cls) GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Storing attribute\n"); - buf_size = attribute_serialize_get_size (as_handle->attribute); + buf_size = GNUNET_IDENTITY_ATTRIBUTE_serialize_get_size (as_handle->claim); buf = GNUNET_malloc (buf_size); - attribute_serialize (as_handle->attribute, + GNUNET_IDENTITY_ATTRIBUTE_serialize (as_handle->claim, buf); GNUNET_asprintf (&policy, "%s_%lu", - as_handle->attribute->name, - as_handle->attribute->attribute_version); + as_handle->claim->name, + as_handle->claim->version); GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Encrypting with policy %s\n", policy); /** @@ -1906,7 +1906,7 @@ attr_store_task (void *cls) GNUNET_free (policy); rd[0].data_size = enc_size + sizeof (uint32_t); rd_buf = GNUNET_malloc (rd[0].data_size); - attr_ver = htonl (as_handle->attribute->attribute_version); + attr_ver = htonl (as_handle->claim->version); GNUNET_memcpy (rd_buf, &attr_ver, sizeof (uint32_t)); @@ -1919,7 +1919,7 @@ attr_store_task (void *cls) rd[0].expiration_time = GNUNET_TIME_UNIT_HOURS.rel_value_us; //TODO sane? as_handle->ns_qe = GNUNET_NAMESTORE_records_store (ns_handle, &as_handle->identity, - as_handle->attribute->name, + as_handle->claim->name, 1, rd, &attr_store_cont, @@ -1984,7 +1984,7 @@ handle_attribute_store_message (void *cls, data_len = ntohs (sam->attr_len); as_handle = GNUNET_new (struct AttributeStoreHandle); - as_handle->attribute = attribute_deserialize ((char*)&sam[1], + as_handle->claim = GNUNET_IDENTITY_ATTRIBUTE_deserialize ((char*)&sam[1], data_len); as_handle->r_id = ntohl (sam->id); @@ -2280,7 +2280,7 @@ cleanup_ticket_iter_handle (struct TicketIteration *ti) static void ticket_iterate_proc (void *cls, const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs) + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs) { struct TicketIterationProcResult *proc = cls; diff --git a/src/identity-provider/identity_attribute.c b/src/identity-provider/identity_attribute.c deleted file mode 100644 index c7e833326..000000000 --- a/src/identity-provider/identity_attribute.c +++ /dev/null @@ -1,245 +0,0 @@ -/* - This file is part of GNUnet - Copyright (C) 2010-2015 GNUnet e.V. - - GNUnet is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3, or (at your - option) any later version. - - GNUnet is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNUnet; see the file COPYING. If not, write to the - Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. - */ - -/** - * @file identity-provider/identity_attribute.c - * @brief helper library to manage identity attributes - * @author Martin Schanzenbach - */ -#include "platform.h" -#include "gnunet_util_lib.h" -#include "identity_attribute.h" - -/** - * Create a new attribute. - * - * @param name the attribute name - * @param type the attribute type - * @param data the attribute value - * @param data_size the attribute value size - * @return the new attribute - */ -struct GNUNET_IDENTITY_PROVIDER_Attribute * -attribute_new (const char* attr_name, - uint32_t attr_type, - const void* data, - size_t data_size) -{ - struct GNUNET_IDENTITY_PROVIDER_Attribute *attr; - char *write_ptr; - - attr = GNUNET_malloc (sizeof (struct GNUNET_IDENTITY_PROVIDER_Attribute) + - strlen (attr_name) + 1 + - data_size); - attr->attribute_type = attr_type; - attr->data_size = data_size; - write_ptr = (char*)&attr[1]; - GNUNET_memcpy (write_ptr, - attr_name, - strlen (attr_name) + 1); - attr->name = write_ptr; - write_ptr += strlen (attr->name) + 1; - GNUNET_memcpy (write_ptr, - data, - data_size); - attr->data = write_ptr; - return attr; -} - -size_t -attribute_list_serialize_get_size (const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs) -{ - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; - size_t len = 0; - for (le = attrs->list_head; NULL != le; le = le->next) - len += attribute_serialize_get_size (le->attribute); - return len; -} - -size_t -attribute_list_serialize (const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs, - char *result) -{ - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; - size_t len; - size_t total_len; - char* write_ptr; - - write_ptr = result; - total_len = 0; - for (le = attrs->list_head; NULL != le; le = le->next) - { - len = attribute_serialize (le->attribute, - write_ptr); - total_len += len; - write_ptr += len; - } - return total_len; -} - -struct GNUNET_IDENTITY_PROVIDER_AttributeList * -attribute_list_deserialize (const char* data, - size_t data_size) -{ - struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; - size_t attr_len; - const char* read_ptr; - - if (data_size < sizeof (struct Attribute)) - return NULL; - - attrs = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeList); - read_ptr = data; - while (((data + data_size) - read_ptr) >= sizeof (struct Attribute)) - { - - le = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry); - le->attribute = attribute_deserialize (read_ptr, - data_size - (read_ptr - data)); - GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, - "Deserialized attribute %s\n", le->attribute->name); - GNUNET_CONTAINER_DLL_insert (attrs->list_head, - attrs->list_tail, - le); - attr_len = attribute_serialize_get_size (le->attribute); - read_ptr += attr_len; - } - return attrs; -} - -struct GNUNET_IDENTITY_PROVIDER_AttributeList* -attribute_list_dup (const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs) -{ - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *result_le; - struct GNUNET_IDENTITY_PROVIDER_AttributeList *result; - size_t len; - - result = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeList); - for (le = attrs->list_head; NULL != le; le = le->next) - { - result_le = GNUNET_new (struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry); - len = sizeof (struct GNUNET_IDENTITY_PROVIDER_Attribute) + le->attribute->data_size; - result_le->attribute = GNUNET_malloc (len); - GNUNET_memcpy (result_le->attribute, - le->attribute, - len); - result_le->attribute->name = (const char*)&result_le->attribute[1]; - GNUNET_CONTAINER_DLL_insert (result->list_head, - result->list_tail, - result_le); - } - return result; -} - - -void -attribute_list_destroy (struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs) -{ - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *tmp_le; - - for (le = attrs->list_head; NULL != le;) - { - GNUNET_free (le->attribute); - tmp_le = le; - le = le->next; - GNUNET_free (tmp_le); - } - GNUNET_free (attrs); - -} - -size_t -attribute_serialize_get_size (const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr) -{ - return sizeof (struct Attribute) - + strlen (attr->name) - + attr->data_size; //TODO get data_size from plugin -} - -size_t -attribute_serialize (const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr, - char *result) -{ - size_t data_len_ser; - size_t name_len; - struct Attribute *attr_ser; - char* write_ptr; - - attr_ser = (struct Attribute*)result; - attr_ser->attribute_type = htons (attr->attribute_type); - attr_ser->attribute_version = htonl (attr->attribute_version); - name_len = strlen (attr->name); - attr_ser->name_len = htons (name_len); - write_ptr = (char*)&attr_ser[1]; - GNUNET_memcpy (write_ptr, attr->name, name_len); - write_ptr += name_len; - //TODO plugin-ize - //data_len_ser = plugin->serialize_attribute_value (attr, - // &attr_ser[1]); - data_len_ser = attr->data_size; - GNUNET_memcpy (write_ptr, attr->data, attr->data_size); - attr_ser->data_size = htons (data_len_ser); - - return sizeof (struct Attribute) + strlen (attr->name) + attr->data_size; -} - -struct GNUNET_IDENTITY_PROVIDER_Attribute * -attribute_deserialize (const char* data, - size_t data_size) -{ - struct GNUNET_IDENTITY_PROVIDER_Attribute *attr; - struct Attribute *attr_ser; - size_t data_len; - size_t name_len; - char* write_ptr; - - if (data_size < sizeof (struct Attribute)) - return NULL; - - attr_ser = (struct Attribute*)data; - //TODO use plugin. - data_len = ntohs (attr_ser->data_size); - name_len = ntohs (attr_ser->name_len); - attr = GNUNET_malloc (sizeof (struct GNUNET_IDENTITY_PROVIDER_Attribute) - + data_len + name_len + 1); - attr->attribute_type = ntohs (attr_ser->attribute_type); - attr->attribute_version = ntohl (attr_ser->attribute_version); - attr->data_size = ntohs (attr_ser->data_size); - - write_ptr = (char*)&attr[1]; - GNUNET_memcpy (write_ptr, - &attr_ser[1], - name_len); - write_ptr[name_len] = '\0'; - attr->name = write_ptr; - - write_ptr += name_len + 1; - GNUNET_memcpy (write_ptr, - (char*)&attr_ser[1] + name_len, - attr->data_size); - attr->data = write_ptr; - return attr; - -} - -/* end of identity_attribute.c */ diff --git a/src/identity-provider/identity_attribute.h b/src/identity-provider/identity_attribute.h deleted file mode 100644 index 3e8fadccf..000000000 --- a/src/identity-provider/identity_attribute.h +++ /dev/null @@ -1,149 +0,0 @@ -/* - This file is part of GNUnet. - Copyright (C) 2012-2015 GNUnet e.V. - - GNUnet is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3, or (at your - option) any later version. - - GNUnet is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNUnet; see the file COPYING. If not, write to the - Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. - */ -/** - * @author Martin Schanzenbach - * @file identity-provider/identity_attribute.h - * @brief GNUnet Identity Provider library - * - */ -#ifndef IDENTITY_ATTRIBUTE_H -#define IDENTITY_ATTRIBUTE_H - -#include "gnunet_identity_provider_service.h" - -struct Attribute -{ - /** - * Attribute type - */ - uint32_t attribute_type; - - /** - * Attribute version - */ - uint32_t attribute_version; - - /** - * Name length - */ - uint32_t name_len; - - /** - * Data size - */ - uint32_t data_size; - - //followed by data_size Attribute value data -}; - -/** - * Get required size for serialization buffer - * - * @param attrs the attribute list to serialize - * - * @return the required buffer size - */ -size_t -attribute_list_serialize_get_size (const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs); - -void -attribute_list_destroy (struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs); - - -/** - * Serialize an attribute list - * - * @param attrs the attribute list to serialize - * @param result the serialized attribute - * - * @return length of serialized data - */ -size_t -attribute_list_serialize (const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs, - char *result); - -/** - * Deserialize an attribute list - * - * @param data the serialized attribute list - * @param data_size the length of the serialized data - * - * @return a GNUNET_IDENTITY_PROVIDER_AttributeList, must be free'd by caller - */ -struct GNUNET_IDENTITY_PROVIDER_AttributeList * -attribute_list_deserialize (const char* data, - size_t data_size); - - -/** - * Get required size for serialization buffer - * - * @param attr the attribute to serialize - * - * @return the required buffer size - */ -size_t -attribute_serialize_get_size (const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr); - - - -/** - * Serialize an attribute - * - * @param attr the attribute to serialize - * @param result the serialized attribute - * - * @return length of serialized data - */ -size_t -attribute_serialize (const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr, - char *result); - -/** - * Deserialize an attribute - * - * @param data the serialized attribute - * @param data_size the length of the serialized data - * - * @return a GNUNET_IDENTITY_PROVIDER_Attribute, must be free'd by caller - */ -struct GNUNET_IDENTITY_PROVIDER_Attribute * -attribute_deserialize (const char* data, - size_t data_size); - -/** - * Create a new attribute. - * - * @param name the attribute name - * @param type the attribute type - * @param data the attribute value - * @param data_size the attribute value size - * @return the new attribute - */ -struct GNUNET_IDENTITY_PROVIDER_Attribute * -attribute_new (const char* attr_name, - uint32_t attr_type, - const void* data, - size_t data_size); - -struct GNUNET_IDENTITY_PROVIDER_AttributeList* -attribute_list_dup (const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs); - -#endif diff --git a/src/identity-provider/identity_provider_api.c b/src/identity-provider/identity_provider_api.c index 6d28709df..6fc8d228a 100644 --- a/src/identity-provider/identity_provider_api.c +++ b/src/identity-provider/identity_provider_api.c @@ -29,13 +29,12 @@ #include "gnunet_protocols.h" #include "gnunet_mq_lib.h" #include "gnunet_identity_provider_service.h" +#include "gnunet_identity_attribute_lib.h" #include "identity_provider.h" -#include "identity_attribute.h" #define LOG(kind,...) GNUNET_log_from (kind, "identity-api",__VA_ARGS__) - /** * Handle for an operation with the service. */ @@ -495,9 +494,9 @@ handle_consume_ticket_result (void *cls, return; { - struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs; - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *le; - attrs = attribute_list_deserialize ((char*)&msg[1], + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; + attrs = GNUNET_IDENTITY_ATTRIBUTE_list_deserialize ((char*)&msg[1], attrs_len); if (NULL != op->ar_cb) { @@ -512,8 +511,8 @@ handle_consume_ticket_result (void *cls, for (le = attrs->list_head; NULL != le; le = le->next) op->ar_cb (op->cls, &msg->identity, - le->attribute); - attribute_list_destroy (attrs); + le->claim); + GNUNET_IDENTITY_ATTRIBUTE_list_destroy (attrs); } } op->ar_cb (op->cls, @@ -619,9 +618,9 @@ handle_attribute_result (void *cls, } { - struct GNUNET_IDENTITY_PROVIDER_Attribute *attr; - attr = attribute_deserialize ((char*)&msg[1], - attr_len); + struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr; + attr = GNUNET_IDENTITY_ATTRIBUTE_deserialize ((char*)&msg[1], + attr_len); if (NULL != it) { if (NULL != it->proc) @@ -905,7 +904,7 @@ GNUNET_IDENTITY_PROVIDER_disconnect (struct GNUNET_IDENTITY_PROVIDER_Handle *h) struct GNUNET_IDENTITY_PROVIDER_Operation * GNUNET_IDENTITY_PROVIDER_attribute_store (struct GNUNET_IDENTITY_PROVIDER_Handle *h, const struct GNUNET_CRYPTO_EcdsaPrivateKey *pkey, - const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr, + const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr, GNUNET_IDENTITY_PROVIDER_ContinuationWithStatus cont, void *cont_cls) { @@ -921,14 +920,14 @@ GNUNET_IDENTITY_PROVIDER_attribute_store (struct GNUNET_IDENTITY_PROVIDER_Handle GNUNET_CONTAINER_DLL_insert_tail (h->op_head, h->op_tail, op); - attr_len = attribute_serialize_get_size (attr); + attr_len = GNUNET_IDENTITY_ATTRIBUTE_serialize_get_size (attr); op->env = GNUNET_MQ_msg_extra (sam, attr_len, GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ATTRIBUTE_STORE); sam->identity = *pkey; sam->id = htonl (op->r_id); - attribute_serialize (attr, + GNUNET_IDENTITY_ATTRIBUTE_serialize (attr, (char*)&sam[1]); sam->attr_len = htons (attr_len); @@ -940,24 +939,6 @@ GNUNET_IDENTITY_PROVIDER_attribute_store (struct GNUNET_IDENTITY_PROVIDER_Handle } -/** - * Create a new attribute. - * - * @param name the attribute name - * @param type the attribute type - * @param data the attribute value - * @param data_size the attribute value size - * @return the new attribute - */ -struct GNUNET_IDENTITY_PROVIDER_Attribute * -GNUNET_IDENTITY_PROVIDER_attribute_new (const char* attr_name, - uint32_t attr_type, - const void* data, - size_t data_size) -{ - return attribute_new (attr_name, attr_type, data, data_size); -} - /** * List all attributes for a local identity. * This MUST lock the `struct GNUNET_IDENTITY_PROVIDER_Handle` @@ -1089,7 +1070,7 @@ struct GNUNET_IDENTITY_PROVIDER_Operation * GNUNET_IDENTITY_PROVIDER_ticket_issue (struct GNUNET_IDENTITY_PROVIDER_Handle *h, const struct GNUNET_CRYPTO_EcdsaPrivateKey *iss, const struct GNUNET_CRYPTO_EcdsaPublicKey *rp, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs, + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs, GNUNET_IDENTITY_PROVIDER_TicketCallback cb, void *cb_cls) { @@ -1105,7 +1086,7 @@ GNUNET_IDENTITY_PROVIDER_ticket_issue (struct GNUNET_IDENTITY_PROVIDER_Handle *h GNUNET_CONTAINER_DLL_insert_tail (h->op_head, h->op_tail, op); - attr_len = attribute_list_serialize_get_size (attrs); + attr_len = GNUNET_IDENTITY_ATTRIBUTE_list_serialize_get_size (attrs); op->env = GNUNET_MQ_msg_extra (tim, attr_len, GNUNET_MESSAGE_TYPE_IDENTITY_PROVIDER_ISSUE_TICKET); @@ -1113,7 +1094,7 @@ GNUNET_IDENTITY_PROVIDER_ticket_issue (struct GNUNET_IDENTITY_PROVIDER_Handle *h tim->rp = *rp; tim->id = htonl (op->r_id); - attribute_list_serialize (attrs, + GNUNET_IDENTITY_ATTRIBUTE_list_serialize (attrs, (char*)&tim[1]); tim->attr_len = htons (attr_len); diff --git a/src/identity-provider/plugin_identity_provider_sqlite.c b/src/identity-provider/plugin_identity_provider_sqlite.c index c87f30e1c..594e4788d 100644 --- a/src/identity-provider/plugin_identity_provider_sqlite.c +++ b/src/identity-provider/plugin_identity_provider_sqlite.c @@ -27,7 +27,7 @@ #include "platform.h" #include "gnunet_identity_provider_service.h" #include "gnunet_identity_provider_plugin.h" -#include "identity_attribute.h" +#include "gnunet_identity_attribute_lib.h" #include "gnunet_sq_lib.h" #include @@ -373,7 +373,7 @@ database_shutdown (struct Plugin *plugin) static int identity_provider_sqlite_store_ticket (void *cls, const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs) + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs) { struct Plugin *plugin = cls; size_t attrs_len; @@ -402,9 +402,9 @@ identity_provider_sqlite_store_ticket (void *cls, GNUNET_SQ_reset (plugin->dbh, plugin->delete_ticket); - attrs_len = attribute_list_serialize_get_size (attrs); + attrs_len = GNUNET_IDENTITY_ATTRIBUTE_list_serialize_get_size (attrs); attrs_ser = GNUNET_malloc (attrs_len); - attribute_list_serialize (attrs, + GNUNET_IDENTITY_ATTRIBUTE_list_serialize (attrs, attrs_ser); struct GNUNET_SQ_QueryParam sparams[] = { GNUNET_SQ_query_param_auto_from_type (&ticket->identity), @@ -526,7 +526,7 @@ get_ticket_and_call_iterator (struct Plugin *plugin, void *iter_cls) { struct GNUNET_IDENTITY_PROVIDER_Ticket ticket; - struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs; + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs; int ret; int sret; size_t attrs_len; @@ -553,13 +553,13 @@ get_ticket_and_call_iterator (struct Plugin *plugin, } else { - attrs = attribute_list_deserialize (attrs_ser, + attrs = GNUNET_IDENTITY_ATTRIBUTE_list_deserialize (attrs_ser, attrs_len); if (NULL != iter) iter (iter_cls, &ticket, attrs); - attribute_list_destroy (attrs); + GNUNET_IDENTITY_ATTRIBUTE_list_destroy (attrs); ret = GNUNET_YES; } GNUNET_SQ_cleanup_result (rs); diff --git a/src/identity-provider/plugin_rest_identity_provider.c b/src/identity-provider/plugin_rest_identity_provider.c index f6039722f..c27662a0d 100644 --- a/src/identity-provider/plugin_rest_identity_provider.c +++ b/src/identity-provider/plugin_rest_identity_provider.c @@ -37,6 +37,7 @@ #include #include #include "gnunet_signatures.h" +#include "gnunet_identity_attribute_lib.h" #include "gnunet_identity_provider_service.h" /** @@ -508,7 +509,7 @@ add_attribute_cont (struct GNUNET_REST_RequestHandle *con_handle, struct RequestHandle *handle = cls; struct EgoEntry *ego_entry; struct MHD_Response *resp; - struct GNUNET_IDENTITY_PROVIDER_Attribute *attribute; + struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attribute; struct GNUNET_JSONAPI_Document *json_obj; struct GNUNET_JSONAPI_Resource *json_res; char term_data[handle->rest_handle->data_size+1]; @@ -596,8 +597,8 @@ add_attribute_cont (struct GNUNET_REST_RequestHandle *con_handle, value_json = GNUNET_JSONAPI_resource_read_attr (json_res, "value"); value_str = json_string_value (value_json); - attribute = GNUNET_IDENTITY_PROVIDER_attribute_new (name_str, - GNUNET_IDENTITY_PROVIDER_AT_STRING, + attribute = GNUNET_IDENTITY_ATTRIBUTE_claim_new (name_str, + GNUNET_IDENTITY_ATTRIBUTE_TYPE_STRING, value_str, strlen (value_str) + 1); handle->idp = GNUNET_IDENTITY_PROVIDER_connect (cfg); @@ -619,7 +620,7 @@ add_attribute_cont (struct GNUNET_REST_RequestHandle *con_handle, static void attr_collect (void *cls, const struct GNUNET_CRYPTO_EcdsaPublicKey *identity, - const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr) + const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr) { struct GNUNET_JSONAPI_Resource *json_resource; struct RequestHandle *handle = cls; @@ -833,7 +834,7 @@ revoke_ticket_cont (struct GNUNET_REST_RequestHandle *con_handle, static void consume_cont (void *cls, const struct GNUNET_CRYPTO_EcdsaPublicKey *identity, - const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr) + const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr) { struct RequestHandle *handle = cls; struct GNUNET_JSONAPI_Resource *json_resource; diff --git a/src/include/gnunet_identity_attribute_lib.h b/src/include/gnunet_identity_attribute_lib.h new file mode 100644 index 000000000..039b50351 --- /dev/null +++ b/src/include/gnunet_identity_attribute_lib.h @@ -0,0 +1,231 @@ +/* + This file is part of GNUnet. + Copyright (C) 2017 GNUnet e.V. + + GNUnet is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNUnet; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +/** + * @author Martin Schanzenbach + * + * @file + * Identity attribute definitions + * + * @defgroup identity-provider Identity Provider service + * @{ + */ +#ifndef GNUNET_IDENTITY_ATTRIBUTE_LIB_H +#define GNUNET_IDENTITY_ATTRIBUTE_LIB_H + +#ifdef __cplusplus +extern "C" +{ +#if 0 /* keep Emacsens' auto-indent happy */ +} +#endif +#endif + +#include "gnunet_util_lib.h" + + +/** + * No value attribute. + */ +#define GNUNET_IDENTITY_ATTRIBUTE_TYPE_NONE 0 + +/** + * String attribute. + */ +#define GNUNET_IDENTITY_ATTRIBUTE_TYPE_STRING 1 + + + +/** + * An attribute. + */ +struct GNUNET_IDENTITY_ATTRIBUTE_Claim +{ + /** + * The name of the attribute. Note "name" must never be individually + * free'd + */ + const char* name; + + /** + * Type of Claim + */ + uint32_t type; + + /** + * Version + */ + uint32_t version; + + /** + * Number of bytes in @e data. + */ + size_t data_size; + + /** + * Binary value stored as attribute value. Note: "data" must never + * be individually 'malloc'ed, but instead always points into some + * existing data area. + */ + const void *data; + +}; + +struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList +{ + /** + * List head + */ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *list_head; + + /** + * List tail + */ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *list_tail; +}; + +struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry +{ + /** + * DLL + */ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *prev; + + /** + * DLL + */ + struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *next; + + /** + * The attribute claim + */ + struct GNUNET_IDENTITY_ATTRIBUTE_Claim *claim; +}; + +/** + * Create a new attribute claim. + * + * @param name the attribute name + * @param type the attribute type + * @param data the attribute value + * @param data_size the attribute value size + * @return the new attribute + */ +struct GNUNET_IDENTITY_ATTRIBUTE_Claim * +GNUNET_IDENTITY_ATTRIBUTE_claim_new (const char* attr_name, + uint32_t type, + const void* data, + size_t data_size); + + +/** + * Get required size for serialization buffer + * + * @param attrs the attribute list to serialize + * + * @return the required buffer size + */ +size_t +GNUNET_IDENTITY_ATTRIBUTE_list_serialize_get_size (const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs); + +void +GNUNET_IDENTITY_ATTRIBUTE_list_destroy (struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs); + + +/** + * Serialize an attribute list + * + * @param attrs the attribute list to serialize + * @param result the serialized attribute + * + * @return length of serialized data + */ +size_t +GNUNET_IDENTITY_ATTRIBUTE_list_serialize (const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs, + char *result); + +/** + * Deserialize an attribute list + * + * @param data the serialized attribute list + * @param data_size the length of the serialized data + * + * @return a GNUNET_IDENTITY_PROVIDER_AttributeList, must be free'd by caller + */ +struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList * +GNUNET_IDENTITY_ATTRIBUTE_list_deserialize (const char* data, + size_t data_size); + + +/** + * Get required size for serialization buffer + * + * @param attr the attribute to serialize + * + * @return the required buffer size + */ +size_t +GNUNET_IDENTITY_ATTRIBUTE_serialize_get_size (const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr); + + + +/** + * Serialize an attribute + * + * @param attr the attribute to serialize + * @param result the serialized attribute + * + * @return length of serialized data + */ +size_t +GNUNET_IDENTITY_ATTRIBUTE_serialize (const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr, + char *result); + +/** + * Deserialize an attribute + * + * @param data the serialized attribute + * @param data_size the length of the serialized data + * + * @return a GNUNET_IDENTITY_PROVIDER_Attribute, must be free'd by caller + */ +struct GNUNET_IDENTITY_ATTRIBUTE_Claim * +GNUNET_IDENTITY_ATTRIBUTE_deserialize (const char* data, + size_t data_size); + +struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList* +GNUNET_IDENTITY_ATTRIBUTE_list_dup (const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs); + + + +#if 0 /* keep Emacsens' auto-indent happy */ +{ +#endif +#ifdef __cplusplus +} +#endif + + +/* ifndef GNUNET_IDENTITY_ATTRIBUTE_LIB_H */ +#endif + +/** @} */ /* end of group identity */ + +/* end of gnunet_identity_attribute_lib.h */ diff --git a/src/include/gnunet_identity_attribute_plugin.h b/src/include/gnunet_identity_attribute_plugin.h new file mode 100644 index 000000000..edeed57fd --- /dev/null +++ b/src/include/gnunet_identity_attribute_plugin.h @@ -0,0 +1,149 @@ +/* + This file is part of GNUnet + Copyright (C) 2012, 2013 GNUnet e.V. + + GNUnet is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNUnet; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +/** + * @author Martin Schanzenbach + * + * @file + * Plugin API for the idp database backend + * + * @defgroup identity-provider-plugin IdP service plugin API + * Plugin API for the idp database backend + * @{ + */ +#ifndef GNUNET_IDENTITY_ATTRIBUTE_PLUGIN_H +#define GNUNET_IDENTITY_ATTRIBUTE_PLUGIN_H + +#include "gnunet_util_lib.h" +#include "gnunet_identity_attribute_lib.h" + +#ifdef __cplusplus +extern "C" +{ +#if 0 /* keep Emacsens' auto-indent happy */ +} +#endif +#endif + + +/** + * Function called to convert the binary value @a data of an attribute of + * type @a type to a human-readable string. + * + * @param cls closure + * @param type type of the attribute + * @param data value in binary encoding + * @param data_size number of bytes in @a data + * @return NULL on error, otherwise human-readable representation of the value + */ +typedef char * (*GNUNET_IDENTITY_ATTRIBUTE_ValueToStringFunction) (void *cls, + uint32_t type, + const void *data, + size_t data_size); + + +/** + * Function called to convert human-readable version of the value @a s + * of an attribute of type @a type to the respective binary + * representation. + * + * @param cls closure + * @param type type of the attribute + * @param s human-readable string + * @param data set to value in binary encoding (will be allocated) + * @param data_size set to number of bytes in @a data + * @return #GNUNET_OK on success + */ +typedef int (*GNUNET_IDENTITY_ATTRIBUTE_StringToValueFunction) (void *cls, + uint32_t type, + const char *s, + void **data, + size_t *data_size); + + +/** + * Function called to convert a type name to the + * corresponding number. + * + * @param cls closure + * @param typename name to convert + * @return corresponding number, UINT32_MAX on error + */ +typedef uint32_t (*GNUNET_IDENTITY_ATTRIBUTE_TypenameToNumberFunction) (void *cls, + const char *typename); + + +/** + * Function called to convert a type number (i.e. 1) to the + * corresponding type string + * + * @param cls closure + * @param type number of a type to convert + * @return corresponding typestring, NULL on error + */ +typedef const char * (*GNUNET_IDENTITY_ATTRIBUTE_NumberToTypenameFunction) (void *cls, + uint32_t type); + + +/** + * Each plugin is required to return a pointer to a struct of this + * type as the return value from its entry point. + */ +struct GNUNET_IDENTITY_ATTRIBUTE_PluginFunctions +{ + + /** + * Closure for all of the callbacks. + */ + void *cls; + + /** + * Conversion to string. + */ + GNUNET_IDENTITY_ATTRIBUTE_ValueToStringFunction value_to_string; + + /** + * Conversion to binary. + */ + GNUNET_IDENTITY_ATTRIBUTE_StringToValueFunction string_to_value; + + /** + * Typename to number. + */ + GNUNET_IDENTITY_ATTRIBUTE_TypenameToNumberFunction typename_to_number; + + /** + * Number to typename. + */ + GNUNET_IDENTITY_ATTRIBUTE_NumberToTypenameFunction number_to_typename; + +}; + + +#if 0 /* keep Emacsens' auto-indent happy */ +{ +#endif +#ifdef __cplusplus +} +#endif + +#endif + +/** @} */ /* end of group */ diff --git a/src/include/gnunet_identity_provider_plugin.h b/src/include/gnunet_identity_provider_plugin.h index c0a258ab6..4b5098d58 100644 --- a/src/include/gnunet_identity_provider_plugin.h +++ b/src/include/gnunet_identity_provider_plugin.h @@ -51,7 +51,7 @@ extern "C" */ typedef void (*GNUNET_IDENTITY_PROVIDER_TicketIterator) (void *cls, const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs); + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs); /** @@ -74,7 +74,7 @@ struct GNUNET_IDENTITY_PROVIDER_PluginFunctions */ int (*store_ticket) (void *cls, const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs); + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs); /** * Delete a ticket from the database. @@ -111,7 +111,6 @@ struct GNUNET_IDENTITY_PROVIDER_PluginFunctions void *iter_cls); }; - #if 0 /* keep Emacsens' auto-indent happy */ { #endif diff --git a/src/include/gnunet_identity_provider_service.h b/src/include/gnunet_identity_provider_service.h index d17a1cc9c..6bc05d0f4 100644 --- a/src/include/gnunet_identity_provider_service.h +++ b/src/include/gnunet_identity_provider_service.h @@ -39,7 +39,7 @@ extern "C" #endif #include "gnunet_util_lib.h" - +#include "gnunet_identity_attribute_lib.h" /** * Version number of GNUnet Identity Provider API. @@ -82,92 +82,6 @@ struct GNUNET_IDENTITY_PROVIDER_Ticket */ struct GNUNET_IDENTITY_PROVIDER_Operation; -/** - * Flags that can be set for an attribute. - */ -enum GNUNET_IDENTITY_PROVIDER_AttributeType -{ - - /** - * No value attribute. - */ - GNUNET_IDENTITY_PROVIDER_AT_NULL = 0, - - /** - * String attribute. - */ - GNUNET_IDENTITY_PROVIDER_AT_STRING = 1, - -}; - - - -/** - * An attribute. - */ -struct GNUNET_IDENTITY_PROVIDER_Attribute -{ - - /** - * Type of Attribute. - */ - uint32_t attribute_type; - - /** - * Attribute version - */ - uint32_t attribute_version; - - /** - * Number of bytes in @e data. - */ - size_t data_size; - - /** - * The name of the attribute. Note "name" must never be individually - * free'd - */ - const char* name; - - /** - * Binary value stored as attribute value. Note: "data" must never - * be individually 'malloc'ed, but instead always points into some - * existing data area. - */ - const void *data; - -}; - -struct GNUNET_IDENTITY_PROVIDER_AttributeList -{ - /** - * List head - */ - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *list_head; - - /** - * List tail - */ - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *list_tail; -}; - -struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry -{ - /** - * DLL - */ - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *prev; - - /** - * DLL - */ - struct GNUNET_IDENTITY_PROVIDER_AttributeListEntry *next; - - /** - * The attribute - */ - struct GNUNET_IDENTITY_PROVIDER_Attribute *attribute; -}; /** * Connect to the identity provider service. @@ -208,26 +122,11 @@ typedef void struct GNUNET_IDENTITY_PROVIDER_Operation * GNUNET_IDENTITY_PROVIDER_attribute_store (struct GNUNET_IDENTITY_PROVIDER_Handle *h, const struct GNUNET_CRYPTO_EcdsaPrivateKey *pkey, - const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr, + const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr, GNUNET_IDENTITY_PROVIDER_ContinuationWithStatus cont, void *cont_cls); -/** - * Create a new attribute. - * - * @param name the attribute name - * @param type the attribute type - * @param data the attribute value - * @param data_size the attribute value size - * @return the new attribute - */ -struct GNUNET_IDENTITY_PROVIDER_Attribute * -GNUNET_IDENTITY_PROVIDER_attribute_new (const char* attr_name, - uint32_t attr_type, - const void* data, - size_t data_size); - /** * Process an attribute that was stored in the idp. * @@ -237,7 +136,7 @@ GNUNET_IDENTITY_PROVIDER_attribute_new (const char* attr_name, typedef void (*GNUNET_IDENTITY_PROVIDER_AttributeResult) (void *cls, const struct GNUNET_CRYPTO_EcdsaPublicKey *identity, - const struct GNUNET_IDENTITY_PROVIDER_Attribute *attr); + const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr); @@ -327,7 +226,7 @@ struct GNUNET_IDENTITY_PROVIDER_Operation * GNUNET_IDENTITY_PROVIDER_ticket_issue (struct GNUNET_IDENTITY_PROVIDER_Handle *id, const struct GNUNET_CRYPTO_EcdsaPrivateKey *iss, const struct GNUNET_CRYPTO_EcdsaPublicKey *rp, - const struct GNUNET_IDENTITY_PROVIDER_AttributeList *attrs, + const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs, GNUNET_IDENTITY_PROVIDER_TicketCallback cb, void *cb_cls); -- cgit v1.2.3 From f485d0399e8ef0c388a321bbad7ae424935752bc Mon Sep 17 00:00:00 2001 From: "Schanzenbach, Martin" Date: Mon, 4 Dec 2017 16:37:28 +0100 Subject: -fix makefile --- po/POTFILES.in | 2 +- src/identity-attribute/Makefile.am | 2 +- src/identity-attribute/identity_attribute.c | 176 ++++++++++++++++++++++++++++ src/identity-provider/gnunet-idp.c | 12 +- src/include/gnunet_identity_attribute_lib.h | 45 +++++++ 5 files changed, 231 insertions(+), 6 deletions(-) (limited to 'po') diff --git a/po/POTFILES.in b/po/POTFILES.in index b06eb3a9f..01c197fcd 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -197,7 +197,7 @@ src/hostlist/gnunet-daemon-hostlist.c src/hostlist/gnunet-daemon-hostlist_client.c src/hostlist/gnunet-daemon-hostlist_server.c src/identity-attribute/identity_attribute.c -src/identity-attribute/plugin_identity_attribute_type_gnuid.c +src/identity-attribute/plugin_identity_attribute_gnuid.c src/identity-provider/gnunet-idp.c src/identity-provider/gnunet-service-identity-provider.c src/identity-provider/identity_provider_api.c diff --git a/src/identity-attribute/Makefile.am b/src/identity-attribute/Makefile.am index 770bc2ead..583545344 100644 --- a/src/identity-attribute/Makefile.am +++ b/src/identity-attribute/Makefile.am @@ -38,7 +38,7 @@ libgnunet_plugin_identity_attribute_gnuid_la_SOURCES = \ libgnunet_plugin_identity_attribute_gnuid_la_LIBADD = \ $(top_builddir)/src/util/libgnunetutil.la \ $(LTLIBINTL) -libgnunet_plugin_gnsrecord_dns_la_LDFLAGS = \ +libgnunet_plugin_identity_attribute_gnuid_la_LDFLAGS = \ $(GN_PLUGIN_LDFLAGS) diff --git a/src/identity-attribute/identity_attribute.c b/src/identity-attribute/identity_attribute.c index 377eb3211..05cdcdaf0 100644 --- a/src/identity-attribute/identity_attribute.c +++ b/src/identity-attribute/identity_attribute.c @@ -26,6 +26,182 @@ #include "platform.h" #include "gnunet_util_lib.h" #include "identity_attribute.h" +#include "gnunet_identity_attribute_plugin.h" + +/** + * Handle for a plugin + */ +struct Plugin +{ + /** + * Name of the plugin + */ + char *library_name; + + /** + * Plugin API + */ + struct GNUNET_IDENTITY_ATTRIBUTE_PluginFunctions *api; +}; + +/** + * Plugins + */ +static struct Plugin **attr_plugins; + +/** + * Number of plugins + */ +static unsigned int num_plugins; + +/** + * Init canary + */ +static int initialized; + +/** + * Add a plugin + */ +static void +add_plugin (void* cls, + const char *library_name, + void *lib_ret) +{ + struct GNUNET_IDENTITY_ATTRIBUTE_PluginFunctions *api = lib_ret; + struct Plugin *plugin; + + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "Loading attribute plugin `%s'\n", + library_name); + plugin = GNUNET_new (struct Plugin); + plugin->api = api; + plugin->library_name = GNUNET_strdup (library_name); + GNUNET_array_append (attr_plugins, num_plugins, plugin); +} + +/** + * Load plugins + */ +static void +init() +{ + if (GNUNET_YES == initialized) + return; + initialized = GNUNET_YES; + GNUNET_PLUGIN_load_all ("libgnunet_plugin_attribute_", NULL, + &add_plugin, NULL); +} + +/** + * Convert a type name to the corresponding number + * + * @param typename name to convert + * @return corresponding number, UINT32_MAX on error + */ +uint32_t +GNUNET_IDENTITY_ATTRIBUTE_typename_to_number (const char *typename) +{ + unsigned int i; + struct Plugin *plugin; + uint32_t ret; + + init (); + for (i = 0; i < num_plugins; i++) + { + plugin = attr_plugins[i]; + if (UINT32_MAX != (ret = plugin->api->typename_to_number (plugin->api->cls, + typename))) + return ret; + } + return UINT32_MAX; +} + +/** + * Convert a type number to the corresponding type string + * + * @param type number of a type + * @return corresponding typestring, NULL on error + */ +const char* +GNUNET_IDENTITY_ATTRIBUTE_number_to_typename (uint32_t type) +{ + unsigned int i; + struct Plugin *plugin; + const char *ret; + + init (); + for (i = 0; i < num_plugins; i++) + { + plugin = attr_plugins[i]; + if (NULL != (ret = plugin->api->number_to_typename (plugin->api->cls, + type))) + return ret; + } + return NULL; +} + +/** + * Convert human-readable version of a 'claim' of an attribute to the binary + * representation + * + * @param type type of the claim + * @param s human-readable string + * @param data set to value in binary encoding (will be allocated) + * @param data_size set to number of bytes in @a data + * @return #GNUNET_OK on success + */ +int +GNUNET_IDENTITY_ATTRIBUTE_string_to_claim (uint32_t type, + const char *s, + void **data, + size_t *data_size) +{ + unsigned int i; + struct Plugin *plugin; + + init (); + for (i = 0; i < num_plugins; i++) + { + plugin = attr_plugins[i]; + if (GNUNET_OK == plugin->api->string_to_value (plugin->api->cls, + type, + s, + data, + data_size)) + return GNUNET_OK; + } + return GNUNET_SYSERR; +} + +/** + * Convert the 'claim' of an attribute to a string + * + * @param type the type of attribute + * @param data claim in binary encoding + * @param data_size number of bytes in @a data + * @return NULL on error, otherwise human-readable representation of the claim + */ +char * +GNUNET_IDENTITY_ATTRIBUTE_claim_to_string (uint32_t type, + const void* data, + size_t data_size) +{ + unsigned int i; + struct Plugin *plugin; + char *ret; + + init(); + for (i = 0; i < num_plugins; i++) + { + plugin = attr_plugins[i]; + if (NULL != (ret = plugin->api->value_to_string (plugin->api->cls, + type, + data, + data_size))) + return ret; + } + return NULL; +} /** * Create a new attribute. diff --git a/src/identity-provider/gnunet-idp.c b/src/identity-provider/gnunet-idp.c index 18a5676c0..78da1cb4d 100644 --- a/src/identity-provider/gnunet-idp.c +++ b/src/identity-provider/gnunet-idp.c @@ -168,6 +168,7 @@ process_attrs (void *cls, const struct GNUNET_CRYPTO_EcdsaPublicKey *identity, const struct GNUNET_IDENTITY_ATTRIBUTE_Claim *attr) { + char *claim; if (NULL == identity) { GNUNET_SCHEDULER_add_now (&do_cleanup, NULL); @@ -178,8 +179,11 @@ process_attrs (void *cls, ret = 1; return; } + claim = GNUNET_IDENTITY_ATTRIBUTE_claim_to_string (attr->type, + attr->data, + attr->data_size); GNUNET_log (GNUNET_ERROR_TYPE_MESSAGE, - "%s: %s\n", attr->name, (char*)attr->data); + "%s: %s\n", attr->name, claim); } @@ -245,9 +249,9 @@ iter_finished (void *cls) return; } attr = GNUNET_IDENTITY_ATTRIBUTE_claim_new (attr_name, - GNUNET_IDENTITY_ATTRIBUTE_TYPE_STRING, - attr_value, - strlen (attr_value) + 1); + GNUNET_IDENTITY_ATTRIBUTE_TYPE_STRING, + attr_value, + strlen (attr_value) + 1); idp_op = GNUNET_IDENTITY_PROVIDER_attribute_store (idp_handle, pkey, attr, diff --git a/src/include/gnunet_identity_attribute_lib.h b/src/include/gnunet_identity_attribute_lib.h index 039b50351..4e32c2ae1 100644 --- a/src/include/gnunet_identity_attribute_lib.h +++ b/src/include/gnunet_identity_attribute_lib.h @@ -213,7 +213,52 @@ GNUNET_IDENTITY_ATTRIBUTE_deserialize (const char* data, struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList* GNUNET_IDENTITY_ATTRIBUTE_list_dup (const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs); +/** + * Convert a type name to the corresponding number + * + * @param typename name to convert + * @return corresponding number, UINT32_MAX on error + */ +uint32_t +GNUNET_IDENTITY_ATTRIBUTE_typename_to_number (const char *typename); + +/** + * Convert human-readable version of a 'claim' of an attribute to the binary + * representation + * + * @param type type of the claim + * @param s human-readable string + * @param data set to value in binary encoding (will be allocated) + * @param data_size set to number of bytes in @a data + * @return #GNUNET_OK on success + */ +int +GNUNET_IDENTITY_ATTRIBUTE_string_to_claim (uint32_t type, + const char *s, + void **data, + size_t *data_size); +/** + * Convert the 'claim' of an attribute to a string + * + * @param type the type of attribute + * @param data claim in binary encoding + * @param data_size number of bytes in @a data + * @return NULL on error, otherwise human-readable representation of the claim + */ +char * +GNUNET_IDENTITY_ATTRIBUTE_claim_to_string (uint32_t type, + const void* data, + size_t data_size); + +/** + * Convert a type number to the corresponding type string + * + * @param type number of a type + * @return corresponding typestring, NULL on error + */ +const char* +GNUNET_IDENTITY_ATTRIBUTE_number_to_typename (uint32_t type); #if 0 /* keep Emacsens' auto-indent happy */ { -- cgit v1.2.3 From fb85cf602c67994646c156aa9e05d2b9aa10816c Mon Sep 17 00:00:00 2001 From: "Schanzenbach, Martin" Date: Wed, 3 Jan 2018 10:11:40 +0100 Subject: -move abe functionality out of util; prepare for release --- Dockerfile | 63 ---- configure.ac | 1 + contrib/Dockerfile | 63 ++++ contrib/docker-entrypoint.sh | 3 + docker-entrypoint.sh | 3 - po/POTFILES.in | 1 + src/Makefile.am | 7 +- src/abe/Makefile.am | 50 +++ src/abe/abe.c | 417 +++++++++++++++++++++ src/abe/test_cpabe.c | 87 +++++ src/identity-provider/Makefile.am | 1 + .../gnunet-service-identity-provider.c | 77 ++-- src/include/gnunet_abe_lib.h | 143 +++++++ src/include/gnunet_crypto_lib.h | 82 ---- src/util/Makefile.am | 23 -- src/util/test_crypto_abe.c | 86 ----- 16 files changed, 809 insertions(+), 298 deletions(-) delete mode 100644 Dockerfile create mode 100644 contrib/Dockerfile create mode 100644 contrib/docker-entrypoint.sh delete mode 100644 docker-entrypoint.sh create mode 100644 src/abe/Makefile.am create mode 100644 src/abe/abe.c create mode 100644 src/abe/test_cpabe.c create mode 100644 src/include/gnunet_abe_lib.h delete mode 100644 src/util/test_crypto_abe.c (limited to 'po') diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 5a193a46d..000000000 --- a/Dockerfile +++ /dev/null @@ -1,63 +0,0 @@ -from fedora:26 - -# Install the required build tools -RUN dnf -y update && dnf -y install which git automake texinfo gettext-devel autoconf libtool libtool-ltdl-devel libidn-devel libunistring-devel glpk libextractor-devel libmicrohttpd-devel gnutls libgcrypt-devel jansson-devel sqlite-devel npm - -WORKDIR /usr/src - -# Install gnurl from source at version gnurl-7.54.0 -RUN git clone https://git.taler.net/gnurl.git --branch gnurl-7.54.0 -WORKDIR /usr/src/gnurl -RUN autoreconf -i -RUN ./configure --enable-ipv6 --with-gnutls --without-libssh2 \ ---without-libmetalink --without-winidn --without-librtmp \ ---without-nghttp2 --without-nss --without-cyassl \ ---without-polarssl --without-ssl --without-winssl \ ---without-darwinssl --disable-sspi --disable-ntlm-wb --disable-ldap \ ---disable-rtsp --disable-dict --disable-telnet --disable-tftp \ ---disable-pop3 --disable-imap --disable-smtp --disable-gopher \ ---disable-file --disable-ftp --disable-smb -RUN make install -WORKDIR /usr/src - -RUN dnf -y install wget flex bison - -# Install libpbc -RUN wget https://crypto.stanford.edu/pbc/files/pbc-0.5.14.tar.gz -RUN tar xvzpf pbc-0.5.14.tar.gz -WORKDIR /usr/src/pbc-0.5.14 -RUN ./configure --prefix=/usr -RUN make install -WORKDIR /usr/src - -RUN dnf -y install glib2-devel - -# Install libbswabe -RUN git clone https://github.com/schanzen/libgabe.git -WORKDIR /usr/src/libgabe -RUN ./configure --prefix=/usr -RUN make install - -# Install WebUI -WORKDIR /usr/src/ -RUN git clone https://github.com/schanzen/gnunet-webui.git -WORKDIR /usr/src/gnunet-webui -RUN git checkout gnuidentity - -RUN mkdir /usr/src/gnunet -WORKDIR /usr/src/gnunet -ADD . . -ARG NUM_JOBS -RUN ./bootstrap -RUN ./configure --prefix=/usr/local -RUN make -j$NUM_JOBS -RUN make install - -RUN groupadd gnunetdns -RUN adduser --system -m --home-dir /var/lib/gnunet gnunet -RUN chown gnunet:gnunet /var/lib/gnunet -RUN echo '[arm]\nSYSTEM_ONLY = YES\nUSER_ONLY = NO\n' > /etc/gnunet.conf - -ADD docker-entrypoint.sh . - -CMD ["sh", "docker-entrypoint.sh"] diff --git a/configure.ac b/configure.ac index ac00bd5d6..017b4836c 100644 --- a/configure.ac +++ b/configure.ac @@ -1658,6 +1658,7 @@ src/vpn/vpn.conf src/zonemaster/Makefile src/zonemaster/zonemaster.conf src/rest/Makefile +src/abe/Makefile src/identity-attribute/Makefile src/identity-provider/Makefile pkgconfig/Makefile diff --git a/contrib/Dockerfile b/contrib/Dockerfile new file mode 100644 index 000000000..5a193a46d --- /dev/null +++ b/contrib/Dockerfile @@ -0,0 +1,63 @@ +from fedora:26 + +# Install the required build tools +RUN dnf -y update && dnf -y install which git automake texinfo gettext-devel autoconf libtool libtool-ltdl-devel libidn-devel libunistring-devel glpk libextractor-devel libmicrohttpd-devel gnutls libgcrypt-devel jansson-devel sqlite-devel npm + +WORKDIR /usr/src + +# Install gnurl from source at version gnurl-7.54.0 +RUN git clone https://git.taler.net/gnurl.git --branch gnurl-7.54.0 +WORKDIR /usr/src/gnurl +RUN autoreconf -i +RUN ./configure --enable-ipv6 --with-gnutls --without-libssh2 \ +--without-libmetalink --without-winidn --without-librtmp \ +--without-nghttp2 --without-nss --without-cyassl \ +--without-polarssl --without-ssl --without-winssl \ +--without-darwinssl --disable-sspi --disable-ntlm-wb --disable-ldap \ +--disable-rtsp --disable-dict --disable-telnet --disable-tftp \ +--disable-pop3 --disable-imap --disable-smtp --disable-gopher \ +--disable-file --disable-ftp --disable-smb +RUN make install +WORKDIR /usr/src + +RUN dnf -y install wget flex bison + +# Install libpbc +RUN wget https://crypto.stanford.edu/pbc/files/pbc-0.5.14.tar.gz +RUN tar xvzpf pbc-0.5.14.tar.gz +WORKDIR /usr/src/pbc-0.5.14 +RUN ./configure --prefix=/usr +RUN make install +WORKDIR /usr/src + +RUN dnf -y install glib2-devel + +# Install libbswabe +RUN git clone https://github.com/schanzen/libgabe.git +WORKDIR /usr/src/libgabe +RUN ./configure --prefix=/usr +RUN make install + +# Install WebUI +WORKDIR /usr/src/ +RUN git clone https://github.com/schanzen/gnunet-webui.git +WORKDIR /usr/src/gnunet-webui +RUN git checkout gnuidentity + +RUN mkdir /usr/src/gnunet +WORKDIR /usr/src/gnunet +ADD . . +ARG NUM_JOBS +RUN ./bootstrap +RUN ./configure --prefix=/usr/local +RUN make -j$NUM_JOBS +RUN make install + +RUN groupadd gnunetdns +RUN adduser --system -m --home-dir /var/lib/gnunet gnunet +RUN chown gnunet:gnunet /var/lib/gnunet +RUN echo '[arm]\nSYSTEM_ONLY = YES\nUSER_ONLY = NO\n' > /etc/gnunet.conf + +ADD docker-entrypoint.sh . + +CMD ["sh", "docker-entrypoint.sh"] diff --git a/contrib/docker-entrypoint.sh b/contrib/docker-entrypoint.sh new file mode 100644 index 000000000..807d86d6f --- /dev/null +++ b/contrib/docker-entrypoint.sh @@ -0,0 +1,3 @@ +#!/bin/bash +gnunet-arm -s > $HOME/gnunet.log 2>&1 +exec bash \ No newline at end of file diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh deleted file mode 100644 index 807d86d6f..000000000 --- a/docker-entrypoint.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash -gnunet-arm -s > $HOME/gnunet.log 2>&1 -exec bash \ No newline at end of file diff --git a/po/POTFILES.in b/po/POTFILES.in index e0654d4b4..2fcb74c09 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,3 +1,4 @@ +src/abe/abe.c src/arm/arm_api.c src/arm/arm_monitor_api.c src/arm/gnunet-arm.c diff --git a/src/Makefile.am b/src/Makefile.am index fcdd44bfb..6d0284157 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -14,9 +14,10 @@ if HAVE_EXPERIMENTAL rps # dv (FTBFS) if HAVE_ABE - EXP_DIR += identity-attribute \ - identity-provider \ - credential + EXP_DIR += abe \ + credential \ + identity-attribute \ + identity-provider endif endif diff --git a/src/abe/Makefile.am b/src/abe/Makefile.am new file mode 100644 index 000000000..308e6c67c --- /dev/null +++ b/src/abe/Makefile.am @@ -0,0 +1,50 @@ +# This Makefile.am is in the public domain +AM_CPPFLAGS = -I$(top_srcdir)/src/include + +plugindir = $(libdir)/gnunet + +libexecdir= $(pkglibdir)/libexec/ + +pkgcfgdir= $(pkgdatadir)/config.d/ + +dist_pkgcfg_DATA = \ + abe.conf + +if USE_COVERAGE + AM_CFLAGS = --coverage -O0 + XLIB = -lgcov +endif + +libgnunetabe_la_SOURCES = abe.c + +libgnunetabe_la_LIBADD = \ + $(GCLIBADD)\ + $(LIBGCRYPT_LIBS) \ + $(LTLIBICONV) \ + $(LTLIBINTL) \ + $(ABE_LIBADD) \ + -lgabe \ + -lpbc \ + -lglib-2.0 \ + -lltdl $(Z_LIBS) -lunistring $(XLIB) + +libgnunetabe_la_LDFLAGS = \ + $(GN_LIB_LDFLAGS) \ + -version-info 1:0:0 + +lib_LTLIBRARIES = libgnunetabe.la + +if ENABLE_TEST_RUN +AM_TESTS_ENVIRONMENT=export GNUNET_PREFIX=$${GNUNET_PREFIX:-@libdir@};export PATH=$${GNUNET_PREFIX:-@prefix@}/bin:$$PATH;unset XDG_DATA_HOME;unset XDG_CONFIG_HOME; +TESTS = $(check_PROGRAMS) +endif + +check_PROGRAMS = test_cpabe + +test_cpabe_SOURCES = \ + test_cpabe.c +test_cpabe_LDADD = \ + libgnunetabe.la \ + $(top_builddir)/src/util/libgnunetutil.la +check_PROGRAMS += \ + test_cpabe diff --git a/src/abe/abe.c b/src/abe/abe.c new file mode 100644 index 000000000..d008cc522 --- /dev/null +++ b/src/abe/abe.c @@ -0,0 +1,417 @@ +/* + This file is part of GNUnet. Copyright (C) 2001-2014 Christian Grothoff + (and other contributing authors) + + GNUnet is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNUnet; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +*/ + +/** + * @file util/crypto_random.c + * @brief functions to gather random numbers + * @author Christian Grothoff + */ + + +#include "platform.h" +#include +#include + +#include "gnunet_crypto_lib.h" +#include "gnunet_abe_lib.h" + +struct GNUNET_ABE_AbeMasterKey +{ + gabe_pub_t* pub; + gabe_msk_t* msk; +}; + +struct GNUNET_ABE_AbeKey +{ + gabe_pub_t* pub; + gabe_prv_t* prv; +}; + +static int +init_aes( element_t k, int enc, + gcry_cipher_hd_t* handle, + struct GNUNET_CRYPTO_SymmetricSessionKey *key, + unsigned char* iv) +{ + int rc; + int key_len; + unsigned char* key_buf; + + key_len = element_length_in_bytes(k) < 33 ? 3 : element_length_in_bytes(k); + key_buf = (unsigned char*) malloc(key_len); + element_to_bytes(key_buf, k); + + memcpy (key->aes_key, key_buf, GNUNET_CRYPTO_AES_KEY_LENGTH); + GNUNET_assert (0 == + gcry_cipher_open (handle, GCRY_CIPHER_AES256, + GCRY_CIPHER_MODE_CFB, 0)); + rc = gcry_cipher_setkey (*handle, + key->aes_key, + sizeof (key->aes_key)); + GNUNET_assert ((0 == rc) || ((char) rc == GPG_ERR_WEAK_KEY)); + memset (iv, 0, 16); //TODO make reasonable + rc = gcry_cipher_setiv (*handle, + iv, + 16); + GNUNET_assert ((0 == rc) || ((char) rc == GPG_ERR_WEAK_KEY)); + + free(key_buf); + return rc; +} + +static int +aes_128_cbc_encrypt( char* pt, + int size, + element_t k, + char **ct ) +{ + gcry_cipher_hd_t handle; + struct GNUNET_CRYPTO_SymmetricSessionKey skey; + unsigned char iv[16]; + char* buf; + int padding; + int buf_size; + uint8_t len[4]; + init_aes(k, 1, &handle, &skey, iv); + + /* TODO make less crufty */ + + /* stuff in real length (big endian) before padding */ + len[0] = (size & 0xff000000)>>24; + len[1] = (size & 0xff0000)>>16; + len[2] = (size & 0xff00)>>8; + len[3] = (size & 0xff)>>0; + padding = 16 - ((4+size) % 16); + buf_size = 4 + size + padding; + buf = GNUNET_malloc (buf_size); + GNUNET_memcpy (buf, len, 4); + GNUNET_memcpy (buf+4, pt, size); + *ct = GNUNET_malloc (buf_size); + + GNUNET_assert (0 == gcry_cipher_encrypt (handle, *ct, buf_size, buf, buf_size)); + gcry_cipher_close (handle); + //AES_cbc_encrypt(pt->data, ct->data, pt->len, &key, iv, AES_ENCRYPT); + GNUNET_free (buf); + return buf_size; +} + +static int +aes_128_cbc_decrypt( char* ct, + int size, + element_t k, + char **pt ) +{ + struct GNUNET_CRYPTO_SymmetricSessionKey skey; + gcry_cipher_hd_t handle; + unsigned char iv[16]; + char* tmp; + uint32_t len; + + init_aes(k, 1, &handle, &skey, iv); + + tmp = GNUNET_malloc (size); + + //AES_cbc_encrypt(ct->data, pt->data, ct->len, &key, iv, AES_DECRYPT); + GNUNET_assert (0 == gcry_cipher_decrypt (handle, tmp, size, ct, size)); + gcry_cipher_close (handle); + /* TODO make less crufty */ + + /* get real length */ + len = 0; + len = len + | ((tmp[0])<<24) | ((tmp[1])<<16) + | ((tmp[2])<<8) | ((tmp[3])<<0); + /* truncate any garbage from the padding */ + *pt = GNUNET_malloc (len); + GNUNET_memcpy (*pt, tmp+4, len); + GNUNET_free (tmp); + return len; +} + +struct GNUNET_ABE_AbeMasterKey* +GNUNET_ABE_cpabe_create_master_key (void) +{ + struct GNUNET_ABE_AbeMasterKey* key; + key = GNUNET_new (struct GNUNET_ABE_AbeMasterKey); + gabe_setup(&key->pub, &key->msk); + GNUNET_assert (NULL != key->pub); + GNUNET_assert (NULL != key->msk); + return key; +} + +void +GNUNET_ABE_cpabe_delete_master_key (struct GNUNET_ABE_AbeMasterKey *key) +{ + gabe_msk_free (key->msk); + gabe_pub_free (key->pub); + //GNUNET_free (key->msk); + //gabe_msk_free (key->msk); //For some reason free of pub implicit? + GNUNET_free (key); +} + +struct GNUNET_ABE_AbeKey* +GNUNET_ABE_cpabe_create_key (struct GNUNET_ABE_AbeMasterKey *key, + char **attrs) +{ + struct GNUNET_ABE_AbeKey *prv_key; + int size; + char *tmp; + + prv_key = GNUNET_new (struct GNUNET_ABE_AbeKey); + prv_key->prv = gabe_keygen(key->pub, key->msk, attrs); + size = gabe_pub_serialize(key->pub, &tmp); + prv_key->pub = gabe_pub_unserialize(tmp, size); + GNUNET_free (tmp); + GNUNET_assert (NULL != prv_key->prv); + return prv_key; +} + +void +GNUNET_ABE_cpabe_delete_key (struct GNUNET_ABE_AbeKey *key, + int delete_pub) +{ + //Memory management in gabe is buggy + gabe_prv_free (key->prv); + if (GNUNET_YES == delete_pub) + gabe_pub_free (key->pub); + GNUNET_free (key); +} + +ssize_t +write_cpabe (void **result, + uint32_t file_len, + char* cph_buf, + int cph_buf_len, + char* aes_buf, + int aes_buf_len) +{ + char *ptr; + uint32_t *len; + + *result = GNUNET_malloc (12 + cph_buf_len + aes_buf_len); + ptr = *result; + len = (uint32_t*) ptr; + *len = htonl (file_len); + ptr += 4; + len = (uint32_t*) ptr; + *len = htonl (aes_buf_len); + ptr += 4; + memcpy (ptr, aes_buf, aes_buf_len); + ptr += aes_buf_len; + len = (uint32_t*) ptr; + *len = htonl (cph_buf_len); + ptr += 4; + memcpy (ptr, cph_buf, cph_buf_len); + return 12 + cph_buf_len + aes_buf_len; +} + +ssize_t +read_cpabe (const void *data, + char** cph_buf, + int *cph_buf_len, + char** aes_buf, + int *aes_buf_len) +{ + int buf_len; + char *ptr; + uint32_t *len; + + ptr = (char*)data; + len = (uint32_t*)ptr; + buf_len = ntohl (*len); + ptr += 4; + len = (uint32_t*)ptr; + *aes_buf_len = ntohl (*len); + ptr += 4; + *aes_buf = GNUNET_malloc (*aes_buf_len); + memcpy(*aes_buf, ptr, *aes_buf_len); + ptr += *aes_buf_len; + len = (uint32_t*)ptr; + *cph_buf_len = ntohl (*len); + ptr += 4; + *cph_buf = GNUNET_malloc (*cph_buf_len); + memcpy(*cph_buf, ptr, *cph_buf_len); + + return buf_len; +} + +ssize_t +GNUNET_ABE_cpabe_encrypt (const void *block, + size_t size, + const char *policy, + const struct GNUNET_ABE_AbeMasterKey *key, + void **result) +{ + gabe_cph_t* cph; + char* plt; + char* cph_buf; + char* aes_buf; + element_t m; + int cph_buf_len; + int aes_buf_len; + ssize_t result_len; + + if( !(cph = gabe_enc(key->pub, m, (char*)policy)) ) + return GNUNET_SYSERR; + cph_buf_len = gabe_cph_serialize(cph, + &cph_buf); + gabe_cph_free(cph); + GNUNET_free (cph); + plt = GNUNET_memdup (block, size); + aes_buf_len = aes_128_cbc_encrypt(plt, size, m, &aes_buf); + GNUNET_free (plt); + element_clear(m); + result_len = write_cpabe(result, size, cph_buf, cph_buf_len, aes_buf, aes_buf_len); + GNUNET_free(cph_buf); + GNUNET_free(aes_buf); + return result_len; +} + +ssize_t +GNUNET_ABE_cpabe_decrypt (const void *block, + size_t size, + const struct GNUNET_ABE_AbeKey *key, + void **result) +{ + char* aes_buf; + char* cph_buf; + gabe_cph_t* cph; + element_t m; + int cph_buf_size; + int aes_buf_size; + int plt_len; + + read_cpabe(block, &cph_buf, &cph_buf_size, &aes_buf, &aes_buf_size); + cph = gabe_cph_unserialize(key->pub, cph_buf, cph_buf_size); + if( !gabe_dec(key->pub, key->prv, cph, m) ) { + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "%s\n", gabe_error()); + GNUNET_free (aes_buf); + GNUNET_free (cph_buf); + gabe_cph_free(cph); + GNUNET_free (cph); + element_clear (m); + return GNUNET_SYSERR; + } + gabe_cph_free(cph); + GNUNET_free (cph); + plt_len = aes_128_cbc_decrypt(aes_buf, aes_buf_size, m, (char**)result); + GNUNET_free (cph_buf); + GNUNET_free (aes_buf); + element_clear (m); + //freeing is buggy in gabe + //gabe_prv_free (prv); + //gabe_pub_free (pub); + return plt_len; +} + +ssize_t +GNUNET_ABE_cpabe_serialize_key (const struct GNUNET_ABE_AbeKey *key, + void **result) +{ + ssize_t len; + char *pub; + char *prv; + int pub_len; + int prv_len; + + pub_len = gabe_pub_serialize (key->pub, &pub); + prv_len = gabe_prv_serialize (key->prv, &prv); + + len = pub_len + prv_len + 12; + write_cpabe (result, len, pub, pub_len, prv, prv_len); + + GNUNET_free (pub); + GNUNET_free (prv); + + return len; +} + +struct GNUNET_ABE_AbeKey* +GNUNET_ABE_cpabe_deserialize_key (const void *data, + size_t len) +{ + struct GNUNET_ABE_AbeKey *key; + char *pub; + char *prv; + int prv_len; + int pub_len; + + key = GNUNET_new (struct GNUNET_ABE_AbeKey); + read_cpabe (data, + &pub, + &pub_len, + &prv, + &prv_len); + key->pub = gabe_pub_unserialize (pub, pub_len); + key->prv = gabe_prv_unserialize (key->pub, prv, prv_len); + + GNUNET_free (pub); + GNUNET_free (prv); + return key; +} + +ssize_t +GNUNET_ABE_cpabe_serialize_master_key (const struct GNUNET_ABE_AbeMasterKey *key, + void **result) +{ + ssize_t len; + char *pub; + char *msk; + int pub_len; + int msk_len; + + pub_len = gabe_pub_serialize (key->pub, &pub); + msk_len = gabe_msk_serialize (key->msk, &msk); + + len = pub_len + msk_len + 12; + write_cpabe (result, len, pub, pub_len, msk, msk_len); + + GNUNET_free (pub); + GNUNET_free (msk); + + return len; +} + +struct GNUNET_ABE_AbeMasterKey* +GNUNET_ABE_cpabe_deserialize_master_key (const void *data, + size_t len) +{ + struct GNUNET_ABE_AbeMasterKey *key; + char *msk; + char *pub; + int msk_len; + int pub_len; + + key = GNUNET_new (struct GNUNET_ABE_AbeMasterKey); + read_cpabe (data, + &pub, + &pub_len, + &msk, + &msk_len); + key->pub = gabe_pub_unserialize (pub, pub_len); + key->msk = gabe_msk_unserialize (key->pub, msk, msk_len); + + GNUNET_free (pub); + GNUNET_free (msk); + + return key; +} diff --git a/src/abe/test_cpabe.c b/src/abe/test_cpabe.c new file mode 100644 index 000000000..9b2062b23 --- /dev/null +++ b/src/abe/test_cpabe.c @@ -0,0 +1,87 @@ +/* + This file is part of GNUnet. + Copyright (C) 2002, 2003, 2004, 2006 GNUnet e.V. + + GNUnet is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNUnet; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +*/ +/** + * @author Martin Schanzenbach + * @file util/test_crypto_abe.c + * @brief test for ABE ciphers + */ +#include "platform.h" +#include "gnunet_util_lib.h" +#include "gnunet_abe_lib.h" + +#define TESTSTRING "Hello World!" + +static int +testAbecipher () +{ + struct GNUNET_ABE_AbeMasterKey *msk; + struct GNUNET_ABE_AbeKey *key; + char *result; + char **attrs; + int size; + char *res; + msk = GNUNET_ABE_cpabe_create_master_key (); + size = GNUNET_ABE_cpabe_encrypt (TESTSTRING, strlen (TESTSTRING) + 1, + "testattr", //Policy + msk, + (void*)&result); + GNUNET_assert (-1 != size); + attrs = GNUNET_malloc (2 * sizeof (char*)); + attrs[0] = "testattr"; + attrs[1] = NULL; + key = GNUNET_ABE_cpabe_create_key (msk, + attrs); + + size = GNUNET_ABE_cpabe_decrypt (result, size, + key, + (void*)&res); + if (strlen (TESTSTRING) + 1 != size) + { + printf ("abeciphertest failed: decryptBlock returned %d\n", size); + return 1; + } + if (0 != strcmp (res, TESTSTRING)) + { + printf ("abeciphertest failed: %s != %s\n", res, TESTSTRING); + return 1; + } + else + return 0; +} + + +int +main (int argc, char *argv[]) +{ + int failureCount = 0; + + GNUNET_log_setup ("test-crypto-abe", "WARNING", NULL); + failureCount += testAbecipher (); + + if (failureCount != 0) + { + printf ("%d TESTS FAILED!\n", failureCount); + return -1; + } + return 0; +} + +/* end of test_crypto_aes.c */ diff --git a/src/identity-provider/Makefile.am b/src/identity-provider/Makefile.am index 5c5ddaa57..adf6af3b3 100644 --- a/src/identity-provider/Makefile.am +++ b/src/identity-provider/Makefile.am @@ -70,6 +70,7 @@ gnunet_service_identity_provider_LDADD = \ $(top_builddir)/src/namestore/libgnunetnamestore.la \ $(top_builddir)/src/identity/libgnunetidentity.la \ $(top_builddir)/src/statistics/libgnunetstatistics.la \ + $(top_builddir)/src/abe/libgnunetabe.la \ $(top_builddir)/src/credential/libgnunetcredential.la \ $(top_builddir)/src/identity-attribute/libgnunetidentityattribute.la \ libgnunetidentityprovider.la \ diff --git a/src/identity-provider/gnunet-service-identity-provider.c b/src/identity-provider/gnunet-service-identity-provider.c index a5c178aa5..351308c3a 100644 --- a/src/identity-provider/gnunet-service-identity-provider.c +++ b/src/identity-provider/gnunet-service-identity-provider.c @@ -30,6 +30,7 @@ #include "gnunet_identity_service.h" #include "gnunet_gnsrecord_lib.h" #include "gnunet_namestore_service.h" +#include "gnunet_abe_lib.h" #include "gnunet_credential_service.h" #include "gnunet_statistics_service.h" #include "gnunet_gns_service.h" @@ -205,7 +206,7 @@ struct TicketIteration */ typedef void (*AbeBootstrapResult) (void *cls, - struct GNUNET_CRYPTO_AbeMasterKey *abe_key); + struct GNUNET_ABE_AbeMasterKey *abe_key); struct AbeBootstrapHandle @@ -233,7 +234,7 @@ struct AbeBootstrapHandle /** * The issuer egos ABE master key */ - struct GNUNET_CRYPTO_AbeMasterKey *abe_key; + struct GNUNET_ABE_AbeMasterKey *abe_key; }; /** @@ -264,7 +265,7 @@ struct AttributeIterator /** * The issuer egos ABE master key */ - struct GNUNET_CRYPTO_AbeMasterKey *abe_key; + struct GNUNET_ABE_AbeMasterKey *abe_key; /** * Namestore iterator @@ -355,7 +356,7 @@ struct AttributeStoreHandle /** * The issuer egos ABE master key */ - struct GNUNET_CRYPTO_AbeMasterKey *abe_key; + struct GNUNET_ABE_AbeMasterKey *abe_key; /** * QueueEntry @@ -423,7 +424,7 @@ struct ConsumeTicketHandle /** * The ABE key */ - struct GNUNET_CRYPTO_AbeKey *key; + struct GNUNET_ABE_AbeKey *key; /** * Attributes @@ -520,7 +521,7 @@ struct TicketRevocationHandle /** * The ABE master key */ - struct GNUNET_CRYPTO_AbeMasterKey *abe_key; + struct GNUNET_ABE_AbeMasterKey *abe_key; /** * Offset @@ -690,7 +691,7 @@ bootstrap_store_task (void *cls) struct GNUNET_GNSRECORD_Data rd[1]; char *key; - rd[0].data_size = GNUNET_CRYPTO_cpabe_serialize_master_key (abh->abe_key, + rd[0].data_size = GNUNET_ABE_cpabe_serialize_master_key (abh->abe_key, (void**)&key); rd[0].data = key; rd[0].record_type = GNUNET_GNSRECORD_TYPE_ABE_MASTER; @@ -730,13 +731,13 @@ bootstrap_abe_result (void *cls, const struct GNUNET_GNSRECORD_Data *rd) { struct AbeBootstrapHandle *abh = cls; - struct GNUNET_CRYPTO_AbeMasterKey *abe_key; + struct GNUNET_ABE_AbeMasterKey *abe_key; int i; for (i=0;iproc (abh->proc_cls, abe_key); GNUNET_free (abh); @@ -744,7 +745,7 @@ bootstrap_abe_result (void *cls, } //No ABE master found, bootstrapping... - abh->abe_key = GNUNET_CRYPTO_cpabe_create_master_key (); + abh->abe_key = GNUNET_ABE_cpabe_create_master_key (); GNUNET_SCHEDULER_add_now (&bootstrap_store_task, abh); } @@ -767,7 +768,7 @@ bootstrap_abe (const struct GNUNET_CRYPTO_EcdsaPrivateKey *identity, abh->identity = *identity; if (GNUNET_YES == recreate) { - abh->abe_key = GNUNET_CRYPTO_cpabe_create_master_key (); + abh->abe_key = GNUNET_ABE_cpabe_create_master_key (); GNUNET_SCHEDULER_add_now (&bootstrap_store_task, abh); } else { abh->ns_qe = GNUNET_NAMESTORE_records_lookup (ns_handle, @@ -874,7 +875,7 @@ store_ticket_issue_cont (void *cls, int serialize_abe_keyinfo2 (const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, const struct GNUNET_IDENTITY_ATTRIBUTE_ClaimList *attrs, - const struct GNUNET_CRYPTO_AbeKey *rp_key, + const struct GNUNET_ABE_AbeKey *rp_key, struct GNUNET_CRYPTO_EcdhePrivateKey **ecdh_privkey, char **result) { @@ -892,7 +893,7 @@ serialize_abe_keyinfo2 (const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, struct GNUNET_HashCode new_key_hash; ssize_t enc_size; - size = GNUNET_CRYPTO_cpabe_serialize_key (rp_key, + size = GNUNET_ABE_cpabe_serialize_key (rp_key, (void**)&serialized_key); attrs_str_len = 0; for (le = attrs->list_head; NULL != le; le = le->next) { @@ -951,13 +952,13 @@ serialize_abe_keyinfo2 (const struct GNUNET_IDENTITY_PROVIDER_Ticket *ticket, static void issue_ticket_after_abe_bootstrap (void *cls, - struct GNUNET_CRYPTO_AbeMasterKey *abe_key) + struct GNUNET_ABE_AbeMasterKey *abe_key) { struct TicketIssueHandle *ih = cls; struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le; struct GNUNET_CRYPTO_EcdhePrivateKey *ecdhe_privkey; struct GNUNET_GNSRECORD_Data code_record[1]; - struct GNUNET_CRYPTO_AbeKey *rp_key; + struct GNUNET_ABE_AbeKey *rp_key; char *code_record_data; char **attrs; char *label; @@ -983,7 +984,7 @@ issue_ticket_after_abe_bootstrap (void *cls, i++; } attrs[i] = NULL; - rp_key = GNUNET_CRYPTO_cpabe_create_key (abe_key, + rp_key = GNUNET_ABE_cpabe_create_key (abe_key, attrs); //TODO review this wireformat @@ -1014,9 +1015,9 @@ issue_ticket_after_abe_bootstrap (void *cls, GNUNET_free (label); GNUNET_free (attrs); GNUNET_free (code_record_data); - GNUNET_CRYPTO_cpabe_delete_key (rp_key, + GNUNET_ABE_cpabe_delete_key (rp_key, GNUNET_YES); - GNUNET_CRYPTO_cpabe_delete_master_key (abe_key); + GNUNET_ABE_cpabe_delete_master_key (abe_key); } @@ -1091,7 +1092,7 @@ cleanup_revoke_ticket_handle (struct TicketRevocationHandle *handle) if (NULL != handle->rvk_attrs) GNUNET_IDENTITY_ATTRIBUTE_list_destroy (handle->rvk_attrs); if (NULL != handle->abe_key) - GNUNET_CRYPTO_cpabe_delete_master_key (handle->abe_key); + GNUNET_ABE_cpabe_delete_master_key (handle->abe_key); if (NULL != handle->ns_qe) GNUNET_NAMESTORE_cancel (handle->ns_qe); if (NULL != handle->ns_it) @@ -1183,7 +1184,7 @@ ticket_reissue_proc (void *cls, struct GNUNET_IDENTITY_ATTRIBUTE_ClaimListEntry *le_rollover; struct GNUNET_CRYPTO_EcdhePrivateKey *ecdhe_privkey; struct GNUNET_GNSRECORD_Data code_record[1]; - struct GNUNET_CRYPTO_AbeKey *rp_key; + struct GNUNET_ABE_AbeKey *rp_key; char *code_record_data; char **attr_arr; char *label; @@ -1263,7 +1264,7 @@ ticket_reissue_proc (void *cls, i++; } attr_arr[i] = NULL; - rp_key = GNUNET_CRYPTO_cpabe_create_key (rh->abe_key, + rp_key = GNUNET_ABE_cpabe_create_key (rh->abe_key, attr_arr); //TODO review this wireformat @@ -1294,7 +1295,7 @@ ticket_reissue_proc (void *cls, GNUNET_free (label); GNUNET_free (attr_arr); GNUNET_free (code_record_data); - GNUNET_CRYPTO_cpabe_delete_key (rp_key, GNUNET_YES); + GNUNET_ABE_cpabe_delete_key (rp_key, GNUNET_YES); } @@ -1362,7 +1363,7 @@ reenc_next_attribute (struct TicketRevocationHandle *rh) /** * Encrypt the attribute value and store in namestore */ - enc_size = GNUNET_CRYPTO_cpabe_encrypt (buf, + enc_size = GNUNET_ABE_cpabe_encrypt (buf, buf_size, policy, //Policy rh->abe_key, @@ -1463,7 +1464,7 @@ process_attributes_to_update (void *cls, static void get_ticket_after_abe_bootstrap (void *cls, - struct GNUNET_CRYPTO_AbeMasterKey *abe_key) + struct GNUNET_ABE_AbeMasterKey *abe_key) { GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Finished ABE bootstrap\n"); @@ -1534,7 +1535,7 @@ static void cleanup_consume_ticket_handle (struct ConsumeTicketHandle *handle) { if (NULL != handle->key) - GNUNET_CRYPTO_cpabe_delete_key (handle->key, + GNUNET_ABE_cpabe_delete_key (handle->key, GNUNET_YES); if (NULL != handle->attrs) GNUNET_IDENTITY_ATTRIBUTE_list_destroy (handle->attrs); @@ -1603,7 +1604,7 @@ process_parallel_lookup2 (void *cls, uint32_t rd_count, if (rd->record_type == GNUNET_GNSRECORD_TYPE_ID_ATTR) { decrypt_duration = GNUNET_TIME_absolute_get (); - attr_len = GNUNET_CRYPTO_cpabe_decrypt (rd->data + sizeof (uint32_t), + attr_len = GNUNET_ABE_cpabe_decrypt (rd->data + sizeof (uint32_t), rd->data_size - sizeof (uint32_t), handle->key, (void**)&data); @@ -1745,7 +1746,7 @@ process_consume_abe_key (void *cls, uint32_t rd_count, scopes = GNUNET_strdup (buf); GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Scopes %s\n", scopes); - handle->key = GNUNET_CRYPTO_cpabe_deserialize_key ((void*)(buf + strlen (scopes) + 1), + handle->key = GNUNET_ABE_cpabe_deserialize_key ((void*)(buf + strlen (scopes) + 1), rd->data_size - sizeof (struct GNUNET_CRYPTO_EcdhePublicKey) - strlen (scopes) - 1); @@ -1833,7 +1834,7 @@ cleanup_as_handle (struct AttributeStoreHandle *handle) if (NULL != handle->claim) GNUNET_free (handle->claim); if (NULL != handle->abe_key) - GNUNET_CRYPTO_cpabe_delete_master_key (handle->abe_key); + GNUNET_ABE_cpabe_delete_master_key (handle->abe_key); GNUNET_free (handle); } @@ -1897,7 +1898,7 @@ attr_store_task (void *cls) /** * Encrypt the attribute value and store in namestore */ - enc_size = GNUNET_CRYPTO_cpabe_encrypt (buf, + enc_size = GNUNET_ABE_cpabe_encrypt (buf, buf_size, policy, //Policy as_handle->abe_key, @@ -1931,7 +1932,7 @@ attr_store_task (void *cls) static void store_after_abe_bootstrap (void *cls, - struct GNUNET_CRYPTO_AbeMasterKey *abe_key) + struct GNUNET_ABE_AbeMasterKey *abe_key) { GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Finished ABE bootstrap\n"); @@ -2001,7 +2002,7 @@ static void cleanup_iter_handle (struct AttributeIterator *ai) { if (NULL != ai->abe_key) - GNUNET_CRYPTO_cpabe_delete_master_key (ai->abe_key); + GNUNET_ABE_cpabe_delete_master_key (ai->abe_key); GNUNET_CONTAINER_DLL_remove (ai->client->op_head, ai->client->op_tail, ai); @@ -2043,7 +2044,7 @@ attr_iter_cb (void *cls, { struct AttributeIterator *ai = cls; struct AttributeResultMessage *arm; - struct GNUNET_CRYPTO_AbeKey *key; + struct GNUNET_ABE_AbeKey *key; struct GNUNET_MQ_Envelope *env; ssize_t msg_extra_len; char* attr_ser; @@ -2067,14 +2068,14 @@ attr_iter_cb (void *cls, label, attr_ver); attrs[0] = policy; attrs[1] = 0; - key = GNUNET_CRYPTO_cpabe_create_key (ai->abe_key, + key = GNUNET_ABE_cpabe_create_key (ai->abe_key, attrs); - msg_extra_len = GNUNET_CRYPTO_cpabe_decrypt (rd->data+sizeof (uint32_t), + msg_extra_len = GNUNET_ABE_cpabe_decrypt (rd->data+sizeof (uint32_t), rd->data_size-sizeof (uint32_t), key, (void**)&attr_ser); - GNUNET_CRYPTO_cpabe_delete_key (key, + GNUNET_ABE_cpabe_delete_key (key, GNUNET_YES); //GNUNET_free (policy); GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, @@ -2092,14 +2093,14 @@ attr_iter_cb (void *cls, msg_extra_len); GNUNET_MQ_send (ai->client->mq, env); GNUNET_free (attr_ser); - GNUNET_CRYPTO_cpabe_delete_master_key (ai->abe_key); + GNUNET_ABE_cpabe_delete_master_key (ai->abe_key); ai->abe_key = NULL; } void iterate_after_abe_bootstrap (void *cls, - struct GNUNET_CRYPTO_AbeMasterKey *abe_key) + struct GNUNET_ABE_AbeMasterKey *abe_key) { struct AttributeIterator *ai = cls; ai->abe_key = abe_key; @@ -2115,7 +2116,7 @@ iterate_after_abe_bootstrap (void *cls, void iterate_next_after_abe_bootstrap (void *cls, - struct GNUNET_CRYPTO_AbeMasterKey *abe_key) + struct GNUNET_ABE_AbeMasterKey *abe_key) { struct AttributeIterator *ai = cls; ai->abe_key = abe_key; diff --git a/src/include/gnunet_abe_lib.h b/src/include/gnunet_abe_lib.h new file mode 100644 index 000000000..77b0f9e99 --- /dev/null +++ b/src/include/gnunet_abe_lib.h @@ -0,0 +1,143 @@ +/* + This file is part of GNUnet. + Copyright (C) 2001-2018 GNUnet e.V. + + GNUnet is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published + by the Free Software Foundation; either version 3, or (at your + option) any later version. + + GNUnet is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNUnet; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +/** + * @file include/gnunet_crypto_lib.h + * @brief cryptographic primitives for GNUnet + * + * @author Martin Schanzenbach + * + * @defgroup abe ABE Crypto library: Attribute-Based Encryption operations + * + */ +#ifndef GNUNET_ABE_LIB_H +#define GNUNET_ABE_LIB_H + +#ifdef __cplusplus +extern "C" +{ +#if 0 /* keep Emacsens' auto-indent happy */ +} +#endif +#endif + +#include "gnunet_common.h" +#include + +/** + * @brief type for ABE master keys + */ +struct GNUNET_CRYPTO_AbeMasterKey; + +/** + * @brief type for ABE keys + */ +struct GNUNET_CRYPTO_AbeKey; + + + +/** + * @ingroup abe + * Create a new CP-ABE master key. Caller must free return value. + * + * @return fresh private key; free using #GNUNET_free + */ +struct GNUNET_ABE_AbeMasterKey * +GNUNET_ABE_cpabe_create_master_key (void); +void +GNUNET_ABE_cpabe_delete_master_key (struct GNUNET_ABE_AbeMasterKey *key); + +/** + * @ingroup abe + * Create a new CP-ABE key. Caller must free return value. + * + * @return fresh private key; free using #GNUNET_free + */ +struct GNUNET_ABE_AbeKey * +GNUNET_ABE_cpabe_create_key (struct GNUNET_ABE_AbeMasterKey *msk, + char **attrs); +void +GNUNET_ABE_cpabe_delete_key (struct GNUNET_ABE_AbeKey *key, + int delete_pub); + + +/** + * @ingroup abe + * Encrypt a block using sessionkey. + * + * @param block the block to encrypt + * @param size the size of the @a block + * @param sessionkey the key used to encrypt + * @param iv the initialization vector to use, use INITVALUE + * for streams. + * @return the size of the encrypted block, -1 for errors + */ +ssize_t +GNUNET_ABE_cpabe_encrypt (const void *block, + size_t size, + const char *policy, + const struct GNUNET_ABE_AbeMasterKey *key, + void **result); + +/** + * @ingroup abe + * Encrypt a block using sessionkey. + * + * @param block the block to encrypt + * @param size the size of the @a block + * @param sessionkey the key used to encrypt + * @param iv the initialization vector to use, use INITVALUE + * for streams. + * @return the size of the encrypted block, -1 for errors + */ +ssize_t +GNUNET_ABE_cpabe_decrypt (const void *block, + size_t size, + const struct GNUNET_ABE_AbeKey *key, + void **result); + +ssize_t +GNUNET_ABE_cpabe_serialize_key (const struct GNUNET_ABE_AbeKey *key, + void **result); + +struct GNUNET_ABE_AbeKey* +GNUNET_ABE_cpabe_deserialize_key (const void *data, + size_t len); + +ssize_t +GNUNET_ABE_cpabe_serialize_master_key (const struct GNUNET_ABE_AbeMasterKey *key, + void **result); + +struct GNUNET_ABE_AbeMasterKey* +GNUNET_ABE_cpabe_deserialize_master_key (const void *data, + size_t len); + + +#if 0 /* keep Emacsens' auto-indent happy */ +{ +#endif +#ifdef __cplusplus +} +#endif + + +/* ifndef GNUNET_ABE_LIB_H */ +#endif +/* end of gnunet_abe_lib.h */ diff --git a/src/include/gnunet_crypto_lib.h b/src/include/gnunet_crypto_lib.h index 2fd67ae1b..e886a561c 100644 --- a/src/include/gnunet_crypto_lib.h +++ b/src/include/gnunet_crypto_lib.h @@ -395,11 +395,6 @@ struct GNUNET_CRYPTO_PaillierCiphertext unsigned char bits[GNUNET_CRYPTO_PAILLIER_BITS * 2 / 8]; }; -/** - * @brief type for ABE master keys - */ -struct GNUNET_CRYPTO_AbeMasterKey; - /* **************** Functions and Macros ************* */ @@ -2142,83 +2137,6 @@ GNUNET_CRYPTO_rsa_verify (const struct GNUNET_HashCode *hash, const struct GNUNET_CRYPTO_RsaPublicKey *public_key); -/** - * @ingroup crypto - * Create a new CP-ABE master key. Caller must free return value. - * - * @return fresh private key; free using #GNUNET_free - */ -struct GNUNET_CRYPTO_AbeMasterKey * -GNUNET_CRYPTO_cpabe_create_master_key (void); -void -GNUNET_CRYPTO_cpabe_delete_master_key (struct GNUNET_CRYPTO_AbeMasterKey *key); - -/** - * @ingroup crypto - * Create a new CP-ABE key. Caller must free return value. - * - * @return fresh private key; free using #GNUNET_free - */ -struct GNUNET_CRYPTO_AbeKey * -GNUNET_CRYPTO_cpabe_create_key (struct GNUNET_CRYPTO_AbeMasterKey *msk, - char **attrs); -void -GNUNET_CRYPTO_cpabe_delete_key (struct GNUNET_CRYPTO_AbeKey *key, - int delete_pub); - - -/** - * @ingroup crypto - * Encrypt a block using sessionkey. - * - * @param block the block to encrypt - * @param size the size of the @a block - * @param sessionkey the key used to encrypt - * @param iv the initialization vector to use, use INITVALUE - * for streams. - * @return the size of the encrypted block, -1 for errors - */ -ssize_t -GNUNET_CRYPTO_cpabe_encrypt (const void *block, - size_t size, - const char *policy, - const struct GNUNET_CRYPTO_AbeMasterKey *key, - void **result); - -/** - * @ingroup crypto - * Encrypt a block using sessionkey. - * - * @param block the block to encrypt - * @param size the size of the @a block - * @param sessionkey the key used to encrypt - * @param iv the initialization vector to use, use INITVALUE - * for streams. - * @return the size of the encrypted block, -1 for errors - */ -ssize_t -GNUNET_CRYPTO_cpabe_decrypt (const void *block, - size_t size, - const struct GNUNET_CRYPTO_AbeKey *key, - void **result); - -ssize_t -GNUNET_CRYPTO_cpabe_serialize_key (const struct GNUNET_CRYPTO_AbeKey *key, - void **result); - -struct GNUNET_CRYPTO_AbeKey* -GNUNET_CRYPTO_cpabe_deserialize_key (const void *data, - size_t len); - -ssize_t -GNUNET_CRYPTO_cpabe_serialize_master_key (const struct GNUNET_CRYPTO_AbeMasterKey *key, - void **result); - -struct GNUNET_CRYPTO_AbeMasterKey* -GNUNET_CRYPTO_cpabe_deserialize_master_key (const void *data, - size_t len); - - #if 0 /* keep Emacsens' auto-indent happy */ { #endif diff --git a/src/util/Makefile.am b/src/util/Makefile.am index cc9ff4745..eb655157d 100644 --- a/src/util/Makefile.am +++ b/src/util/Makefile.am @@ -119,18 +119,6 @@ libgnunetutil_la_LIBADD = \ $(LTLIBINTL) \ -lltdl $(Z_LIBS) -lunistring $(XLIB) -if HAVE_PBC -if HAVE_ABE -libgnunetutil_la_SOURCES += \ - crypto_abe.c -libgnunetutil_la_LIBADD += \ - $(ABE_LIBADD) \ - -lgabe \ - -lpbc \ - -lglib-2.0 -endif -endif - libgnunetutil_la_LDFLAGS = \ $(GN_LIB_LDFLAGS) \ -version-info 13:0:0 @@ -564,17 +552,6 @@ test_speedup_SOURCES = \ test_speedup_LDADD = \ libgnunetutil.la -if HAVE_PBC -if HAVE_ABE -test_crypto_abe_SOURCES = \ - test_crypto_abe.c -test_crypto_abe_LDADD = \ - libgnunetutil.la -check_PROGRAMS += \ - test_crypto_abe -endif -endif - perf_crypto_hash_SOURCES = \ perf_crypto_hash.c perf_crypto_hash_LDADD = \ diff --git a/src/util/test_crypto_abe.c b/src/util/test_crypto_abe.c deleted file mode 100644 index cb36dccae..000000000 --- a/src/util/test_crypto_abe.c +++ /dev/null @@ -1,86 +0,0 @@ -/* - This file is part of GNUnet. - Copyright (C) 2002, 2003, 2004, 2006 GNUnet e.V. - - GNUnet is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3, or (at your - option) any later version. - - GNUnet is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNUnet; see the file COPYING. If not, write to the - Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. - -*/ -/** - * @author Martin Schanzenbach - * @file util/test_crypto_abe.c - * @brief test for ABE ciphers - */ -#include "platform.h" -#include "gnunet_util_lib.h" - -#define TESTSTRING "Hello World!" - -static int -testAbecipher () -{ - struct GNUNET_CRYPTO_AbeMasterKey *msk; - struct GNUNET_CRYPTO_AbeKey *key; - char *result; - char **attrs; - int size; - char *res; - msk = GNUNET_CRYPTO_cpabe_create_master_key (); - size = GNUNET_CRYPTO_cpabe_encrypt (TESTSTRING, strlen (TESTSTRING) + 1, - "testattr", //Policy - msk, - (void*)&result); - GNUNET_assert (-1 != size); - attrs = GNUNET_malloc (2 * sizeof (char*)); - attrs[0] = "testattr"; - attrs[1] = NULL; - key = GNUNET_CRYPTO_cpabe_create_key (msk, - attrs); - - size = GNUNET_CRYPTO_cpabe_decrypt (result, size, - key, - (void*)&res); - if (strlen (TESTSTRING) + 1 != size) - { - printf ("abeciphertest failed: decryptBlock returned %d\n", size); - return 1; - } - if (0 != strcmp (res, TESTSTRING)) - { - printf ("abeciphertest failed: %s != %s\n", res, TESTSTRING); - return 1; - } - else - return 0; -} - - -int -main (int argc, char *argv[]) -{ - int failureCount = 0; - - GNUNET_log_setup ("test-crypto-abe", "WARNING", NULL); - failureCount += testAbecipher (); - - if (failureCount != 0) - { - printf ("%d TESTS FAILED!\n", failureCount); - return -1; - } - return 0; -} - -/* end of test_crypto_aes.c */ -- cgit v1.2.3