diff --git a/spec/example-all-functions.c b/spec/example-all-functions.c
index 35c5ee8d..987c3f78 100644
--- a/spec/example-all-functions.c
+++ b/spec/example-all-functions.c
@@ -14,6 +14,7 @@ char * retcharstar;
 /* The args */
 int    boolarg;
 char * charstararg;
+char ** charstarptrarg;
 getdns_callback_t callbackarg;
 uint16_t regulararg;
 uint16_t *regularptrarg;
@@ -210,12 +211,14 @@ retregular =  getdns_dict_set_bindata(dictarg, charstararg, bindataarg);
 retregular =  getdns_dict_set_int(dictarg, charstararg, uint32arg);
 retregular =  getdns_dict_remove_name(dictarg, charstararg);
 
-retcharstar =  getdns_convert_fqdn_to_dns_name(
-  charstararg
+retregular =  getdns_convert_fqdn_to_dns_name(
+  charstararg,
+  bindataptrarg
 );
 
-retcharstar =  getdns_convert_dns_name_to_fqdn(
-  charstararg
+retregular =  getdns_convert_dns_name_to_fqdn(
+  bindataarg,
+  charstarptrarg
 );
 
 retcharstar = getdns_convert_ulabel_to_alabel(
diff --git a/spec/getdns-0.393.tgz b/spec/getdns-0.393.tgz
deleted file mode 100644
index 2a08eeda..00000000
Binary files a/spec/getdns-0.393.tgz and /dev/null differ
diff --git a/spec/getdns-0.394.tgz b/spec/getdns-0.394.tgz
new file mode 100644
index 00000000..b0e1151f
Binary files /dev/null and b/spec/getdns-0.394.tgz differ
diff --git a/spec/getdns_core_only.c b/spec/getdns_core_only.c
index 4e808aae..7572be37 100644
--- a/spec/getdns_core_only.c
+++ b/spec/getdns_core_only.c
@@ -269,17 +269,19 @@ getdns_return_t getdns_dict_set_int(struct getdns_dict *this_dict, const char *n
 getdns_return_t getdns_dict_remove_name(struct getdns_dict *this_dict, const char *name)
 { UNUSED_PARAM(this_dict); UNUSED_PARAM(name); return GETDNS_RETURN_GOOD; }
 
-char *
+getdns_return_t
 getdns_convert_dns_name_to_fqdn(
-  const char  *name_from_dns_response
+  const struct getdns_bindata *dns_name_wire_fmt,
+  char **fqdn_as_string
 )
-{ UNUSED_PARAM(name_from_dns_response); return NULL; }
+{ UNUSED_PARAM(dns_name_wire_fmt); UNUSED_PARAM(fqdn_as_string); return GETDNS_RETURN_GOOD; }
 
-char *
+getdns_return_t
 getdns_convert_fqdn_to_dns_name(
-  const char  *fqdn_as_string
+  const char *fqdn_as_string,
+  struct getdns_bindata **dns_name_wire_fmt
 )
-{ UNUSED_PARAM(fqdn_as_string); return NULL; }
+{ UNUSED_PARAM(fqdn_as_string); UNUSED_PARAM(dns_name_wire_fmt);  return GETDNS_RETURN_GOOD; }
 
 char *
 getdns_convert_ulabel_to_alabel(
diff --git a/spec/getdns_core_only.h b/spec/getdns_core_only.h
index 45d5a2a9..58d65f18 100644
--- a/spec/getdns_core_only.h
+++ b/spec/getdns_core_only.h
@@ -1,4 +1,4 @@
-/* Created at 2014-02-10-09-56-03*/
+/* Created at 2014-02-18-14-06-50*/
 #ifndef GETDNS_H
 #define GETDNS_H
 
@@ -472,14 +472,16 @@ getdns_service_sync(
   struct getdns_dict     **response
 );
 
-char *
+getdns_return_t
 getdns_convert_dns_name_to_fqdn(
-  const char  *name_from_dns_response
+  const struct getdns_bindata *dns_name_wire_fmt,
+  char **fqdn_as_string
 );
 
-char *
+getdns_return_t
 getdns_convert_fqdn_to_dns_name(
-  const char  *fqdn_as_string
+  const char *fqdn_as_string,
+  struct getdns_bindata **dns_name_wire_fmt
 );
 
 char *
diff --git a/spec/index.html b/spec/index.html
index 33c60485..3ee379b5 100644
--- a/spec/index.html
+++ b/spec/index.html
@@ -1125,14 +1125,16 @@ presentation format. For example, the hex sequence <code>03 77 77 77 07 65 78 61
 string in FQDN format to bytes in DNS format.</p>
 
 <div class=forh>
-char *
+getdns_return_t
 getdns_convert_dns_name_to_fqdn(
-  const char  *name_from_dns_response
+  const struct getdns_bindata *dns_name_wire_fmt,
+  char **fqdn_as_string
 );
 
-char *
+getdns_return_t
 getdns_convert_fqdn_to_dns_name(
-  const char  *fqdn_as_string
+  const char *fqdn_as_string,
+  struct getdns_bindata **dns_name_wire_fmt
 );
 </div>
 
@@ -2426,7 +2428,7 @@ The response dicts inherit the custom memory management functions and the value
 
 <h1>9. The Generated Files</h1>
 
-<p>There is <a href="getdns-0.393.tgz">a tarball</a> that includes the .h files,
+<p>There is <a href="getdns-0.394.tgz">a tarball</a> that includes the .h files,
 the examples, and so on. The examples all make, even though there is no API implementation, based
 on a pseudo-implementation in the tarball; see make-examples-PLATFORM.sh. Note that this currently builds fine
 on the Macintosh and Ubuntu; help is definitely appreciated on making the build process