libUPnP  1.6.17
upnptools.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002  *
00003  * Copyright (c) 2000-2003 Intel Corporation 
00004  * All rights reserved. 
00005  *
00006  * Redistribution and use in source and binary forms, with or without 
00007  * modification, are permitted provided that the following conditions are met: 
00008  *
00009  * * Redistributions of source code must retain the above copyright notice, 
00010  * this list of conditions and the following disclaimer. 
00011  * * Redistributions in binary form must reproduce the above copyright notice, 
00012  * this list of conditions and the following disclaimer in the documentation 
00013  * and/or other materials provided with the distribution. 
00014  * * Neither name of Intel Corporation nor the names of its contributors 
00015  * may be used to endorse or promote products derived from this software 
00016  * without specific prior written permission.
00017  * 
00018  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
00019  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
00020  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 
00021  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR 
00022  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 
00023  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 
00024  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
00025  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
00026  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
00027  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 
00028  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00029  *
00030  ******************************************************************************/
00031 
00032 
00033 #ifndef UPNP_TOOLS_H
00034 #define UPNP_TOOLS_H
00035 
00036 
00052 #include "ixml.h" /* for IXML_Document */
00053 #include "upnpconfig.h" /* for UPNP_HAVE_TOOLS */
00054 
00055 
00056 /* Function declarations only if tools compiled into the library */
00057 #if UPNP_HAVE_TOOLS
00058 
00059 
00060 #ifdef __cplusplus
00061 extern "C" {
00062 #endif
00063 
00064 
00072 EXPORT_SPEC const char *UpnpGetErrorMessage(
00074         int errorcode);
00075 
00076 
00091 EXPORT_SPEC int UpnpResolveURL(
00093         const char *BaseURL,
00095         const char *RelURL,
00097         char *AbsURL);
00098 
00099 
00114 EXPORT_SPEC int UpnpResolveURL2(
00116         const char *BaseURL,
00118         const char *RelURL,
00121         char **AbsURL);
00122 
00123 
00137 EXPORT_SPEC IXML_Document *UpnpMakeAction(
00139         const char *ActionName,
00141         const char *ServType,
00143         int NumArg,
00145         const char *Arg,
00147         ...);
00148 
00149 
00163 EXPORT_SPEC IXML_Document *UpnpMakeActionResponse(
00165         const char *ActionName,
00167         const char *ServType,
00169         int NumArg,
00171         const char *Arg,
00173         ...);
00174 
00175 
00193 EXPORT_SPEC int UpnpAddToAction(
00195         IXML_Document **ActionDoc,
00197         const char *ActionName,
00199         const char *ServType,
00201         const char *ArgName,
00203         const char *ArgVal);
00204 
00205 
00224 EXPORT_SPEC int UpnpAddToActionResponse(
00226         IXML_Document **ActionResponse, 
00228         const char *ActionName,
00230         const char *ServType,
00232         const char *ArgName,
00234         const char *ArgVal);
00235 
00236 
00245 EXPORT_SPEC IXML_Document *UpnpCreatePropertySet(
00247         int NumArg,
00249         const char *Arg,
00251         ...);
00252 
00253 
00269 EXPORT_SPEC int UpnpAddToPropertySet(
00271         IXML_Document **PropSet,
00273         const char *ArgName,
00275         const char *ArgVal);
00276 
00277 
00278 #ifdef __cplusplus
00279 }
00280 #endif
00281 
00282 
00286 #endif /* UPNP_HAVE_TOOLS */
00287 
00288 
00289 #endif /* UPNP_TOOLS_H */
00290