Lines Matching refs:msg
29 * Implementation of msg
44 struct msg *
47 struct msg *tmp;
48 if ((tmp = malloc(sizeof(struct msg))) == NULL) {
75 msg_run_add(struct msg *msg)
77 if (++msg->run_length >= msg->run_num_allocated) {
78 int tobe_allocated = msg->run_num_allocated;
81 new_data = (struct run **) realloc(msg->run_data,
85 msg->run_data = new_data;
86 msg->run_num_allocated = tobe_allocated;
88 msg->run_data[msg->run_length - 1] = run_new();
89 if (msg->run_data[msg->run_length - 1] == NULL)
91 msg->run_set = 1;
92 return (msg->run_data[msg->run_length - 1]);
94 --msg->run_length;
100 msg_from_name_assign(struct msg *msg,
103 if (msg->from_name_data != NULL)
104 free(msg->from_name_data);
105 if ((msg->from_name_data = strdup(value)) == NULL)
107 msg->from_name_set = 1;
112 msg_to_name_assign(struct msg *msg,
115 if (msg->to_name_data != NULL)
116 free(msg->to_name_data);
117 if ((msg->to_name_data = strdup(value)) == NULL)
119 msg->to_name_set = 1;
124 msg_attack_assign(struct msg *msg,
128 if (msg->attack_set) {
129 kill_clear(msg->attack_data);
130 msg->attack_set = 0;
132 msg->attack_data = kill_new();
133 if (msg->attack_data == NULL) {
143 if (kill_unmarshal(msg->attack_data, tmp) == -1) {
147 msg->attack_set = 1;
153 if (msg->attack_data != NULL) {
154 kill_free(msg->attack_data);
155 msg->attack_data = NULL;
161 msg_run_assign(struct msg *msg, int off,
165 if (!msg->run_set || off < 0 || off >= msg->run_length)
167 run_clear(msg->run_data[off]);
173 if (run_unmarshal(msg->run_data[off], tmp) == -1) {
182 run_clear(msg->run_data[off]);
187 msg_from_name_get(struct msg *msg, char * *value)
189 if (msg->from_name_set != 1)
191 *value = msg->from_name_data;
196 msg_to_name_get(struct msg *msg, char * *value)
198 if (msg->to_name_set != 1)
200 *value = msg->to_name_data;
205 msg_attack_get(struct msg *msg, struct kill* *value)
207 if (msg->attack_set != 1) {
208 msg->attack_data = kill_new();
209 if (msg->attack_data == NULL)
211 msg->attack_set = 1;
213 *value = msg->attack_data;
218 msg_run_get(struct msg *msg, int offset,
221 if (!msg->run_set || offset < 0 || offset >= msg->run_length)
223 *value = msg->run_data[offset];
228 msg_clear(struct msg *tmp)
259 msg_free(struct msg *tmp)
282 msg_marshal(struct evbuffer *evbuf, const struct msg *tmp){
297 msg_unmarshal(struct msg *tmp, struct evbuffer *evbuf)
365 msg_complete(struct msg *msg)
367 if (!msg->from_name_set)
369 if (!msg->to_name_set)
371 if (msg->attack_set && kill_complete(msg->attack_data) == -1)
375 for (i = 0; i < msg->run_length; ++i) {
376 if (run_complete(msg->run_data[i]) == -1)
384 evtag_unmarshal_msg(struct evbuffer *evbuf, ev_uint32_t need_tag, struct msg *msg)
394 if (msg_unmarshal(msg, tmp) == -1)
405 evtag_marshal_msg(struct evbuffer *evbuf, ev_uint32_t tag, const struct msg *msg)
410 msg_marshal(_buf, msg);
454 kill_weapon_assign(struct kill *msg,
457 if (msg->weapon_data != NULL)
458 free(msg->weapon_data);
459 if ((msg->weapon_data = strdup(value)) == NULL)
461 msg->weapon_set = 1;
466 kill_action_assign(struct kill *msg,
469 if (msg->action_data != NULL)
470 free(msg->action_data);
471 if ((msg->action_data = strdup(value)) == NULL)
473 msg->action_set = 1;
478 kill_how_often_assign(struct kill *msg, const ev_uint32_t value)
480 msg->how_often_set = 1;
481 msg->how_often_data = value;
486 kill_weapon_get(struct kill *msg, char * *value)
488 if (msg->weapon_set != 1)
490 *value = msg->weapon_data;
495 kill_action_get(struct kill *msg, char * *value)
497 if (msg->action_set != 1)
499 *value = msg->action_data;
504 kill_how_often_get(struct kill *msg, ev_uint32_t *value)
506 if (msg->how_often_set != 1)
508 *value = msg->how_often_data;
600 kill_complete(struct kill *msg)
602 if (!msg->weapon_set)
604 if (!msg->action_set)
610 evtag_unmarshal_kill(struct evbuffer *evbuf, ev_uint32_t need_tag, struct kill *msg)
620 if (kill_unmarshal(msg, tmp) == -1)
631 evtag_marshal_kill(struct evbuffer *evbuf, ev_uint32_t tag, const struct kill *msg)
636 kill_marshal(_buf, msg);
681 run_how_assign(struct run *msg,
684 if (msg->how_data != NULL)
685 free(msg->how_data);
686 if ((msg->how_data = strdup(value)) == NULL)
688 msg->how_set = 1;
693 run_some_bytes_assign(struct run *msg, const ev_uint8_t * value, ev_uint32_t len)
695 if (msg->some_bytes_data != NULL)
696 free (msg->some_bytes_data);
697 msg->some_bytes_data = malloc(len);
698 if (msg->some_bytes_data == NULL)
700 msg->some_bytes_set = 1;
701 msg->some_bytes_length = len;
702 memcpy(msg->some_bytes_data, value, len);
707 run_fixed_bytes_assign(struct run *msg, const ev_uint8_t *value)
709 msg->fixed_bytes_set = 1;
710 memcpy(msg->fixed_bytes_data, value, 24);
715 run_how_get(struct run *msg, char * *value)
717 if (msg->how_set != 1)
719 *value = msg->how_data;
724 run_some_bytes_get(struct run *msg, ev_uint8_t * *value, ev_uint32_t *plen)
726 if (msg->some_bytes_set != 1)
728 *value = msg->some_bytes_data;
729 *plen = msg->some_bytes_length;
734 run_fixed_bytes_get(struct run *msg, ev_uint8_t **value)
736 if (msg->fixed_bytes_set != 1)
738 *value = msg->fixed_bytes_data;
838 run_complete(struct run *msg)
840 if (!msg->how_set)
842 if (!msg->fixed_bytes_set)
848 evtag_unmarshal_run(struct evbuffer *evbuf, ev_uint32_t need_tag, struct run *msg)
858 if (run_unmarshal(msg, tmp) == -1)
869 evtag_marshal_run(struct evbuffer *evbuf, ev_uint32_t tag, const struct run *msg)
874 run_marshal(_buf, msg);