Take the error message generation out of the merge_files routines.
[metze/wireshark/wip.git] / ui / alert_box.h
1 /* alert_box.h
2  * Routines to put up various "standard" alert boxes used in multiple
3  * places
4  *
5  * Wireshark - Network traffic analyzer
6  * By Gerald Combs <gerald@wireshark.org>
7  * Copyright 1998 Gerald Combs
8  *
9  * This program is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License
11  * as published by the Free Software Foundation; either version 2
12  * of the License, or (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
22  */
23
24 #ifndef __ALERT_BOX_H__
25 #define __ALERT_BOX_H__
26
27 #ifdef __cplusplus
28 extern "C" {
29 #endif /* __cplusplus */
30
31 /*
32  * Alert box for general errors.
33  */
34 extern void failure_alert_box(const char *msg_format, ...) G_GNUC_PRINTF(1, 2);
35 extern void vfailure_alert_box(const char *msg_format, va_list ap);
36
37 /*
38  * Alert box for general warnings.
39  */
40 extern void vwarning_alert_box(const char *msg_format, va_list ap);
41
42 /*
43  * Alert box for a failed attempt to open a capture file for reading.
44  * "filename" is the name of the file being opened; "err" is assumed
45  * to be a UNIX-style errno or a WTAP_ERR_ value; "err_info" is assumed
46  * to be a string giving further information for some WTAP_ERR_ values..
47  */
48 extern void cfile_open_failure_alert_box(const char *filename, int err,
49                                          gchar *err_info);
50
51 /*
52  * Alert box for a failed attempt to open a capture file for writing.
53  * "filename" is the name of the file being opened; "err" is assumed
54  * to be a UNIX-style errno or a WTAP_ERR_ value; "file_type_subtype"
55  * is a WTAP_FILE_TYPE_SUBTYPE_ value for the type and subtype of file
56  * being opened.
57  */
58 extern void cfile_dump_open_failure_alert_box(const char *filename, int err,
59                                               int file_type_subtype);
60
61 /*
62  * Alert box for a failed attempt to read from a capture file.
63  * "err" is assumed to be a UNIX-style errno or a WTAP_ERR_ value;
64  * "err_info" is assumed to be a string giving further information for
65  * some WTAP_ERR_ values.
66  */
67 extern void cfile_read_failure_alert_box(const char *filename, int err,
68                                          gchar *err_info);
69
70 /*
71  * Alert box for a failed attempt to write to a capture file.
72  * "in_filename" is the name of the file from which the record being
73  * written came; "out_filename" is the name of the file to which we're
74  * writing; "err" is assumed "err" is assumed to be a UNIX-style errno
75  * or a WTAP_ERR_ value; "err_info" is assumed to be a string giving
76  * further information for some WTAP_ERR_ values; "framenum" is the frame
77  * number of the record on which the error occurred; "file_type_subtype"
78  * is a WTAP_FILE_TYPE_SUBTYPE_ value for the type and subtype of file
79  * being written.
80  */
81 extern void cfile_write_failure_alert_box(const char *in_filename,
82                                           const char *out_filename,
83                                           int err, gchar *err_info,
84                                           guint32 framenum,
85                                           int file_type_subtype);
86
87 /*
88  * Alert box for a failed attempt to close a capture file.
89  * "err" is assumed to be a UNIX-style errno or a WTAP_ERR_ value.
90  *
91  * When closing a capture file:
92  *
93  *    some information in the file that can't be determined until
94  *    all packets have been written might be written to the file
95  *    (such as a table of the file offsets of all packets);
96  *
97  *    data buffered in the low-level file writing code might be
98  *    flushed to the file;
99  *
100  *    for remote file systems, data written to the file but not
101  *    yet sent to the server might be sent to the server or, if
102  *    that data was sent asynchronously, "out of space", "disk
103  *    quota exceeded", or "I/O error" indications might have
104  *    been received but not yet delivered, and the close operation
105  *    could deliver them;
106  *
107  * so we have to check for write errors here.
108  */
109 extern void cfile_close_failure_alert_box(const char *filename, int err);
110
111 /*
112  * Alert box for a failed attempt to open or create a file.
113  * "err" is assumed to be a UNIX-style errno; "for_writing" is TRUE if
114  * the file is being opened for writing and FALSE if it's being opened
115  * for reading.
116  */
117 extern void open_failure_alert_box(const char *filename, int err,
118                                    gboolean for_writing);
119
120 /*
121  * Alert box for a failed attempt to read a file.
122  * "err" is assumed to be a UNIX-style errno.
123  */
124 extern void read_failure_alert_box(const char *filename, int err);
125
126 /*
127  * Alert box for a failed attempt to write to a file.
128  * "err" is assumed to be a UNIX-style errno.
129  */
130 extern void write_failure_alert_box(const char *filename, int err);
131
132 #ifdef __cplusplus
133 }
134 #endif /* __cplusplus */
135
136 #endif /* __ALERT_BOX_H__ */
137
138 /*
139  * Editor modelines
140  *
141  * Local Variables:
142  * c-basic-offset: 4
143  * tab-width: 8
144  * indent-tabs-mode: nil
145  * End:
146  *
147  * ex: set shiftwidth=4 tabstop=8 expandtab:
148  * :indentSize=4:tabSize=8:noTabs=true:
149  */