X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=server-src%2Fserver_util.h;h=e7a2606edf4601ffe5cc08c853717225152b1faa;hb=b116e9366c7b2ea2c2eb53b0a13df4090e176235;hp=a758ad1b477745965e37821c8bc68a90f01b0da5;hpb=94a044f90357edefa6f4ae9f0b1d5885b0e34aee;p=debian%2Famanda diff --git a/server-src/server_util.h b/server-src/server_util.h index a758ad1..e7a2606 100644 --- a/server-src/server_util.h +++ b/server-src/server_util.h @@ -32,6 +32,7 @@ #include "util.h" #include "diskfile.h" +#include "infofile.h" #define MAX_ARGS 32 @@ -48,29 +49,50 @@ enum { START_TAPER, FILE_WRITE, NEW_TAPE, NO_NEW_TAPE, /* taper... */ PARTDONE, PORT_WRITE, DUMPER_STATUS, /* ... cmds */ PORT, TAPE_ERROR, TAPER_OK, /* taper results */ - REQUEST_NEW_TAPE, - LAST_TOK + REQUEST_NEW_TAPE, DIRECTTCP_PORT, TAKE_SCRIBE_FROM, + START_SCAN, LAST_TOK }; extern const char *cmdstr[]; struct cmdargs { + cmd_t cmd; int argc; - char *argv[MAX_ARGS + 1]; + char **argv; }; -cmd_t getcmd(struct cmdargs *cmdargs); -cmd_t getresult(int fd, int show, int *result_argc, char **result_argv, int max_arg); +struct cmdargs *getcmd(void); +struct cmdargs *get_pending_cmd(void); +void free_cmdargs(struct cmdargs *cmdargs); void putresult(cmd_t result, const char *, ...) G_GNUC_PRINTF(2, 3); int taper_cmd(cmd_t cmd, void *ptr, char *destname, int level, char *datestamp); struct disk_s; struct chunker_s; -int chunker_cmd(struct chunker_s *chunker, cmd_t cmd, struct disk_s *dp); +int chunker_cmd(struct chunker_s *chunker, cmd_t cmd, struct disk_s *dp, + char *mesg); struct dumper_s; -int dumper_cmd(struct dumper_s *dumper, cmd_t cmd, struct disk_s *dp); +int dumper_cmd(struct dumper_s *dumper, cmd_t cmd, struct disk_s *dp, + char *mesg); char *amhost_get_security_conf(char *string, void *arg); int check_infofile(char *infodir, disklist_t *dl, char **errmsg); +void run_server_script(pp_script_t *pp_script, + execute_on_t execute_on, + char *config, + disk_t *dp, + int level); +void run_server_scripts(execute_on_t execute_on, + char *config, + disk_t *dp, + int level); + +void run_amcleanup(char *config_name); +char *get_master_process(char *logfile); + +gint64 internal_server_estimate(disk_t *dp, info_t *info, + int level, int *stats); +int server_can_do_estimate(disk_t *dp, info_t *info, int level); + #endif /* SERVER_UTIL_H */