]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Fix a problem regarding network vs. host byte order
authorMark Michelson <mmichelson@digium.com>
Mon, 11 Feb 2008 02:47:25 +0000 (02:47 +0000)
committerMark Michelson <mmichelson@digium.com>
Mon, 11 Feb 2008 02:47:25 +0000 (02:47 +0000)
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

main/event.c

index 333b628a100cd15643a1b3474cc54e40b15ff16b..705063b823943446bcb90dfd7b2e9845c26ecd32 100644 (file)
@@ -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);