summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2004-02-04 08:00:25 +0000
committerDaniel Stenberg <daniel@haxx.se>2004-02-04 08:00:25 +0000
commitc72a2f4af7ca574a2c7b47750999f40ea5be7552 (patch)
tree3aeb7573f2257492805086e3c246d375f7519e1b
parent2cb9a82bacf70127bacfbf81bb374f6889f55cdc (diff)
downloadc-ares-c72a2f4af7ca574a2c7b47750999f40ea5be7552.tar.gz
c-ares-c72a2f4af7ca574a2c7b47750999f40ea5be7552.tar.bz2
c-ares-c72a2f4af7ca574a2c7b47750999f40ea5be7552.zip
prevent the windows version to use global symbol names
added prototypes for the strcasecmp() functions
-rw-r--r--nameser.h15
-rw-r--r--windows_port.c4
2 files changed, 17 insertions, 2 deletions
diff --git a/nameser.h b/nameser.h
index f77d73e..95a5479 100644
--- a/nameser.h
+++ b/nameser.h
@@ -1,3 +1,6 @@
+#ifndef ARES_NAMESER_H
+#define ARES_NAMESER_H
+
/* Windows-only header file provided by liren@vivisimo.com to make his Windows
port build */
@@ -204,3 +207,15 @@ typedef enum __ns_rcode {
#define T_MAILB ns_t_mailb
#define T_MAILA ns_t_maila
#define T_ANY ns_t_any
+
+/* protos for the functions we provide in windows_port.c */
+int ares_strncasecmp(const char *s1, const char *s2, size_t n);
+int ares_strcasecmp(const char *s1, const char *s2);
+
+/* use this define magic to prevent us from adding symbol names to the library
+ that is a high-risk to collide with another libraries' attempts to do the
+ same */
+#define strncasecmp(a,b,c) ares_strncasecmp(a,b,c)
+#define strcasecmp(a,b) ares_strcasecmp(a,b)
+
+#endif /* ARES_NAMESER_H */
diff --git a/windows_port.c b/windows_port.c
index fa4adc5..a168341 100644
--- a/windows_port.c
+++ b/windows_port.c
@@ -6,7 +6,7 @@
#include "nameser.h"
int
-strncasecmp(const char *a, const char *b, size_t n)
+ares_strncasecmp(const char *a, const char *b, size_t n)
{
size_t i;
@@ -19,7 +19,7 @@ strncasecmp(const char *a, const char *b, size_t n)
}
int
-strcasecmp(const char *a, const char *b)
+ares_strcasecmp(const char *a, const char *b)
{
return strncasecmp(a, b, strlen(a)+1);
}