+/*
+ Bacula® - The Network Backup Solution
+
+ Copyright (C) 2001-2007 Free Software Foundation Europe e.V.
+
+ The main author of Bacula is Kern Sibbald, with contributions from
+ many others, a complete list can be found in the file AUTHORS.
+ This program is Free Software; you can redistribute it and/or
+ modify it under the terms of version two of the GNU General Public
+ License as published by the Free Software Foundation plus additions
+ that are listed in the file LICENSE.
+
+ 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., 51 Franklin Street, Fifth Floor, Boston, MA
+ 02110-1301, USA.
+
+ Bacula® is a registered trademark of John Walker.
+ The licensor of Bacula is the Free Software Foundation Europe
+ (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
+ Switzerland, email:ftf@fsfeurope.org.
+*/
/*
* Includes specific to the Director User Agent Server
*
*
* Version $Id$
*/
-/*
- 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
- 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
- the file LICENSE for additional details.
-
- */
#ifndef __UA_H_
#define __UA_H_ 1
-struct UAContext {
+class UAContext {
+public:
BSOCK *UA_sock;
BSOCK *sd;
JCR *jcr;
char **prompt; /* list of prompts */
int max_prompts; /* max size of list */
int num_prompts; /* current number in list */
+ int api; /* For programs want an API */
bool auto_display_messages; /* if set, display messages */
bool user_notified_msg_pending; /* set when user notified */
bool automount; /* if set, mount after label */
uint32_t pint32_val; /* positive integer */
int32_t int32_val; /* positive/negative */
int64_t int64_val; /* big int */
+
+ void signal(int sig) { UA_sock->signal(sig); };
+
+ /* The below are in ua_output.c */
+ void send_msg(const char *fmt, ...);
+ void error_msg(const char *fmt, ...);
+ void warning_msg(const char *fmt, ...);
+ void info_msg(const char *fmt, ...);
};
/* Context for insert_tree_handler() */
#define MAX_ID_LIST_LEN 2000000
-
#endif