naptr_35.c revision 5eb91bd90e3ad3426e5e3213031556a737cf3809
/*
* Copyright (C) 1999-2001 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 INTERNET SOFTWARE CONSORTIUM
* DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
* INTERNET SOFTWARE CONSORTIUM 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.45 2003/07/25 00:01:10 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.
*/
}
#endif /* RDATA_IN_1_NAPTR_35_C */