+ char *amdevice,
+ GPtrArray **errarray);
+
+void run_client_script(script_t *script,
+ execute_on_t execute_on,
+ g_option_t *g_options,
+ dle_t *dle);
+
+void run_client_scripts(execute_on_t execute_on,
+ g_option_t *g_options,
+ dle_t *dle,
+ FILE *streamout);
+
+void run_calcsize(char *config, char *program, char *disk,
+ char *dirname, GSList *levels,
+ char *file_exclude, char *file_include);
+
+void check_access(char *filename, int mode);
+void check_file(char *filename, int mode);
+void check_dir(char *dirname, int mode);
+void check_suid(char *filename);
+double the_num(char * str, int pos);
+
+/* Convert a GSList returned from config_errors into an "ERROR "
+ * line suitable for inclusion in a NAK or REP packet. Because we only
+ * get one ERROR line per packet, this includes only the first
+ * error, with an indication that there are more to follow.
+ *
+ * @param errlist: the list of errors from config_errors
+ * @returns: newly allocated string containing the error messages
+ */
+char *config_errors_to_error_string(GSList *errlist);
+
+amregex_t *build_re_table(amregex_t *orig_re_table,
+ GSList *normal_message,
+ GSList *ignore_message,
+ GSList *strange_message);
+void add_type_table(dmpline_t typ,
+ amregex_t **re_table, amregex_t *orig_re_table,
+ GSList *normal_message, GSList *ignore_message,
+ GSList *strange_message);
+void add_list_table(dmpline_t typ, amregex_t **re_table,
+ GSList *message);
+
+/* Merge properties from proplist2 to proplist1)
+ */
+void merge_properties(proplist_t proplist1, proplist_t proplist2);