Copyright (C) 2000-2005 Kern Sibbald
This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
- published by the Free Software Foundation; either version 2 of
- the License, or (at your option) any later version.
+ modify it under the terms of the GNU General Public License
+ version 2 as amended with additional clauses defined in the
+ file LICENSE in the main source directory.
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., 59 Temple Place - Suite 330, Boston,
- MA 02111-1307, USA.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ the file LICENSE for additional details.
*/
RES hdr;
dlist *DIRaddrs;
char *password; /* Password for UA access */
- int enable_ssl; /* Use SSL for UA */
char *query_file; /* SQL query file */
char *working_directory; /* WorkingDirectory */
const char *scripts_directory; /* ScriptsDirectory */
char *pid_directory; /* PidDirectory */
char *subsys_directory; /* SubsysDirectory */
- int require_ssl; /* Require SSL for all connections */
MSGS *messages; /* Daemon message handler */
uint32_t MaxConcurrentJobs; /* Max concurrent jobs for whole director */
utime_t FDConnectTimeout; /* timeout for connect in seconds */
utime_t SDConnectTimeout; /* timeout in seconds */
+ int tls_enable; /* Enable TLS */
+ int tls_require; /* Require TLS */
+ int tls_verify_peer; /* TLS Verify Client Certificate */
+ char *tls_ca_certfile; /* TLS CA Certificate File */
+ char *tls_ca_certdir; /* TLS CA Certificate Directory */
+ char *tls_certfile; /* TLS Server Certificate File */
+ char *tls_keyfile; /* TLS Server Key File */
+ char *tls_dhfile; /* TLS Diffie-Hellman Parameters */
+ alist *tls_allowed_cns; /* TLS Allowed Clients */
+ TLS_CONTEXT *tls_ctx; /* Shared TLS Context */
};
/*
RES hdr;
bool found; /* found with SD */
- int num_writers;
- int num_waiting;
- int use_count;
- bool open;
+ int num_writers; /* number of writers */
+ int max_writers; /* = 1 for files */
+ int reserved; /* number of reserves */
+ int num_drives; /* for autochanger */
+ bool autochanger; /* set if device is autochanger */
+ bool open; /* drive open */
bool append; /* in append mode */
- bool read;
- bool labeled;
- bool autochanger;
- bool offline;
+ bool read; /* in read mode */
+ bool labeled; /* Volume name valid */
+ bool offline; /* not available */
+ bool autoselect; /* can be selected via autochanger */
+ uint32_t PoolId;
+ char ChangerName[MAX_NAME_LENGTH];
char VolumeName[MAX_NAME_LENGTH];
char MediaType[MAX_NAME_LENGTH];
};
public:
RES hdr;
char *password; /* UA server password */
- int enable_ssl; /* Use SSL */
alist *ACL_lists[Num_ACL]; /* pointers to ACLs */
+ int tls_enable; /* Enable TLS */
+ int tls_require; /* Require TLS */
+ int tls_verify_peer; /* TLS Verify Client Certificate */
+ char *tls_ca_certfile; /* TLS CA Certificate File */
+ char *tls_ca_certdir; /* TLS CA Certificate Directory */
+ char *tls_certfile; /* TLS Server Certificate File */
+ char *tls_keyfile; /* TLS Server Key File */
+ char *tls_dhfile; /* TLS Diffie-Hellman Parameters */
+ alist *tls_allowed_cns; /* TLS Allowed Clients */
+ TLS_CONTEXT *tls_ctx; /* Shared TLS Context */
};
CAT *catalog; /* Catalog resource */
uint32_t MaxConcurrentJobs; /* Maximume concurrent jobs */
uint32_t NumConcurrentJobs; /* number of concurrent jobs running */
- int enable_ssl; /* Use SSL */
+ int tls_enable; /* Enable TLS */
+ int 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 */
+ TLS_CONTEXT *tls_ctx; /* Shared TLS Context */
};
/*
char *address;
char *password;
char *media_type;
- alist *device; /* Device name(s) */
+ alist *device; /* Alternate devices for this Storage */
int autochanger; /* set if autochanger */
+ int drives; /* number of drives in autochanger */
uint32_t MaxConcurrentJobs; /* Maximume concurrent jobs */
uint32_t NumConcurrentJobs; /* number of concurrent jobs running */
- int enable_ssl; /* Use SSL */
-
+ int tls_enable; /* Enable TLS */
+ int 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 */
+ TLS_CONTEXT *tls_ctx; /* Shared TLS Context */
int64_t StorageId; /* Set from Storage DB record */
+ /* Methods */
char *dev_name() const;
char *name() const;
};
int SpoolAttributes; /* Set to spool attributes in SD */
int spool_data; /* Set to spool data in SD */
int rerun_failed_levels; /* Upgrade to rerun failed levels */
+ int PreferMountedVolumes; /* Prefer vols mounted rather than new one */
uint32_t MaxConcurrentJobs; /* Maximume concurrent jobs */
int RescheduleOnError; /* Set to reschedule on error */
int RescheduleTimes; /* Number of times to reschedule job */
SCHED *schedule; /* When -- Automatic schedule */
CLIENT *client; /* Who to backup */
FILESET *fileset; /* What to backup -- Fileset */
- alist *storage; /* Where is device -- Storage daemon */
+ alist *storage; /* Where is device -- list of Storage to be used */
POOL *pool; /* Where is media -- Media Pool */
POOL *full_pool; /* Pool for Full backups */
POOL *inc_pool; /* Pool for Incremental backups */
POOL *dif_pool; /* Pool for Differental backups */
- JOB *verify_job; /* Job name to verify */
+ union {
+ JOB *verify_job; /* Job name to verify */
+ JOB *migration_job; /* Job name to migrate */
+ };
JOB *jobdefs; /* Job defaults */
+ alist *run_cmds; /* Run commands */
uint32_t NumConcurrentJobs; /* number of concurrent jobs running */
};
struct MD5Context md5c; /* MD5 of include/exclude */
char MD5[30]; /* base 64 representation of MD5 */
int ignore_fs_changes; /* Don't force Full if FS changed */
+ int enable_vss; /* Enable Volume Shadow Copy */
};
uint32_t MaxVolJobs; /* Maximum jobs on the Volume */
uint32_t MaxVolFiles; /* Maximum files on the Volume */
uint64_t MaxVolBytes; /* Maximum bytes on the Volume */
+ utime_t MigrationTime; /* Time to migrate to next pool */
+ uint32_t MigrationHighBytes; /* When migration starts */
+ uint32_t MigrationLowBytes; /* When migration stops */
+ POOL *NextPool; /* Next pool for migration */
int AutoPrune; /* default for pool auto prune */
int Recycle; /* default for media recycle yes/no */
};