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