]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/stored/stored_conf.h
Server address binding + bscan updates -- see kes25Sep02
[bacula/bacula] / bacula / src / stored / stored_conf.h
1 /*
2  * Resource codes -- they must be sequential for indexing   
3  *
4  *   Version $Id$
5  */
6 /*
7    Copyright (C) 2000, 2001, 2002 Kern Sibbald and John Walker
8
9    This program is free software; you can redistribute it and/or
10    modify it under the terms of the GNU General Public License as
11    published by the Free Software Foundation; either version 2 of
12    the License, or (at your option) any later version.
13
14    This program is distributed in the hope that it will be useful,
15    but WITHOUT ANY WARRANTY; without even the implied warranty of
16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17    General Public License for more details.
18
19    You should have received a copy of the GNU General Public
20    License along with this program; if not, write to the Free
21    Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
22    MA 02111-1307, USA.
23
24  */
25
26 #define R_FIRST                       3001
27
28 #define R_DIRECTOR                    3001
29 #define R_STORAGE                     3002
30 #define R_DEVICE                      3003
31 #define R_MSGS                        3004
32
33 #define R_LAST                        R_MSGS
34
35
36 #define R_NAME                        3020
37 #define R_ADDRESS                     3021
38 #define R_PASSWORD                    3022
39 #define R_TYPE                        3023
40 #define R_BACKUP                      3024
41
42 #define STORAGE_DAEMON 1
43
44 /* Definition of the contents of each Resource */
45 struct s_res_dir {
46    RES   hdr;
47
48    char *password;                    /* Director password */
49    char *address;                     /* Director IP address or zero */
50 };
51 typedef struct s_res_dir DIRRES;
52
53
54 /* Storage daemon "global" definitions */
55 struct s_res_store {
56    RES   hdr;
57
58    char *address;                     /* deprecated */
59    char *SDaddr;                      /* bind address */
60    int   SDport;                      /* Where we listen for Directors */
61    int   SDDport;                     /* "Data" port where we listen for File daemons */
62    char *working_directory;           /* working directory for checkpoints */
63    char *pid_directory;
64    char *subsys_directory;
65    uint32_t max_concurrent_jobs;      /* maximum concurrent jobs to run */
66    struct s_res_msgs *messages;       /* Daemon message handler */
67 };
68 typedef struct s_res_store STORES;
69
70 /* Device specific definitions */
71 struct s_res_dev {
72    RES   hdr;
73
74    char *media_type;                  /* User assigned media type */
75    char *device_name;                 /* Archive device name */
76    char *changer_name;                /* Changer device name */
77    char *changer_command;             /* Changer command  -- external program */
78    int  cap_bits;                     /* Capabilities of this device */
79    uint32_t max_changer_wait;         /* Changer timeout */
80    uint32_t max_rewind_wait;          /* maximum secs to wait for rewind */
81    uint32_t max_open_wait;            /* maximum secs to wait for open */
82    uint32_t min_block_size;           /* min block size */
83    uint32_t max_block_size;           /* max block size */
84    uint32_t max_volume_jobs;          /* max jobs to put on one volume */
85    int64_t max_volume_files;          /* max files to put on one volume */
86    int64_t max_volume_size;           /* max bytes to put on one volume */
87    int64_t max_file_size;             /* max file size in bytes */
88    int64_t volume_capacity;           /* advisory capacity */
89    DEVICE *dev;                       /* Pointer to phyical dev -- set at runtime */
90 };
91 typedef struct s_res_dev DEVRES;
92
93 union u_res {
94    struct s_res_dir     res_dir;
95    struct s_res_store   res_store;
96    struct s_res_dev     res_dev;
97    struct s_res_msgs    res_msgs;
98    RES hdr;
99 };
100 typedef union u_res URES;