X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=bacula%2Fsrc%2Fconsole%2Fconsole_conf.h;h=a92a0a843be3a0ec965c7bcb5ed31e403b0b3498;hb=2613ea6416131163d0eab5bfb83fc9130add1a67;hp=e01c21bf78916fd4281f20ecf729954e5ac62760;hpb=099fc761d52104a69c0d0fd2f114b0a0735307e7;p=bacula%2Fbacula diff --git a/bacula/src/console/console_conf.h b/bacula/src/console/console_conf.h index e01c21bf78..a92a0a843b 100644 --- a/bacula/src/console/console_conf.h +++ b/bacula/src/console/console_conf.h @@ -1,3 +1,30 @@ +/* + Bacula® - The Network Backup Solution + + Copyright (C) 2000-2008 Free Software Foundation Europe e.V. + + The main author of Bacula is Kern Sibbald, with contributions from + many others, a complete list can be found in the file AUTHORS. + This program is Free Software; you can redistribute it and/or + modify it under the terms of version two of the GNU General Public + License as published by the Free Software Foundation and included + in the file LICENSE. + + This program is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. + + Bacula® is a registered trademark of Kern Sibbald. + The licensor of Bacula is the Free Software Foundation Europe + (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich, + Switzerland, email:ftf@fsfeurope.org. +*/ /* * Bacula User Agent specific configuration and defines * @@ -7,54 +34,73 @@ */ /* - * Resource codes -- they must be sequential for indexing + * Resource codes -- they must be sequential for indexing */ -#define R_FIRST 1001 - -#define R_CONSOLE 1001 -#define R_DIRECTOR 1002 -#define R_LAST R_DIRECTOR +enum { + R_CONSOLE = 1001, + R_DIRECTOR, + R_FIRST = R_CONSOLE, + R_LAST = R_DIRECTOR /* Keep this updated */ +}; /* * Some resource attributes */ -#define R_NAME 1020 -#define R_ADDRESS 1021 -#define R_PASSWORD 1022 -#define R_TYPE 1023 -#define R_BACKUP 1024 +enum { + R_NAME = 1020, + R_ADDRESS, + R_PASSWORD, + R_TYPE, + R_BACKUP +}; /* Definition of the contents of each Resource */ /* Console "globals" */ -struct s_res_con { +struct CONRES { RES hdr; char *rc_file; /* startup file */ char *hist_file; /* command history file */ - int require_ssl; /* Require SSL on all connections */ + char *password; /* UA server password */ + bool tls_authenticate; /* Authenticate with TLS */ + bool tls_enable; /* Enable TLS on all connections */ + bool tls_require; /* Require TLS on all connections */ + char *tls_ca_certfile; /* TLS CA Certificate File */ + char *tls_ca_certdir; /* TLS CA Certificate Directory */ + char *tls_certfile; /* TLS Client Certificate File */ + char *tls_keyfile; /* TLS Client Key File */ + char *director; /* bind to director */ + utime_t heartbeat_interval; /* Interval to send heartbeats to Dir */ + + TLS_CONTEXT *tls_ctx; /* Shared TLS Context */ }; -typedef struct s_res_con CONRES; /* Director */ -struct s_res_dir { +struct DIRRES { RES hdr; - int DIRport; /* UA server port */ + uint32_t DIRport; /* UA server port */ char *address; /* UA server address */ char *password; /* UA server password */ - int enable_ssl; /* Use SSL */ + bool tls_authenticate; /* Authenticate with TLS */ + bool tls_enable; /* Enable TLS */ + bool tls_require; /* Require TLS */ + char *tls_ca_certfile; /* TLS CA Certificate File */ + char *tls_ca_certdir; /* TLS CA Certificate Directory */ + char *tls_certfile; /* TLS Client Certificate File */ + char *tls_keyfile; /* TLS Client Key File */ + utime_t heartbeat_interval; /* Interval to send heartbeats to Dir */ + + TLS_CONTEXT *tls_ctx; /* Shared TLS Context */ }; -typedef struct s_res_dir DIRRES; /* Define the Union of all the above * resource structure definitions. */ -union u_res { - struct s_res_dir res_dir; - struct s_res_con res_cons; +union URES { + DIRRES res_dir; + CONRES res_cons; RES hdr; }; - -typedef union u_res URES;