Signed-off-by: Daniel Mack <zon...@gmail.com>
---
 include/resolv.h   |    4 ++--
 libc/inet/resolv.c |   15 ++++++++++++++-
 2 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/include/resolv.h b/include/resolv.h
index cba26f0..0afb375 100644
--- a/include/resolv.h
+++ b/include/resolv.h
@@ -332,9 +332,9 @@ __END_DECLS
 #if 0
 #define b64_ntop               __b64_ntop
 #define b64_pton               __b64_pton
-#define dn_comp                        __dn_comp
 #define dn_count_labels                __dn_count_labels
 #endif
+#define dn_comp                        __dn_comp
 #define dn_expand              __dn_expand
 #if 0
 #define dn_skipname            __dn_skipname
@@ -404,9 +404,9 @@ const u_char *      p_fqname (const u_char *, const u_char 
*, FILE *) __THROW;
 const char *   p_option (u_long option) __THROW;
 char *         p_secstodate (u_long) __THROW;
 int            dn_count_labels (const char *) __THROW;
+#endif
 int            dn_comp (const char *, u_char *, int, u_char **, u_char **)
      __THROW;
-#endif
 int            dn_expand (const u_char *, const u_char *, const u_char *,
                           char *, int) __THROW;
 #if 0
diff --git a/libc/inet/resolv.c b/libc/inet/resolv.c
index 64e99ba..a74ab30 100644
--- a/libc/inet/resolv.c
+++ b/libc/inet/resolv.c
@@ -2659,6 +2659,20 @@ int dn_expand(const u_char *msg, const u_char *eom, 
const u_char *src,
                dst[0] = '\0';
        return n;
 }
+
+/*
+ * Pack domain name 'exp_dn' in presentation form into 'comp_dn'.
+ * Return the size of the compressed name or -1.
+ * 'length' is the size of the array pointed to by 'comp_dn'.
+ */
+int
+dn_comp(const char *src, u_char *dst, int dstsiz,
+               u_char **dnptrs, u_char **lastdnptr)
+{
+       return ns_name_compress(src, dst, (size_t) dstsiz,
+                       (const u_char **) dnptrs,
+                       (const u_char **) lastdnptr);
+}
 #endif /* L_res_comp */
 
 
@@ -3823,4 +3837,3 @@ void ns_put32(unsigned long src, unsigned char *dst)
 /* Unimplemented: */
 /* res_mkquery */
 /* res_send */
-/* dn_comp */
-- 
1.7.5.4

_______________________________________________
uClibc mailing list
uClibc@uclibc.org
http://lists.busybox.net/mailman/listinfo/uclibc

Reply via email to