Discard large metadata items first
[oweals/gnunet.git] / src / gns / test_gns_simple_mx_lookup.c
index 43a939cb50ddef6d99f8922ffbbd2cb688e92173..cfaea67ad73c4a72ea877edae4ec7e849755ea13 100644 (file)
@@ -23,7 +23,7 @@
  *
  */
 #include "platform.h"
-#include "gnunet_testing_lib-new.h"
+#include "gnunet_testing_lib.h"
 #include "gnunet_core_service.h"
 #include "block_dns.h"
 #include "gnunet_signatures.h"
 #include "gnunet_dnsparser_lib.h"
 #include "gnunet_gns_service.h"
 
-/* DEFINES */
-#define VERBOSE GNUNET_YES
-
 /* Timeout for entire testcase */
 #define TIMEOUT GNUNET_TIME_relative_multiply(GNUNET_TIME_UNIT_SECONDS, 20)
 
-/* If number of peers not in config file, use this number */
-#define DEFAULT_NUM_PEERS 2
-
 /* test records to resolve */
-#define TEST_DOMAIN "bob.gnunet"
+#define TEST_DOMAIN "bob.gads"
 #define TEST_IP "127.0.0.1"
 #define TEST_RECORD_NAME "mail"
 #define TEST_MX_NAME "mail.+"
-#define TEST_EXPECTED_MX "mail.bob.gnunet"
+#define TEST_EXPECTED_MX "mail.bob.gads"
 
 #define TEST_AUTHORITY_NAME "bob"
 
 #define KEYFILE_BOB "../namestore/zonefiles/HGU0A0VCU334DN7F2I9UIUMVQMM7JMSD142LIMNUGTTV9R0CF4EG.zkey"
 
-/* Globals */
-
-
 /* Task handle to use to schedule test failure */
-GNUNET_SCHEDULER_TaskIdentifier die_task;
+static GNUNET_SCHEDULER_TaskIdentifier die_task;
 
 /* Global return value (0 for success, anything else for failure) */
 static int ok;
@@ -65,7 +56,7 @@ static struct GNUNET_NAMESTORE_Handle *namestore_handle;
 
 static struct GNUNET_GNS_Handle *gns_handle;
 
-const struct GNUNET_CONFIGURATION_Handle *cfg;
+static const struct GNUNET_CONFIGURATION_Handle *cfg;
 
 
 /**
@@ -76,6 +67,7 @@ const struct GNUNET_CONFIGURATION_Handle *cfg;
 static void
 end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
 {
+  die_task = GNUNET_SCHEDULER_NO_TASK;
   if (NULL != gns_handle)
   {
     GNUNET_GNS_disconnect(gns_handle);
@@ -92,6 +84,7 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
   ok = 1;
 }
 
+
 static void
 end_badly_now ()
 {
@@ -99,6 +92,17 @@ end_badly_now ()
   die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL);
 }
 
+
+static void 
+shutdown_task (void *cls,
+              const struct GNUNET_SCHEDULER_TaskContext *tc)
+{
+  GNUNET_GNS_disconnect(gns_handle);
+  GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Shutting down peer!\n");
+  GNUNET_SCHEDULER_shutdown ();
+}
+
+
 static void
 on_lookup_result(void *cls, uint32_t rd_count,
                  const struct GNUNET_NAMESTORE_RecordData *rd)
@@ -143,10 +147,8 @@ on_lookup_result(void *cls, uint32_t rd_count,
       }
     }
   }
-
-  GNUNET_GNS_disconnect(gns_handle);
-  GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Shutting down peer!\n");
-  GNUNET_SCHEDULER_shutdown ();
+  
+  GNUNET_SCHEDULER_add_now (&shutdown_task, NULL);
 
 }
 
@@ -263,12 +265,12 @@ do_check (void *cls,
   rd.record_type = GNUNET_GNS_RECORD_MX;
   sig = GNUNET_NAMESTORE_create_signature(bob_key,
                                           GNUNET_TIME_UNIT_FOREVER_ABS,
-                                          "+",
+                                          GNUNET_GNS_MASTERZONE_STR,
                                           &rd, 1);
   et.abs_value = rd.expiration_time;
   GNUNET_NAMESTORE_record_put (namestore_handle,
                                &bob_pkey,
-                               "+",
+                               GNUNET_GNS_MASTERZONE_STR,
                                et,
                                1,
                                &rd,
@@ -289,13 +291,8 @@ int
 main (int argc, char *argv[])
 {
   ok = 1;
-
   GNUNET_log_setup ("test-gns-simple-mx-lookup",
-#if VERBOSE
-                    "DEBUG",
-#else
                     "WARNING",
-#endif
                     NULL);
   GNUNET_TESTING_peer_run ("test-gns-simple-mx-lookup", "test_gns_simple_lookup.conf", &do_check, NULL);
   return ok;