UPnPsdk 0.1
Universal Plug and Play +, Software Development Kit
 
Loading...
Searching...
No Matches
UpnpActionRequest.cpp
Go to the documentation of this file.
1// Copyright (C) 2022+ GPL 3 and higher by Ingo Höft, <Ingo@Hoeft-online.de>
2// Redistribution only with this Copyright remark. Last modified: 2024-08-17
3// Also Copyright by other contributor as noted below.
10#include <UpnpActionRequest.hpp>
11#include <UPnPsdk/port_sock.hpp>
12
14#include <stdlib.h> /* for calloc(), free() */
15#include <string.h> /* for strlen(), strdup() */
17
32
34 struct s_UpnpActionRequest* p =
35 (s_UpnpActionRequest*)calloc(1, sizeof(struct s_UpnpActionRequest));
36
37 if (!p)
38 return 0;
39
40 /*p->m_ErrCode = 0;*/
41 /*p->m_Socket = 0;*/
46 /*p->m_ActionRequest = 0;*/
47 /*p->m_ActionResult = 0;*/
48 /*p->m_SoapHeader = 0;*/
49 /* memset(&p->m_CtrlPtIPAddr, 0, sizeof (struct sockaddr_storage)); */
50 p->m_Os = UpnpString_new();
51
52 return (UpnpActionRequest*)p;
53}
54
56 struct s_UpnpActionRequest* p = (struct s_UpnpActionRequest*)q;
57
58 if (!p)
59 return;
60
62 p->m_Os = 0;
63 memset(&p->m_CtrlPtIPAddr, 0, sizeof(struct sockaddr_storage));
64 p->m_SoapHeader = 0;
65 p->m_ActionResult = 0;
66 p->m_ActionRequest = 0;
68 p->m_ServiceID = 0;
70 p->m_DevUDN = 0;
72 p->m_ActionName = 0;
74 p->m_ErrStr = 0;
75 p->m_Socket = 0;
76 p->m_ErrCode = 0;
77
78 free(p);
79}
80
110
113
114 if (!p)
115 return 0;
116
118
119 return p;
120}
121
125
127 p->m_ErrCode = n;
128
129 return 1;
130}
131
133 return p->m_Socket;
134}
135
137 p->m_Socket = n;
138
139 return 1;
140}
141
145
147 const char* q = UpnpString_get_String(s);
148
149 return UpnpString_set_String(p->m_ErrStr, q);
150}
151
155
159
163
165 size_t n) {
166 return UpnpString_set_StringN(p->m_ErrStr, s, n);
167}
168
172
176
178 const UpnpString* s) {
179 const char* q = UpnpString_get_String(s);
180
182}
183
187
191
195
197 size_t n) {
198 return UpnpString_set_StringN(p->m_ActionName, s, n);
199}
200
204
208
210 const char* q = UpnpString_get_String(s);
211
212 return UpnpString_set_String(p->m_DevUDN, q);
213}
214
218
222
226
228 size_t n) {
229 return UpnpString_set_StringN(p->m_DevUDN, s, n);
230}
231
235
239
241 const char* q = UpnpString_get_String(s);
242
244}
245
249
253
257
259 size_t n) {
260 return UpnpString_set_StringN(p->m_ServiceID, s, n);
261}
262
266
270
272 IXML_Document* n) {
273 p->m_ActionRequest = n;
274
275 return 1;
276}
277
281
287
291
293 p->m_SoapHeader = n;
294
295 return 1;
296}
297
298const struct sockaddr_storage*
302
304 const struct sockaddr_storage* buf) {
305 p->m_CtrlPtIPAddr = *buf;
306
307 return 1;
308}
309
311 memset(&p->m_CtrlPtIPAddr, 0, sizeof(struct sockaddr_storage));
312}
313
315 return p->m_Os;
316}
317
319 const char* q = UpnpString_get_String(s);
320
321 return UpnpString_set_String(p->m_Os, q);
322}
323
327
331
333 return UpnpString_set_String(p->m_Os, s);
334}
335
337 size_t n) {
338 return UpnpString_set_StringN(p->m_Os, s, n);
339}
340
void UpnpActionRequest_clear_CtrlPtIPAddr(UpnpActionRequest *p)
const UpnpString * UpnpActionRequest_get_ActionName(const UpnpActionRequest *p)
void UpnpActionRequest_clear_ErrStr(UpnpActionRequest *p)
int UpnpActionRequest_set_ServiceID(UpnpActionRequest *p, const UpnpString *s)
int UpnpActionRequest_set_ActionRequest(UpnpActionRequest *p, IXML_Document *n)
int UpnpActionRequest_get_ErrCode(const UpnpActionRequest *p)
int UpnpActionRequest_strncpy_DevUDN(UpnpActionRequest *p, const char *s, size_t n)
void UpnpActionRequest_clear_DevUDN(UpnpActionRequest *p)
IXML_Document * m_SoapHeader
m_SoapHeader
int UpnpActionRequest_strcpy_Os(UpnpActionRequest *p, const char *s)
UpnpString * m_ActionName
m_ActionName
void UpnpActionRequest_clear_ActionName(UpnpActionRequest *p)
int UpnpActionRequest_set_ErrCode(UpnpActionRequest *p, int n)
int UpnpActionRequest_set_CtrlPtIPAddr(UpnpActionRequest *p, const struct sockaddr_storage *buf)
const char * UpnpActionRequest_get_ActionName_cstr(const UpnpActionRequest *p)
int UpnpActionRequest_set_ActionResult(UpnpActionRequest *p, IXML_Document *n)
IXML_Document * m_ActionRequest
m_ActionRequest
int UpnpActionRequest_strncpy_Os(UpnpActionRequest *p, const char *s, size_t n)
int UpnpActionRequest_strcpy_ErrStr(UpnpActionRequest *p, const char *s)
int UpnpActionRequest_strncpy_ServiceID(UpnpActionRequest *p, const char *s, size_t n)
void UpnpActionRequest_clear_ServiceID(UpnpActionRequest *p)
const char * UpnpActionRequest_get_Os_cstr(const UpnpActionRequest *p)
UpnpString * m_ErrStr
m_ErrStr
int UpnpActionRequest_strcpy_ServiceID(UpnpActionRequest *p, const char *s)
int UpnpActionRequest_strncpy_ErrStr(UpnpActionRequest *p, const char *s, size_t n)
size_t UpnpActionRequest_get_ActionName_Length(const UpnpActionRequest *p)
const UpnpString * UpnpActionRequest_get_ServiceID(const UpnpActionRequest *p)
UpnpString * m_DevUDN
m_DevUDN
int UpnpActionRequest_assign(UpnpActionRequest *p, const UpnpActionRequest *q)
const UpnpString * UpnpActionRequest_get_ErrStr(const UpnpActionRequest *p)
IXML_Document * UpnpActionRequest_get_ActionResult(const UpnpActionRequest *p)
int UpnpActionRequest_get_Socket(const UpnpActionRequest *p)
const char * UpnpActionRequest_get_DevUDN_cstr(const UpnpActionRequest *p)
void UpnpActionRequest_delete(UpnpActionRequest *q)
int UpnpActionRequest_set_Socket(UpnpActionRequest *p, int n)
const UpnpString * UpnpActionRequest_get_DevUDN(const UpnpActionRequest *p)
IXML_Document * m_ActionResult
m_ActionResult
int UpnpActionRequest_set_DevUDN(UpnpActionRequest *p, const UpnpString *s)
size_t UpnpActionRequest_get_DevUDN_Length(const UpnpActionRequest *p)
IXML_Document * UpnpActionRequest_get_ActionRequest(const UpnpActionRequest *p)
UpnpString * m_ServiceID
m_ServiceID
const char * UpnpActionRequest_get_ErrStr_cstr(const UpnpActionRequest *p)
int UpnpActionRequest_set_Os(UpnpActionRequest *p, const UpnpString *s)
const struct sockaddr_storage * UpnpActionRequest_get_CtrlPtIPAddr(const UpnpActionRequest *p)
int UpnpActionRequest_set_ActionName(UpnpActionRequest *p, const UpnpString *s)
int UpnpActionRequest_strcpy_DevUDN(UpnpActionRequest *p, const char *s)
int UpnpActionRequest_set_ErrStr(UpnpActionRequest *p, const UpnpString *s)
UpnpActionRequest * UpnpActionRequest_dup(const UpnpActionRequest *q)
UpnpActionRequest * UpnpActionRequest_new()
sockaddr_storage m_CtrlPtIPAddr
m_CtrlPtIPAddr
IXML_Document * UpnpActionRequest_get_SoapHeader(const UpnpActionRequest *p)
int UpnpActionRequest_strncpy_ActionName(UpnpActionRequest *p, const char *s, size_t n)
void UpnpActionRequest_clear_Os(UpnpActionRequest *p)
int UpnpActionRequest_set_SoapHeader(UpnpActionRequest *p, IXML_Document *n)
const UpnpString * UpnpActionRequest_get_Os(const UpnpActionRequest *p)
const char * UpnpActionRequest_get_ServiceID_cstr(const UpnpActionRequest *p)
int UpnpActionRequest_strcpy_ActionName(UpnpActionRequest *p, const char *s)
size_t UpnpActionRequest_get_Os_Length(const UpnpActionRequest *p)
size_t UpnpActionRequest_get_ServiceID_Length(const UpnpActionRequest *p)
size_t UpnpActionRequest_get_ErrStr_Length(const UpnpActionRequest *p)
s_UpnpActionRequest
Header file for UpnpActionRequest methods.
Internal implementation of the class UpnpString.
PUPNP_Api int UpnpString_set_StringN(UpnpString *p, const char *s, size_t n)
Sets the string from a pointer to char using a maximum of N chars.
PUPNP_Api int UpnpString_set_String(UpnpString *p, const char *s)
Sets the string from a pointer to char.
PUPNP_Api size_t UpnpString_get_Length(const UpnpString *p)
Returns the length of the string.
PUPNP_Api UpnpString * UpnpString_new(void)
Constructor.
PUPNP_Api const char * UpnpString_get_String(const UpnpString *p)
Returns the pointer to char.
PUPNP_Api void UpnpString_delete(UpnpString *p)
Destructor.
PUPNP_Api void UpnpString_clear(UpnpString *p)
Clears the string, sets its size to zero.
Data structure representing the DOM Document.
Definition ixml.hpp:155
Specifications to be portable with sockets between different platforms.