{
  "format-version": 2,
  "component": "bconsole",
  "resource": {
    "bconsole": {
      "Console": {
        "Name": {
          "datatype": "NAME",
          "code": 0,
          "equals": true,
          "required": true,
          "description": "The name of this resource."
        },
        "Description": {
          "datatype": "STRING",
          "code": 0,
          "equals": true
        },
        "RcFile": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true
        },
        "HistoryFile": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true
        },
        "HistoryLength": {
          "datatype": "PINT32",
          "code": 0,
          "default_value": "100",
          "equals": true
        },
        "Password": {
          "datatype": "MD5PASSWORD",
          "code": 0,
          "equals": true,
          "required": true
        },
        "Director": {
          "datatype": "STRING",
          "code": 0,
          "equals": true
        },
        "HeartbeatInterval": {
          "datatype": "TIME",
          "code": 0,
          "default_value": "0",
          "equals": true
        },
        "TlsAuthenticate": {
          "datatype": "BOOLEAN",
          "code": 0,
          "default_value": "false",
          "equals": true,
          "description": "Use TLS only to authenticate, not for encryption."
        },
        "TlsEnable": {
          "datatype": "BOOLEAN",
          "code": 0,
          "default_value": "true",
          "equals": true,
          "description": "Enable TLS support."
        },
        "TlsRequire": {
          "datatype": "BOOLEAN",
          "code": 0,
          "default_value": "true",
          "equals": true,
          "description": "If set to \"no\", Bareos can fall back to use unencrypted connections. "
        },
        "TlsCipherList": {
          "datatype": "STRING",
          "code": 0,
          "platform_specific": true,
          "equals": true,
          "description": "Colon separated list of valid TLSv1.2 and lower Ciphers; see \"openssl ciphers\" command. Leftmost element has the highest priority."
        },
        "TlsCipherSuites": {
          "datatype": "STRING",
          "code": 0,
          "platform_specific": true,
          "equals": true,
          "description": "Colon separated list of valid TLSv1.3 Ciphers; see \"openssl ciphers -s -tls1_3\" command. Leftmost element has the highest priority. Currently only SHA256 ciphers are supported."
        },
        "TlsDhFile": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path to PEM encoded Diffie-Hellman parameter file. If this directive is specified, DH key exchange will be used for the ephemeral keying, allowing for forward secrecy of communications."
        },
        "TlsProtocol": {
          "datatype": "STRING",
          "code": 0,
          "platform_specific": true,
          "equals": true,
          "versions": "20.0.0-",
          "description": "OpenSSL Configuration: Protocol"
        },
        "TlsVerifyPeer": {
          "datatype": "BOOLEAN",
          "code": 0,
          "default_value": "false",
          "equals": true,
          "description": "If disabled, all certificates signed by a known CA will be accepted. If enabled, the CN of a certificate must the Address or in the \"TLS Allowed CN\" list."
        },
        "TlsCaCertificateFile": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a PEM encoded TLS CA certificate(s) file."
        },
        "TlsCaCertificateDir": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a TLS CA certificate directory."
        },
        "TlsCertificateRevocationList": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a Certificate Revocation List file."
        },
        "TlsCertificate": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a PEM encoded TLS certificate."
        },
        "TlsKey": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a PEM encoded private key. It must correspond to the specified \"TLS Certificate\"."
        },
        "TlsAllowedCn": {
          "datatype": "STRING_LIST",
          "code": 0,
          "equals": true,
          "description": "\"Common Name\"s (CNs) of the allowed peer certificates."
        }
      },
      "Director": {
        "Name": {
          "datatype": "NAME",
          "code": 0,
          "equals": true,
          "required": true
        },
        "Description": {
          "datatype": "STRING",
          "code": 0,
          "equals": true
        },
        "Port": {
          "datatype": "PINT32",
          "code": 0,
          "default_value": "9101",
          "equals": true
        },
        "DirPort": {
          "datatype": "PINT32",
          "code": 0,
          "alias": true,
          "default_value": "9101",
          "equals": true,
          "description": "This is an alias for \"Port\", use \"Port\" instead."
        },
        "Address": {
          "datatype": "STRING",
          "code": 0,
          "equals": true,
          "required": true
        },
        "DirAddress": {
          "datatype": "STRING",
          "code": 0,
          "alias": true,
          "equals": true,
          "required": true,
          "description": "This is an alias for \"Address\", use \"Address\" instead."
        },
        "Password": {
          "datatype": "MD5PASSWORD",
          "code": 0,
          "equals": true
        },
        "HeartbeatInterval": {
          "datatype": "TIME",
          "code": 0,
          "default_value": "0",
          "equals": true
        },
        "TlsAuthenticate": {
          "datatype": "BOOLEAN",
          "code": 0,
          "default_value": "false",
          "equals": true,
          "description": "Use TLS only to authenticate, not for encryption."
        },
        "TlsEnable": {
          "datatype": "BOOLEAN",
          "code": 0,
          "default_value": "true",
          "equals": true,
          "description": "Enable TLS support."
        },
        "TlsRequire": {
          "datatype": "BOOLEAN",
          "code": 0,
          "default_value": "true",
          "equals": true,
          "description": "If set to \"no\", Bareos can fall back to use unencrypted connections. "
        },
        "TlsCipherList": {
          "datatype": "STRING",
          "code": 0,
          "platform_specific": true,
          "equals": true,
          "description": "Colon separated list of valid TLSv1.2 and lower Ciphers; see \"openssl ciphers\" command. Leftmost element has the highest priority."
        },
        "TlsCipherSuites": {
          "datatype": "STRING",
          "code": 0,
          "platform_specific": true,
          "equals": true,
          "description": "Colon separated list of valid TLSv1.3 Ciphers; see \"openssl ciphers -s -tls1_3\" command. Leftmost element has the highest priority. Currently only SHA256 ciphers are supported."
        },
        "TlsDhFile": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path to PEM encoded Diffie-Hellman parameter file. If this directive is specified, DH key exchange will be used for the ephemeral keying, allowing for forward secrecy of communications."
        },
        "TlsProtocol": {
          "datatype": "STRING",
          "code": 0,
          "platform_specific": true,
          "equals": true,
          "versions": "20.0.0-",
          "description": "OpenSSL Configuration: Protocol"
        },
        "TlsVerifyPeer": {
          "datatype": "BOOLEAN",
          "code": 0,
          "default_value": "false",
          "equals": true,
          "description": "If disabled, all certificates signed by a known CA will be accepted. If enabled, the CN of a certificate must the Address or in the \"TLS Allowed CN\" list."
        },
        "TlsCaCertificateFile": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a PEM encoded TLS CA certificate(s) file."
        },
        "TlsCaCertificateDir": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a TLS CA certificate directory."
        },
        "TlsCertificateRevocationList": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a Certificate Revocation List file."
        },
        "TlsCertificate": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a PEM encoded TLS certificate."
        },
        "TlsKey": {
          "datatype": "DIRECTORY",
          "code": 0,
          "equals": true,
          "description": "Path of a PEM encoded private key. It must correspond to the specified \"TLS Certificate\"."
        },
        "TlsAllowedCn": {
          "datatype": "STRING_LIST",
          "code": 0,
          "equals": true,
          "description": "\"Common Name\"s (CNs) of the allowed peer certificates."
        }
      }
    }
  }
}
