{
  "module_spec": {
    "module_name": "Auth",
    "module_description": "Authoritative service",
    "config_data": [
      { "item_name": "database_file",
        "item_type": "string",
        "item_optional": true,
        "item_default": "@@LOCALSTATEDIR@@/@PACKAGE@/zone.sqlite3"
      },
      { "item_name": "datasources",
        "item_type": "list",
        "item_optional": true,
        "item_default": [],
        "list_item_spec":
        { "item_name": "list_element",
          "item_type": "map",
          "item_optional": false,
          "item_default": {},
          "map_item_spec": [
          { "item_name": "type",
            "item_type": "string",
            "item_optional": false,
            "item_default": ""
          },
          { "item_name": "class",
            "item_type": "string",
            "item_optional": false,
            "item_default": "IN"
          },
          { "item_name": "zones",
            "item_type": "list",
            "item_optional": false,
            "item_default": [],
            "list_item_spec":
            { "item_name": "list_element",
              "item_type": "map",
              "item_optional": true,
              "item_default": { "origin": "", "file": "" },
              "map_item_spec": [
              { "item_name": "origin",
                "item_type": "string",
                "item_optional": false,
                "item_default": ""
              },
              { "item_name": "file",
                "item_type": "string",
                "item_optional": false,
                "item_default": ""
              }]
            }
          }]
        }
      },
      { "item_name": "statistics-interval",
        "item_type": "integer",
        "item_optional": true,
        "item_default": 60
      },
      {
        "item_name": "listen_on",
        "item_type": "list",
        "item_optional": false,
        "item_default": [
          {
            "address": "::",
            "port": 53
          },
          {
            "address": "0.0.0.0",
            "port": 53
          }
        ],
        "list_item_spec": {
          "item_name": "address",
          "item_type": "map",
          "item_optional": false,
          "item_default": {},
          "map_item_spec": [
            {
              "item_name": "address",
              "item_type": "string",
              "item_optional": false,
              "item_default": "::1"
            },
            {
              "item_name": "port",
              "item_type": "integer",
              "item_optional": false,
              "item_default": 53
            }
          ]
        }
      }
    ],
    "commands": [
      {
        "command_name": "shutdown",
        "command_description": "Shut down authoritative DNS server",
        "command_args": []
      },
      {
        "command_name": "sendstats",
        "command_description": "Send data to a statistics module at once",
        "command_args": []
      },
      {
        "command_name": "loadzone",
        "command_description": "(Re)load a specified zone",
        "command_args": [
          {
            "item_name": "class", "item_type": "string",
            "item_optional": true, "item_default": "IN"
          },
	  {
            "item_name": "origin", "item_type": "string",
            "item_optional": false, "item_default": ""
          },
	  {
            "item_name": "datasrc", "item_type": "string",
            "item_optional": true, "item_default": "memory"
          }
        ]
      }
    ]
  }
}
