netresolv: Move some definitions around for Clang compatibility.
Otherwise we get implicit-function-definition errors.
This commit is contained in:
@@ -189,23 +189,6 @@ ns_name_ntop(const u_char *src, char *dst, size_t dstsiz)
|
|||||||
return (int)(dn - dst);
|
return (int)(dn - dst);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*%
|
|
||||||
* Convert a ascii string into an encoded domain name as per RFC1035.
|
|
||||||
*
|
|
||||||
* return:
|
|
||||||
*
|
|
||||||
*\li -1 if it fails
|
|
||||||
*\li 1 if string was fully qualified
|
|
||||||
*\li 0 is string was not fully qualified
|
|
||||||
*
|
|
||||||
* notes:
|
|
||||||
*\li Enforces label and domain length limits.
|
|
||||||
*/
|
|
||||||
int
|
|
||||||
ns_name_pton(const char *src, u_char *dst, size_t dstsiz) {
|
|
||||||
return (ns_name_pton2(src, dst, dstsiz, NULL));
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ns_name_pton2(src, dst, dstsiz, *dstlen)
|
* ns_name_pton2(src, dst, dstsiz, *dstlen)
|
||||||
* Convert a ascii string into an encoded domain name as per RFC1035.
|
* Convert a ascii string into an encoded domain name as per RFC1035.
|
||||||
@@ -344,6 +327,23 @@ ns_name_pton2(const char *src, u_char *dst, size_t dstsiz, size_t *dstlen) {
|
|||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*%
|
||||||
|
* Convert a ascii string into an encoded domain name as per RFC1035.
|
||||||
|
*
|
||||||
|
* return:
|
||||||
|
*
|
||||||
|
*\li -1 if it fails
|
||||||
|
*\li 1 if string was fully qualified
|
||||||
|
*\li 0 is string was not fully qualified
|
||||||
|
*
|
||||||
|
* notes:
|
||||||
|
*\li Enforces label and domain length limits.
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
ns_name_pton(const char *src, u_char *dst, size_t dstsiz) {
|
||||||
|
return (ns_name_pton2(src, dst, dstsiz, NULL));
|
||||||
|
}
|
||||||
|
|
||||||
/*%
|
/*%
|
||||||
* Convert a network strings labels into all lowercase.
|
* Convert a network strings labels into all lowercase.
|
||||||
*
|
*
|
||||||
@@ -399,19 +399,6 @@ ns_name_ntol(const u_char *src, u_char *dst, size_t dstsiz)
|
|||||||
return (int)(dn - dst);
|
return (int)(dn - dst);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*%
|
|
||||||
* Unpack a domain name from a message, source may be compressed.
|
|
||||||
*
|
|
||||||
* return:
|
|
||||||
*\li -1 if it fails, or consumed octets if it succeeds.
|
|
||||||
*/
|
|
||||||
int
|
|
||||||
ns_name_unpack(const u_char *msg, const u_char *eom, const u_char *src,
|
|
||||||
u_char *dst, size_t dstsiz)
|
|
||||||
{
|
|
||||||
return (ns_name_unpack2(msg, eom, src, dst, dstsiz, NULL));
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ns_name_unpack2(msg, eom, src, dst, dstsiz, *dstlen)
|
* ns_name_unpack2(msg, eom, src, dst, dstsiz, *dstlen)
|
||||||
* Unpack a domain name from a message, source may be compressed.
|
* Unpack a domain name from a message, source may be compressed.
|
||||||
@@ -501,6 +488,19 @@ ns_name_unpack2(const u_char *msg, const u_char *eom, const u_char *src,
|
|||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*%
|
||||||
|
* Unpack a domain name from a message, source may be compressed.
|
||||||
|
*
|
||||||
|
* return:
|
||||||
|
*\li -1 if it fails, or consumed octets if it succeeds.
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
ns_name_unpack(const u_char *msg, const u_char *eom, const u_char *src,
|
||||||
|
u_char *dst, size_t dstsiz)
|
||||||
|
{
|
||||||
|
return (ns_name_unpack2(msg, eom, src, dst, dstsiz, NULL));
|
||||||
|
}
|
||||||
|
|
||||||
/*%
|
/*%
|
||||||
* Pack domain name 'domain' into 'comp_dn'.
|
* Pack domain name 'domain' into 'comp_dn'.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -205,6 +205,10 @@ ns_parserr(ns_msg *handle, ns_sect section, int rrnum, ns_rr *rr) {
|
|||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern int
|
||||||
|
ns_name_unpack2(const u_char *msg, const u_char *eom, const u_char *src,
|
||||||
|
u_char *dst, size_t dstsiz, size_t *dstlen);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is identical to the above but uses network-format (uncompressed) names.
|
* This is identical to the above but uses network-format (uncompressed) names.
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user