aboutsummaryrefslogtreecommitdiff
path: root/src/gns/gnunet-gns-gtk_zone.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gns/gnunet-gns-gtk_zone.c')
-rw-r--r--src/gns/gnunet-gns-gtk_zone.c33
1 files changed, 19 insertions, 14 deletions
diff --git a/src/gns/gnunet-gns-gtk_zone.c b/src/gns/gnunet-gns-gtk_zone.c
index c541fcba..25d2982d 100644
--- a/src/gns/gnunet-gns-gtk_zone.c
+++ b/src/gns/gnunet-gns-gtk_zone.c
@@ -26,12 +26,6 @@
26#include "gnunet_gtk.h" 26#include "gnunet_gtk.h"
27#include "gnunet-gns-gtk.h" 27#include "gnunet-gns-gtk.h"
28 28
29#define NEW_NAME_STR "<new name>"
30#define NEW_RECORD_STR "<new record>"
31#define ROOT_STR "+"
32#define EXPIRE_NEVER_STRING "never"
33#define EXPIRE_INVALID_STRING "invalid"
34
35enum TREESTORE_COLUMNS 29enum TREESTORE_COLUMNS
36{ 30{
37 TREE_COL_NAME = 0, 31 TREE_COL_NAME = 0,
@@ -229,19 +223,30 @@ check_name_validity_and_commit (struct GNUNET_GNS_Context *gns, gchar *path)
229 if (GNUNET_YES == append_pseu) 223 if (GNUNET_YES == append_pseu)
230 { 224 {
231 GNUNET_assert (children == (records -1)); 225 GNUNET_assert (children == (records -1));
226
232 /* Append PSEU record */ 227 /* Append PSEU record */
233 GtkEntry * entry = GTK_ENTRY (gtk_builder_get_object (gns->builder, "GNUNET_GNS_GTK_pseu_entry")); 228 GtkEntry * entry = GTK_ENTRY (gtk_builder_get_object (gns->builder, "GNUNET_GNS_GTK_pseu_entry"));
234 pseu = gtk_entry_get_text (GTK_ENTRY(entry)); 229 pseu = gtk_entry_get_text (GTK_ENTRY(entry));
235 if (GNUNET_OK != GNUNET_NAMESTORE_string_to_value(GNUNET_NAMESTORE_TYPE_PSEU, pseu, (void **) &rd[records - 1].data, &rd[records - 1].data_size)) 230 if ((NULL != pseu) && (0 != strcmp (PSEU_EMPTY_STR, pseu)) && (0 != strcmp ("", pseu)))
231 {
232 if (GNUNET_OK != GNUNET_NAMESTORE_string_to_value(GNUNET_NAMESTORE_TYPE_PSEU,
233 pseu,
234 (void **) &rd[records - 1].data,
235 &rd[records - 1].data_size))
236 {
237 GNUNET_break (0);
238 for (c = 0; c < records; c++)
239 GNUNET_free_non_null ((void *) rd[c].data);
240 GNUNET_free_non_null (rd);
241 }
242 rd[records - 1].record_type = GNUNET_NAMESTORE_TYPE_PSEU;
243 rd[records - 1].expiration = GNUNET_TIME_absolute_get_forever();
244 rd[records - 1].flags = GNUNET_NAMESTORE_RF_AUTHORITY | GNUNET_NAMESTORE_RF_NONE;
245 }
246 else
236 { 247 {
237 GNUNET_break (0); 248 GNUNET_break (0);
238 for (c = 0; c < records; c++)
239 GNUNET_free_non_null ((void *) rd[c].data);
240 GNUNET_free_non_null (rd);
241 } 249 }
242 rd[records - 1].record_type = GNUNET_NAMESTORE_TYPE_PSEU;
243 rd[records - 1].expiration = GNUNET_TIME_absolute_get_forever();
244 rd[records - 1].flags = GNUNET_NAMESTORE_RF_AUTHORITY | GNUNET_NAMESTORE_RF_NONE;
245 } 250 }
246 251
247 /* Remove old entries */ 252 /* Remove old entries */
@@ -995,7 +1000,7 @@ zone_iteration_proc (void *cls,
995 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Zone `%s 'iteration done\n", &shenc); 1000 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Zone `%s 'iteration done\n", &shenc);
996 pseu_entry = GTK_ENTRY((gtk_builder_get_object (zc_ctx->gns->builder, "GNUNET_GNS_GTK_pseu_entry"))); 1001 pseu_entry = GTK_ENTRY((gtk_builder_get_object (zc_ctx->gns->builder, "GNUNET_GNS_GTK_pseu_entry")));
997 if (zc_ctx->label == NULL) 1002 if (zc_ctx->label == NULL)
998 GNUNET_asprintf(&zc_ctx->label, "%s", EXPIRE_INVALID_STRING); 1003 GNUNET_asprintf(&zc_ctx->label, "%s", PSEU_EMPTY_STR);
999 gtk_entry_set_text (pseu_entry, zc_ctx->label); 1004 gtk_entry_set_text (pseu_entry, zc_ctx->label);
1000 zc_ctx->gns->iteration = GNUNET_NO; 1005 zc_ctx->gns->iteration = GNUNET_NO;
1001 GNUNET_free (zc_ctx->label); 1006 GNUNET_free (zc_ctx->label);