---
gwobex/obex-xfer.c | 10 ++++++++++
gwobex/obex-xfer.h | 2 ++
2 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/gwobex/obex-xfer.c b/gwobex/obex-xfer.c
index 0ce476f..7779d4f 100644
--- a/gwobex/obex-xfer.c
+++ b/gwobex/obex-xfer.c
@@ -499,6 +499,16 @@ void a_header_free(struct a_header *ah) {
g_free(ah);
}
+struct a_header *a_header_find(GSList *aheaders, uint8_t hi) {
+ while (aheaders) {
+ struct a_header *ah = aheaders->data;
+ if (ah->hi == hi)
+ return aheaders->data;
+ aheaders = g_slist_next(aheaders);
+ }
+ return NULL;
+}
+
void _gw_obex_xfer_free(struct gw_obex_xfer *xfer) {
GSList *aheaders = xfer->aheaders;
while (aheaders) {diff --git a/gwobex/obex-xfer.h b/gwobex/obex-xfer.h
index 844d726..66717b9 100644
--- a/gwobex/obex-xfer.h
+++ b/gwobex/obex-xfer.h
@@ -98,6 +98,8 @@ struct a_header *make_a_header(uint8_t hi, obex_headerdata_t hv,
struct a_header *a_header_copy(struct a_header *ah);
+struct a_header *a_header_find(GSList *aheaders, uint8_t hi);
+
struct gw_obex_xfer *gw_obex_xfer_new(struct gw_obex *ctx, gboolean async, int stream_fd);
void _gw_obex_xfer_free(struct gw_obex_xfer *xfer);
--
1.7.0.4