+int newVolume(JCR *jcr, MEDIA_DBR *mr);
+
+/* ua_acl.c */
+bool acl_access_ok(UAContext *ua, int acl, char *item);
+bool acl_access_ok(UAContext *ua, int acl, char *item, int len);
+
+/* ua_cmds.c */
+int do_a_command(UAContext *ua, char *cmd);
+int do_a_dot_command(UAContext *ua, char *cmd);
+int qmessagescmd(UAContext *ua, char *cmd);
+int open_db(UAContext *ua);
+void close_db(UAContext *ua);
+enum e_pool_op {
+ POOL_OP_UPDATE,
+ POOL_OP_CREATE
+};
+int create_pool(JCR *jcr, B_DB *db, POOL *pool, e_pool_op op);
+void set_pool_dbr_defaults_in_media_dbr(MEDIA_DBR *mr, POOL_DBR *pr);
+
+/* ua_input.c */
+int get_cmd(UAContext *ua, char *prompt);
+int get_pint(UAContext *ua, char *prompt);
+int get_yesno(UAContext *ua, char *prompt);
+void parse_ua_args(UAContext *ua);
+
+/* ua_label.c */
+int is_volume_name_legal(UAContext *ua, char *name);
+
+/* ua_output.c */
+void prtit(void *ctx, char *msg);
+int complete_jcr_for_job(JCR *jcr, JOB *job, POOL *pool);
+RUN *find_next_run(RUN *run, JOB *job, time_t &runtime);
+
+/* ua_server.c */
+void bsendmsg(void *sock, char *fmt, ...);
+UAContext *new_ua_context(JCR *jcr);
+JCR *new_control_jcr(char *base_name, int job_type);
+void free_ua_context(UAContext *ua);
+
+/* ua_select.c */
+STORE *select_storage_resource(UAContext *ua);
+JOB *select_job_resource(UAContext *ua);
+JOB *select_restore_job_resource(UAContext *ua);
+CLIENT *select_client_resource(UAContext *ua);
+FILESET *select_fileset_resource(UAContext *ua);
+int select_pool_and_media_dbr(UAContext *ua, POOL_DBR *pr, MEDIA_DBR *mr);
+int select_media_dbr(UAContext *ua, MEDIA_DBR *mr);
+int select_pool_dbr(UAContext *ua, POOL_DBR *pr);
+int select_client_dbr(UAContext *ua, CLIENT_DBR *cr);
+
+void start_prompt(UAContext *ua, char *msg);
+void add_prompt(UAContext *ua, char *prompt);
+int do_prompt(UAContext *ua, char *automsg, char *msg, char *prompt, int max_prompt);
+CAT *get_catalog_resource(UAContext *ua);
+STORE *get_storage_resource(UAContext *ua, int use_default);
+int get_media_type(UAContext *ua, char *MediaType, int max_media);
+int get_pool_dbr(UAContext *ua, POOL_DBR *pr);
+int get_client_dbr(UAContext *ua, CLIENT_DBR *cr);
+POOL *get_pool_resource(UAContext *ua);
+POOL *select_pool_resource(UAContext *ua);
+CLIENT *get_client_resource(UAContext *ua);
+int get_job_dbr(UAContext *ua, JOB_DBR *jr);
+
+int find_arg_keyword(UAContext *ua, char **list);
+int find_arg(UAContext *ua, char *keyword);
+int find_arg_with_value(UAContext *ua, char *keyword);
+int do_keyword_prompt(UAContext *ua, char *msg, char **list);
+int confirm_retention(UAContext *ua, utime_t *ret, char *msg);
+
+/* ua_tree.c */
+bool user_select_files_from_tree(TREE_CTX *tree);
+int insert_tree_handler(void *ctx, int num_fields, char **row);
+
+/* ua_prune.c */
+int prune_files(UAContext *ua, CLIENT *client);
+int prune_jobs(UAContext *ua, CLIENT *client, int JobType);
+int prune_volume(UAContext *ua, MEDIA_DBR *mr);