1 /*------------------------------------------------------------------------- 2 * 3 * pg_backup_utils.h 4 * Utility routines shared by pg_dump and pg_restore. 5 * 6 * 7 * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group 8 * Portions Copyright (c) 1994, Regents of the University of California 9 * 10 * src/bin/pg_dump/pg_backup_utils.h 11 * 12 *------------------------------------------------------------------------- 13 */ 14 15 #ifndef PG_BACKUP_UTILS_H 16 #define PG_BACKUP_UTILS_H 17 18 typedef enum /* bits returned by set_dump_section */ 19 { 20 DUMP_PRE_DATA = 0x01, 21 DUMP_DATA = 0x02, 22 DUMP_POST_DATA = 0x04, 23 DUMP_UNSECTIONED = 0xff 24 } DumpSections; 25 26 typedef void (*on_exit_nicely_callback) (int code, void *arg); 27 28 extern const char *progname; 29 30 extern void set_dump_section(const char *arg, int *dumpSections); 31 extern void write_msg(const char *modulename, const char *fmt,...) pg_attribute_printf(2, 3); 32 extern void vwrite_msg(const char *modulename, const char *fmt, va_list ap) pg_attribute_printf(2, 0); 33 extern void on_exit_nicely(on_exit_nicely_callback function, void *arg); 34 extern void exit_nicely(int code) pg_attribute_noreturn(); 35 36 extern void exit_horribly(const char *modulename, const char *fmt,...) pg_attribute_printf(2, 3) pg_attribute_noreturn(); 37 38 #endif /* PG_BACKUP_UTILS_H */ 39