UPnPsdk 0.1
Universal Plug and Play +, Software Development Kit
 
Loading...
Searching...
No Matches
upnptools.hpp
Go to the documentation of this file.
1#ifndef COMPA_UPNPTOOLS_HPP
2#define COMPA_UPNPTOOLS_HPP
3/*******************************************************************************
4 *
5 * Copyright (c) 2000-2003 Intel Corporation
6 * All rights reserved.
7 * Copyright (C) 2022+ GPL 3 and higher by Ingo Höft, <Ingo@Hoeft-online.de>
8 * Redistribution only with this Copyright remark. Last modified: 2025-06-12
9 *
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions are met:
12 *
13 * * Redistributions of source code must retain the above copyright notice,
14 * this list of conditions and the following disclaimer.
15 * * Redistributions in binary form must reproduce the above copyright notice,
16 * this list of conditions and the following disclaimer in the documentation
17 * and/or other materials provided with the distribution.
18 * * Neither name of Intel Corporation nor the names of its contributors
19 * may be used to endorse or promote products derived from this software
20 * without specific prior written permission.
21 *
22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
25 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR
26 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
27 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
28 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
29 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
30 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
31 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 *
34 ******************************************************************************/
35// Last compare with ./Pupnp source file on 2025-05-23, ver 1.14.20
36
51#include <ixml/ixml.hpp> /* for IXML_Document */
52// #include "upnpconfig.h" /* for UPNP_HAVE_TOOLS */
53
54#ifdef __cplusplus
55extern "C" {
56#endif /* __cplusplus */
57
64PUPNP_Api void UpnpSetMaxJobsTotal(int mjt);
65
73PUPNP_Api const char* UpnpGetErrorMessage(
75 int errorcode);
76
91PUPNP_Api int UpnpResolveURL(
93 const char* BaseURL,
95 const char* RelURL,
97 char* AbsURL);
98
113PUPNP_Api int UpnpResolveURL2(
115 const char* BaseURL,
117 const char* RelURL,
120 char** AbsURL);
121
137 const char* ActionName,
139 const char* ServType,
141 int NumArg,
143 const char* Arg,
145 ...);
146
162 const char* ActionName,
164 const char* ServType,
166 int NumArg,
168 const char* Arg,
170 ...);
171
189PUPNP_Api int UpnpAddToAction(
191 IXML_Document** ActionDoc,
193 const char* ActionName,
195 const char* ServType,
197 const char* ArgName,
199 const char* ArgVal);
200
219PUPNP_Api int UpnpAddToActionResponse(
221 IXML_Document** ActionResponse,
223 const char* ActionName,
225 const char* ServType,
227 const char* ArgName,
229 const char* ArgVal);
230
241 int NumArg,
243 const char* Arg,
245 ...);
246
262PUPNP_Api int UpnpAddToPropertySet(
265 IXML_Document** PropSet,
267 const char* ArgName,
269 const char* ArgVal);
270
271#ifdef __cplusplus
272}
273#endif /* __cplusplus */
274
277#endif /* COMPA_UPNPTOOLS_HPP */
PUPNP_Api IXML_Document * UpnpMakeAction(const char *ActionName, const char *ServType, int NumArg, const char *Arg,...)
Creates an action request packet based on its input parameters (status variable name and value pair).
PUPNP_Api int UpnpAddToAction(IXML_Document **ActionDoc, const char *ActionName, const char *ServType, const char *ArgName, const char *ArgVal)
Adds the argument in the action request.
PUPNP_Api IXML_Document * UpnpMakeActionResponse(const char *ActionName, const char *ServType, int NumArg, const char *Arg,...)
Ceates an action response packet based on its output parameters (status variable name and value pair)...
PUPNP_Api int UpnpAddToPropertySet(IXML_Document **PropSet, const char *ArgName, const char *ArgVal)
Can be used when an application needs to transfer the status of many variables at once.
PUPNP_Api int UpnpResolveURL(const char *BaseURL, const char *RelURL, char *AbsURL)
Combines a base URL and a relative URL into a single absolute URL.
PUPNP_Api int UpnpResolveURL2(const char *BaseURL, const char *RelURL, char **AbsURL)
Combines a base URL and a relative URL into a single absolute URL.
PUPNP_Api IXML_Document * UpnpCreatePropertySet(int NumArg, const char *Arg,...)
Creates a property set message packet.
PUPNP_Api int UpnpAddToActionResponse(IXML_Document **ActionResponse, const char *ActionName, const char *ServType, const char *ArgName, const char *ArgVal)
Creates an action response packet based on its output parameters (status variable name and value pair...
PUPNP_Api void UpnpSetMaxJobsTotal(int mjt)
Sets the maximum number of jobs in the internal thread pool.
PUPNP_Api const char * UpnpGetErrorMessage(int errorcode)
Converts an SDK error code into a string error message suitable for display. The memory returned from...
Data structure representing the DOM Document.
Definition ixml.hpp:155