X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=server-src%2Fdiskfile.h;h=aa485a5975f85745a5e05c15709524b6649296e9;hb=b221e8dc16f345f8c8d7df8df71f4d36daaabb4c;hp=06660975df6606c5abe657b4f216dfe9d584439c;hpb=d5853102f67d85d8e169f9dbe973ad573306c215;p=debian%2Famanda diff --git a/server-src/diskfile.h b/server-src/diskfile.h index 0666097..aa485a5 100644 --- a/server-src/diskfile.h +++ b/server-src/diskfile.h @@ -34,6 +34,7 @@ #include "amanda.h" #include "conffile.h" +#include "fileheader.h" #include "amfeatures.h" typedef struct netif_s { @@ -67,6 +68,7 @@ typedef struct disk_s { char *name; /* label name for disk */ char *device; /* device name for disk, eg "sd0g" */ char *dtype_name; /* name of dump type */ + dumptype_t *config; /* pointer to the dumptype config */ char *program; /* dump program, eg DUMP, STAR, GNUTAR */ char *srvcompprog; /* custom compression server filter */ char *clntcompprog; /* custom compression client filter */ @@ -83,9 +85,11 @@ typedef struct disk_s { int exclude_optional; /* exclude list are optional */ int include_optional; /* include list are optional */ int priority; /* priority of disk */ - off_t tape_splitsize; /* size of dumpfile chunks on tape */ - char *split_diskbuffer; /* place where we can buffer PORT-WRITE dumps other than RAM */ - off_t fallback_splitsize; /* size for in-RAM PORT-WRITE buffers */ + int allow_split; + off_t splitsize; + off_t tape_splitsize; /* size of dumpfile chunks on tape */ + char *split_diskbuffer; /* place where we can buffer PORT-WRITE dumps other than RAM */ + off_t fallback_splitsize; /* size for in-RAM PORT-WRITE buffers */ int dumpcycle; /* days between fulls */ long frequency; /* XXX - not used */ char *auth; /* type of authentication (per disk) */ @@ -119,6 +123,7 @@ typedef struct disk_s { int todo; char *application; identlist_t pp_scriptlist; + host_limit_t *dump_limit; void *up; /* generic user pointer */ } disk_t; @@ -132,6 +137,7 @@ typedef struct disklist_s { * value just as you would the return of config_init() */ cfgerr_level_t read_diskfile(const char *, disklist_t *); +am_host_t *get_hostlist(void); am_host_t *lookup_host(const char *hostname); disk_t *lookup_disk(const char *hostname, const char *diskname); @@ -170,6 +176,7 @@ char *xml_scripts(identlist_t pp_scriptlist, am_feature_t *their_features); void disable_skip_disk(disklist_t *origqp); char *match_disklist(disklist_t *origqp, int sargc, char **sargv); +gboolean match_dumpfile(dumpfile_t *file, int sargc, char **sargv); void free_disklist(disklist_t *dl); netif_t *disklist_netifs(void);