/*% * determine whether domain name "a" is the same as domain name "b" * * return: *\li -1 on error *\li 0 if names differ *\li 1 if names are the same */ int ns_samename(const char *a, const char *b) { #ifndef T2EX char ta[NS_MAXDNAME], tb[NS_MAXDNAME]; if (ns_makecanon(a, ta, sizeof ta) < 0 || ns_makecanon(b, tb, sizeof tb) < 0) return (-1); if (strcasecmp(ta, tb) == 0) return (1); else return (0); #else int na, nb; na = ns_countcanon(a); nb = ns_countcanon(b); if (na != nb) { return 0; } if (strncasecmp(a, b, na) == 0) { return 1; } else { return 0; } #endif }
int ns_samename(const char *a, const char *b) { char ta[NS_MAXDNAME], tb[NS_MAXDNAME]; if (ns_makecanon(a, ta, sizeof ta) < 0 || ns_makecanon(b, tb, sizeof tb) < 0) return (-1); if (strcasecmp(ta, tb) == 0) return (1); else return (0); }
int ns_samename(const char *a, const char *b) { char ta[NS_MAXDNAME], tb[NS_MAXDNAME]; isc_result_t status; status = ns_makecanon(a, ta, sizeof ta); if (status != ISC_R_SUCCESS) return status; status = ns_makecanon(b, tb, sizeof tb); if (status != ISC_R_SUCCESS) return (-1); if (strcasecmp(ta, tb) == 0) return (1); else return (0); }