Wireshark  4.3.0
The Wireshark network protocol analyzer
column-utils.h
Go to the documentation of this file.
1 
12 #ifndef __COLUMN_UTILS_H__
13 #define __COLUMN_UTILS_H__
14 
15 #include <glib.h>
16 
17 #include "packet_info.h"
18 #include "ws_symbol_export.h"
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif /* __cplusplus */
23 
24 #define COL_MAX_LEN 2048
25 #define COL_MAX_INFO_LEN 4096
26 #define COL_CUSTOM_PRIME_REGEX " *([^ \\|]+) *(?:(?:\\|\\|)|(?:or)| *$){1}"
27 
28 struct epan_dissect;
29 
34 struct epan_column_info;
35 typedef struct epan_column_info column_info;
36 
46 enum {
94 };
95 
102 WS_DLL_PUBLIC gboolean col_get_writable(column_info *cinfo, const gint col);
103 
110 WS_DLL_PUBLIC void col_set_writable(column_info *cinfo, const gint col, const gboolean writable);
111 
121 WS_DLL_PUBLIC void col_set_fence(column_info *cinfo, const gint col);
122 
131 WS_DLL_PUBLIC void col_clear_fence(column_info *cinfo, const gint col);
132 
140 WS_DLL_PUBLIC const gchar *col_get_text(column_info *cinfo, const gint col);
141 
147 WS_DLL_PUBLIC void col_clear(column_info *cinfo, const gint col);
148 
160 WS_DLL_PUBLIC void col_set_str(column_info *cinfo, const gint col, const gchar * str);
161 
170 WS_DLL_PUBLIC void col_add_str(column_info *cinfo, const gint col, const gchar *str);
171 
172 /* terminator argument for col_add_lstr() function */
173 #define COL_ADD_LSTR_TERMINATOR (const char *) -1
174 
175 WS_DLL_PUBLIC void col_add_lstr(column_info *cinfo, const gint el, const gchar *str, ...);
176 
188 WS_DLL_PUBLIC void col_add_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
189  G_GNUC_PRINTF(3, 4);
190 
199 WS_DLL_PUBLIC void col_append_str(column_info *cinfo, const gint col, const gchar *str);
200 
209 WS_DLL_PUBLIC void col_append_str_uint(column_info *cinfo, const gint col, const gchar *abbrev, guint32 val, const gchar *sep);
210 
219 WS_DLL_PUBLIC void col_append_ports(column_info *cinfo, const gint col, port_type typ, guint16 src, guint16 dst);
220 
229 WS_DLL_PUBLIC void col_append_frame_number(packet_info *pinfo, const gint col, const gchar *fmt_str, guint frame_num);
230 
231 /* Append the given strings (terminated by COL_ADD_LSTR_TERMINATOR) to a column element,
232  *
233  * Same result as col_append_str() called for every string element.
234  */
235 WS_DLL_PUBLIC void col_append_lstr(column_info *cinfo, const gint el, const gchar *str, ...);
236 
248 WS_DLL_PUBLIC void col_append_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
249  G_GNUC_PRINTF(3, 4);
250 
260 WS_DLL_PUBLIC void col_prepend_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
261  G_GNUC_PRINTF(3, 4);
262 
274 WS_DLL_PUBLIC void col_prepend_fence_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
275  G_GNUC_PRINTF(3, 4);
276 
288 WS_DLL_PUBLIC void col_append_sep_str(column_info *cinfo, const gint col, const gchar *sep,
289  const gchar *str);
290 
303 WS_DLL_PUBLIC void col_append_sep_fstr(column_info *cinfo, const gint col, const gchar *sep,
304  const gchar *format, ...)
305  G_GNUC_PRINTF(4, 5);
306 
317 WS_DLL_PUBLIC void col_set_time(column_info *cinfo, const int col,
318  const nstime_t *ts, const char *fieldname);
319 
320 WS_DLL_PUBLIC void set_fd_time(const struct epan_session *epan, frame_data *fd, gchar *buf);
321 
322 #ifdef __cplusplus
323 }
324 #endif /* __cplusplus */
325 
326 #endif /* __COLUMN_UTILS_H__ */
WS_DLL_PUBLIC void col_append_ports(column_info *cinfo, const gint col, port_type typ, guint16 src, guint16 dst)
Definition: column-utils.c:505
WS_DLL_PUBLIC void col_clear(column_info *cinfo, const gint col)
Definition: column-utils.c:273
WS_DLL_PUBLIC void col_clear_fence(column_info *cinfo, const gint col)
Definition: column-utils.c:228
WS_DLL_PUBLIC void col_add_str(column_info *cinfo, const gint col, const gchar *str)
Definition: column-utils.c:718
WS_DLL_PUBLIC void WS_DLL_PUBLIC void WS_DLL_PUBLIC void col_prepend_fence_fstr(column_info *cinfo, const gint col, const gchar *format,...) G_GNUC_PRINTF(3
@ COL_ABS_TIME
Definition: column-utils.h:49
@ COL_RES_DST
Definition: column-utils.h:54
@ COL_NUMBER
Definition: column-utils.h:79
@ COL_UNRES_NET_DST
Definition: column-utils.h:74
@ COL_RES_SRC
Definition: column-utils.h:85
@ COL_DEF_NET_SRC
Definition: column-utils.h:78
@ COL_INFO
Definition: column-utils.h:72
@ COL_DEF_DL_SRC
Definition: column-utils.h:64
@ COL_UNRES_DL_SRC
Definition: column-utils.h:68
@ COL_TX_RATE
Definition: column-utils.h:70
@ COL_RES_DL_DST
Definition: column-utils.h:65
@ COL_DEF_DST_PORT
Definition: column-utils.h:59
@ COL_CUSTOM
Definition: column-utils.h:51
@ COL_ABS_YMD_TIME
Definition: column-utils.h:47
@ COL_RES_DL_SRC
Definition: column-utils.h:67
@ COL_DELTA_TIME_DIS
Definition: column-utils.h:53
@ COL_FREQ_CHAN
Definition: column-utils.h:62
@ COL_DEF_DST
Definition: column-utils.h:58
@ COL_RSSI
Definition: column-utils.h:69
@ COL_DELTA_TIME
Definition: column-utils.h:52
@ COL_CLS_TIME
Definition: column-utils.h:92
@ COL_UTC_YMD_TIME
Definition: column-utils.h:89
@ COL_UNRES_SRC_PORT
Definition: column-utils.h:88
@ COL_PROTOCOL
Definition: column-utils.h:81
@ COL_IF_DIR
Definition: column-utils.h:61
@ COL_RES_NET_DST
Definition: column-utils.h:73
@ COL_UNRES_DST_PORT
Definition: column-utils.h:57
@ COL_UNRES_SRC
Definition: column-utils.h:86
@ COL_DEF_SRC_PORT
Definition: column-utils.h:84
@ COL_RES_NET_SRC
Definition: column-utils.h:75
@ COL_DEF_SRC
Definition: column-utils.h:83
@ COL_UNRES_DST
Definition: column-utils.h:55
@ COL_UTC_TIME
Definition: column-utils.h:91
@ NUM_COL_FMTS
Definition: column-utils.h:93
@ COL_RES_SRC_PORT
Definition: column-utils.h:87
@ COL_UNRES_DL_DST
Definition: column-utils.h:66
@ COL_REL_TIME
Definition: column-utils.h:82
@ COL_DEF_NET_DST
Definition: column-utils.h:77
@ COL_UNRES_NET_SRC
Definition: column-utils.h:76
@ COL_DSCP_VALUE
Definition: column-utils.h:71
@ COL_UTC_YDOY_TIME
Definition: column-utils.h:90
@ COL_PACKET_LENGTH
Definition: column-utils.h:80
@ COL_ABS_YDOY_TIME
Definition: column-utils.h:48
@ COL_DEF_DL_DST
Definition: column-utils.h:63
@ COL_EXPERT
Definition: column-utils.h:60
@ COL_CUMULATIVE_BYTES
Definition: column-utils.h:50
@ COL_RES_DST_PORT
Definition: column-utils.h:56
WS_DLL_PUBLIC void col_set_writable(column_info *cinfo, const gint col, const gboolean writable)
Definition: column-utils.c:182
WS_DLL_PUBLIC void col_append_frame_number(packet_info *pinfo, const gint col, const gchar *fmt_str, guint frame_num)
Definition: column-utils.c:515
WS_DLL_PUBLIC void WS_DLL_PUBLIC void col_prepend_fstr(column_info *cinfo, const gint col, const gchar *format,...) G_GNUC_PRINTF(3
WS_DLL_PUBLIC void col_set_fence(column_info *cinfo, const gint col)
Definition: column-utils.c:210
WS_DLL_PUBLIC void col_set_str(column_info *cinfo, const gint col, const gchar *str)
Definition: column-utils.c:756
WS_DLL_PUBLIC void WS_DLL_PUBLIC void col_set_time(column_info *cinfo, const int col, const nstime_t *ts, const char *fieldname)
WS_DLL_PUBLIC void WS_DLL_PUBLIC void WS_DLL_PUBLIC void WS_DLL_PUBLIC void col_append_sep_str(column_info *cinfo, const gint col, const gchar *sep, const gchar *str)
Definition: column-utils.c:936
WS_DLL_PUBLIC void col_append_str_uint(column_info *cinfo, const gint col, const gchar *abbrev, guint32 val, const gchar *sep)
Definition: column-utils.c:483
WS_DLL_PUBLIC void col_add_fstr(column_info *cinfo, const gint col, const gchar *format,...) G_GNUC_PRINTF(3
WS_DLL_PUBLIC void col_append_fstr(column_info *cinfo, const gint col, const gchar *format,...) G_GNUC_PRINTF(3
WS_DLL_PUBLIC gboolean col_get_writable(column_info *cinfo, const gint col)
Definition: column-utils.c:157
WS_DLL_PUBLIC void WS_DLL_PUBLIC void col_append_str(column_info *cinfo, const gint col, const gchar *str)
Definition: column-utils.c:927
WS_DLL_PUBLIC const gchar * col_get_text(column_info *cinfo, const gint col)
Definition: column-utils.c:246
WS_DLL_PUBLIC void col_append_sep_fstr(column_info *cinfo, const gint col, const gchar *sep, const gchar *format,...) G_GNUC_PRINTF(4
Definition: packet_info.h:44
Definition: column-info.h:54
gboolean writable
Definition: column-info.h:61
Definition: epan_dissect.h:28
Definition: epan.c:460
Definition: nstime.h:26