void run_marshal(struct evbuffer *evbuf, const struct run *tmp){ evtag_marshal_string(evbuf, RUN_HOW, tmp->how_data); if (tmp->some_bytes_set) { evtag_marshal(evbuf, RUN_SOME_BYTES, tmp->some_bytes_data, tmp->some_bytes_length); } evtag_marshal(evbuf, RUN_FIXED_BYTES, tmp->fixed_bytes_data, (24)); if (tmp->notes_set) { { int i; for (i = 0; i < tmp->notes_length; ++i) { evtag_marshal_string(evbuf, RUN_NOTES, tmp->notes_data[i]); } } } if (tmp->large_number_set) { evtag_marshal_int64(evbuf, RUN_LARGE_NUMBER, tmp->large_number_data); } if (tmp->other_numbers_set) { { int i; for (i = 0; i < tmp->other_numbers_length; ++i) { evtag_marshal_int(evbuf, RUN_OTHER_NUMBERS, tmp->other_numbers_data[i]); } } } }
void kill_marshal(struct evbuffer *evbuf, const struct kill *tmp){ evtag_marshal_string(evbuf, KILL_WEAPON, tmp->weapon_data); evtag_marshal_string(evbuf, KILL_ACTION, tmp->action_data); if (tmp->how_often_set) { evtag_marshal_int(evbuf, KILL_HOW_OFTEN, tmp->how_often_data); } }
void msg_marshal(struct evbuffer *evbuf, const struct msg *tmp){ evtag_marshal_string(evbuf, MSG_FROM_NAME, tmp->from_name_data); evtag_marshal_string(evbuf, MSG_TO_NAME, tmp->to_name_data); if (tmp->attack_set) { evtag_marshal_kill(evbuf, MSG_ATTACK, tmp->attack_data); } { int i; for (i = 0; i < tmp->run_length; ++i) { evtag_marshal_run(evbuf, MSG_RUN, tmp->run_data[i]); } } }
void run_marshal(struct evbuffer *evbuf, const struct run *tmp){ evtag_marshal_string(evbuf, RUN_HOW, tmp->how_data); if (tmp->some_bytes_set) { evtag_marshal(evbuf, RUN_SOME_BYTES, tmp->some_bytes_data, tmp->some_bytes_length); } evtag_marshal(evbuf, RUN_FIXED_BYTES, tmp->fixed_bytes_data, sizeof(tmp->fixed_bytes_data)); }
static void record_marshal(struct evbuffer *evbuf, struct record *record) { struct evbuffer *addr = evbuffer_new(); struct hash *hash; if (timerisset(&record->tv_start)) evtag_marshal_timeval(evbuf, REC_TV_START, &record->tv_start); if (timerisset(&record->tv_end)) evtag_marshal_timeval(evbuf, REC_TV_END, &record->tv_end); /* Encode an address */ addr_marshal(addr, &record->src); evtag_marshal_buffer(evbuf, REC_SRC, addr); evbuffer_drain(addr, evbuffer_get_length(addr)); addr_marshal(addr, &record->dst); evtag_marshal_buffer(evbuf, REC_DST, addr); evbuffer_drain(addr, evbuffer_get_length(addr)); evtag_marshal_int(evbuf, REC_SRC_PORT, record->src_port); evtag_marshal_int(evbuf, REC_DST_PORT, record->dst_port); evtag_marshal_int(evbuf, REC_PROTO, record->proto); evtag_marshal_int(evbuf, REC_STATE, record->state); if (record->os_fp != NULL) evtag_marshal_string(evbuf, REC_OS_FP, record->os_fp); TAILQ_FOREACH(hash, &record->hashes, next) evtag_marshal(evbuf, REC_HASH, hash->digest, sizeof(hash->digest)); if (record->bytes) evtag_marshal_int(evbuf, REC_BYTES, record->bytes); if (record->flags) evtag_marshal_int(evbuf, REC_FLAGS, record->flags); evbuffer_free(addr); }