Index: main/event.c =================================================================== --- main/event.c (revision 92264) +++ main/event.c (working copy) @@ -392,7 +392,9 @@ uint32_t ast_event_iterator_get_ie_uint(struct ast_event_iterator *iterator) { - return ntohl(*iterator->ie->ie_payload); + uint32_t tmp_val; + memcpy(&tmp_val, iterator->ie->ie_payload, sizeof(tmp_val)); + return ntohl(tmp_val); } const char *ast_event_iterator_get_ie_str(struct ast_event_iterator *iterator) @@ -412,11 +414,16 @@ uint32_t ast_event_get_ie_uint(const struct ast_event *event, enum ast_event_ie_type ie_type) { + uint32_t tmp_val; const uint32_t *ie_val; ie_val = ast_event_get_ie_raw(event, ie_type); - return ie_val ? ntohl(*ie_val) : 0; + if (ie_val == NULL) + return 0; + + memcpy(&tmp_val, ie_val, sizeof(tmp_val)); + return ntohl(tmp_val); } const char *ast_event_get_ie_str(const struct ast_event *event, enum ast_event_ie_type ie_type)