From 61245bc14eaa69113e7e0d90478a440907dc6943 Mon Sep 17 00:00:00 2001 From: Jukka Rissanen Date: Mon, 14 Jul 2014 18:29:04 +0300 Subject: [PATCH] ie: Adding function to recurse when reading This function is needed when building recursive IE. --- src/ie.c | 8 ++++++++ src/ie.h | 2 ++ 2 files changed, 10 insertions(+) diff --git a/src/ie.c b/src/ie.c index 8ee0c77b..22b03663 100644 --- a/src/ie.c +++ b/src/ie.c @@ -37,6 +37,14 @@ void ie_tlv_iter_init(struct ie_tlv_iter *iter, const unsigned char *tlv, iter->pos = 0; } +void ie_tlv_iter_recurse(struct ie_tlv_iter *iter, + struct ie_tlv_iter *recurse) +{ + recurse->tlv = iter->data; + recurse->max = iter->len; + recurse->pos = 0; +} + unsigned int ie_tlv_iter_get_tag(struct ie_tlv_iter *iter) { return iter->tag; diff --git a/src/ie.h b/src/ie.h index 8b3faa7f..239649b9 100644 --- a/src/ie.h +++ b/src/ie.h @@ -165,5 +165,7 @@ struct ie_tlv_iter { void ie_tlv_iter_init(struct ie_tlv_iter *iter, const unsigned char *tlv, unsigned int len); +void ie_tlv_iter_recurse(struct ie_tlv_iter *iter, + struct ie_tlv_iter *recurse); unsigned int ie_tlv_iter_get_tag(struct ie_tlv_iter *iter); bool ie_tlv_iter_next(struct ie_tlv_iter *iter);