2 * Amanda, The Advanced Maryland Automatic Network Disk Archiver
3 * Copyright (c) 1991-1999 University of Maryland at College Park
6 * Permission to use, copy, modify, distribute, and sell this software and its
7 * documentation for any purpose is hereby granted without fee, provided that
8 * the above copyright notice appear in all copies and that both that
9 * copyright notice and this permission notice appear in supporting
10 * documentation, and that the name of U.M. not be used in advertising or
11 * publicity pertaining to distribution of the software without specific,
12 * written prior permission. U.M. makes no representations about the
13 * suitability of this software for any purpose. It is provided "as is"
14 * without express or implied warranty.
16 * U.M. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
17 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL U.M.
18 * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
19 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
20 * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
21 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
23 * Authors: the Amanda Development Team. Its members are listed in a
24 * file named AUTHORS, in the root directory of this distribution.
27 * $Id: server_util.h,v 1.11 2006/05/25 01:47:20 johnfranks Exp $
40 * Some lints are confused by: typedef enum (...) xxx_t;
41 * So here we use an equivalent of type int and an unnamed enum for constants.
45 BOGUS, QUIT, QUITTING, DONE, PARTIAL,
46 START, FILE_DUMP, PORT_DUMP, CONTINUE, ABORT, /* dumper cmds */
47 FAILED, TRYAGAIN, NO_ROOM, RQ_MORE_DISK, /* dumper results */
48 ABORT_FINISHED, BAD_COMMAND, /* dumper results */
49 START_TAPER, FILE_WRITE, NEW_TAPE, NO_NEW_TAPE, /* taper... */
50 PARTDONE, PORT_WRITE, DUMPER_STATUS, /* ... cmds */
51 PORT, TAPE_ERROR, TAPER_OK, /* taper results */
52 REQUEST_NEW_TAPE, DIRECTTCP_PORT,
55 extern const char *cmdstr[];
63 struct cmdargs *getcmd(void);
64 struct cmdargs *get_pending_cmd(void);
65 void free_cmdargs(struct cmdargs *cmdargs);
66 void putresult(cmd_t result, const char *, ...) G_GNUC_PRINTF(2, 3);
67 int taper_cmd(cmd_t cmd, void *ptr, char *destname, int level, char *datestamp);
71 int chunker_cmd(struct chunker_s *chunker, cmd_t cmd, struct disk_s *dp,
75 int dumper_cmd(struct dumper_s *dumper, cmd_t cmd, struct disk_s *dp,
78 char *amhost_get_security_conf(char *string, void *arg);
79 int check_infofile(char *infodir, disklist_t *dl, char **errmsg);
81 void run_server_script(pp_script_t *pp_script,
82 execute_on_t execute_on,
86 void run_server_scripts(execute_on_t execute_on,
91 void run_amcleanup(char *config_name);
92 char *get_master_process(char *logfile);
94 gint64 internal_server_estimate(disk_t *dp, info_t *info,
95 int level, int *stats);
96 int server_can_do_estimate(disk_t *dp, info_t *info, int level);
98 #endif /* SERVER_UTIL_H */