forked from osmocom/wireshark
Consistently refer to blocks that have been modified as "modified".
"User" sounds as if the blocks belong to the user; at most, the current user might have modified them directly, but they might also have, for example, run a Lua script that, unknown to them, modified comments. Also, a file might have "user comments" added by a previous user, who them wrote the file and and provided it to the current user. "Modified" seems a bit clearer than "changed".pespin/rlcmac
parent
6dfa2cb0ae
commit
dd5907d2a3
4
cfile.h
4
cfile.h
|
@ -131,8 +131,8 @@ extern void cap_file_init(capture_file *cf);
|
|||
|
||||
const char *cap_file_provider_get_interface_name(struct packet_provider_data *prov, guint32 interface_id);
|
||||
const char *cap_file_provider_get_interface_description(struct packet_provider_data *prov, guint32 interface_id);
|
||||
wtap_block_t cap_file_provider_get_user_block(struct packet_provider_data *prov, const frame_data *fd);
|
||||
void cap_file_provider_set_user_block(struct packet_provider_data *prov, frame_data *fd, const wtap_block_t new_block);
|
||||
wtap_block_t cap_file_provider_get_modified_block(struct packet_provider_data *prov, const frame_data *fd);
|
||||
void cap_file_provider_set_modified_block(struct packet_provider_data *prov, frame_data *fd, const wtap_block_t new_block);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -558,8 +558,8 @@ libwireshark.so.0 libwireshark0 #MINVER#
|
|||
epan_get_compiled_version_info@Base 1.9.1
|
||||
epan_get_interface_description@Base 2.3.0
|
||||
epan_get_interface_name@Base 1.99.2
|
||||
epan_get_modified_block@Base 3.5.0
|
||||
epan_get_runtime_version_info@Base 1.9.1
|
||||
epan_get_user_block@Base 3.5.0
|
||||
epan_get_version@Base 1.9.1
|
||||
epan_get_version_number@Base 2.5.0
|
||||
epan_init@Base 2.9.0
|
||||
|
|
|
@ -2186,12 +2186,12 @@ main(int argc, char *argv[])
|
|||
temp_rec = *rec;
|
||||
/* The comment is not modified by dumper, cast away. */
|
||||
wtap_block_add_string_option(rec->block, OPT_COMMENT, (char *)comment, strlen((char *)comment));
|
||||
temp_rec.has_block_changed = TRUE;
|
||||
temp_rec.block_was_modified = TRUE;
|
||||
rec = &temp_rec;
|
||||
} else {
|
||||
/* Copy and change rather than modify returned rec */
|
||||
temp_rec = *rec;
|
||||
temp_rec.has_block_changed = FALSE;
|
||||
temp_rec.block_was_modified = FALSE;
|
||||
rec = &temp_rec;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -449,10 +449,10 @@ epan_new(struct packet_provider_data *prov,
|
|||
}
|
||||
|
||||
wtap_block_t
|
||||
epan_get_user_block(const epan_t *session, const frame_data *fd)
|
||||
epan_get_modified_block(const epan_t *session, const frame_data *fd)
|
||||
{
|
||||
if (session->funcs.get_user_block)
|
||||
return session->funcs.get_user_block(session->prov, fd);
|
||||
if (session->funcs.get_modified_block)
|
||||
return session->funcs.get_modified_block(session->prov, fd);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
|
|
@ -50,7 +50,7 @@ struct packet_provider_funcs {
|
|||
const nstime_t *(*get_frame_ts)(struct packet_provider_data *prov, guint32 frame_num);
|
||||
const char *(*get_interface_name)(struct packet_provider_data *prov, guint32 interface_id);
|
||||
const char *(*get_interface_description)(struct packet_provider_data *prov, guint32 interface_id);
|
||||
wtap_block_t (*get_user_block)(struct packet_provider_data *prov, const frame_data *fd);
|
||||
wtap_block_t (*get_modified_block)(struct packet_provider_data *prov, const frame_data *fd);
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -154,7 +154,7 @@ typedef struct epan_session epan_t;
|
|||
WS_DLL_PUBLIC epan_t *epan_new(struct packet_provider_data *prov,
|
||||
const struct packet_provider_funcs *funcs);
|
||||
|
||||
WS_DLL_PUBLIC wtap_block_t epan_get_user_block(const epan_t *session, const frame_data *fd);
|
||||
WS_DLL_PUBLIC wtap_block_t epan_get_modified_block(const epan_t *session, const frame_data *fd);
|
||||
|
||||
WS_DLL_PUBLIC const char *epan_get_interface_name(const epan_t *session, guint32 interface_id);
|
||||
|
||||
|
|
|
@ -219,7 +219,7 @@ frame_data_init(frame_data *fdata, guint32 num, const wtap_rec *rec,
|
|||
fdata->tsprec = (unsigned int)rec->tsprec;
|
||||
fdata->abs_ts = rec->ts;
|
||||
fdata->has_phdr_block = (rec->block != NULL);
|
||||
fdata->has_user_block = 0;
|
||||
fdata->has_modified_block = 0;
|
||||
fdata->need_colorize = 0;
|
||||
fdata->color_filter = NULL;
|
||||
fdata->shift_offset.secs = 0;
|
||||
|
|
|
@ -85,7 +85,7 @@ typedef struct _frame_data {
|
|||
unsigned int ignored : 1; /**< 1 = ignore this frame, 0 = normal */
|
||||
unsigned int has_ts : 1; /**< 1 = has time stamp, 0 = no time stamp */
|
||||
unsigned int has_phdr_block : 1; /** 1 = there's a block (possibly with options) for this packet */
|
||||
unsigned int has_user_block : 1; /** 1 = user changed block (or its options) for this packet */
|
||||
unsigned int has_modified_block : 1; /** 1 = block for this packet has been modified */
|
||||
unsigned int need_colorize : 1; /**< 1 = need to (re-)calculate packet color */
|
||||
unsigned int tsprec : 4; /**< Time stamp precision -2^tsprec gives up to femtoseconds */
|
||||
nstime_t abs_ts; /**< Absolute timestamp */
|
||||
|
|
|
@ -583,9 +583,12 @@ dissect_record(epan_dissect_t *edt, int file_type_subtype,
|
|||
|
||||
frame_delta_abs_time(edt->session, fd, fd->frame_ref_num, &edt->pi.rel_ts);
|
||||
|
||||
/* pkt block use first user, later from rec */
|
||||
if (fd->has_user_block) {
|
||||
frame_dissector_data.pkt_block = epan_get_user_block(edt->session, fd);
|
||||
/*
|
||||
* If the block has been modified, use the modified block,
|
||||
* otherwise use the block from the file.
|
||||
*/
|
||||
if (fd->has_modified_block) {
|
||||
frame_dissector_data.pkt_block = epan_get_modified_block(edt->session, fd);
|
||||
}
|
||||
else if (fd->has_phdr_block) {
|
||||
frame_dissector_data.pkt_block = rec->block;
|
||||
|
@ -657,9 +660,12 @@ dissect_file(epan_dissect_t *edt, wtap_rec *rec,
|
|||
|
||||
|
||||
TRY {
|
||||
/* pkt block use first user, later from rec */
|
||||
if (fd->has_user_block) {
|
||||
file_dissector_data.pkt_block = epan_get_user_block(edt->session, fd);
|
||||
/*
|
||||
* If the block has been modified, use the modified block,
|
||||
* otherwise use the block from the file.
|
||||
*/
|
||||
if (fd->has_modified_block) {
|
||||
file_dissector_data.pkt_block = epan_get_modified_block(edt->session, fd);
|
||||
}
|
||||
else if (fd->has_phdr_block) {
|
||||
file_dissector_data.pkt_block = rec->block;
|
||||
|
|
|
@ -541,12 +541,12 @@ WSLUA_METHOD Dumper_dump_current(lua_State* L) {
|
|||
|
||||
/*
|
||||
* wtap_dump does not modify rec.block, so it should be possible to
|
||||
* pass epan_get_user_block() or lua_pinfo->rec->block directly.
|
||||
* pass epan_get_modified_block() or lua_pinfo->rec->block directly.
|
||||
* Temporarily duplicating the memory should not hurt though.
|
||||
*/
|
||||
if (lua_pinfo->fd->has_user_block) {
|
||||
rec.block = epan_get_user_block(lua_pinfo->epan, lua_pinfo->fd);
|
||||
rec.has_block_changed = TRUE;
|
||||
if (lua_pinfo->fd->has_modified_block) {
|
||||
rec.block = epan_get_modified_block(lua_pinfo->epan, lua_pinfo->fd);
|
||||
rec.block_was_modified = TRUE;
|
||||
} else if (lua_pinfo->fd->has_phdr_block) {
|
||||
rec.block = lua_pinfo->rec->block;
|
||||
}
|
||||
|
|
28
file.c
28
file.c
|
@ -252,7 +252,7 @@ ws_epan_new(capture_file *cf)
|
|||
ws_get_frame_ts,
|
||||
cap_file_provider_get_interface_name,
|
||||
cap_file_provider_get_interface_description,
|
||||
cap_file_provider_get_user_block
|
||||
cap_file_provider_get_modified_block
|
||||
};
|
||||
|
||||
return epan_new(&cf->provider, &funcs);
|
||||
|
@ -4003,9 +4003,9 @@ cf_update_section_comment(capture_file *cf, gchar *comment)
|
|||
wtap_block_t
|
||||
cf_get_packet_block(capture_file *cf, const frame_data *fd)
|
||||
{
|
||||
/* fetch user block */
|
||||
if (fd->has_user_block)
|
||||
return wtap_block_ref(cap_file_provider_get_user_block(&cf->provider, fd));
|
||||
/* If this block has been modified, fetch the modified version */
|
||||
if (fd->has_modified_block)
|
||||
return wtap_block_ref(cap_file_provider_get_modified_block(&cf->provider, fd));
|
||||
|
||||
/* fetch phdr block */
|
||||
if (fd->has_phdr_block) {
|
||||
|
@ -4033,20 +4033,20 @@ cf_get_packet_block(capture_file *cf, const frame_data *fd)
|
|||
* Update(replace) the block on a capture from a frame
|
||||
*/
|
||||
gboolean
|
||||
cf_set_user_packet_block(capture_file *cf, frame_data *fd, const wtap_block_t new_block)
|
||||
cf_set_modified_block(capture_file *cf, frame_data *fd, const wtap_block_t new_block)
|
||||
{
|
||||
wtap_block_t pkt_block = cf_get_packet_block(cf, fd);
|
||||
|
||||
/* It's possible to edit the user block "in place" by doing a call to
|
||||
* cf_get_packet_block() that returns an already created user block,
|
||||
* editing that, and calling this function.
|
||||
/* It's possible to further modify the modified block "in place" by doing
|
||||
* a call to cf_get_packet_block() that returns an already created modified
|
||||
* block, modifying that, and calling this function.
|
||||
* If the caller did that, then the block pointers will be equal.
|
||||
*/
|
||||
if (pkt_block == new_block) {
|
||||
/* No need to save anything here, the caller changes went right
|
||||
* onto the block.
|
||||
* Unfortunately we don't have a way to know how many comments were in the block
|
||||
* before the caller edited it.
|
||||
* before the caller modified it.
|
||||
*/
|
||||
}
|
||||
else {
|
||||
|
@ -4056,7 +4056,7 @@ cf_set_user_packet_block(capture_file *cf, frame_data *fd, const wtap_block_t ne
|
|||
if (new_block)
|
||||
cf->packet_comment_count += wtap_block_count_option(new_block, OPT_COMMENT);
|
||||
|
||||
cap_file_provider_set_user_block(&cf->provider, fd, new_block);
|
||||
cap_file_provider_set_modified_block(&cf->provider, fd, new_block);
|
||||
|
||||
expert_update_comment_count(cf->packet_comment_count);
|
||||
}
|
||||
|
@ -4147,12 +4147,12 @@ save_record(capture_file *cf, frame_data *fdata, wtap_rec *rec,
|
|||
|
||||
/* Make changes based on anything that the user has done but that
|
||||
hasn't been saved yet. */
|
||||
if (fdata->has_user_block)
|
||||
pkt_block = cap_file_provider_get_user_block(&cf->provider, fdata);
|
||||
if (fdata->has_modified_block)
|
||||
pkt_block = cap_file_provider_get_modified_block(&cf->provider, fdata);
|
||||
else
|
||||
pkt_block = rec->block;
|
||||
new_rec.block = pkt_block;
|
||||
new_rec.has_block_changed = fdata->has_user_block ? TRUE : FALSE;
|
||||
new_rec.block_was_modified = fdata->has_modified_block ? TRUE : FALSE;
|
||||
/* XXX - what if times have been shifted? */
|
||||
|
||||
/* and save the packet */
|
||||
|
@ -4770,7 +4770,7 @@ cf_save_records(capture_file *cf, const char *fname, guint save_format,
|
|||
|
||||
// XXX: This also ignores non-comment options like verdict
|
||||
fdata->has_phdr_block = FALSE;
|
||||
fdata->has_user_block = FALSE;
|
||||
fdata->has_modified_block = FALSE;
|
||||
}
|
||||
|
||||
if (cf->provider.frames_edited_blocks) {
|
||||
|
|
2
file.h
2
file.h
|
@ -706,7 +706,7 @@ wtap_block_t cf_get_packet_block(capture_file *cf, const frame_data *fd);
|
|||
* @param fd the frame_data structure for the frame
|
||||
* @param new_block the block replacing the old block
|
||||
*/
|
||||
gboolean cf_set_user_packet_block(capture_file *cf, frame_data *fd, wtap_block_t new_block);
|
||||
gboolean cf_set_modified_block(capture_file *cf, frame_data *fd, wtap_block_t new_block);
|
||||
|
||||
/**
|
||||
* What types of comments does this file have?
|
||||
|
|
|
@ -70,7 +70,7 @@ cap_file_provider_get_interface_description(struct packet_provider_data *prov, g
|
|||
}
|
||||
|
||||
wtap_block_t
|
||||
cap_file_provider_get_user_block(struct packet_provider_data *prov, const frame_data *fd)
|
||||
cap_file_provider_get_modified_block(struct packet_provider_data *prov, const frame_data *fd)
|
||||
{
|
||||
if (prov->frames_edited_blocks)
|
||||
return (wtap_block_t)g_tree_lookup(prov->frames_edited_blocks, fd);
|
||||
|
@ -80,7 +80,7 @@ cap_file_provider_get_user_block(struct packet_provider_data *prov, const frame_
|
|||
}
|
||||
|
||||
void
|
||||
cap_file_provider_set_user_block(struct packet_provider_data *prov, frame_data *fd, wtap_block_t new_block)
|
||||
cap_file_provider_set_modified_block(struct packet_provider_data *prov, frame_data *fd, wtap_block_t new_block)
|
||||
{
|
||||
if (!prov->frames_edited_blocks)
|
||||
prov->frames_edited_blocks = g_tree_new_full(frame_cmp, NULL, NULL, (GDestroyNotify)wtap_block_unref);
|
||||
|
@ -88,5 +88,5 @@ cap_file_provider_set_user_block(struct packet_provider_data *prov, frame_data *
|
|||
/* insert new packet block */
|
||||
g_tree_replace(prov->frames_edited_blocks, fd, (gpointer)new_block);
|
||||
|
||||
fd->has_user_block = TRUE;
|
||||
fd->has_modified_block = TRUE;
|
||||
}
|
||||
|
|
18
sharkd.c
18
sharkd.c
|
@ -241,7 +241,7 @@ sharkd_epan_new(capture_file *cf)
|
|||
sharkd_get_frame_ts,
|
||||
cap_file_provider_get_interface_name,
|
||||
cap_file_provider_get_interface_description,
|
||||
cap_file_provider_get_user_block
|
||||
cap_file_provider_get_modified_block
|
||||
};
|
||||
|
||||
return epan_new(&cf->provider, &funcs);
|
||||
|
@ -769,25 +769,25 @@ sharkd_filter(const char *dftext, guint8 **result)
|
|||
}
|
||||
|
||||
/*
|
||||
* Get the user block if available, nothing otherwise.
|
||||
* Get the modified block if available, nothing otherwise.
|
||||
* Must be cloned if changes desired.
|
||||
*/
|
||||
wtap_block_t
|
||||
sharkd_get_user_block(const frame_data *fd)
|
||||
sharkd_get_modified_block(const frame_data *fd)
|
||||
{
|
||||
return cap_file_provider_get_user_block(&cfile.provider, fd);
|
||||
return cap_file_provider_get_modified_block(&cfile.provider, fd);
|
||||
}
|
||||
|
||||
/*
|
||||
* Gets the user block if available, otherwise the packet's default block,
|
||||
* Gets the modified block if available, otherwise the packet's default block,
|
||||
* or a new packet block.
|
||||
* User must wtap_block_unref() it when done.
|
||||
*/
|
||||
wtap_block_t
|
||||
sharkd_get_packet_block(const frame_data *fd)
|
||||
{
|
||||
if (fd->has_user_block)
|
||||
return wtap_block_ref(cap_file_provider_get_user_block(&cfile.provider, fd));
|
||||
if (fd->has_modified_block)
|
||||
return wtap_block_ref(cap_file_provider_get_modified_block(&cfile.provider, fd));
|
||||
if (fd->has_phdr_block)
|
||||
{
|
||||
wtap_rec rec; /* Record metadata */
|
||||
|
@ -814,9 +814,9 @@ sharkd_get_packet_block(const frame_data *fd)
|
|||
}
|
||||
|
||||
int
|
||||
sharkd_set_user_block(frame_data *fd, wtap_block_t new_block)
|
||||
sharkd_set_modified_block(frame_data *fd, wtap_block_t new_block)
|
||||
{
|
||||
cap_file_provider_set_user_block(&cfile.provider, fd, new_block);
|
||||
cap_file_provider_set_modified_block(&cfile.provider, fd, new_block);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
4
sharkd.h
4
sharkd.h
|
@ -36,9 +36,9 @@ int sharkd_filter(const char *dftext, guint8 **result);
|
|||
frame_data *sharkd_get_frame(guint32 framenum);
|
||||
int sharkd_dissect_columns(frame_data *fdata, guint32 frame_ref_num, guint32 prev_dis_num, column_info *cinfo, gboolean dissect_color);
|
||||
int sharkd_dissect_request(guint32 framenum, guint32 frame_ref_num, guint32 prev_dis_num, sharkd_dissect_func_t cb, guint32 dissect_flags, void *data);
|
||||
wtap_block_t sharkd_get_user_block(const frame_data *fd);
|
||||
wtap_block_t sharkd_get_modified_block(const frame_data *fd);
|
||||
wtap_block_t sharkd_get_packet_block(const frame_data *fd);
|
||||
int sharkd_set_user_block(frame_data *fd, wtap_block_t new_block);
|
||||
int sharkd_set_modified_block(frame_data *fd, wtap_block_t new_block);
|
||||
const char *sharkd_version(void);
|
||||
|
||||
/* sharkd_daemon.c */
|
||||
|
|
|
@ -1444,9 +1444,9 @@ sharkd_session_process_frames(const char *buf, const jsmntok_t *tokens, int coun
|
|||
|
||||
sharkd_json_value_anyf("num", "%u", framenum);
|
||||
|
||||
if (fdata->has_user_block || fdata->has_phdr_block)
|
||||
if (fdata->has_modified_block || fdata->has_phdr_block)
|
||||
{
|
||||
if (!fdata->has_user_block || sharkd_get_user_block(fdata) != NULL)
|
||||
if (!fdata->has_modified_block || sharkd_get_modified_block(fdata) != NULL)
|
||||
sharkd_json_value_anyf("ct", "true");
|
||||
}
|
||||
|
||||
|
@ -3355,8 +3355,8 @@ sharkd_session_process_frame_cb(epan_dissect_t *edt, proto_tree *tree, struct ep
|
|||
|
||||
sharkd_json_result_prologue(rpcid);
|
||||
|
||||
if (fdata->has_user_block)
|
||||
pkt_block = sharkd_get_user_block(fdata);
|
||||
if (fdata->has_modified_block)
|
||||
pkt_block = sharkd_get_modified_block(fdata);
|
||||
else if (fdata->has_phdr_block)
|
||||
pkt_block = pi->rec->block;
|
||||
|
||||
|
@ -4241,7 +4241,7 @@ sharkd_session_process_setcomment(char *buf, const jsmntok_t *tokens, int count)
|
|||
}
|
||||
else
|
||||
{
|
||||
sharkd_set_user_block(fdata, pkt_block);
|
||||
sharkd_set_modified_block(fdata, pkt_block);
|
||||
sharkd_json_simple_ok(rpcid);
|
||||
}
|
||||
|
||||
|
|
|
@ -1415,7 +1415,7 @@ void PacketList::addPacketComment(QString new_comment)
|
|||
QByteArray ba = new_comment.toLocal8Bit();
|
||||
wtap_block_add_string_option(pkt_block, OPT_COMMENT, ba.data(), ba.size());
|
||||
|
||||
cf_set_user_packet_block(cap_file_, fdata, pkt_block);
|
||||
cf_set_modified_block(cap_file_, fdata, pkt_block);
|
||||
|
||||
redrawVisiblePackets();
|
||||
}
|
||||
|
@ -1441,7 +1441,7 @@ void PacketList::setPacketComment(guint c_number, QString new_comment)
|
|||
wtap_block_set_nth_string_option_value(pkt_block, OPT_COMMENT, c_number, ba.data(), ba.size());
|
||||
}
|
||||
|
||||
cf_set_user_packet_block(cap_file_, fdata, pkt_block);
|
||||
cf_set_modified_block(cap_file_, fdata, pkt_block);
|
||||
|
||||
redrawVisiblePackets();
|
||||
}
|
||||
|
@ -1495,7 +1495,7 @@ void PacketList::deleteAllPacketComments()
|
|||
for (i = 0; i < n_comments; i++) {
|
||||
wtap_block_remove_nth_option_instance(pkt_block, OPT_COMMENT, 0);
|
||||
}
|
||||
cf_set_user_packet_block(cap_file_, fdata, pkt_block);
|
||||
cf_set_modified_block(cap_file_, fdata, pkt_block);
|
||||
}
|
||||
|
||||
cap_file_->packet_comment_count = 0;
|
||||
|
|
|
@ -60,11 +60,11 @@ export_pdu_packet(void *tapdata, packet_info *pinfo, epan_dissect_t *edt, const
|
|||
rec.rec_header.packet_header.pkt_encap = exp_pdu_tap_data->pkt_encap;
|
||||
|
||||
/* rec.opt_block is not modified by wtap_dump, but if for some reason the
|
||||
* epan_get_user_block() or pinfo->rec->block are invalidated,
|
||||
* epan_get_modified_block() or pinfo->rec->block are invalidated,
|
||||
* copying it here does not hurt. (Can invalidation really happen?) */
|
||||
if (pinfo->fd->has_user_block) {
|
||||
rec.block = epan_get_user_block(edt->session, pinfo->fd);
|
||||
rec.has_block_changed = TRUE;
|
||||
if (pinfo->fd->has_modified_block) {
|
||||
rec.block = epan_get_modified_block(edt->session, pinfo->fd);
|
||||
rec.block_was_modified = TRUE;
|
||||
} else if (pinfo->fd->has_phdr_block) {
|
||||
rec.block = pinfo->rec->block;
|
||||
}
|
||||
|
|
|
@ -1982,11 +1982,11 @@ static gboolean erf_dump(
|
|||
* construct a new header with additional Host ID and Anchor ID
|
||||
* and insert a metadata record before that frame */
|
||||
/*XXX: The user may have changed the comment to cleared! */
|
||||
if(rec->has_block_changed) {
|
||||
if(rec->block_was_modified) {
|
||||
if (encap == WTAP_ENCAP_ERF) {
|
||||
/* XXX: What about ERF-in-pcapng with existing comment (that wasn't
|
||||
* modified)? */
|
||||
if(rec->has_block_changed) {
|
||||
if(rec->block_was_modified) {
|
||||
memmove(&other_phdr, pseudo_header, sizeof(union wtap_pseudo_header));
|
||||
if(!erf_write_anchor_meta_update_phdr(wdh, dump_priv, rec, &other_phdr, err)) return FALSE;
|
||||
pseudo_header = &other_phdr;
|
||||
|
|
|
@ -1516,7 +1516,7 @@ wtap_init_rec(wtap *wth, wtap_rec *rec)
|
|||
rec->rec_header.packet_header.pkt_encap = wth->file_encap;
|
||||
rec->tsprec = wth->file_tsprec;
|
||||
rec->block = NULL;
|
||||
rec->has_block_changed = FALSE;
|
||||
rec->block_was_modified = FALSE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
|
@ -1675,7 +1675,7 @@ wtap_rec_cleanup(wtap_rec *rec)
|
|||
{
|
||||
wtap_block_unref(rec->block);
|
||||
rec->block = NULL;
|
||||
rec->has_block_changed = FALSE;
|
||||
rec->block_was_modified = FALSE;
|
||||
ws_buffer_free(&rec->options_buf);
|
||||
}
|
||||
|
||||
|
|
|
@ -1331,10 +1331,10 @@ typedef struct {
|
|||
} wtap_custom_block_header;
|
||||
|
||||
typedef struct {
|
||||
guint rec_type; /* what type of record is this? */
|
||||
guint32 presence_flags; /* what stuff do we have? */
|
||||
nstime_t ts; /* time stamp */
|
||||
int tsprec; /* WTAP_TSPREC_ value for this record */
|
||||
guint rec_type; /* what type of record is this? */
|
||||
guint32 presence_flags; /* what stuff do we have? */
|
||||
nstime_t ts; /* time stamp */
|
||||
int tsprec; /* WTAP_TSPREC_ value for this record */
|
||||
union {
|
||||
wtap_packet_header packet_header;
|
||||
wtap_ft_specific_header ft_specific_header;
|
||||
|
@ -1343,14 +1343,14 @@ typedef struct {
|
|||
wtap_custom_block_header custom_block_header;
|
||||
} rec_header;
|
||||
|
||||
wtap_block_t block; /* packet block; holds comments and verdicts in its options */
|
||||
gboolean has_block_changed; /* TRUE if ANY aspect of the block has changed */
|
||||
wtap_block_t block ; /* packet block; holds comments and verdicts in its options */
|
||||
gboolean block_was_modified; /* TRUE if ANY aspect of the block has been modified */
|
||||
|
||||
/*
|
||||
* We use a Buffer so that we don't have to allocate and free
|
||||
* a buffer for the options for each record.
|
||||
*/
|
||||
Buffer options_buf; /* file-type specific data */
|
||||
Buffer options_buf; /* file-type specific data */
|
||||
} wtap_rec;
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue