naptr_35.c revision dafcb997e390efa4423883dafd100c975c4095d6
/*
* Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC")
* Copyright (C) 1999-2001, 2003 Internet Software Consortium.
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: naptr_35.c,v 1.47 2004/03/05 05:10:24 marka Exp $ */
/* Reviewed: Thu Mar 16 16:52:50 PST 2000 by bwelling */
/* RFC 2915 */
#ifndef RDATA_IN_1_NAPTR_35_C
#define RDATA_IN_1_NAPTR_35_C
#define RRTYPE_NAPTR_ATTRIBUTES (0)
static inline isc_result_t
/*
* Order.
*/
ISC_FALSE));
/*
* Preference.
*/
ISC_FALSE));
/*
* Flags.
*/
ISC_FALSE));
/*
* Service.
*/
ISC_FALSE));
/*
* Regexp.
*/
ISC_FALSE));
/*
* Replacement.
*/
ISC_FALSE));
return (ISC_R_SUCCESS);
}
static inline isc_result_t
char buf[sizeof("64000")];
unsigned short num;
/*
* Order.
*/
/*
* Preference.
*/
/*
* Flags.
*/
/*
* Service.
*/
/*
* Regexp.
*/
/*
* Replacement.
*/
}
static inline isc_result_t
/*
* Order, preference.
*/
return (ISC_R_UNEXPECTEDEND);
/*
* Flags.
*/
/*
* Service.
*/
/*
* Regexp.
*/
/*
* Replacement.
*/
}
static inline isc_result_t
/*
* Order, preference.
*/
/*
* Flags.
*/
/*
* Service.
*/
/*
* Regexp.
*/
/*
* Replacement.
*/
}
static inline int
/*
* Order, preference.
*/
if (order != 0)
/*
* Flags.
*/
if (order != 0)
/*
* Service.
*/
if (order != 0)
/*
* Regexp.
*/
if (order != 0)
/*
* Replacement.
*/
}
static inline isc_result_t
}
static inline isc_result_t
isc_region_t r;
dns_rdata_toregion(rdata, &r);
isc_region_consume(&r, 2);
isc_region_consume(&r, 2);
isc_region_consume(&r, 1);
goto cleanup;
isc_region_consume(&r, 1);
goto cleanup;
isc_region_consume(&r, 1);
goto cleanup;
dns_name_fromregion(&name, &r);
if (result != ISC_R_SUCCESS)
goto cleanup;
return (ISC_R_SUCCESS);
return (ISC_R_NOMEMORY);
}
static inline void
return;
}
static inline isc_result_t
unsigned int i, flagslen;
char *cp;
/*
* Order, preference.
*/
/*
* Flags.
*/
atype = 0;
break;
}
break;
}
}
/*
* Service.
*/
/*
* Regexp.
*/
/*
* Replacement.
*/
if (atype != 0)
return (ISC_R_SUCCESS);
}
static inline isc_result_t
unsigned int length, n;
length = 0;
/*
* Order, preference.
*/
length += 4;
/*
* Flags.
*/
length += n;
isc_region_consume(&r2, n);
/*
* Service.
*/
length += n;
isc_region_consume(&r2, n);
/*
* Regexp.
*/
length += n;
isc_region_consume(&r2, n);
/*
* Digest the RR up to the replacement name.
*/
if (result != ISC_R_SUCCESS)
return (result);
/*
* Replacement.
*/
}
static inline isc_boolean_t
return (ISC_TRUE);
}
static inline isc_boolean_t
return (ISC_TRUE);
}
#endif /* RDATA_IN_1_NAPTR_35_C */