From: Mark Michelson Date: Mon, 11 Feb 2008 02:47:25 +0000 (+0000) Subject: Fix a problem regarding network vs. host byte order X-Git-Tag: 1.6.0-beta3~2^2~58 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9d683be81a93ca644008bb3ae83707aaaf24f871;p=thirdparty%2Fasterisk.git Fix a problem regarding network vs. host byte order in the event API. ast_event_iterator_get_ie_type should return the ie type in host byte order. Furthermore, ast_event_get_ie_raw should already have its ie type argument in host byte order since it could be called externally (and it in fact is called in this way by ast_event_get_cached). git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103282 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/event.c b/main/event.c index 333b628a10..705063b823 100644 --- a/main/event.c +++ b/main/event.c @@ -388,7 +388,7 @@ int ast_event_iterator_next(struct ast_event_iterator *iterator) enum ast_event_ie_type ast_event_iterator_get_ie_type(struct ast_event_iterator *iterator) { - return iterator->ie->ie_type; + return ntohs(iterator->ie->ie_type); } uint32_t ast_event_iterator_get_ie_uint(struct ast_event_iterator *iterator) @@ -430,8 +430,6 @@ const void *ast_event_get_ie_raw(const struct ast_event *event, enum ast_event_i struct ast_event_iterator iterator; int res = 0; - ie_type = ntohs(ie_type); - for (ast_event_iterator_init(&iterator, event); !res; res = ast_event_iterator_next(&iterator)) { if (ast_event_iterator_get_ie_type(&iterator) == ie_type) return ast_event_iterator_get_ie_raw(&iterator);