1e5b75505Sopenharmony_ci/*
2e5b75505Sopenharmony_ci * UPnP XML helper routines
3e5b75505Sopenharmony_ci * Copyright (c) 2000-2003 Intel Corporation
4e5b75505Sopenharmony_ci * Copyright (c) 2006-2007 Sony Corporation
5e5b75505Sopenharmony_ci * Copyright (c) 2008-2009 Atheros Communications
6e5b75505Sopenharmony_ci * Copyright (c) 2009, Jouni Malinen <j@w1.fi>
7e5b75505Sopenharmony_ci *
8e5b75505Sopenharmony_ci * See wps_upnp.c for more details on licensing and code history.
9e5b75505Sopenharmony_ci */
10e5b75505Sopenharmony_ci
11e5b75505Sopenharmony_ci#ifndef UPNP_XML_H
12e5b75505Sopenharmony_ci#define UPNP_XML_H
13e5b75505Sopenharmony_ci
14e5b75505Sopenharmony_ci#include "http.h"
15e5b75505Sopenharmony_ci
16e5b75505Sopenharmony_civoid xml_data_encode(struct wpabuf *buf, const char *data, int len);
17e5b75505Sopenharmony_civoid xml_add_tagged_data(struct wpabuf *buf, const char *tag,
18e5b75505Sopenharmony_ci			 const char *data);
19e5b75505Sopenharmony_ciint xml_next_tag(const char *in, const char **out,
20e5b75505Sopenharmony_ci		 const char **out_tagname, const char **end);
21e5b75505Sopenharmony_cichar * xml_get_first_item(const char *doc, const char *item);
22e5b75505Sopenharmony_cistruct wpabuf * xml_get_base64_item(const char *data, const char *name,
23e5b75505Sopenharmony_ci				    enum http_reply_code *ret);
24e5b75505Sopenharmony_ci
25e5b75505Sopenharmony_ci#endif /* UPNP_XML_H */
26