/* Generated by the protocol buffer compiler.  DO NOT EDIT! */
/* Generated from: dnstap/dnstap.proto */

/* Do not generate deprecated warnings for self */
#ifndef PROTOBUF_C__NO_DEPRECATED
#define PROTOBUF_C__NO_DEPRECATED
#endif

#include "dnstap/dnstap.pb-c.h"
void   dnstap__dnstap__init
                     (Dnstap__Dnstap         *message)
{
  static const Dnstap__Dnstap init_value = DNSTAP__DNSTAP__INIT;
  *message = init_value;
}
size_t dnstap__dnstap__get_packed_size
                     (const Dnstap__Dnstap *message)
{
  assert(message->base.descriptor == &dnstap__dnstap__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t dnstap__dnstap__pack
                     (const Dnstap__Dnstap *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &dnstap__dnstap__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t dnstap__dnstap__pack_to_buffer
                     (const Dnstap__Dnstap *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &dnstap__dnstap__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Dnstap__Dnstap *
       dnstap__dnstap__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Dnstap__Dnstap *)
     protobuf_c_message_unpack (&dnstap__dnstap__descriptor,
                                allocator, len, data);
}
void   dnstap__dnstap__free_unpacked
                     (Dnstap__Dnstap *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &dnstap__dnstap__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   dnstap__policy__init
                     (Dnstap__Policy         *message)
{
  static const Dnstap__Policy init_value = DNSTAP__POLICY__INIT;
  *message = init_value;
}
size_t dnstap__policy__get_packed_size
                     (const Dnstap__Policy *message)
{
  assert(message->base.descriptor == &dnstap__policy__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t dnstap__policy__pack
                     (const Dnstap__Policy *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &dnstap__policy__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t dnstap__policy__pack_to_buffer
                     (const Dnstap__Policy *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &dnstap__policy__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Dnstap__Policy *
       dnstap__policy__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Dnstap__Policy *)
     protobuf_c_message_unpack (&dnstap__policy__descriptor,
                                allocator, len, data);
}
void   dnstap__policy__free_unpacked
                     (Dnstap__Policy *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &dnstap__policy__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   dnstap__message__init
                     (Dnstap__Message         *message)
{
  static const Dnstap__Message init_value = DNSTAP__MESSAGE__INIT;
  *message = init_value;
}
size_t dnstap__message__get_packed_size
                     (const Dnstap__Message *message)
{
  assert(message->base.descriptor == &dnstap__message__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t dnstap__message__pack
                     (const Dnstap__Message *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &dnstap__message__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t dnstap__message__pack_to_buffer
                     (const Dnstap__Message *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &dnstap__message__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Dnstap__Message *
       dnstap__message__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Dnstap__Message *)
     protobuf_c_message_unpack (&dnstap__message__descriptor,
                                allocator, len, data);
}
void   dnstap__message__free_unpacked
                     (Dnstap__Message *message,
                      ProtobufCAllocator *allocator)
{
  if(!message)
    return;
  assert(message->base.descriptor == &dnstap__message__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
static const ProtobufCEnumValue dnstap__dnstap__type__enum_values_by_number[1] =
{
  { "MESSAGE", "DNSTAP__DNSTAP__TYPE__MESSAGE", 1 },
};
static const ProtobufCIntRange dnstap__dnstap__type__value_ranges[] = {
{1, 0},{0, 1}
};
static const ProtobufCEnumValueIndex dnstap__dnstap__type__enum_values_by_name[1] =
{
  { "MESSAGE", 0 },
};
const ProtobufCEnumDescriptor dnstap__dnstap__type__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "dnstap.Dnstap.Type",
  "Type",
  "Dnstap__Dnstap__Type",
  "dnstap",
  1,
  dnstap__dnstap__type__enum_values_by_number,
  1,
  dnstap__dnstap__type__enum_values_by_name,
  1,
  dnstap__dnstap__type__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCFieldDescriptor dnstap__dnstap__field_descriptors[5] =
{
  {
    "identity",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Dnstap, has_identity),
    offsetof(Dnstap__Dnstap, identity),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "version",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Dnstap, has_version),
    offsetof(Dnstap__Dnstap, version),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "extra",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Dnstap, has_extra),
    offsetof(Dnstap__Dnstap, extra),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "message",
    14,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Dnstap__Dnstap, message),
    &dnstap__message__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "type",
    15,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_ENUM,
    0,   /* quantifier_offset */
    offsetof(Dnstap__Dnstap, type),
    &dnstap__dnstap__type__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned dnstap__dnstap__field_indices_by_name[] = {
  2,   /* field[2] = extra */
  0,   /* field[0] = identity */
  3,   /* field[3] = message */
  4,   /* field[4] = type */
  1,   /* field[1] = version */
};
static const ProtobufCIntRange dnstap__dnstap__number_ranges[2 + 1] =
{
  { 1, 0 },
  { 14, 3 },
  { 0, 5 }
};
const ProtobufCMessageDescriptor dnstap__dnstap__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "dnstap.Dnstap",
  "Dnstap",
  "Dnstap__Dnstap",
  "dnstap",
  sizeof(Dnstap__Dnstap),
  5,
  dnstap__dnstap__field_descriptors,
  dnstap__dnstap__field_indices_by_name,
  2,  dnstap__dnstap__number_ranges,
  (ProtobufCMessageInit) dnstap__dnstap__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue dnstap__policy__match__enum_values_by_number[5] =
{
  { "QNAME", "DNSTAP__POLICY__MATCH__QNAME", 1 },
  { "CLIENT_IP", "DNSTAP__POLICY__MATCH__CLIENT_IP", 2 },
  { "RESPONSE_IP", "DNSTAP__POLICY__MATCH__RESPONSE_IP", 3 },
  { "NS_NAME", "DNSTAP__POLICY__MATCH__NS_NAME", 4 },
  { "NS_IP", "DNSTAP__POLICY__MATCH__NS_IP", 5 },
};
static const ProtobufCIntRange dnstap__policy__match__value_ranges[] = {
{1, 0},{0, 5}
};
static const ProtobufCEnumValueIndex dnstap__policy__match__enum_values_by_name[5] =
{
  { "CLIENT_IP", 1 },
  { "NS_IP", 4 },
  { "NS_NAME", 3 },
  { "QNAME", 0 },
  { "RESPONSE_IP", 2 },
};
const ProtobufCEnumDescriptor dnstap__policy__match__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "dnstap.Policy.Match",
  "Match",
  "Dnstap__Policy__Match",
  "dnstap",
  5,
  dnstap__policy__match__enum_values_by_number,
  5,
  dnstap__policy__match__enum_values_by_name,
  1,
  dnstap__policy__match__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCEnumValue dnstap__policy__action__enum_values_by_number[6] =
{
  { "NXDOMAIN", "DNSTAP__POLICY__ACTION__NXDOMAIN", 1 },
  { "NODATA", "DNSTAP__POLICY__ACTION__NODATA", 2 },
  { "PASS", "DNSTAP__POLICY__ACTION__PASS", 3 },
  { "DROP", "DNSTAP__POLICY__ACTION__DROP", 4 },
  { "TRUNCATE", "DNSTAP__POLICY__ACTION__TRUNCATE", 5 },
  { "LOCAL_DATA", "DNSTAP__POLICY__ACTION__LOCAL_DATA", 6 },
};
static const ProtobufCIntRange dnstap__policy__action__value_ranges[] = {
{1, 0},{0, 6}
};
static const ProtobufCEnumValueIndex dnstap__policy__action__enum_values_by_name[6] =
{
  { "DROP", 3 },
  { "LOCAL_DATA", 5 },
  { "NODATA", 1 },
  { "NXDOMAIN", 0 },
  { "PASS", 2 },
  { "TRUNCATE", 4 },
};
const ProtobufCEnumDescriptor dnstap__policy__action__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "dnstap.Policy.Action",
  "Action",
  "Dnstap__Policy__Action",
  "dnstap",
  6,
  dnstap__policy__action__enum_values_by_number,
  6,
  dnstap__policy__action__enum_values_by_name,
  1,
  dnstap__policy__action__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCFieldDescriptor dnstap__policy__field_descriptors[5] =
{
  {
    "type",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Dnstap__Policy, type),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "rule",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Policy, has_rule),
    offsetof(Dnstap__Policy, rule),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "action",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Dnstap__Policy, has_action),
    offsetof(Dnstap__Policy, action),
    &dnstap__policy__action__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "match",
    4,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Dnstap__Policy, has_match),
    offsetof(Dnstap__Policy, match),
    &dnstap__policy__match__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "value",
    5,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Policy, has_value),
    offsetof(Dnstap__Policy, value),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned dnstap__policy__field_indices_by_name[] = {
  2,   /* field[2] = action */
  3,   /* field[3] = match */
  1,   /* field[1] = rule */
  0,   /* field[0] = type */
  4,   /* field[4] = value */
};
static const ProtobufCIntRange dnstap__policy__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 5 }
};
const ProtobufCMessageDescriptor dnstap__policy__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "dnstap.Policy",
  "Policy",
  "Dnstap__Policy",
  "dnstap",
  sizeof(Dnstap__Policy),
  5,
  dnstap__policy__field_descriptors,
  dnstap__policy__field_indices_by_name,
  1,  dnstap__policy__number_ranges,
  (ProtobufCMessageInit) dnstap__policy__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue dnstap__message__type__enum_values_by_number[14] =
{
  { "AUTH_QUERY", "DNSTAP__MESSAGE__TYPE__AUTH_QUERY", 1 },
  { "AUTH_RESPONSE", "DNSTAP__MESSAGE__TYPE__AUTH_RESPONSE", 2 },
  { "RESOLVER_QUERY", "DNSTAP__MESSAGE__TYPE__RESOLVER_QUERY", 3 },
  { "RESOLVER_RESPONSE", "DNSTAP__MESSAGE__TYPE__RESOLVER_RESPONSE", 4 },
  { "CLIENT_QUERY", "DNSTAP__MESSAGE__TYPE__CLIENT_QUERY", 5 },
  { "CLIENT_RESPONSE", "DNSTAP__MESSAGE__TYPE__CLIENT_RESPONSE", 6 },
  { "FORWARDER_QUERY", "DNSTAP__MESSAGE__TYPE__FORWARDER_QUERY", 7 },
  { "FORWARDER_RESPONSE", "DNSTAP__MESSAGE__TYPE__FORWARDER_RESPONSE", 8 },
  { "STUB_QUERY", "DNSTAP__MESSAGE__TYPE__STUB_QUERY", 9 },
  { "STUB_RESPONSE", "DNSTAP__MESSAGE__TYPE__STUB_RESPONSE", 10 },
  { "TOOL_QUERY", "DNSTAP__MESSAGE__TYPE__TOOL_QUERY", 11 },
  { "TOOL_RESPONSE", "DNSTAP__MESSAGE__TYPE__TOOL_RESPONSE", 12 },
  { "UPDATE_QUERY", "DNSTAP__MESSAGE__TYPE__UPDATE_QUERY", 13 },
  { "UPDATE_RESPONSE", "DNSTAP__MESSAGE__TYPE__UPDATE_RESPONSE", 14 },
};
static const ProtobufCIntRange dnstap__message__type__value_ranges[] = {
{1, 0},{0, 14}
};
static const ProtobufCEnumValueIndex dnstap__message__type__enum_values_by_name[14] =
{
  { "AUTH_QUERY", 0 },
  { "AUTH_RESPONSE", 1 },
  { "CLIENT_QUERY", 4 },
  { "CLIENT_RESPONSE", 5 },
  { "FORWARDER_QUERY", 6 },
  { "FORWARDER_RESPONSE", 7 },
  { "RESOLVER_QUERY", 2 },
  { "RESOLVER_RESPONSE", 3 },
  { "STUB_QUERY", 8 },
  { "STUB_RESPONSE", 9 },
  { "TOOL_QUERY", 10 },
  { "TOOL_RESPONSE", 11 },
  { "UPDATE_QUERY", 12 },
  { "UPDATE_RESPONSE", 13 },
};
const ProtobufCEnumDescriptor dnstap__message__type__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "dnstap.Message.Type",
  "Type",
  "Dnstap__Message__Type",
  "dnstap",
  14,
  dnstap__message__type__enum_values_by_number,
  14,
  dnstap__message__type__enum_values_by_name,
  1,
  dnstap__message__type__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCFieldDescriptor dnstap__message__field_descriptors[15] =
{
  {
    "type",
    1,
    PROTOBUF_C_LABEL_REQUIRED,
    PROTOBUF_C_TYPE_ENUM,
    0,   /* quantifier_offset */
    offsetof(Dnstap__Message, type),
    &dnstap__message__type__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "socket_family",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Dnstap__Message, has_socket_family),
    offsetof(Dnstap__Message, socket_family),
    &dnstap__socket_family__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "socket_protocol",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_ENUM,
    offsetof(Dnstap__Message, has_socket_protocol),
    offsetof(Dnstap__Message, socket_protocol),
    &dnstap__socket_protocol__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "query_address",
    4,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Message, has_query_address),
    offsetof(Dnstap__Message, query_address),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "response_address",
    5,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Message, has_response_address),
    offsetof(Dnstap__Message, response_address),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "query_port",
    6,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT32,
    offsetof(Dnstap__Message, has_query_port),
    offsetof(Dnstap__Message, query_port),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "response_port",
    7,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT32,
    offsetof(Dnstap__Message, has_response_port),
    offsetof(Dnstap__Message, response_port),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "query_time_sec",
    8,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT64,
    offsetof(Dnstap__Message, has_query_time_sec),
    offsetof(Dnstap__Message, query_time_sec),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "query_time_nsec",
    9,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_FIXED32,
    offsetof(Dnstap__Message, has_query_time_nsec),
    offsetof(Dnstap__Message, query_time_nsec),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "query_message",
    10,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Message, has_query_message),
    offsetof(Dnstap__Message, query_message),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "query_zone",
    11,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Message, has_query_zone),
    offsetof(Dnstap__Message, query_zone),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "response_time_sec",
    12,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT64,
    offsetof(Dnstap__Message, has_response_time_sec),
    offsetof(Dnstap__Message, response_time_sec),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "response_time_nsec",
    13,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_FIXED32,
    offsetof(Dnstap__Message, has_response_time_nsec),
    offsetof(Dnstap__Message, response_time_nsec),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "response_message",
    14,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Dnstap__Message, has_response_message),
    offsetof(Dnstap__Message, response_message),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "policy",
    15,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Dnstap__Message, policy),
    &dnstap__policy__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned dnstap__message__field_indices_by_name[] = {
  14,   /* field[14] = policy */
  3,   /* field[3] = query_address */
  9,   /* field[9] = query_message */
  5,   /* field[5] = query_port */
  8,   /* field[8] = query_time_nsec */
  7,   /* field[7] = query_time_sec */
  10,   /* field[10] = query_zone */
  4,   /* field[4] = response_address */
  13,   /* field[13] = response_message */
  6,   /* field[6] = response_port */
  12,   /* field[12] = response_time_nsec */
  11,   /* field[11] = response_time_sec */
  1,   /* field[1] = socket_family */
  2,   /* field[2] = socket_protocol */
  0,   /* field[0] = type */
};
static const ProtobufCIntRange dnstap__message__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 15 }
};
const ProtobufCMessageDescriptor dnstap__message__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "dnstap.Message",
  "Message",
  "Dnstap__Message",
  "dnstap",
  sizeof(Dnstap__Message),
  15,
  dnstap__message__field_descriptors,
  dnstap__message__field_indices_by_name,
  1,  dnstap__message__number_ranges,
  (ProtobufCMessageInit) dnstap__message__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue dnstap__socket_family__enum_values_by_number[2] =
{
  { "INET", "DNSTAP__SOCKET_FAMILY__INET", 1 },
  { "INET6", "DNSTAP__SOCKET_FAMILY__INET6", 2 },
};
static const ProtobufCIntRange dnstap__socket_family__value_ranges[] = {
{1, 0},{0, 2}
};
static const ProtobufCEnumValueIndex dnstap__socket_family__enum_values_by_name[2] =
{
  { "INET", 0 },
  { "INET6", 1 },
};
const ProtobufCEnumDescriptor dnstap__socket_family__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "dnstap.SocketFamily",
  "SocketFamily",
  "Dnstap__SocketFamily",
  "dnstap",
  2,
  dnstap__socket_family__enum_values_by_number,
  2,
  dnstap__socket_family__enum_values_by_name,
  1,
  dnstap__socket_family__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCEnumValue dnstap__socket_protocol__enum_values_by_number[7] =
{
  { "UDP", "DNSTAP__SOCKET_PROTOCOL__UDP", 1 },
  { "TCP", "DNSTAP__SOCKET_PROTOCOL__TCP", 2 },
  { "DOT", "DNSTAP__SOCKET_PROTOCOL__DOT", 3 },
  { "DOH", "DNSTAP__SOCKET_PROTOCOL__DOH", 4 },
  { "DNSCryptUDP", "DNSTAP__SOCKET_PROTOCOL__DNSCryptUDP", 5 },
  { "DNSCryptTCP", "DNSTAP__SOCKET_PROTOCOL__DNSCryptTCP", 6 },
  { "DOQ", "DNSTAP__SOCKET_PROTOCOL__DOQ", 7 },
};
static const ProtobufCIntRange dnstap__socket_protocol__value_ranges[] = {
{1, 0},{0, 7}
};
static const ProtobufCEnumValueIndex dnstap__socket_protocol__enum_values_by_name[7] =
{
  { "DNSCryptTCP", 5 },
  { "DNSCryptUDP", 4 },
  { "DOH", 3 },
  { "DOQ", 6 },
  { "DOT", 2 },
  { "TCP", 1 },
  { "UDP", 0 },
};
const ProtobufCEnumDescriptor dnstap__socket_protocol__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "dnstap.SocketProtocol",
  "SocketProtocol",
  "Dnstap__SocketProtocol",
  "dnstap",
  7,
  dnstap__socket_protocol__enum_values_by_number,
  7,
  dnstap__socket_protocol__enum_values_by_name,
  1,
  dnstap__socket_protocol__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
