Have a common "capture file close alert box" routine.
[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 or create a capture file.
44  * "err" is assumed to be a UNIX-style errno or a WTAP_ERR_ value;
45  * "err_info" is assumed to be a string giving further information for
46  * some WTAP_ERR_ values; "for_writing" is TRUE if the file is being
47  * opened for writing and FALSE if it's being opened for reading;
48  * "file_type" is a WTAP_FILE_TYPE_SUBTYPE_ value for the type of
49  * file being written (it's ignored for opening-for-reading errors).
50  */
51 extern void cfile_open_failure_alert_box(const char *filename, int err,
52                                          gchar *err_info, gboolean for_writing,
53                                          int file_type);
54
55 /*
56  * Alert box for a failed attempt to close a capture file.
57  * "err" is assumed to be a UNIX-style errno or a WTAP_ERR_ value;
58  * "err_info" is assumed to be a string giving further information for
59  * some WTAP_ERR_ values; "for_writing" is TRUE if the file is being
60  * opened for writing and FALSE if it's being opened for reading;
61  * "file_type" is a WTAP_FILE_TYPE_SUBTYPE_ value for the type of
62  * file being written (it's ignored for opening-for-reading errors).
63  *
64  * When closing a capture file:
65  *
66  *    some information in the file that can't be determined until
67  *    all packets have been written might be written to the file
68  *    (such as a table of the file offsets of all packets);
69  *
70  *    data buffered in the low-level file writing code might be
71  *    flushed to the file;
72  *
73  *    for remote file systems, data written to the file but not
74  *    yet sent to the server might be sent to the server or, if
75  *    that data was sent asynchronously, "out of space", "disk
76  *    quota exceeded", or "I/O error" indications might have
77  *    been received but not yet delivered, and the close operation
78  *    could deliver them;
79  *
80  * so we have to check for write errors here.
81  */
82 extern void cfile_close_failure_alert_box(const char *filename, int err);
83
84 /*
85  * Alert box for a failed attempt to open or create a file.
86  * "err" is assumed to be a UNIX-style errno; "for_writing" is TRUE if
87  * the file is being opened for writing and FALSE if it's being opened
88  * for reading.
89  */
90 extern void open_failure_alert_box(const char *filename, int err,
91                                    gboolean for_writing);
92
93 /*
94  * Alert box for a failed attempt to read a file.
95  * "err" is assumed to be a UNIX-style errno.
96  */
97 extern void read_failure_alert_box(const char *filename, int err);
98
99 /*
100  * Alert box for a failed attempt to write to a file.
101  * "err" is assumed to be a UNIX-style errno.
102  */
103 extern void write_failure_alert_box(const char *filename, int err);
104
105 #ifdef __cplusplus
106 }
107 #endif /* __cplusplus */
108
109 #endif /* __ALERT_BOX_H__ */
110
111 /*
112  * Editor modelines
113  *
114  * Local Variables:
115  * c-basic-offset: 4
116  * tab-width: 8
117  * indent-tabs-mode: nil
118  * End:
119  *
120  * ex: set shiftwidth=4 tabstop=8 expandtab:
121  * :indentSize=4:tabSize=8:noTabs=true:
122  */