api: multiple connections per process
[vpp.git] / src / plugins / dns / dns.c
index 4a882eb..4a07fc0 100644 (file)
@@ -797,6 +797,8 @@ dns_add_static_entry (dns_main_t * dm, u8 * name, u8 * dns_reply_data)
 
   /* Note: consumes the name vector */
   ep->name = name;
+  /* make sure it NULL-terminated as hash_set_mem will use strlen() */
+  vec_terminate_c_string (ep->name);
   hash_set_mem (dm->cache_entry_by_name, ep->name, ep - dm->entries);
   ep->flags = DNS_CACHE_ENTRY_FLAG_VALID | DNS_CACHE_ENTRY_FLAG_STATIC;
   ep->dns_response = dns_reply_data;
@@ -3054,7 +3056,7 @@ dns_init (vlib_main_t * vm)
   dm->name_cache_size = 1000;
   dm->max_ttl_in_seconds = 86400;
   dm->random_seed = 0xDEADDABE;
-  dm->api_main = &api_main;
+  dm->api_main = vlibapi_get_main ();
 
   /* Ask for a correctly-sized block of API message decode slots */
   dm->msg_id_base = setup_message_id_table ();