gen.c revision 0c27b3fe77ac1d5094ba3521e8142d9e7973133f
cfa2326b5c96a3a4c720262e077b2baf9fc27970Tinderbox User * Copyright (C) 1998-2009, 2012-2016 Internet Systems Consortium, Inc. ("ISC")
2855e2772342e369cc8962659beac7b3001b4ec6Evan Hunt * This Source Code Form is subject to the terms of the Mozilla Public
2855e2772342e369cc8962659beac7b3001b4ec6Evan Hunt * License, v. 2.0. If a copy of the MPL was not distributed with this
2855e2772342e369cc8962659beac7b3001b4ec6Evan Hunt * file, You can obtain one at http://mozilla.org/MPL/2.0/.
2855e2772342e369cc8962659beac7b3001b4ec6Evan Hunt * Silence compiler warnings about using strcpy and friends.
2855e2772342e369cc8962659beac7b3001b4ec6Evan Hunt * We use snprintf which was defined late in Windows even it is in C99.
c38341ec435fb78de6d12c1001201f9ac7487b68Mark Andrews#define FROMTEXTARGS "rdclass, type, lexer, origin, options, target, callbacks"
c38341ec435fb78de6d12c1001201f9ac7487b68Mark Andrews#define FROMWIREARGS "rdclass, type, source, dctx, options, target"
c38341ec435fb78de6d12c1001201f9ac7487b68Mark Andrews#define FROMSTRUCTARGS "rdclass, type, source, target"
static const char copyright[] =
" *************** THIS FILE IS AUTOMATICALLY GENERATED BY gen.c.\n"
static struct cc {
int rdclass;
} *classes;
static struct tt {
int rdclass;
int type;
} *types;
static struct ttnam {
unsigned int sorted;
int type;
upper(char *);
funname(const char *, char *);
doswitch(const char *, const char *, const char *, const char *,
add(int, const char *, int, const char *, const char *);
sd(int, const char *, const char *, char);
insert_into_typenames(int, const char *, const char *);
upper(char *s) {
static int buf_to_use = 0;
buf_to_use++;
buf_to_use = 0;
char *b = buf;
return (buf);
int lasttype = 0;
int subswitch = 0;
if (first) {
first = 0;
subswitch = 0;
if (subswitch) {
if (first) {
static struct ttnam *
for (i = 0; i < TYPENAMES; i++) {
return (&typenames[i]);
return (NULL);
size_t c;
for (i = 0; i < TYPENAMES; i++) {
typename);
const char *dirname)
if (rdclass == 0)
int type, n;
size_t n;
int rdclass;
unsigned int hash;
int lasttype;
int class_enum = 0;
int type_enum = 0;
int structs = 0;
int depend = 0;
for (i = 0; i < TYPENAMES; i++)
code = 0;
depend = 0;
type_enum = 0;
structs = 0;
code = 0;
class_enum = 0;
type_enum = 0;
structs = 0;
code = 0;
depend = 0;
class_enum = 0;
structs = 0;
code = 0;
depend = 0;
class_enum = 0;
type_enum = 0;
year[0] = 0;
year[0] = 0;
if (code) {
for (i = 0; i <= maxtype; i++) {
for (j = 0; j <= maxtype; j++) {
for (i = 0; i <= maxtype; i++) {
for (i = 0; i <= maxtype; i++) {
} else if (type_enum) {
lasttype = 0;
} else if (class_enum) {
int classnum;
} else if (structs) {
} else if (depend) {