diff --git a/nameser.h b/nameser.h index f77d73e6..95a54797 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 fa4adc55..a168341f 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); }