Machine Learning Library
stdsoap2.h
Go to the documentation of this file.
1 #ifndef STDSOAP2_H
2 #define STDSOAP2_H
3 
4 /*
5 
6  stdsoap2.h 2.7.0e
7 
8  gSOAP runtime environment.
9 
10  gSOAP XML Web services tools
11  Copyright (C) 2000-2004, Robert van Engelen, Genivia, Inc., All Rights Reserved.
12 
13  Contributors:
14 
15  Wind River Systems, Inc., for the following additions (marked WR[...]) :
16  - vxWorks compatible
17  - Support for IPv6.
18 
19  --------------------------------------------------------------------------------
20 
21  This software is released under one of the following three licenses:
22  GPL, the gSOAP public license, or Genivia's license for commercial use.
23 
24  --------------------------------------------------------------------------------
25  gSOAP public license.
26 
27  The contents of this file are subject to the gSOAP Public License Version 1.3
28  (the "License"); you may not use this file except in compliance with the
29  License. You may obtain a copy of the License at
30  http://www.cs.fsu.edu/~engelen/soaplicense.html
31  Software distributed under the License is distributed on an "AS IS" basis,
32  WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
33  for the specific language governing rights and limitations under the License.
34 
35  The Initial Developer of the Original Code is Robert A. van Engelen.
36  Copyright (C) 2000-2004, Robert van Engelen, Genivia, Inc., All Rights Reserved.
37  --------------------------------------------------------------------------------
38  GPL license.
39 
40  This program is free software; you can redistribute it and/or modify it under
41  the terms of the GNU General Public License as published by the Free Software
42  Foundation; either version 2 of the License, or (at your option) any later
43  version.
44 
45  This program is distributed in the hope that it will be useful, but WITHOUT ANY
46  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
47  PARTICULAR PURPOSE. See the GNU General Public License for more details.
48 
49  You should have received a copy of the GNU General Public License along with
50  this program; if not, write to the Free Software Foundation, Inc., 59 Temple
51  Place, Suite 330, Boston, MA 02111-1307 USA
52 
53  Author contact information:
54  engelen@genivia.com / engelen@acm.org
55  --------------------------------------------------------------------------------
56  A commercial use license is available from Genivia, Inc., contact@genivia.com
57  --------------------------------------------------------------------------------
58 */
59 
60 #ifdef WITH_SOAPDEFS_H
61 # include "soapdefs.h" /* include user-defined stuff */
62 #endif
63 
64 #ifndef _THREAD_SAFE
65 # define _THREAD_SAFE
66 #endif
67 
68 #ifndef OPENSERVER
69 # ifndef _REENTRANT
70 # define _REENTRANT
71 # endif
72 #endif
73 
74 #ifndef SOAP_BEGIN_NAMESPACE
75 # define SOAP_BEGIN_NAMESPACE(name)
76 #endif
77 
78 #ifndef SOAP_END_NAMESPACE
79 # define SOAP_END_NAMESPACE(name)
80 #endif
81 
82 #ifndef SOAP_FMAC1 /* stdsoap2.h declaration macro */
83 # define SOAP_FMAC1
84 #endif
85 
86 #ifndef SOAP_FMAC2 /* stdsoap2.h declaration macro */
87 # define SOAP_FMAC2
88 #endif
89 
90 #ifndef SOAP_FMAC3 /* (de)serializer declaration macro */
91 # define SOAP_FMAC3
92 #endif
93 
94 #ifndef SOAP_FMAC3S /* string converter for (de)serializer declaration macro */
95 # define SOAP_FMAC3S SOAP_FMAC3
96 #endif
97 
98 #ifndef SOAP_FMAC4 /* (de)serializer declaration macro */
99 # define SOAP_FMAC4
100 #endif
101 
102 #ifndef SOAP_FMAC4S /* string converter for (de)serializer declaration macro */
103 # define SOAP_FMAC4S SOAP_FMAC4
104 #endif
105 
106 #ifndef SOAP_FMAC5 /* stub/skeleton declaration macro */
107 # define SOAP_FMAC5
108 #endif
109 
110 #ifndef SOAP_FMAC6 /* stub/skeleton declaration macro */
111 # define SOAP_FMAC6
112 #endif
113 
114 #ifndef SOAP_CMAC /* class declaration macro */
115 # define SOAP_CMAC
116 #endif
117 
118 #ifndef SOAP_NMAC /* namespace table declaration macro */
119 # define SOAP_NMAC
120 #endif
121 
122 #ifndef SOAP_SOURCE_STAMP
123 # define SOAP_SOURCE_STAMP(str)
124 #endif
125 
126 #ifdef WITH_LEANER
127 # ifndef WITH_LEAN
128 # define WITH_LEAN
129 # endif
130 #endif
131 
132 #ifdef WITH_LEAN
133 # ifdef WITH_COOKIES
134 # error "Cannot build WITH_LEAN code WITH_COOKIES enabled"
135 # endif
136 #endif
137 
138 #ifndef STDSOAP_H
139 #define STDSOAP_H
140 
141 #if defined(__vxworks) || defined(__VXWORKS__)
142 # define VXWORKS
143 #endif
144 
145 #ifdef _WIN32
146 # ifndef WIN32
147 # define WIN32
148 # endif
149 #endif
150 
151 #ifdef UNDER_CE
152 # ifndef WIN32
153 # define WIN32
154 # endif
155 #endif
156 
157 #ifdef __BORLANDC__
158 # ifdef __WIN32__
159 # ifndef WIN32
160 # define WIN32
161 # endif
162 # endif
163 #endif
164 
165 #ifdef __CYGWIN__
166 # ifndef CYGWIN
167 # define CYGWIN
168 # endif
169 #endif
170 
171 #ifdef __SYMBIAN32__
172 # define SYMBIAN
173 # undef WIN32
174 #endif
175 
176 #if defined(__palmos__) || defined(PALM_GCC) || defined(__PALMOS_TRAPS__)
177 # define PALM
178 #endif
179 
180 #ifdef __hpux
181 # define HP_UX
182 #endif
183 
184 #ifdef __alpha
185 # define TRU64
186 #endif
187 
188 #ifdef __MVS__
189 # define OS390
190 #endif
191 
192 #ifdef _AIX
193 # define __socklen_t_defined
194 #endif
195 
196 #ifdef HAVE_CONFIG_H
197 # include "config.h"
198 #else
199 # if defined(UNDER_CE)
200 # define WITH_LEAN
201 # define HAVE_SSCANF
202 # elif defined(WIN32)
203 # define HAVE_STRRCHR
204 # define HAVE_STRTOD
205 # define HAVE_SSCANF
206 # define HAVE_STRTOL
207 # define HAVE_STRTOUL
208 # define HAVE_SYS_TIMEB_H
209 # define HAVE_FTIME
210 # define HAVE_WCTOMB
211 # define HAVE_MBTOWC
212 # elif defined(CYGWIN)
213 # define HAVE_STRRCHR
214 # define HAVE_STRTOD
215 # define HAVE_SSCANF
216 # define HAVE_STRTOL
217 # define HAVE_STRTOUL
218 # define HAVE_SYS_TIMEB_H
219 # define HAVE_FTIME
220 # define HAVE_RAND_R
221 # define HAVE_GMTIME_R
222 # define HAVE_LOCALTIME_R
223 # define HAVE_WCTOMB
224 # define HAVE_MBTOWC
225 # elif defined(__APPLE__)
226 # define HAVE_STRRCHR
227 # define HAVE_STRTOD
228 # define HAVE_SSCANF
229 # define HAVE_STRTOL
230 # define HAVE_STRTOUL
231 # define HAVE_RAND_R
232 # define HAVE_GMTIME_R
233 # define HAVE_LOCALTIME_R
234 # define HAVE_TIMEGM
235 # define HAVE_WCTOMB
236 # define HAVE_MBTOWC
237 # elif defined(_AIXVERSION_431)
238 # define HAVE_STRRCHR
239 # define HAVE_STRTOD
240 # define HAVE_SSCANF
241 # define HAVE_STRTOL
242 # define HAVE_STRTOUL
243 # define HAVE_SYS_TIMEB_H
244 # define HAVE_FTIME
245 # define HAVE_RAND_R
246 # define HAVE_GMTIME_R
247 # define HAVE_LOCALTIME_R
248 # define HAVE_WCTOMB
249 # define HAVE_MBTOWC
250 # elif defined(HP_UX)
251 # define HAVE_STRRCHR
252 # define HAVE_STRTOD
253 # define HAVE_SSCANF
254 # define HAVE_STRTOL
255 # define HAVE_STRTOUL
256 # define HAVE_SYS_TIMEB_H
257 # define HAVE_FTIME
258 # define HAVE_RAND_R
259 # define HAVE_GMTIME_R
260 # define HAVE_LOCALTIME_R
261 # define HAVE_WCTOMB
262 # define HAVE_MBTOWC
263 # elif defined(FREEBSD)
264 # define HAVE_STRRCHR
265 # define HAVE_STRTOD
266 # define HAVE_SSCANF
267 # define HAVE_STRTOL
268 # define HAVE_STRTOUL
269 # define HAVE_GETTIMEOFDAY
270 # define HAVE_RAND_R
271 # define HAVE_GMTIME_R
272 # define HAVE_LOCALTIME_R
273 # define HAVE_WCTOMB
274 # define HAVE_MBTOWC
275 # elif defined(__VMS)
276 # define HAVE_STRRCHR
277 # define HAVE_STRTOD
278 # define HAVE_SSCANF
279 # define HAVE_STRTOL
280 # define HAVE_STRTOUL
281 # define HAVE_SYS_TIMEB_H
282 # define HAVE_FTIME
283 # define HAVE_RAND_R
284 # define HAVE_GMTIME_R
285 # define HAVE_LOCALTIME_R
286 # define HAVE_WCTOMB
287 # define HAVE_MBTOWC
288 # elif defined(__GLIBC__)
289 # define HAVE_STRRCHR
290 # define HAVE_STRTOD
291 # define HAVE_SSCANF
292 # define HAVE_STRTOL
293 # define HAVE_STRTOUL
294 # define HAVE_SYS_TIMEB_H
295 # define HAVE_FTIME
296 # define HAVE_RAND_R
297 # define HAVE_GMTIME_R
298 # define HAVE_LOCALTIME_R
299 # define HAVE_TIMEGM
300 # define HAVE_WCTOMB
301 # define HAVE_MBTOWC
302 # define HAVE_ISNAN
303 # elif defined(TRU64)
304 # define HAVE_STRRCHR
305 # define HAVE_STRTOD
306 # define HAVE_SSCANF
307 # define HAVE_STRTOL
308 # define HAVE_STRTOUL
309 # define HAVE_GETTIMEOFDAY
310 # define HAVE_SYS_TIMEB_H
311 # define HAVE_RAND_R
312 # define HAVE_GMTIME_R
313 # define HAVE_LOCALTIME_R
314 # define __USE_STD_IOSTREAM
315 # define HAVE_WCTOMB
316 # define HAVE_MBTOWC
317 # elif defined(MAC_CARBON)
318 # define WITH_NOIO
319 # define HAVE_STRRCHR
320 # define HAVE_STRTOD
321 # define HAVE_SSCANF
322 # define HAVE_STRTOL
323 # define HAVE_STRTOUL
324 # define HAVE_FTIME
325 # define HAVE_RAND_R
326 # define HAVE_GETHOSTBYNAME_R
327 # define HAVE_GMTIME_R
328 # define HAVE_LOCALTIME_R
329 # define HAVE_WCTOMB
330 # define HAVE_MBTOWC
331 # elif defined(PALM)
332 # define WITH_LEAN
333 # define HAVE_STRTOD /* strtod() is defined in palmFunctions.h */
334 # include <stdlib.h> /* Needs to be included before unix headers */
335 # include <sys_types.h>
336 # define IGNORE_STDIO_STUBS
337 # include <StdIOPalm.h>
338 # define O_NONBLOCK FNONBIO
339 # include <sys_socket.h>
340 # include <time.h>
341 # include "palmFunctions.h"
342 # elif defined(SYMBIAN)
343 # define WITH_LEAN
344 # define WITH_NONAMESPACES
345 # define HAVE_STRTOD /* use STRTOD since sscanf doesn't seem to work */
346 # include <e32def.h>
347 # include <sys/ioctl.h>
348 # elif defined(VXWORKS)
349 # define HAVE_STRRCHR
350 # define HAVE_STRTOD
351 # define HAVE_SSCANF
352 # define HAVE_STRTOL
353 # define HAVE_STRTOUL
354 # define HAVE_RAND_R
355 # define HAVE_PGMTIME_R
356 # define HAVE_PLOCALTIME_R
357 # define HAVE_MKTIME
358 # elif defined(OS390)
359 # define HAVE_STRRCHR
360 # define HAVE_STRTOD
361 # define HAVE_SSCANF
362 # define HAVE_STRTOL
363 # define HAVE_STRTOUL
364 # define HAVE_SYS_TIMEB_H
365 # define HAVE_FTIME
366 # define HAVE_RAND_R
367 # define HAVE_GMTIME_R
368 # define HAVE_LOCALTIME_R
369 # define HAVE_WCTOMB
370 # define HAVE_MB
371 # else
372 /* Default asumptions on supported functions */
373 # define HAVE_STRRCHR
374 # define HAVE_STRTOD
375 # define HAVE_SSCANF
376 # define HAVE_STRTOL
377 # define HAVE_STRTOUL
378 # define HAVE_SYS_TIMEB_H
379 # define HAVE_FTIME
380 # define HAVE_RAND_R
381 # define HAVE_GETHOSTBYNAME_R
382 # define HAVE_GMTIME_R
383 # define HAVE_LOCALTIME_R
384 # define HAVE_WCTOMB
385 # define HAVE_MBTOWC
386 # endif
387 #endif
388 
389 #if defined(TRU64)
390 # define SOAP_LONG_FORMAT "%ld"
391 # define SOAP_ULONG_FORMAT "%lu"
392 #elif defined(WIN32)
393 # define SOAP_LONG_FORMAT "%I64d"
394 # define SOAP_ULONG_FORMAT "%I64u"
395 #endif
396 
397 #ifndef SOAP_LONG_FORMAT
398 # define SOAP_LONG_FORMAT "%lld" /* printf format for 64 bit ints */
399 #endif
400 
401 #ifndef SOAP_ULONG_FORMAT
402 # define SOAP_ULONG_FORMAT "%llu" /* printf format for unsigned 64 bit ints */
403 #endif
404 
405 #ifndef SOAP_MALLOC /* use libc malloc */
406 # define SOAP_MALLOC(n) malloc(n)
407 #endif
408 
409 #ifndef SOAP_FREE /* use libc free */
410 # define SOAP_FREE(p) free(p)
411 #endif
412 
413 #include <stdlib.h>
414 
415 #ifndef PALM
416 # include <stdio.h>
417 # include <string.h>
418 #endif
419 
420 #include <ctype.h>
421 #include <limits.h>
422 
423 #if defined(__cplusplus) && !defined(WITH_LEAN)
424 # include <string>
425 # include <iostream>
426 using namespace std;
427 #endif
428 
429 #ifndef UNDER_CE
430 # ifndef PALM
431 # ifndef WITH_NOIO
432 # include <errno.h>
433 # include <sys/types.h>
434 # endif
435 # ifndef WITH_LEAN
436 # ifdef HAVE_SYS_TIMEB_H
437 # include <sys/timeb.h> /* for ftime() */
438 # endif
439 # include <time.h>
440 # endif
441 # endif
442 #endif
443 
444 #ifdef OPENSERVER
445 # include <sys/socket.h>
446 # include <sys/stream.h>
447 # include <sys/protosw.h>
448 extern int h_errno;
449 #endif
450 
451 #ifndef WITH_NOIO
452 # ifndef WIN32
453 # ifndef PALM
454 # include <sys/socket.h>
455 # ifdef VXWORKS
456 # include <sockLib.h>
457 # endif
458 # ifndef VXWORKS
459 # ifndef SYMBIAN
460 # include <strings.h>
461 # endif
462 # endif
463 # ifdef SUN_OS
464 # include <sys/stream.h> /* SUN */
465 # include <sys/socketvar.h> /* SUN < 2.8 (?) */
466 # endif
467 # ifdef VXWORKS
468 # include <sys/times.h>
469 # else
470 # include <sys/time.h>
471 # endif
472 # include <netinet/in.h>
473 # ifdef OS390
474 # include <netinet/tcp_var.h>
475 # else
476 # include <netinet/tcp.h> /* TCP_NODELAY */
477 # endif
478 # include <arpa/inet.h>
479 # endif
480 # endif
481 #endif
482 
483 #ifdef WITH_FASTCGI
484 # include <fcgi_stdio.h>
485 #endif
486 
487 #ifdef WITH_OPENSSL
488 # define OPENSSL_NO_KRB5
489 # include <openssl/ssl.h>
490 # include <openssl/err.h>
491 # include <openssl/rand.h>
492 # ifndef ALLOW_OLD_VERSIONS
493 # if (OPENSSL_VERSION_NUMBER < 0x00905100L)
494 # error "Must use OpenSSL 0.9.6 or later"
495 # endif
496 # endif
497 #endif
498 
499 #ifdef WITH_GZIP
500 # ifndef WITH_ZLIB
501 # define WITH_ZLIB
502 # endif
503 #endif
504 
505 #ifdef WITH_CASEINSENSITIVETAGS
506 # define SOAP_STRCMP soap_tag_cmp /* case insensitve XML element/attribute names */
507 #else
508 # define SOAP_STRCMP strcmp /* case sensitive XML element/attribute names */
509 #endif
510 
511 #ifdef WITH_ZLIB
512 # include <zlib.h>
513 #endif
514 
515 #ifndef PALM
516 # include <math.h> /* for isnan() */
517 #endif
518 
519 /* #define DEBUG */ /* Uncomment to debug sending (in file SENT.log) receiving (in file RECV.log) and messages (in file TEST.log) */
520 
521 #ifdef __cplusplus
522 extern "C" {
523 #endif
524 
525 #define soap_get0(soap) (((soap)->bufidx>=(soap)->buflen && soap_recv(soap)) ? EOF : (unsigned char)(soap)->buf[(soap)->bufidx])
526 #define soap_get1(soap) (((soap)->bufidx>=(soap)->buflen && soap_recv(soap)) ? EOF : (unsigned char)(soap)->buf[(soap)->bufidx++])
527 #define soap_revget1(soap) ((soap)->bufidx--)
528 #define soap_unget(soap, c) ((soap)->ahead = c)
529 #define soap_register_plugin(soap, plugin) soap_register_plugin_arg(soap, plugin, NULL)
530 #define soap_imode(soap, n) ((soap)->mode = (soap)->imode = (n))
531 #define soap_set_imode(soap, n) ((soap)->mode = (soap)->imode |= (n))
532 #define soap_clr_imode(soap, n) ((soap)->mode = (soap)->imode &= ~(n))
533 #define soap_omode(soap, n) ((soap)->mode = (soap)->omode = (n))
534 #define soap_set_omode(soap, n) ((soap)->mode = (soap)->omode |= (n))
535 #define soap_clr_omode(soap, n) ((soap)->mode = (soap)->omode &= ~(n))
536 #define soap_destroy(soap) soap_delete((soap), NULL)
537 
538 #ifdef WIN32
539 # ifndef UNDER_CE
540 # include <io.h>
541 # include <fcntl.h>
542 # endif
543 # include <winsock.h>
544 /* # include <winsock2.h> */ /* Alternative: use winsock2 (not available with eVC) */
545 /* WR[ */
546 # ifdef WITH_IPV6
547 # include <ws2tcpip.h>
548 # include <wspiapi.h>
549 # endif
550 #else
551 # ifdef VXWORKS
552 # include <hostLib.h>
553 # include <ioctl.h>
554 # include <ioLib.h>
555 # endif
556 /* ]WR */
557 # ifndef WITH_NOIO
558 # ifndef PALM
559 # include <netdb.h>
560 # include <netinet/in.h>
561 # include <unistd.h>
562 # include <fcntl.h>
563 # endif
564 # endif
565 #endif
566 
567 #ifdef WIN32
568 # define SOAP_SOCKET SOCKET
569 #else
570 # define SOAP_SOCKET int
571 # define closesocket(n) close(n)
572 #endif
573 
574 #define SOAP_INVALID_SOCKET (-1)
575 #define soap_valid_socket(n) ((n) != SOAP_INVALID_SOCKET)
576 
577 #if defined(SYMBIAN)
578 # define LONG64 long
579 # define ULONG64 unsigned LONG64
580 #elif !defined(WIN32)
581 # ifndef LONG64
582 # define LONG64 long long
583 # define ULONG64 unsigned LONG64
584 # endif
585 #elif defined(UNDER_CE)
586 # define LONG64 __int64
587 # define ULONG64 unsigned LONG64
588 #elif defined(__BORLANDC__)
589 # define LONG64 __int64
590 # define ULONG64 unsigned LONG64
591 #endif
592 
593 #if defined(WIN32)
594 # define soap_int32 __int32
595 #elif defined(SYMBIAN)
596 # define soap_int32 long
597 #elif defined(PALM)
598 # define soap_int32 Int32
599 #else
600 # define soap_int32 int32_t
601 #endif
602 
603 /* UCS-4 requires 32 bits (0-7FFFFFFF, the sign bit is used by gSOAP to distinguish XML entities) */
605 
606 #ifdef WIN32
607 # define SOAP_EINTR WSAEINTR
608 # define SOAP_EAGAIN WSAEWOULDBLOCK
609 # define SOAP_EWOULDBLOCK WSAEWOULDBLOCK
610 # define SOAP_EINPROGRESS WSAEINPROGRESS
611 #else
612 # define SOAP_EINTR EINTR
613 # define SOAP_EAGAIN EAGAIN
614 # ifdef SYMBIAN
615 # define SOAP_EWOULDBLOCK 9898
616 # define SOAP_EINPROGRESS 9899
617 # else
618 # define SOAP_EWOULDBLOCK EWOULDBLOCK
619 # define SOAP_EINPROGRESS EINPROGRESS
620 # endif
621 #endif
622 
623 #ifdef WIN32
624 # ifdef UNDER_CE
625 # define soap_errno GetLastError()
626 # define soap_socket_errno GetLastError()
627 # else
628 # define soap_errno GetLastError()
629 # define soap_socket_errno WSAGetLastError()
630 # endif
631 #else
632 # ifndef WITH_NOIO
633 # define soap_errno errno
634 # define soap_socket_errno errno
635 # else
636 # define soap_errno 0
637 # define soap_socket_errno 0
638 # endif
639 #endif
640 
641 #ifndef SOAP_BUFLEN
642 # ifndef WITH_LEAN
643 # define SOAP_BUFLEN (32768) /* buffer length for socket packets, also used by gethostbyname_r so don't make this too small */
644 # else
645 # define SOAP_BUFLEN (2048)
646 # endif
647 #endif
648 #ifndef SOAP_LABLEN
649 # ifndef WITH_LEAN
650 # define SOAP_LABLEN (256) /* initial look-aside buffer length */
651 # else
652 # define SOAP_LABLEN (64)
653 # endif
654 #endif
655 #ifndef SOAP_PTRHASH
656 # ifndef WITH_LEAN
657 # define SOAP_PTRHASH (1024) /* size of pointer analysis hash table (must be power of 2) */
658 # else
659 # define SOAP_PTRHASH (16)
660 # endif
661 #endif
662 #ifndef SOAP_IDHASH
663 # ifndef WITH_LEAN
664 # define SOAP_IDHASH (1999) /* prime size of hash table for parsed id/ref */
665 # else
666 # define SOAP_IDHASH (199)
667 # endif
668 #endif
669 #ifndef SOAP_BLKLEN
670 # define SOAP_BLKLEN (256) /* size of blocks to collect long strings and XML attributes */
671 #endif
672 #ifndef SOAP_TAGLEN
673 # define SOAP_TAGLEN (256) /* maximum length of XML element tag/attribute name + 1 */
674 #endif
675 #ifndef SOAP_HDRLEN
676 # ifndef WITH_LEAN
677 # define SOAP_HDRLEN (8192) /* maximum length of HTTP header line (must be >4096 to read cookies) */
678 # else
679 # define SOAP_HDRLEN (1024)
680 # endif
681 #endif
682 #ifndef SOAP_MAXDIMS
683 # define SOAP_MAXDIMS (16) /* maximum array dimensions (array nestings) must be less than 64 to protect soap->tmpbuf */
684 #endif
685 
686 #ifndef SOAP_MAXLOGS
687 # define SOAP_MAXLOGS (3) /* max number of debug logs per struct soap environment */
688 # define SOAP_INDEX_RECV (0)
689 # define SOAP_INDEX_SENT (1)
690 # define SOAP_INDEX_TEST (2)
691 #endif
692 
693 #ifndef SOAP_MAXKEEPALIVE
694 # define SOAP_MAXKEEPALIVE (100) /* max iterations to keep server connection alive */
695 #endif
696 
697 #ifndef SOAP_MAXARRAYSIZE
698 # define SOAP_MAXARRAYSIZE (100000) /* "trusted" max size of inbound SOAP array for compound array allocation */
699 #endif
700 
701 #ifdef VXWORKS
702 # ifdef __INCmathh
703 # include <private/mathP.h>
704 # ifndef HAVE_ISNAN
705 # define HAVE_ISNAN
706 # endif
707 # define soap_isnan(num) isNan(num)
708 # endif
709 #endif
710 
711 #ifdef WIN32
712 # include <float.h>
713 # ifndef HAVE_ISNAN
714 # define HAVE_ISNAN
715 # endif
716 # define soap_isnan(num) _isnan(num)
717 #endif
718 
719 #ifdef SUN_OS
720 # define soap_isnan(n) isnan(n)
721 #endif
722 
723 #if !defined(HAVE_ISNAN) && (defined(_MATH_H) || defined(_MATH_INCLUDED))
724 # define HAVE_ISNAN
725 #endif
726 
727 #ifndef soap_isnan
728 # ifdef HAVE_ISNAN
729 # define soap_isnan(n) isnan(n)
730 # else
731 # define soap_isnan(_) (0)
732 # endif
733 #endif
734 
735  extern const struct soap_double_nan { unsigned int n1, n2; } soap_double_nan;
736 
737 #ifdef VXWORKS
738 # ifndef FLT_MAX
739 # define FLT_MAX _ARCH_FLT_MAX
740 # endif
741 # ifndef DBL_MAX
742 # define DBL_MAX _ARCH_DBL_MAX
743 # endif
744 #endif
745 
746 #ifndef FLT_NAN
747 # ifdef HAVE_ISNAN
748 # define FLT_NAN (*(float*)&soap_double_nan)
749 # else
750 # define FLT_NAN (0.0)
751 # endif
752 #endif
753 
754 #ifndef FLT_PINFTY
755 # ifdef FLT_MAX
756 # define FLT_PINFTY FLT_MAX
757 # else
758 # ifdef HUGE_VAL
759 # define FLT_PINFTY (float)HUGE_VAL
760 # else
761 # ifdef FLOAT_MAX
762 # define FLT_PINFTY FLOAT_MAX
763 # else
764 # define FLT_PINFTY (3.40282347e+38)
765 # endif
766 # endif
767 # endif
768 #endif
769 
770 #ifndef FLT_NINFTY
771 # define FLT_NINFTY (-FLT_PINFTY)
772 #endif
773 
774 #ifndef DBL_NAN
775 # ifdef HAVE_ISNAN
776 # define DBL_NAN (*(double*)&soap_double_nan)
777 # else
778 # define DBL_NAN (0.0)
779 # endif
780 #endif
781 
782 #ifndef DBL_PINFTY
783 # ifdef DBL_MAX
784 # define DBL_PINFTY DBL_MAX
785 # else
786 # ifdef HUGE_VAL
787 # define DBL_PINFTY (double)HUGE_VAL
788 # else
789 # ifdef DOUBLE_MAX
790 # define DBL_PINFTY DOUBLE_MAX
791 # else
792 # define DBL_PINFTY (1.7976931348623157e+308)
793 # endif
794 # endif
795 # endif
796 #endif
797 
798 #ifndef DBL_NINFTY
799 # define DBL_NINFTY (-DBL_PINFTY)
800 #endif
801 
802 #define soap_ispinfd(n) ((n) >= DBL_PINFTY)
803 #define soap_ispinff(n) ((n) >= FLT_PINFTY)
804 #define soap_isninfd(n) ((n) <= DBL_NINFTY)
805 #define soap_isninff(n) ((n) <= FLT_NINFTY)
806 
807 /* gSOAP error codes */
808 
809 #define SOAP_EOF EOF
810 #define SOAP_ERR EOF
811 #define SOAP_OK 0
812 #define SOAP_CLI_FAULT 1
813 #define SOAP_SVR_FAULT 2
814 #define SOAP_TAG_MISMATCH 3
815 #define SOAP_TYPE 4
816 #define SOAP_SYNTAX_ERROR 5
817 #define SOAP_NO_TAG 6
818 #define SOAP_IOB 7
819 #define SOAP_MUSTUNDERSTAND 8
820 #define SOAP_NAMESPACE 9
821 /* #define SOAP_OBJ_MISMATCH 10 obsolete */
822 #define SOAP_FATAL_ERROR 11
823 #define SOAP_FAULT 12
824 #define SOAP_NO_METHOD 13
825 #define SOAP_GET_METHOD 14
826 #define SOAP_EOM 15
827 #define SOAP_NULL 16
828 #define SOAP_MULTI_ID 17
829 #define SOAP_MISSING_ID 18
830 #define SOAP_HREF 19
831 #define SOAP_TCP_ERROR 20
832 #define SOAP_HTTP_ERROR 21
833 #define SOAP_SSL_ERROR 22
834 #define SOAP_ZLIB_ERROR 23
835 #define SOAP_DIME_ERROR 24
836 #define SOAP_DIME_HREF 25
837 #define SOAP_DIME_MISMATCH 26
838 #define SOAP_DIME_END 27
839 #define SOAP_MIME_ERROR 28
840 #define SOAP_VERSIONMISMATCH 29
841 #define SOAP_PLUGIN_ERROR 30
842 #define SOAP_DATAENCODINGUNKNOWN 31
843 #define SOAP_REQUIRED 32
844 #define SOAP_PROHIBITED 33
845 #define SOAP_OCCURS 34
846 #define SOAP_LENGTH 35
847 
848 #define soap_xml_error_check(e) ((e) == SOAP_TAG_MISMATCH || (e) == SOAP_TAG_END || (e) == SOAP_SYNTAX_ERROR || (e) == SOAP_NAMESPACE || (e) == SOAP_MULTI_ID || (e) == SOAP_MISSING_ID || (e) == SOAP_REQUIRED || (e) == SOAP_PROHIBITED || (e) == SOAP_OCCURS || (e) == SOAP_LENGTH || (e) == SOAP_NULL || (e) == SOAP_HREF)
849 #define soap_soap_error_check(e) ((e) == SOAP_CLI_FAULT || (e) == SOAP_SVR_FAULT || (e) == SOAP_VERSIONMISMATCH || (e) == SOAP_MUSTUNDERSTAND || (e) == SOAP_FAULT || (e) == SOAP_NO_METHOD)
850 #define soap_tcp_error_check(e) ((e) == SOAP_EOF || (e) == SOAP_TCP_ERROR)
851 #define soap_ssl_error_check(e) ((e) == SOAP_SSL_ERROR)
852 #define soap_zlib_error_check(e) ((e) == SOAP_ZLIB_ERROR)
853 #define soap_mime_error_check(e) ((e) == SOAP_MIME_ERROR)
854 #define soap_dime_error_check(e) ((e) == SOAP_DIME_ERROR || (e) == SOAP_DIME_MISMATCH)
855 #define soap_http_error_check(e) ((e) == SOAP_HTTP_ERROR || (e) == SOAP_GET_METHOD || ((e) >= 100 && (e) < 600))
856 
857 /* gSOAP HTTP response status codes 100 to 600 are reserved */
858 
859 /* Special gSOAP HTTP response status codes */
860 
861 #define SOAP_STOP 1000 /* No HTTP response */
862 #define SOAP_HTML 1001 /* Custom HTML response */
863 #define SOAP_FILE 1002 /* Custom file-based response */
864 
865 /* gSOAP HTTP request status codes */
866 
867 #define SOAP_POST 1003
868 #define SOAP_GET 1104
869 
870  /* gSOAP DIME */
871 
872 #define SOAP_DIME_CF 0x01
873 #define SOAP_DIME_ME 0x02
874 #define SOAP_DIME_MB 0x04
875 #define SOAP_DIME_VERSION 0x08 /* DIME version 1 */
876 #define SOAP_DIME_MEDIA 0x10
877 #define SOAP_DIME_ABSURI 0x20
878 
879 /* gSOAP ZLIB */
880 
881 #define SOAP_ZLIB_NONE 0x00
882 #define SOAP_ZLIB_DEFLATE 0x01
883 #define SOAP_ZLIB_INFLATE 0x02
884 #define SOAP_ZLIB_GZIP 0x02
885 
886 /* gSOAP transport, connection, and content encoding modes */
887 
889 
890 #define SOAP_IO 0x00000003 /* IO mask */
891 #define SOAP_IO_FLUSH 0x00000000 /* flush output immediately, no buffering */
892 #define SOAP_IO_BUFFER 0x00000001 /* buffer output in packets of size SOAP_BUFLEN */
893 #define SOAP_IO_STORE 0x00000002 /* store entire output to determine length for transport */
894 #define SOAP_IO_CHUNK 0x00000003 /* use HTTP chunked transfer AND buffer packets */
895 
896 #define SOAP_IO_LENGTH 0x00000004
897 #define SOAP_IO_KEEPALIVE 0x00000008
898 
899 #define SOAP_ENC_LATIN 0x00800010 /* iso-8859-1 encoding */
900 #define SOAP_ENC_XML 0x00000020 /* plain XML encoding, no HTTP header */
901 #define SOAP_ENC_DIME 0x00000040
902 #define SOAP_ENC_MIME 0x00000080
903 #define SOAP_ENC_ZLIB 0x00000100
904 #define SOAP_ENC_SSL 0x00000200
905 
906 #define SOAP_ENC 0x00000FFF /* IO and ENC mask */
907 
908 #define SOAP_XML_STRICT 0x00001000 /* strict validation */
909 #define SOAP_XML_CANONICAL 0x00002000 /* C14N canonical XML */
910 #define SOAP_XML_TREE 0x00004000
911 #define SOAP_XML_GRAPH 0x00008000
912 #define SOAP_XML_NIL 0x00010000
913 #define SOAP_XML_DOM 0x00020000
914 #define SOAP_XML_SEC 0x00040000 /* reserved for WS security */
915 
916 #define SOAP_C_NOIOB 0x00100000
917 #define SOAP_C_UTFSTRING 0x00200000
918 #define SOAP_C_MBSTRING 0x00400000
919 
920 #define SOAP_DOM_TREE 0x01000000
921 #define SOAP_DOM_NODE 0x02000000
922 
923 #define SOAP_IO_DEFAULT SOAP_IO_FLUSH
924 
925 /* SSL client/server authentication settings */
926 
927 #define SOAP_SSL_NO_AUTHENTICATION 0x00 /* for testing purposes */
928 #define SOAP_SSL_REQUIRE_SERVER_AUTHENTICATION 0x01 /* client requires server to authenticate */
929 #define SOAP_SSL_REQUIRE_CLIENT_AUTHENTICATION 0x02 /* server requires client to authenticate */
930 
931 #define SOAP_SSL_DEFAULT SOAP_SSL_REQUIRE_SERVER_AUTHENTICATION
932 
933 /* */
934 
935 #define SOAP_BEGIN 0
936 #define SOAP_IN_ENVELOPE 2
937 #define SOAP_IN_HEADER 3
938 #define SOAP_END_HEADER 4
939 #define SOAP_IN_BODY 5
940 #define SOAP_END_BODY 6
941 #define SOAP_END_ENVELOPE 7
942 #define SOAP_END 8
943 
944 /* DEBUG macros */
945 
946 #ifndef WITH_LEAN
947 # ifdef DEBUG
948 # ifndef SOAP_DEBUG
949 # define SOAP_DEBUG
950 # endif
951 # endif
952 #endif
953 
954 #ifdef SOAP_DEBUG
955 # ifndef SOAP_MESSAGE
956 # define SOAP_MESSAGE fprintf
957 # endif
958 # ifndef DBGLOG
959 # define DBGLOG(DBGFILE, CMD) \
960  { if (soap) \
961  { if (!soap->fdebug[SOAP_INDEX_##DBGFILE]) \
962  soap_open_logfile(soap, SOAP_INDEX_##DBGFILE); \
963  if (soap->fdebug[SOAP_INDEX_##DBGFILE]) \
964  { FILE *fdebug = soap->fdebug[SOAP_INDEX_##DBGFILE]; \
965  CMD; \
966  fflush(fdebug); \
967  } \
968  } \
969  }
970 # endif
971 # ifndef DBGMSG
972 # define DBGMSG(DBGFILE, MSG, LEN) \
973  { if (soap) \
974  { if (!soap->fdebug[SOAP_INDEX_##DBGFILE]) \
975  soap_open_logfile(soap, SOAP_INDEX_##DBGFILE); \
976  if (soap->fdebug[SOAP_INDEX_##DBGFILE]) \
977  { fwrite((MSG), 1, (LEN), soap->fdebug[SOAP_INDEX_##DBGFILE]); \
978  fflush(soap->fdebug[SOAP_INDEX_##DBGFILE]); \
979  } \
980  } \
981  }
982 # endif
983 #else
984 # define DBGLOG(DBGFILE, CMD)
985 # define DBGMSG(DBGFILE, MSG, LEN)
986 #endif
987 
988  struct Namespace
989  { const char *id;
990  const char *ns;
991  const char *in;
992  char *out;
993  };
994 
995  struct soap_nlist
996  { struct soap_nlist *next;
997  unsigned int level;
998  short index; /* corresponding entry in ns mapping table */
999  char *ns; /* only set when parsed ns URI is not in the ns mapping table */
1000  char id[1]; /* the actual string value flows into the allocated region below this struct */
1001  };
1002 
1003  struct soap_blist
1004  { struct soap_blist *next;
1005  char *ptr;
1006  size_t size;
1007  };
1008 
1009  struct soap_array
1010  { void *__ptr;
1011  int __size;
1012  };
1013 
1014 /* pointer serialization management */
1015  struct soap_plist
1016  { struct soap_plist *next;
1017  const void *ptr;
1018  const struct soap_array *array;
1019  int type;
1020  int id;
1021  char mark1;
1022  char mark2;
1023  };
1024 
1025 /* class allocation list */
1026  struct soap_clist
1027  { struct soap_clist *next;
1028  void *ptr;
1029  int type;
1030  int size;
1031  void (*fdelete)(struct soap_clist*);
1032  };
1033 
1036  char *value;
1037  size_t size;
1038  char *ns;
1039  short visible;
1040  char name[1]; /* the actual name string flows into the allocated region below this struct */
1041  };
1042 
1044  { struct soap_cookie *next;
1045  char *name;
1046  char *value;
1047  char *domain;
1048  char *path;
1049  long expire; /* client-side: local time to expire; server-side: seconds to expire */
1050  unsigned int version;
1051  short secure;
1052  short session; /* server-side */
1053  short env; /* server-side: got cookie from client */
1054  short modified; /* server-side: client cookie was modified */
1055  };
1056 
1057 #ifdef __cplusplus
1059  class soap_multipart_iterator
1060  { public:
1061  struct soap_multipart *content;
1062  bool operator==(const soap_multipart_iterator& iter) const
1063  { return content == iter.content; }
1064  bool operator!=(const soap_multipart_iterator& iter) const
1065  { return content != iter.content; }
1066  struct soap_multipart &operator*() const
1067  { return *content; }
1068  soap_multipart_iterator &operator++()
1069  { content = soap_next_multipart(content); return *this; }
1070  soap_multipart_iterator() : content(NULL)
1071  { }
1072  soap_multipart_iterator(struct soap_multipart *p) : content(p)
1073  { }
1074  };
1075 #endif
1076 
1077  struct soap_dime
1078  { size_t count;
1079  size_t size;
1080  size_t chunksize;
1081  size_t buflen;
1082  char flags;
1083  char *ptr;
1084  const char *id;
1085  const char *type;
1086  const char *options;
1087  struct soap_multipart *list; /* list of DIME attachments received */
1088  struct soap_multipart *first, *last; /* temporary in/out queue */
1089 #ifdef __cplusplus
1090  soap_multipart_iterator begin()
1091  { soap_multipart_iterator iter(list); return iter; };
1092  soap_multipart_iterator end()
1093  { soap_multipart_iterator iter(NULL); return iter; };
1094 #endif
1095  };
1096 
1097  struct soap_mime
1098  { char *boundary; /* MIME boundary */
1099  const char *start; /* MIME start ID */
1100  struct soap_multipart *list; /* list of DIME attachments received */
1101  struct soap_multipart *first, *last; /* temporary in/out queue */
1102 #ifdef __cplusplus
1103  soap_multipart_iterator begin()
1104  { soap_multipart_iterator iter(list); return iter; };
1105  soap_multipart_iterator end()
1106  { soap_multipart_iterator iter(NULL); return iter; };
1107 #endif
1108  };
1109 
1110 /* RFC2045 MIME content transfer encodings */
1120  };
1121 
1122 /* DIME/MIME multipart list */
1125  char *ptr; /* points to raw data content */
1126  size_t size; /* size of data content */
1127  const char *id; /* DIME/MIME content ID */
1128  const char *type; /* DIME/MIME type (MIME type format) */
1129  const char *options; /* DIME options */
1130  enum soap_mime_encoding encoding; /* MIME Content-Transfer-Encoding */
1131  const char *location; /* MIME Content-Location (optional) */
1132  const char *description; /* MIME Content-Description (optional) */
1133 #ifdef __cplusplus
1134  typedef soap_multipart_iterator iterator;
1135 #endif
1136  };
1137 
1140  const char *nstr;
1141  char *name;
1142  char *data;
1143  wchar_t *wide;
1144  struct soap *soap;
1145 #ifdef __cplusplus
1146  struct soap_dom_attribute &set(const char *nstr, const char *name); // set namespace and name
1147  struct soap_dom_attribute &set(const char *data); // set data
1148  void unlink();
1150  soap_dom_attribute(struct soap *soap);
1151  soap_dom_attribute(struct soap *soap, const char *nstr, const char *name, const char *data);
1152  ~soap_dom_attribute();
1153 #endif
1154  };
1155 
1156 #ifdef __cplusplus
1157  class soap_dom_iterator
1158  { public:
1159  struct soap_dom_element *elt;
1160  const char *nstr;
1161  const char *name;
1162  int type;
1163  bool operator==(const soap_dom_iterator&) const;
1164  bool operator!=(const soap_dom_iterator&) const;
1165  struct soap_dom_element &operator*() const;
1166  soap_dom_iterator &operator++();
1167  soap_dom_iterator();
1168  soap_dom_iterator(struct soap_dom_element*);
1169  ~soap_dom_iterator();
1170  };
1171 #endif
1172 
1174  { struct soap_dom_element *next; /* next sibling */
1175  struct soap_dom_element *prnt; /* parent */
1176  struct soap_dom_element *elts; /* first child element */
1177  struct soap_dom_attribute *atts; /* first child attribute */
1178  const char *nstr; /* namespace string */
1179  char *name; /* element tag name */
1180  char *data; /* element content data (with SOAP_C_UTFSTRING flag set) */
1181  wchar_t *wide; /* element content data */
1182  int type; /* optional: serialized C/C++ data type */
1183  void *node; /* optional: pointer to serialized C/C++ data */
1184  struct soap *soap;
1185 #ifdef __cplusplus
1186  typedef soap_dom_iterator iterator;
1187  struct soap_dom_element &set(const char *nstr, const char *name);
1188  struct soap_dom_element &set(const char *data);
1189  struct soap_dom_element &set(void *node, int type);
1190  struct soap_dom_element &add(struct soap_dom_element*);
1191  struct soap_dom_element &add(struct soap_dom_element&);
1192  struct soap_dom_element &add(struct soap_dom_attribute*);
1193  struct soap_dom_element &add(struct soap_dom_attribute&);
1194  soap_dom_iterator begin();
1195  soap_dom_iterator end();
1196  soap_dom_iterator find(const char *nstr, const char *name);
1197  soap_dom_iterator find(int type);
1198  void unlink();
1199  soap_dom_element();
1200  soap_dom_element(struct soap *soap);
1201  soap_dom_element(struct soap *soap, const char *nstr, const char *name);
1202  soap_dom_element(struct soap *soap, const char *nstr, const char *name, const char *data);
1203  soap_dom_element(struct soap *soap, const char *nstr, const char *name, void *node, int type);
1204  ~soap_dom_element();
1205 #endif
1206  };
1207 
1208 #if defined(__cplusplus) && !defined(WITH_LEAN)
1209 }
1210 extern ostream &operator<<(ostream&, const struct soap_dom_element&);
1211 extern istream &operator>>(istream&, struct soap_dom_element&);
1212 extern "C" {
1213 #endif
1214 
1215  struct soap
1216  { short version; /* 1 = SOAP1.1 and 2 = SOAP1.2 (set automatically from namespace URI in nsmap table) */
1217  short copy; /* 1 = copy of another soap struct */
1221  const char *float_format; /* points to user-definable format string for floats (<1024 chars) */
1222  const char *double_format; /* points to user-definable format string for doubles (<1024 chars) */
1223  const char *dime_id_format; /* points to user-definable format string for integer DIME id (<SOAP_TAGLEN chars) */
1224  const char *http_version; /* default = "1.0" */
1225  const char *http_content; /* optional custom response content type (with SOAP_FILE) */
1226  const char *encodingStyle; /* default = NULL which means that SOAP encoding is used */
1227  const char *actor;
1228  int recv_timeout; /* when > 0, gives socket recv timeout in seconds, < 0 in usec */
1229  int send_timeout; /* when > 0, gives socket send timeout in seconds, < 0 in usec */
1230  int connect_timeout; /* when > 0, gives socket connect() timeout in seconds, < 0 in usec */
1231  int accept_timeout; /* when > 0, gives socket accept() timeout in seconds, < 0 in usec */
1232  int socket_flags; /* socket recv() and send() flags, e.g. set to MSG_NOSIGNAL to disable sigpipe */
1233  int connect_flags; /* connect() SOL_SOCKET sockopt flags, e.g. set to SO_DEBUG to debug socket */
1234  int bind_flags; /* bind() SOL_SOCKET sockopt flags, e.g. set to SO_REUSEADDR to enable reuse */
1235  int accept_flags; /* accept() SOL_SOCKET sockopt flags */
1236  const struct Namespace *namespaces; /* Pointer to global namespace mapping table */
1237  struct Namespace *local_namespaces; /* Local namespace mapping table */
1238  struct soap_nlist *nlist; /* namespace stack */
1239  struct soap_blist *blist; /* block allocation stack */
1240  struct soap_clist *clist; /* class instance allocation list */
1241  void *alist; /* memory allocation list */
1242  struct soap_ilist *iht[SOAP_IDHASH];
1243  struct soap_plist *pht[SOAP_PTRHASH];
1246  void *user; /* to pass user-defined data */
1247  struct soap_plugin *plugins; /* linked list of plug-in data */
1248  char *userid; /* HTTP Basic authorization userid */
1249  char *passwd; /* HTTP Basic authorization passwd */
1250  int (*fpost)(struct soap*, const char*, const char*, int, const char*, const char*, size_t);
1251  int (*fget)(struct soap*);
1252  int (*fposthdr)(struct soap*, const char*, const char*);
1253  int (*fresponse)(struct soap*, int, size_t);
1254  int (*fparse)(struct soap*);
1255  int (*fparsehdr)(struct soap*, const char*, const char*);
1256  int (*fresolve)(struct soap*, const char*, struct in_addr* inaddr);
1257  int (*fconnect)(struct soap*, const char*, const char*, int);
1258  int (*fdisconnect)(struct soap*);
1259  int (*fclosesocket)(struct soap*, SOAP_SOCKET);
1260  int (*fshutdownsocket)(struct soap*, SOAP_SOCKET, int);
1261  int (*fopen)(struct soap*, const char*, const char*, int);
1262  int (*faccept)(struct soap*, int, struct sockaddr*, int *n);
1263  int (*fclose)(struct soap*);
1264  int (*fsend)(struct soap*, const char*, size_t);
1265  size_t (*frecv)(struct soap*, char*, size_t);
1266  int (*fpoll)(struct soap*);
1267  int (*fprepareinit)(struct soap*);
1268  int (*fpreparesend)(struct soap*, const char*, size_t);
1269  int (*fpreparerecv)(struct soap*, const char*, size_t);
1270  int (*fignore)(struct soap*, const char*);
1271  int (*fserveloop)(struct soap*);
1272  void *(*fplugin)(struct soap*, const char*);
1273  void *(*fdimereadopen)(struct soap*, void*, const char*, const char*, const char*);
1274  void *(*fdimewriteopen)(struct soap*, const char*, const char*, const char*);
1275  void (*fdimereadclose)(struct soap*, void*);
1276  void (*fdimewriteclose)(struct soap*, void*);
1277  size_t (*fdimeread)(struct soap*, void*, char*, size_t);
1278  int (*fdimewrite)(struct soap*, void*, const char*, size_t);
1279  int master;
1280  int socket;
1281 #if defined(__cplusplus) && !defined(WITH_LEAN)
1282  ostream *os;
1283  istream *is;
1284 #else
1285  void *os; /* preserve alignment */
1286  void *is; /* preserve alignment */
1287 #endif
1288 #ifndef UNDER_CE
1289  int sendfd;
1290  int recvfd;
1291 #else
1292  FILE *sendfd;
1293  FILE *recvfd;
1294 #endif
1295 #ifdef WIN32
1296  char errorstr[256]; /* buf for FormatMessage() */
1297 #endif
1298  size_t bufidx;
1299  size_t buflen;
1301  short cdata;
1302  short body;
1303  unsigned int level;
1304  size_t count; /* message length counter */
1305  size_t length; /* message length as set by HTTP header */
1306  char *labbuf; /* look-aside buffer */
1307  size_t lablen; /* look-aside buffer allocated length */
1308  size_t labidx; /* look-aside buffer index to available part */
1309  char buf[SOAP_BUFLEN];/* send and receive buffer */
1310  char tmpbuf[1024]; /* in/output buffer for HTTP headers, simpleType values, attribute names, and DIME >=1024 bytes */
1311  char msgbuf[1024]; /* output buffer for (error) messages <=1024 bytes */
1313  char id[SOAP_TAGLEN];
1319  short other;
1320  short root;
1321  short position;
1323  struct soap_attribute *attributes; /* attribute list */
1324  short encoding;
1326  short null;
1327  short ns;
1328  short part;
1329  short alloced;
1330  short peeked;
1331  short keep_alive;
1332  size_t chunksize;
1333  size_t chunkbuflen;
1334  char endpoint[SOAP_TAGLEN];
1335  char path[SOAP_TAGLEN];
1336  char host[SOAP_TAGLEN];
1337  char *action;
1338  char *authrealm; /* HTTP authentication realm */
1339  char *prolog; /* XML declaration prolog */
1340  int port;
1341  unsigned int max_keep_alive;
1342  const char *proxy_host; /* Proxy Server host name */
1343  int proxy_port; /* Proxy Server port (default = 8080) */
1344  const char *proxy_userid; /* Proxy Authorization user name */
1345  const char *proxy_passwd; /* Proxy Authorization password */
1346  int status; /* -1 when request, else error code to be returned by server */
1347  int error;
1348  int errmode;
1349  int errnum;
1350  unsigned long idnum;
1351  unsigned long ip;
1353 #ifndef WITH_LEANER
1354  struct soap_dime dime;
1355  struct soap_mime mime;
1356 #endif
1357 #if !defined(WITH_LEAN) || defined(SOAP_DEBUG)
1358  const char *logfile[SOAP_MAXLOGS];
1359  FILE *fdebug[SOAP_MAXLOGS];
1360 #endif
1361 #ifndef WITH_LEAN
1363  const char *cookie_domain;
1364  const char *cookie_path;
1366 #endif
1367 #ifdef WITH_OPENSSL
1368  int (*fsslauth)(struct soap*);
1369  int (*fsslverify)(int, X509_STORE_CTX*);
1370  BIO *bio;
1371  SSL *ssl;
1372  SSL_CTX *ctx;
1373  short require_server_auth;
1374  short require_client_auth;
1375  short rsa; /* when set, use RSA instead of DH */
1376  const char *keyfile;
1377  const char *password;
1378  const char *dhfile;
1379  const char *cafile;
1380  const char *capath;
1381  const char *randfile;
1382  SSL_SESSION *session;
1383  char session_host[SOAP_TAGLEN];
1384  int session_port;
1385 #endif
1386 #ifdef WITH_ZLIB
1387  short zlib_state; /* SOAP_ZLIB_NONE, SOAP_ZLIB_DEFLATE, or SOAP_ZLIB_INFLATE */
1388  short zlib_in; /* SOAP_ZLIB_NONE, SOAP_ZLIB_DEFLATE, or SOAP_ZLIB_GZIP */
1389  short zlib_out; /* SOAP_ZLIB_NONE, SOAP_ZLIB_DEFLATE, or SOAP_ZLIB_GZIP */
1390  z_stream d_stream; /* decompression stream */
1391  char z_buf[SOAP_BUFLEN]; /* buffer */
1392  size_t z_buflen;
1393  unsigned short z_level; /* compression level to be used (0=none, 1=fast to 9=best) */
1394  uLong z_crc; /* internal gzip crc */
1395  float z_ratio_in; /* detected compression ratio compressed_length/length of inbound message */
1396  float z_ratio_out; /* detected compression ratio compressed_length/length of outbound message */
1397 #endif
1398 /* WR[ */
1399 #ifdef WMW_RPM_IO
1400  void *rpmreqid;
1401 #endif /* WMW_RPM_IO */
1402 /* ]WR */
1403  };
1404 
1406  { long code;
1407  const char *string;
1408  };
1409 
1410 /* forwarding list */
1411  struct soap_flist
1412  { struct soap_flist *next;
1413  int type;
1414  void *ptr;
1415  unsigned int level;
1416  void (*fcopy)(struct soap*, int, int, void*, const void*, size_t);
1417  };
1418 
1419 /* id-ref forwarding list */
1420  struct soap_ilist
1421  { struct soap_ilist *next;
1422  int type;
1423  size_t size;
1424  void *link;
1425  void *copy;
1427  void *ptr;
1428  unsigned int level;
1429  char id[1]; /* the actual id string value flows into the allocated region below this struct */
1430  };
1431 
1433  { struct soap_plugin *next;
1434  const char *id;
1435  void *data;
1436  int (*fcopy)(struct soap *soap, struct soap_plugin *dst, struct soap_plugin *src);
1437  void (*fdelete)(struct soap *soap, struct soap_plugin *p); /* should delete fields of plugin only and not free(p) */
1438  };
1439 
1440 #ifndef WITH_NONAMESPACES
1441  extern SOAP_NMAC struct Namespace namespaces[];
1442 #endif
1443 
1444 #ifdef HAVE_STRRCHR
1445 # define soap_strrchr(s, t) strrchr(s, t)
1446 #else
1447  SOAP_FMAC1 char* SOAP_FMAC2 soap_strrchr(const char *s, int t);
1448 #endif
1449 
1450 #ifdef HAVE_STRTOL
1451 # define soap_strtol(s, t, b) strtol(s, t, b)
1452 #else
1453  SOAP_FMAC1 long SOAP_FMAC2 soap_strtol(const char *s, char **t, int b);
1454 #endif
1455 
1456 #ifdef HAVE_STRTOUL
1457 # define soap_strtoul(s, t, b) strtoul(s, t, b)
1458 #else
1459  SOAP_FMAC1 unsigned long SOAP_FMAC2 soap_strtoul(const char *s, char **t, int b);
1460 #endif
1461 
1462  SOAP_FMAC1 void SOAP_FMAC2 soap_fault(struct soap*);
1463  SOAP_FMAC1 const char** SOAP_FMAC2 soap_faultcode(struct soap*);
1464  SOAP_FMAC1 const char** SOAP_FMAC2 soap_faultstring(struct soap*);
1465  SOAP_FMAC1 const char** SOAP_FMAC2 soap_faultdetail(struct soap*);
1470  SOAP_FMAC1 int SOAP_FMAC2 soap_putfault(struct soap*);
1471  SOAP_FMAC1 int SOAP_FMAC2 soap_getfault(struct soap*);
1472 
1473  SOAP_FMAC1 int SOAP_FMAC2 soap_poll(struct soap*);
1474  SOAP_FMAC1 int SOAP_FMAC2 soap_connect_command(struct soap*, int, const char*, const char*);
1475  SOAP_FMAC1 int SOAP_FMAC2 soap_connect(struct soap*, const char*, const char*);
1476  SOAP_FMAC1 int SOAP_FMAC2 soap_bind(struct soap*, const char*, int, int);
1477  SOAP_FMAC1 int SOAP_FMAC2 soap_accept(struct soap*);
1479 
1480  SOAP_FMAC1 int SOAP_FMAC2 soap_ssl_server_context(struct soap*, unsigned short, const char*, const char*, const char*, const char*, const char*, const char*, const char*);
1481  SOAP_FMAC1 int SOAP_FMAC2 soap_ssl_client_context(struct soap*, unsigned short, const char*, const char*, const char*, const char*, const char*);
1482 
1483  SOAP_FMAC1 int SOAP_FMAC2 soap_puthttphdr(struct soap*, int status, size_t count);
1484 
1485  SOAP_FMAC1 const char* SOAP_FMAC2 soap_get_header_attribute(struct soap*, const char*, const char*);
1486  SOAP_FMAC1 const char* SOAP_FMAC2 soap_decode_key(char*, size_t, const char*);
1487  SOAP_FMAC1 const char* SOAP_FMAC2 soap_decode_val(char*, size_t, const char*);
1488 
1489  SOAP_FMAC1 size_t SOAP_FMAC2 soap_hash(const char*);
1490  SOAP_FMAC1 void SOAP_FMAC2 soap_set_endpoint(struct soap*, const char*);
1491  SOAP_FMAC1 int SOAP_FMAC2 soap_flush_raw(struct soap*, const char*, size_t);
1492  SOAP_FMAC1 int SOAP_FMAC2 soap_flush(struct soap*);
1495  SOAP_FMAC1 int SOAP_FMAC2 soap_tag_cmp(const char*, const char*);
1496  SOAP_FMAC1 void SOAP_FMAC2 soap_set_fault(struct soap*);
1497  SOAP_FMAC1 int SOAP_FMAC2 soap_sender_fault(struct soap*, const char*, const char*);
1498  SOAP_FMAC1 int SOAP_FMAC2 soap_receiver_fault(struct soap*, const char*, const char*);
1499  SOAP_FMAC1 int SOAP_FMAC2 soap_set_sender_error(struct soap*, const char*, const char*, int);
1500  SOAP_FMAC1 int SOAP_FMAC2 soap_set_receiver_error(struct soap*, const char*, const char*, int);
1501 
1502  SOAP_FMAC1 int SOAP_FMAC2 soap_send_raw(struct soap*, const char*, size_t);
1503  SOAP_FMAC1 int SOAP_FMAC2 soap_recv_raw(struct soap*);
1504  SOAP_FMAC1 int SOAP_FMAC2 soap_recv(struct soap*);
1505  SOAP_FMAC1 int SOAP_FMAC2 soap_send(struct soap*, const char*);
1506  SOAP_FMAC1 int SOAP_FMAC2 soap_send2(struct soap*, const char*, const char*);
1507  SOAP_FMAC1 int SOAP_FMAC2 soap_send3(struct soap*, const char*, const char*, const char*);
1508 
1509  SOAP_FMAC1 int SOAP_FMAC2 soap_pututf8(struct soap*, unsigned long);
1511 
1512  SOAP_FMAC1 int SOAP_FMAC2 soap_putbase64(struct soap*, const unsigned char*, int);
1513  SOAP_FMAC1 unsigned char* SOAP_FMAC2 soap_getbase64(struct soap*, int*, int);
1514  SOAP_FMAC1 int SOAP_FMAC2 soap_puthex(struct soap*, const unsigned char*, int);
1515  SOAP_FMAC1 unsigned char* SOAP_FMAC2 soap_gethex(struct soap*, int*);
1516 
1517 
1518  SOAP_FMAC1 struct soap_ilist* SOAP_FMAC2 soap_lookup(struct soap*, const char*);
1519  SOAP_FMAC1 struct soap_ilist* SOAP_FMAC2 soap_enter(struct soap*, const char*);
1520  SOAP_FMAC1 int SOAP_FMAC2 soap_resolve(struct soap*);
1521 
1522  SOAP_FMAC1 int SOAP_FMAC2 soap_pointer_lookup_id(struct soap*, void *p, int t, struct soap_plist**);
1523  SOAP_FMAC1 int SOAP_FMAC2 soap_pointer_lookup(struct soap*, const void *p, int t, struct soap_plist**);
1524  SOAP_FMAC1 int SOAP_FMAC2 soap_pointer_enter(struct soap*, const void *p, const struct soap_array *a, int n, int t, struct soap_plist**);
1525  SOAP_FMAC1 int SOAP_FMAC2 soap_array_pointer_lookup(struct soap*, const void *p, const struct soap_array *a, int n, int t, struct soap_plist**);
1526 
1527  SOAP_FMAC1 int SOAP_FMAC2 soap_embed(struct soap *soap, const void *p, const struct soap_array *a, int n, const char *tag, int type);
1528 
1531  SOAP_FMAC1 int SOAP_FMAC2 soap_end_send(struct soap*);
1532 
1533  SOAP_FMAC1 void SOAP_FMAC2 soap_embedded(struct soap*, const void *p, int t);
1534  SOAP_FMAC1 int SOAP_FMAC2 soap_reference(struct soap*, const void *p, int t);
1535  SOAP_FMAC1 int SOAP_FMAC2 soap_array_reference(struct soap*, const void *p, const struct soap_array *a, int n, int t);
1536  SOAP_FMAC1 int SOAP_FMAC2 soap_embedded_id(struct soap*, int id, const void *p, int t);
1537  SOAP_FMAC1 int SOAP_FMAC2 soap_is_embedded(struct soap*, struct soap_plist*);
1538  SOAP_FMAC1 int SOAP_FMAC2 soap_is_single(struct soap*, struct soap_plist*);
1539  SOAP_FMAC1 void SOAP_FMAC2 soap_set_embedded(struct soap*, struct soap_plist*);
1540 
1541  SOAP_FMAC1 const struct soap_code_map* SOAP_FMAC2 soap_code(const struct soap_code_map*, const char *str);
1542  SOAP_FMAC1 long SOAP_FMAC2 soap_int_code(const struct soap_code_map*, const char *str, long other);
1543  SOAP_FMAC1 const char* SOAP_FMAC2 soap_str_code(const struct soap_code_map*, long code);
1544 
1545  SOAP_FMAC1 int SOAP_FMAC2 soap_getline(struct soap*, char*, int);
1547  SOAP_FMAC1 int SOAP_FMAC2 soap_end_recv(struct soap*);
1548 
1549  SOAP_FMAC1 void* SOAP_FMAC2 soap_malloc(struct soap*, size_t);
1550  SOAP_FMAC1 void SOAP_FMAC2 soap_dealloc(struct soap*, void*);
1551  SOAP_FMAC1 struct soap_clist * SOAP_FMAC2 soap_link(struct soap*, void*, int, int, void (*fdelete)(struct soap_clist*));
1552  SOAP_FMAC1 void SOAP_FMAC2 soap_unlink(struct soap*, const void*);
1553  SOAP_FMAC1 void SOAP_FMAC2 soap_free(struct soap*);
1554 
1555  SOAP_FMAC1 int SOAP_FMAC2 soap_lookup_type(struct soap*, const char *id);
1556 
1557  SOAP_FMAC1 void* SOAP_FMAC2 soap_id_lookup(struct soap*, const char *id, void **p, int t, size_t n, unsigned int k);
1558  SOAP_FMAC1 void* SOAP_FMAC2 soap_id_forward(struct soap*, const char *id, void *p, int st, int tt, size_t n, unsigned int k, void(*fcopy)(struct soap*, int, int, void*, const void*, size_t));
1559  SOAP_FMAC1 void* SOAP_FMAC2 soap_id_enter(struct soap*, const char *id, void *p, int t, size_t n, unsigned int k, const char *type, const char *arrayType, void *(*finstantiate)(struct soap*, int, const char*, const char*, size_t*));
1560  SOAP_FMAC1 void SOAP_FMAC2 soap_fcopy(struct soap *soap, int st, int tt, void *p, const void *q, size_t n);
1561 
1562  SOAP_FMAC1 int SOAP_FMAC2 soap_size(const int *, int);
1563  SOAP_FMAC1 int SOAP_FMAC2 soap_getoffsets(const char *, const int *, int *, int);
1564  SOAP_FMAC1 int SOAP_FMAC2 soap_getsize(const char *, const char *, int *);
1565  SOAP_FMAC1 int SOAP_FMAC2 soap_getsizes(const char *, int *, int);
1566  SOAP_FMAC1 int SOAP_FMAC2 soap_getposition(const char *, int *);
1567 
1568  SOAP_FMAC1 char* SOAP_FMAC2 soap_putsize(struct soap*, const char *, int);
1569  SOAP_FMAC1 char* SOAP_FMAC2 soap_putsizesoffsets(struct soap*, const char *, const int *, const int *, int);
1570  SOAP_FMAC1 char* SOAP_FMAC2 soap_putsizes(struct soap*, const char *, const int *, int);
1571  SOAP_FMAC1 char* SOAP_FMAC2 soap_putoffset(struct soap*, int);
1572  SOAP_FMAC1 char* SOAP_FMAC2 soap_putoffsets(struct soap*, const int *, int);
1573 
1575 
1576  SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_new(void);
1577  SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_new1(int);
1578  SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_new2(int, int);
1579  SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_copy(struct soap*);
1580  SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_copy_context(struct soap*,struct soap*);
1581  SOAP_FMAC1 void SOAP_FMAC2 soap_init(struct soap*);
1582  SOAP_FMAC1 void SOAP_FMAC2 soap_init1(struct soap*, int);
1583  SOAP_FMAC1 void SOAP_FMAC2 soap_init2(struct soap*, int, int);
1584  SOAP_FMAC1 void SOAP_FMAC2 soap_done(struct soap*);
1585  SOAP_FMAC1 void SOAP_FMAC2 soap_cleanup(struct soap*);
1586  SOAP_FMAC1 void SOAP_FMAC2 soap_begin(struct soap*);
1587  SOAP_FMAC1 void SOAP_FMAC2 soap_end(struct soap*);
1588  SOAP_FMAC1 void SOAP_FMAC2 soap_delete(struct soap*, void*);
1589 
1590 #ifdef SOAP_DEBUG
1591  SOAP_FMAC1 void SOAP_FMAC2 soap_set_recv_logfile(struct soap*, const char*);
1592  SOAP_FMAC1 void SOAP_FMAC2 soap_set_sent_logfile(struct soap*, const char*);
1593  SOAP_FMAC1 void SOAP_FMAC2 soap_set_test_logfile(struct soap*, const char*);
1594  SOAP_FMAC1 void SOAP_FMAC2 soap_close_logfiles(struct soap*);
1595  SOAP_FMAC1 void SOAP_FMAC2 soap_open_logfile(struct soap*, int);
1596 #endif
1597 
1598  SOAP_FMAC1 const char* SOAP_FMAC2 soap_value(struct soap*);
1599 
1602 
1603  SOAP_FMAC1 int SOAP_FMAC2 soap_match_tag(struct soap*, const char*, const char *);
1604  SOAP_FMAC1 int SOAP_FMAC2 soap_match_array(struct soap*, const char*);
1605 
1606  SOAP_FMAC1 int SOAP_FMAC2 soap_element(struct soap*, const char*, int, const char*);
1607  SOAP_FMAC1 int SOAP_FMAC2 soap_element_begin_out(struct soap*, const char *tag, int id, const char *type);
1608  SOAP_FMAC1 int SOAP_FMAC2 soap_array_begin_out(struct soap*, const char *tag, int id, const char *type, const char *offset);
1609  SOAP_FMAC1 int SOAP_FMAC2 soap_element_ref(struct soap*, const char *tag, int id, int href);
1610  SOAP_FMAC1 int SOAP_FMAC2 soap_element_href(struct soap*, const char *tag, int id, const char *ref, const char *val);
1611  SOAP_FMAC1 int SOAP_FMAC2 soap_element_null(struct soap*, const char *tag, int id, const char *type);
1612  SOAP_FMAC1 int SOAP_FMAC2 soap_element_id(struct soap*, const char *tag, int id, const void *p, const struct soap_array *a, int d, const char *type, int n);
1613  SOAP_FMAC1 int SOAP_FMAC2 soap_element_result(struct soap*, const char *tag);
1614  SOAP_FMAC1 int SOAP_FMAC2 soap_element_end_out(struct soap*, const char *tag);
1615  SOAP_FMAC1 int SOAP_FMAC2 soap_element_start_end_out(struct soap*, const char *tag);
1616 
1617  SOAP_FMAC1 int SOAP_FMAC2 soap_attribute(struct soap*, const char*, const char*);
1618 
1619  SOAP_FMAC1 int SOAP_FMAC2 soap_element_begin_in(struct soap*, const char *tag, int nillable);
1620 
1621  SOAP_FMAC1 int SOAP_FMAC2 soap_element_end_in(struct soap*, const char *tag);
1622 
1624 
1625  SOAP_FMAC1 void SOAP_FMAC2 soap_retry(struct soap*);
1626  SOAP_FMAC1 void SOAP_FMAC2 soap_revert(struct soap*);
1627 
1628  SOAP_FMAC1 char* SOAP_FMAC2 soap_strdup(struct soap*, const char*);
1629 
1630  SOAP_FMAC1 int SOAP_FMAC2 soap_string_out(struct soap*, const char *s, int flag);
1631  SOAP_FMAC1 char* SOAP_FMAC2 soap_string_in(struct soap*, int, long, long);
1632  SOAP_FMAC1 int SOAP_FMAC2 soap_wstring_out(struct soap*, const wchar_t *s, int flag);
1633  SOAP_FMAC1 wchar_t* SOAP_FMAC2 soap_wstring_in(struct soap*, int, long, long);
1634 
1635  SOAP_FMAC1 int SOAP_FMAC2 soap_match_namespace(struct soap*, const char *, const char*, int n1, int n2);
1636 
1637  SOAP_FMAC1 int SOAP_FMAC2 soap_set_namespaces(struct soap*, struct Namespace*);
1638 
1640  SOAP_FMAC1 int SOAP_FMAC2 soap_push_namespace(struct soap*, const char *,const char *);
1641 
1643  SOAP_FMAC1 void* SOAP_FMAC2 soap_push_block(struct soap*, size_t);
1644  SOAP_FMAC1 void SOAP_FMAC2 soap_pop_block(struct soap*);
1645  SOAP_FMAC1 size_t SOAP_FMAC2 soap_size_block(struct soap*, size_t);
1646  SOAP_FMAC1 char* SOAP_FMAC2 soap_first_block(struct soap*);
1647  SOAP_FMAC1 char* SOAP_FMAC2 soap_next_block(struct soap*);
1648  SOAP_FMAC1 size_t SOAP_FMAC2 soap_block_size(struct soap*);
1649  SOAP_FMAC1 char* SOAP_FMAC2 soap_save_block(struct soap*, char*, int);
1650  SOAP_FMAC1 void SOAP_FMAC2 soap_end_block(struct soap*);
1651 
1653  SOAP_FMAC1 int soap_envelope_end_out(struct soap*);
1654 
1657 
1660 
1663 
1665 
1666  SOAP_FMAC1 int SOAP_FMAC2 soap_response(struct soap*, int);
1667 
1669 
1671 
1672  SOAP_FMAC1 void SOAP_FMAC2 soap_print_fault(struct soap*, FILE*);
1673  SOAP_FMAC1 void SOAP_FMAC2 soap_print_fault_location(struct soap*, FILE*);
1674 
1675  SOAP_FMAC1 int SOAP_FMAC2 soap_s2byte(struct soap*, const char*, char*);
1676  SOAP_FMAC1 int SOAP_FMAC2 soap_s2short(struct soap*, const char*, short*);
1677  SOAP_FMAC1 int SOAP_FMAC2 soap_s2int(struct soap*, const char*, int*);
1678  SOAP_FMAC1 int SOAP_FMAC2 soap_s2long(struct soap*, const char*, long*);
1679  SOAP_FMAC1 int SOAP_FMAC2 soap_s2LONG64(struct soap*, const char*, LONG64*);
1680  SOAP_FMAC1 int SOAP_FMAC2 soap_s2float(struct soap*, const char*, float*);
1681  SOAP_FMAC1 int SOAP_FMAC2 soap_s2double(struct soap*, const char*, double*);
1682  SOAP_FMAC1 int SOAP_FMAC2 soap_s2unsignedByte(struct soap*, const char*, unsigned char*);
1683  SOAP_FMAC1 int SOAP_FMAC2 soap_s2unsignedShort(struct soap*, const char*, unsigned short*);
1684  SOAP_FMAC1 int SOAP_FMAC2 soap_s2unsignedInt(struct soap*, const char*, unsigned int*);
1685  SOAP_FMAC1 int SOAP_FMAC2 soap_s2unsignedLong(struct soap*, const char*, unsigned long*);
1686  SOAP_FMAC1 int SOAP_FMAC2 soap_s2ULONG64(struct soap*, const char*, ULONG64*);
1687  SOAP_FMAC1 int SOAP_FMAC2 soap_s2dateTime(struct soap*, const char*, time_t*);
1688  SOAP_FMAC1 int SOAP_FMAC2 soap_s2string(struct soap*, const char*, char**);
1689  SOAP_FMAC1 int SOAP_FMAC2 soap_s2QName(struct soap*, const char*, char**);
1690 
1691  SOAP_FMAC1 char* SOAP_FMAC2 soap_s2base64(struct soap*, const unsigned char*, char*, size_t);
1692 
1693  SOAP_FMAC1 const char* SOAP_FMAC2 soap_byte2s(struct soap*, char);
1694  SOAP_FMAC1 const char* SOAP_FMAC2 soap_short2s(struct soap*, short);
1695  SOAP_FMAC1 const char* SOAP_FMAC2 soap_int2s(struct soap*, int);
1696  SOAP_FMAC1 const char* SOAP_FMAC2 soap_long2s(struct soap*, long);
1697  SOAP_FMAC1 const char* SOAP_FMAC2 soap_LONG642s(struct soap*, LONG64);
1698  SOAP_FMAC1 const char* SOAP_FMAC2 soap_float2s(struct soap*, float);
1699  SOAP_FMAC1 const char* SOAP_FMAC2 soap_double2s(struct soap*, double);
1700  SOAP_FMAC1 const char* SOAP_FMAC2 soap_unsignedByte2s(struct soap*, unsigned char);
1701  SOAP_FMAC1 const char* SOAP_FMAC2 soap_unsignedShort2s(struct soap*, unsigned short);
1702  SOAP_FMAC1 const char* SOAP_FMAC2 soap_unsignedInt2s(struct soap*, unsigned int);
1703  SOAP_FMAC1 const char* SOAP_FMAC2 soap_unsignedLong2s(struct soap*, unsigned long);
1704  SOAP_FMAC1 const char* SOAP_FMAC2 soap_ULONG642s(struct soap*, ULONG64);
1705  SOAP_FMAC1 const char* SOAP_FMAC2 soap_dateTime2s(struct soap*, time_t);
1706  SOAP_FMAC1 const char* SOAP_FMAC2 soap_QName2s(struct soap*, const char*);
1707 
1708  SOAP_FMAC1 const char* SOAP_FMAC2 soap_base642s(struct soap*, const char*, char*, size_t, size_t*);
1709 
1710  SOAP_FMAC1 int* SOAP_FMAC2 soap_inint(struct soap*, const char *tag, int *p, const char *, int);
1711  SOAP_FMAC1 char* SOAP_FMAC2 soap_inbyte(struct soap*, const char *tag, char *p, const char *, int);
1712  SOAP_FMAC1 long* SOAP_FMAC2 soap_inlong(struct soap*, const char *tag, long *p, const char *, int);
1713  SOAP_FMAC1 LONG64* SOAP_FMAC2 soap_inLONG64(struct soap*, const char *tag, LONG64 *p, const char *, int);
1714  SOAP_FMAC1 short* SOAP_FMAC2 soap_inshort(struct soap*, const char *tag, short *p, const char *, int);
1715  SOAP_FMAC1 float* SOAP_FMAC2 soap_infloat(struct soap*, const char *tag, float *p, const char *, int);
1716  SOAP_FMAC1 double* SOAP_FMAC2 soap_indouble(struct soap*, const char *tag, double *p, const char *, int);
1717  SOAP_FMAC1 unsigned char* SOAP_FMAC2 soap_inunsignedByte(struct soap*, const char *tag, unsigned char *p, const char *, int);
1718  SOAP_FMAC1 unsigned short* SOAP_FMAC2 soap_inunsignedShort(struct soap*, const char *tag, unsigned short *p, const char *, int);
1719  SOAP_FMAC1 unsigned int* SOAP_FMAC2 soap_inunsignedInt(struct soap*, const char *tag, unsigned int *p, const char *, int);
1720  SOAP_FMAC1 unsigned long* SOAP_FMAC2 soap_inunsignedLong(struct soap*, const char *tag, unsigned long *p, const char *, int);
1721  SOAP_FMAC1 ULONG64* SOAP_FMAC2 soap_inULONG64(struct soap*, const char *tag, ULONG64 *p, const char *, int);
1722  SOAP_FMAC1 time_t* SOAP_FMAC2 soap_indateTime(struct soap*, const char *tag, time_t *p, const char *, int);
1723  SOAP_FMAC1 char** SOAP_FMAC2 soap_instring(struct soap*, const char *tag, char **p, const char *, int, int, long, long);
1724  SOAP_FMAC1 wchar_t** SOAP_FMAC2 soap_inwstring(struct soap*, const char *tag, wchar_t **p, const char *, int, long, long);
1725  SOAP_FMAC1 char** SOAP_FMAC2 soap_inliteral(struct soap*, const char *tag, char **p);
1726  SOAP_FMAC1 wchar_t** SOAP_FMAC2 soap_inwliteral(struct soap*, const char *tag, wchar_t **p);
1727 
1728  SOAP_FMAC1 int SOAP_FMAC2 soap_outbyte(struct soap*, const char *tag, int id, const char *p, const char *, int);
1729  SOAP_FMAC1 int SOAP_FMAC2 soap_outshort(struct soap*, const char *tag, int id, const short *p, const char *, int);
1730  SOAP_FMAC1 int SOAP_FMAC2 soap_outint(struct soap*, const char *tag, int id, const int *p, const char *, int);
1731  SOAP_FMAC1 int SOAP_FMAC2 soap_outlong(struct soap*, const char *tag, int id, const long *p, const char *, int);
1732  SOAP_FMAC1 int SOAP_FMAC2 soap_outLONG64(struct soap*, const char *tag, int id, const LONG64 *p, const char *, int);
1733  SOAP_FMAC1 int SOAP_FMAC2 soap_outfloat(struct soap*, const char *tag, int id, const float *p, const char *, int);
1734  SOAP_FMAC1 int SOAP_FMAC2 soap_outdouble(struct soap*, const char *tag, int id, const double *p, const char *, int);
1735  SOAP_FMAC1 int SOAP_FMAC2 soap_outunsignedByte(struct soap*, const char *tag, int id, const unsigned char *p, const char *, int);
1736  SOAP_FMAC1 int SOAP_FMAC2 soap_outunsignedShort(struct soap*, const char *tag, int id, const unsigned short *p, const char *, int);
1737  SOAP_FMAC1 int SOAP_FMAC2 soap_outunsignedInt(struct soap*, const char *tag, int id, const unsigned int *p, const char *, int);
1738  SOAP_FMAC1 int SOAP_FMAC2 soap_outunsignedLong(struct soap*, const char *tag, int id, const unsigned long *p, const char *, int);
1739  SOAP_FMAC1 int SOAP_FMAC2 soap_outULONG64(struct soap*, const char *tag, int id, const ULONG64 *p, const char *, int);
1740  SOAP_FMAC1 int SOAP_FMAC2 soap_outdateTime(struct soap*, const char *tag, int id, const time_t *p, const char *, int);
1741  SOAP_FMAC1 int SOAP_FMAC2 soap_outstring(struct soap*, const char *tag, int id, char *const*p, const char *, int);
1742  SOAP_FMAC1 int SOAP_FMAC2 soap_outwstring(struct soap*, const char *tag, int id, wchar_t *const*p, const char *, int);
1743  SOAP_FMAC1 int SOAP_FMAC2 soap_outliteral(struct soap*, const char *tag, char *const*p);
1744  SOAP_FMAC1 int SOAP_FMAC2 soap_outwliteral(struct soap*, const char *tag, wchar_t *const*p);
1745 
1746 #ifndef WITH_LEANER
1747  SOAP_FMAC1 int SOAP_FMAC2 soap_element_dime(struct soap *, const char*, int, const void*, const struct soap_array*, const char*, const char*, const char*, int, const char*, int);
1748  SOAP_FMAC1 int SOAP_FMAC2 soap_move(struct soap*, long);
1749  SOAP_FMAC1 size_t SOAP_FMAC2 soap_tell(struct soap*);
1750  SOAP_FMAC1 char* SOAP_FMAC2 soap_dime_option(struct soap*, unsigned short, const char*);
1752  SOAP_FMAC1 int SOAP_FMAC2 soap_getdime(struct soap*);
1754  SOAP_FMAC1 int SOAP_FMAC2 soap_putdime(struct soap*);
1756  SOAP_FMAC1 int SOAP_FMAC2 soap_getmime(struct soap*);
1758  SOAP_FMAC1 int SOAP_FMAC2 soap_putmime(struct soap*);
1759  SOAP_FMAC1 void SOAP_FMAC2 soap_set_dime(struct soap*);
1760  SOAP_FMAC1 void SOAP_FMAC2 soap_set_mime(struct soap*, const char *boundary, const char *start);
1761  SOAP_FMAC1 void SOAP_FMAC2 soap_clr_dime(struct soap*);
1762  SOAP_FMAC1 void SOAP_FMAC2 soap_clr_mime(struct soap*);
1763  SOAP_FMAC1 int SOAP_FMAC2 soap_set_dime_attachment(struct soap*, char *ptr, size_t size, const char *type, const char *id, unsigned short optype, const char *option);
1764  SOAP_FMAC1 int SOAP_FMAC2 soap_set_mime_attachment(struct soap*, char *ptr, size_t size, enum soap_mime_encoding encoding, const char *type, const char *id, const char *location, const char *description);
1766 #endif
1767 
1768  SOAP_FMAC1 int SOAP_FMAC2 soap_register_plugin_arg(struct soap*, int (*fcreate)(struct soap*, struct soap_plugin*, void*), void*);
1769  SOAP_FMAC1 void* SOAP_FMAC2 soap_lookup_plugin(struct soap*, const char*);
1770 
1771  SOAP_FMAC1 const char* SOAP_FMAC2 soap_attr_value(struct soap *soap, const char *name, int flag);
1772  SOAP_FMAC1 int SOAP_FMAC2 soap_set_attr(struct soap *soap, const char *name, const char *value);
1774 
1775 #ifdef WITH_COOKIES
1776  SOAP_FMAC1 size_t SOAP_FMAC2 soap_encode_cookie(const char*, char*, size_t);
1777  SOAP_FMAC1 extern struct soap_cookie* SOAP_FMAC2 soap_set_cookie(struct soap*, const char*, const char*, const char*, const char*);
1778  SOAP_FMAC1 extern struct soap_cookie* SOAP_FMAC2 soap_cookie(struct soap*, const char*, const char*, const char*);
1779  SOAP_FMAC1 extern char* SOAP_FMAC2 soap_cookie_value(struct soap*, const char*, const char*, const char*);
1780  SOAP_FMAC1 extern long SOAP_FMAC2 soap_cookie_expire(struct soap*, const char*, const char*, const char*);
1781  SOAP_FMAC1 extern int SOAP_FMAC2 soap_set_cookie_expire(struct soap*, const char*, long, const char*, const char*);
1782  SOAP_FMAC1 extern int SOAP_FMAC2 soap_set_cookie_session(struct soap*, const char*, const char*, const char*);
1783  SOAP_FMAC1 extern int SOAP_FMAC2 soap_clr_cookie_session(struct soap*, const char*, const char*, const char*);
1784  SOAP_FMAC1 extern void SOAP_FMAC2 soap_clr_cookie(struct soap*, const char*, const char*, const char*);
1785  SOAP_FMAC1 extern int SOAP_FMAC2 soap_getenv_cookies(struct soap*);
1786  SOAP_FMAC1 extern struct soap_cookie* SOAP_FMAC2 soap_copy_cookies(struct soap*);
1787  SOAP_FMAC1 extern void SOAP_FMAC2 soap_free_cookies(struct soap*);
1788 #endif
1789 
1790 #ifdef __cplusplus
1791 }
1792 #endif
1793 
1794 #endif
1795 #endif
size_t(* frecv)(struct soap *, char *, size_t)
Definition: stdsoap2.h:1265
SOAP_FMAC1 LONG64 *SOAP_FMAC2 soap_inLONG64(struct soap *, const char *tag, LONG64 *p, const char *, int)
char tmpbuf[1024]
Definition: stdsoap2.h:1310
void(* fdimewriteclose)(struct soap *, void *)
Definition: stdsoap2.h:1276
char msgbuf[1024]
Definition: stdsoap2.h:1311
const char * id
Definition: stdsoap2.h:1127
SOAP_FMAC1 void SOAP_FMAC2 soap_begin_count(struct soap *)
SOAP_FMAC1 wchar_t **SOAP_FMAC2 soap_inwliteral(struct soap *, const char *tag, wchar_t **p)
SOAP_FMAC1 int SOAP_FMAC2 soap_putbase64(struct soap *, const unsigned char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_recv(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_outunsignedLong(struct soap *, const char *tag, int id, const unsigned long *p, const char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_envelope_begin_out(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_response(struct soap *, int)
size_t lablen
Definition: stdsoap2.h:1307
Definition: stdsoap2.h:1115
SOAP_FMAC1 int SOAP_FMAC2 soap_attribute(struct soap *, const char *, const char *)
SOAP_FMAC1 int SOAP_FMAC2 soap_string_out(struct soap *, const char *s, int flag)
SOAP_FMAC1 int SOAP_FMAC2 soap_outint(struct soap *, const char *tag, int id, const int *p, const char *, int)
SOAP_FMAC1 void SOAP_FMAC2 soap_print_fault(struct soap *, FILE *)
SOAP_FMAC1 int SOAP_FMAC2 soap_poll(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_element_begin_in(struct soap *, const char *tag, int nillable)
short alloced
Definition: stdsoap2.h:1329
short keep_alive
Definition: stdsoap2.h:1331
struct soap_blist * blist
Definition: stdsoap2.h:1239
SOAP_FMAC1 soap_wchar SOAP_FMAC2 soap_skip(struct soap *)
SOAP_FMAC1 char *SOAP_FMAC2 soap_putsizes(struct soap *, const char *, const int *, int)
const char * in
Definition: stdsoap2.h:991
SOAP_FMAC1 int SOAP_FMAC2 soap_element_null(struct soap *, const char *tag, int id, const char *type)
bool operator!=(const keyed_iterator< Type > &l, const keyed_iterator< const Type > &r)
Definition: keyed_iterator.hpp:122
char * prolog
Definition: stdsoap2.h:1339
const char * cookie_domain
Definition: stdsoap2.h:1363
SOAP_FMAC1 int SOAP_FMAC2 soap_outLONG64(struct soap *, const char *tag, int id, const LONG64 *p, const char *, int)
SOAP_FMAC1 unsigned char *SOAP_FMAC2 soap_getbase64(struct soap *, int *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_outliteral(struct soap *, const char *tag, char *const *p)
SOAP_FMAC1 int SOAP_FMAC2 soap_flush(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_move(struct soap *, long)
void * is
Definition: stdsoap2.h:1286
SOAP_FMAC1 int SOAP_FMAC2 soap_recv_raw(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_outshort(struct soap *, const char *tag, int id, const short *p, const char *, int)
int socket_flags
Definition: stdsoap2.h:1232
int recvfd
Definition: stdsoap2.h:1290
struct soap_dom_element * dom
Definition: stdsoap2.h:1352
const char * dime_id_format
Definition: stdsoap2.h:1223
SOAP_FMAC1 int SOAP_FMAC2 soap_s2LONG64(struct soap *, const char *, LONG64 *)
SOAP_FMAC1 const char *SOAP_FMAC2 soap_long2s(struct soap *, long)
SOAP_FMAC1 int SOAP_FMAC2 soap_getsizes(const char *, int *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_flush_raw(struct soap *, const char *, size_t)
size_t chunksize
Definition: stdsoap2.h:1080
int error
Definition: stdsoap2.h:1347
struct soap_plugin * plugins
Definition: stdsoap2.h:1247
SOAP_FMAC1 int SOAP_FMAC2 soap_s2unsignedShort(struct soap *, const char *, unsigned short *)
SOAP_FMAC1 char *SOAP_FMAC2 soap_string_in(struct soap *, int, long, long)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2byte(struct soap *, const char *, char *)
unsigned long ip
Definition: stdsoap2.h:1351
SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_new1(int)
struct soap_multipart * list
Definition: stdsoap2.h:1100
SOAP_FMAC1 int SOAP_FMAC2 soap_connect(struct soap *, const char *, const char *)
int(* faccept)(struct soap *, int, struct sockaddr *, int *n)
Definition: stdsoap2.h:1262
char href[SOAP_TAGLEN]
Definition: stdsoap2.h:1314
SOAP_FMAC1 void SOAP_FMAC2 soap_unlink(struct soap *, const void *)
SOAP_FMAC1 time_t *SOAP_FMAC2 soap_indateTime(struct soap *, const char *tag, time_t *p, const char *, int)
const char * nstr
Definition: stdsoap2.h:1140
SOAP_FMAC1 void SOAP_FMAC2 soap_print_fault_location(struct soap *, FILE *)
int sendfd
Definition: stdsoap2.h:1289
short part
Definition: stdsoap2.h:1328
SOAP_FMAC1 int SOAP_FMAC2 soap_tag_cmp(const char *, const char *)
#define SOAP_IDHASH
Definition: stdsoap2.h:664
SOAP_FMAC1 void SOAP_FMAC2 soap_serializefault(struct soap *)
struct soap_ilist * next
Definition: stdsoap2.h:1421
SOAP_FMAC1 void SOAP_FMAC2 soap_set_fault(struct soap *)
SOAP_FMAC1 const char **SOAP_FMAC2 soap_faultcode(struct soap *)
struct soap_plist * next
Definition: stdsoap2.h:1016
char * action
Definition: stdsoap2.h:1337
SOAP_FMAC1 char *SOAP_FMAC2 soap_save_block(struct soap *, char *, int)
Definition: stdsoap2.h:988
SOAP_FMAC1 size_t SOAP_FMAC2 soap_hash(const char *)
SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_new2(int, int)
soap_mode imode
Definition: stdsoap2.h:1219
SOAP_FMAC1 int SOAP_FMAC2 soap_set_mime_attachment(struct soap *, char *ptr, size_t size, enum soap_mime_encoding encoding, const char *type, const char *id, const char *location, const char *description)
soap_mode mode
Definition: stdsoap2.h:1218
SOAP_FMAC1 int SOAP_FMAC2 soap_element_result(struct soap *, const char *tag)
SOAP_FMAC1 int SOAP_FMAC2 soap_embed(struct soap *soap, const void *p, const struct soap_array *a, int n, const char *tag, int type)
SOAP_FMAC1 unsigned char *SOAP_FMAC2 soap_inunsignedByte(struct soap *, const char *tag, unsigned char *p, const char *, int)
short visible
Definition: stdsoap2.h:1039
SOAP_FMAC1 int SOAP_FMAC2 soap_body_end_in(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_outULONG64(struct soap *, const char *tag, int id, const ULONG64 *p, const char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_outunsignedInt(struct soap *, const char *tag, int id, const unsigned int *p, const char *, int)
SOAP_FMAC1 int soap_envelope_end_out(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_putdimehdr(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_new_block(struct soap *)
size_t size
Definition: stdsoap2.h:1126
int(* fserveloop)(struct soap *)
Definition: stdsoap2.h:1271
SOAP_FMAC1 int SOAP_FMAC2 soap_body_end_out(struct soap *)
SOAP_FMAC1 char *SOAP_FMAC2 soap_putoffsets(struct soap *, const int *, int)
const char * http_version
Definition: stdsoap2.h:1224
Definition: stdsoap2.h:1215
SOAP_FMAC1 int SOAP_FMAC2 soap_puthex(struct soap *, const unsigned char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_body_begin_out(struct soap *)
int(* fdisconnect)(struct soap *)
Definition: stdsoap2.h:1258
int positions[SOAP_MAXDIMS]
Definition: stdsoap2.h:1322
struct soap_flist * next
Definition: stdsoap2.h:1412
soap_int32 soap_wchar
Definition: stdsoap2.h:604
struct SOAP_ENV__Fault * fault
Definition: stdsoap2.h:1245
SOAP_FMAC1 int SOAP_FMAC2 soap_set_attr(struct soap *soap, const char *name, const char *value)
void * link
Definition: stdsoap2.h:1424
#define soap_strtol(s, t, b)
Definition: stdsoap2.h:1451
SOAP_FMAC1 void *SOAP_FMAC2 soap_id_forward(struct soap *, const char *id, void *p, int st, int tt, size_t n, unsigned int k, void(*fcopy)(struct soap *, int, int, void *, const void *, size_t))
SOAP_FMAC1 void SOAP_FMAC2 soap_set_embedded(struct soap *, struct soap_plist *)
#define SOAP_BUFLEN
Definition: stdsoap2.h:643
size_t size
Definition: stdsoap2.h:1079
SOAP_FMAC1 const char *SOAP_FMAC2 soap_value(struct soap *)
struct soap_plugin * next
Definition: stdsoap2.h:1433
short ns
Definition: stdsoap2.h:1327
SOAP_FMAC1 const char *SOAP_FMAC2 soap_unsignedInt2s(struct soap *, unsigned int)
size_t chunksize
Definition: stdsoap2.h:1332
const char * location
Definition: stdsoap2.h:1131
SOAP_FMAC1 int SOAP_FMAC2 soap_s2ULONG64(struct soap *, const char *, ULONG64 *)
short version
Definition: stdsoap2.h:1216
int accept_timeout
Definition: stdsoap2.h:1231
unsigned int level
Definition: stdsoap2.h:1303
SOAP_FMAC1 int SOAP_FMAC2 soap_pointer_enter(struct soap *, const void *p, const struct soap_array *a, int n, int t, struct soap_plist **)
const struct soap_array * array
Definition: stdsoap2.h:1018
SOAP_FMAC1 void SOAP_FMAC2 soap_delete(struct soap *, void *)
SOAP_FMAC1 int SOAP_FMAC2 soap_getposition(const char *, int *)
SOAP_FMAC1 int SOAP_FMAC2 soap_body_begin_in(struct soap *)
char mark1
Definition: stdsoap2.h:1021
SOAP_FMAC1 const char *SOAP_FMAC2 soap_int2s(struct soap *, int)
soap_mime_encoding
Definition: stdsoap2.h:1111
const struct Namespace * namespaces
Definition: stdsoap2.h:1236
const char * proxy_host
Definition: stdsoap2.h:1342
Definition: stdsoap2.h:1420
SOAP_FMAC1 char *SOAP_FMAC2 soap_next_block(struct soap *)
char * ptr
Definition: stdsoap2.h:1083
SOAP_FMAC1 int SOAP_FMAC2 soap_s2float(struct soap *, const char *, float *)
SOAP_FMAC1 int SOAP_FMAC2 soap_element_dime(struct soap *, const char *, int, const void *, const struct soap_array *, const char *, const char *, const char *, int, const char *, int)
#define soap_int32
Definition: stdsoap2.h:600
SOAP_FMAC1 const char *SOAP_FMAC2 soap_unsignedByte2s(struct soap *, unsigned char)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2unsignedLong(struct soap *, const char *, unsigned long *)
struct soap_multipart * list
Definition: stdsoap2.h:1087
int type
Definition: stdsoap2.h:1182
SOAP_FMAC1 const char *SOAP_FMAC2 soap_decode_key(char *, size_t, const char *)
const char * id
Definition: stdsoap2.h:1434
int(* fcopy)(struct soap *soap, struct soap_plugin *dst, struct soap_plugin *src)
Definition: stdsoap2.h:1436
enum soap_mime_encoding encoding
Definition: stdsoap2.h:1130
struct soap * soap
Definition: stdsoap2.h:1184
SOAP_FMAC1 int SOAP_FMAC2 soap_pointer_lookup_id(struct soap *, void *p, int t, struct soap_plist **)
SOAP_FMAC1 int SOAP_FMAC2 soap_accept(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_putdime(struct soap *)
SOAP_FMAC1 const char *SOAP_FMAC2 soap_attr_value(struct soap *soap, const char *name, int flag)
#define SOAP_MAXDIMS
Definition: stdsoap2.h:683
SOAP_FMAC1 void SOAP_FMAC2 soap_begin(struct soap *)
SOAP_FMAC1 void SOAP_FMAC2 soap_end_block(struct soap *)
SOAP_FMAC1 soap_wchar SOAP_FMAC2 soap_getutf8(struct soap *)
struct soap_clist * clist
Definition: stdsoap2.h:1240
char * name
Definition: stdsoap2.h:1179
struct soap_dom_element * prnt
Definition: stdsoap2.h:1175
char arraySize[SOAP_TAGLEN]
Definition: stdsoap2.h:1317
SOAP_FMAC1 int SOAP_FMAC2 soap_s2short(struct soap *, const char *, short *)
SOAP_FMAC1 int SOAP_FMAC2 soap_outlong(struct soap *, const char *tag, int id, const long *p, const char *, int)
size_t(* fdimeread)(struct soap *, void *, char *, size_t)
Definition: stdsoap2.h:1277
SOAP_FMAC1 soap_wchar SOAP_FMAC2 soap_get(struct soap *)
struct soap_attribute * next
Definition: stdsoap2.h:1035
SOAP_FMAC1 int SOAP_FMAC2 soap_lookup_type(struct soap *, const char *id)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2unsignedByte(struct soap *, const char *, unsigned char *)
SOAP_FMAC1 const char *SOAP_FMAC2 soap_dateTime2s(struct soap *, time_t)
int(* fpoll)(struct soap *)
Definition: stdsoap2.h:1266
const char * string
Definition: stdsoap2.h:1407
SOAP_FMAC1 int SOAP_FMAC2 soap_outdouble(struct soap *, const char *tag, int id, const double *p, const char *, int)
char * ns
Definition: stdsoap2.h:999
struct Namespace * local_namespaces
Definition: stdsoap2.h:1237
short peeked
Definition: stdsoap2.h:1330
SOAP_FMAC1 int SOAP_FMAC2 soap_element_end_out(struct soap *, const char *tag)
SOAP_FMAC1 float *SOAP_FMAC2 soap_infloat(struct soap *, const char *tag, float *p, const char *, int)
char * authrealm
Definition: stdsoap2.h:1338
const char * actor
Definition: stdsoap2.h:1227
int errmode
Definition: stdsoap2.h:1348
SOAP_NMAC struct Namespace namespaces[]
int type
Definition: stdsoap2.h:1422
SOAP_FMAC1 void SOAP_FMAC2 soap_done(struct soap *)
soap_int32 soap_mode
Definition: stdsoap2.h:888
soap_wchar ahead
Definition: stdsoap2.h:1300
Definition: stdsoap2.h:1116
#define soap_strtoul(s, t, b)
Definition: stdsoap2.h:1457
SOAP_FMAC1 int SOAP_FMAC2 soap_set_namespaces(struct soap *, struct Namespace *)
SOAP_FMAC1 int SOAP_FMAC2 soap_getmimehdr(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_envelope_begin_in(struct soap *)
SOAP_FMAC1 struct soap_multipart *SOAP_FMAC2 soap_next_multipart(struct soap_multipart *)
int(* fresolve)(struct soap *, const char *, struct in_addr *inaddr)
Definition: stdsoap2.h:1256
const char * options
Definition: stdsoap2.h:1086
SOAP_FMAC1 double *SOAP_FMAC2 soap_indouble(struct soap *, const char *tag, double *p, const char *, int)
char arrayOffset[SOAP_TAGLEN]
Definition: stdsoap2.h:1318
SOAP_FMAC1 void SOAP_FMAC2 soap_clr_dime(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_recv_header(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_register_plugin_arg(struct soap *, int(*fcreate)(struct soap *, struct soap_plugin *, void *), void *)
SOAP_FMAC1 const char *SOAP_FMAC2 soap_get_header_attribute(struct soap *, const char *, const char *)
Definition: stdsoap2.h:995
int type
Definition: stdsoap2.h:1413
#define SOAP_SOCKET
Definition: stdsoap2.h:570
SOAP_FMAC1 int SOAP_FMAC2 soap_set_dime_attachment(struct soap *, char *ptr, size_t size, const char *type, const char *id, unsigned short optype, const char *option)
unsigned int level
Definition: stdsoap2.h:1428
SOAP_FMAC1 const char *SOAP_FMAC2 soap_unsignedShort2s(struct soap *, unsigned short)
wchar_t * wide
Definition: stdsoap2.h:1143
SOAP_FMAC1 unsigned long *SOAP_FMAC2 soap_inunsignedLong(struct soap *, const char *tag, unsigned long *p, const char *, int)
char * out
Definition: stdsoap2.h:992
SOAP_FMAC1 int SOAP_FMAC2 soap_connect_command(struct soap *, int, const char *, const char *)
const char * http_content
Definition: stdsoap2.h:1225
SOAP_FMAC1 int SOAP_FMAC2 soap_array_begin_out(struct soap *, const char *tag, int id, const char *type, const char *offset)
Definition: stdsoap2.h:1026
SOAP_FMAC1 int SOAP_FMAC2 soap_pututf8(struct soap *, unsigned long)
SOAP_FMAC1 soap_wchar SOAP_FMAC2 soap_advance(struct soap *)
int master
Definition: stdsoap2.h:1279
#define SOAP_FMAC1
Definition: stdsoap2.h:83
SOAP_FMAC1 int SOAP_FMAC2 soap_send3(struct soap *, const char *, const char *, const char *)
SOAP_FMAC1 int SOAP_FMAC2 soap_closesock(struct soap *)
char * ns
Definition: stdsoap2.h:1038
SOAP_FMAC1 void SOAP_FMAC2 soap_serializeheader(struct soap *)
size_t size
Definition: stdsoap2.h:1006
int(* fpreparesend)(struct soap *, const char *, size_t)
Definition: stdsoap2.h:1268
bool operator==(const keyed_iterator< Type > &l, const keyed_iterator< const Type > &r)
Definition: keyed_iterator.hpp:114
short index
Definition: stdsoap2.h:998
SOAP_FMAC1 const char *SOAP_FMAC2 soap_decode_val(char *, size_t, const char *)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2dateTime(struct soap *, const char *, time_t *)
void * ptr
Definition: stdsoap2.h:1427
Definition: stdsoap2.h:1123
SOAP_FMAC1 const char **SOAP_FMAC2 soap_faultstring(struct soap *)
soap_mode omode
Definition: stdsoap2.h:1220
unsigned long idnum
Definition: stdsoap2.h:1350
Definition: stdsoap2.h:1173
SOAP_FMAC1 int SOAP_FMAC2 soap_sender_fault(struct soap *, const char *, const char *)
int(* fposthdr)(struct soap *, const char *, const char *)
Definition: stdsoap2.h:1252
Definition: stdsoap2.h:1411
size_t count
Definition: stdsoap2.h:1078
short encoding
Definition: stdsoap2.h:1324
int(* fdimewrite)(struct soap *, void *, const char *, size_t)
Definition: stdsoap2.h:1278
unsigned int level
Definition: stdsoap2.h:1415
SOAP_FMAC1 const char **SOAP_FMAC2 soap_faultdetail(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_element_end_in(struct soap *, const char *tag)
SOAP_FMAC1 unsigned int *SOAP_FMAC2 soap_inunsignedInt(struct soap *, const char *tag, unsigned int *p, const char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_envelope_end_in(struct soap *)
SOAP_FMAC1 void SOAP_FMAC2 soap_end(struct soap *)
Definition: stdsoap2.h:1405
int send_timeout
Definition: stdsoap2.h:1229
SOAP_FMAC1 void SOAP_FMAC2 soap_pop_block(struct soap *)
const char * ns
Definition: stdsoap2.h:990
void * alist
Definition: stdsoap2.h:1241
SOAP_FMAC1 int SOAP_FMAC2 soap_send_fault(struct soap *)
CDenseVector< Type > operator*(const CVector< Type > &v, const Type &s)
Definition: CDenseVector.h:483
int bind_flags
Definition: stdsoap2.h:1234
Definition: stdsoap2.h:1034
SOAP_FMAC1 const char *SOAP_FMAC2 soap_str_code(const struct soap_code_map *, long code)
Definition: stdsoap2.h:1432
SOAP_FMAC1 ULONG64 *SOAP_FMAC2 soap_inULONG64(struct soap *, const char *tag, ULONG64 *p, const char *, int)
SOAP_FMAC1 char **SOAP_FMAC2 soap_inliteral(struct soap *, const char *tag, char **p)
void(* fcopy)(struct soap *, int, int, void *, const void *, size_t)
Definition: stdsoap2.h:1416
Definition: soapStub.h:154
SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_copy_context(struct soap *, struct soap *)
const char * start
Definition: stdsoap2.h:1099
struct soap_dom_element * next
Definition: stdsoap2.h:1174
SOAP_FMAC1 int SOAP_FMAC2 soap_embedded_id(struct soap *, int id, const void *p, int t)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2string(struct soap *, const char *, char **)
char * ptr
Definition: stdsoap2.h:1125
SOAP_FMAC1 void SOAP_FMAC2 soap_free(struct soap *)
SOAP_FMAC1 wchar_t *SOAP_FMAC2 soap_wstring_in(struct soap *, int, long, long)
short cdata
Definition: stdsoap2.h:1301
SOAP_FMAC1 int SOAP_FMAC2 soap_outfloat(struct soap *, const char *tag, int id, const float *p, const char *, int)
const char * proxy_userid
Definition: stdsoap2.h:1344
SOAP_FMAC1 int SOAP_FMAC2 soap_end_recv(struct soap *)
size_t size
Definition: stdsoap2.h:1037
SOAP_FMAC1 int SOAP_FMAC2 soap_resolve(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_element_href(struct soap *, const char *tag, int id, const char *ref, const char *val)
SOAP_FMAC1 int SOAP_FMAC2 soap_size(const int *, int)
SOAP_FMAC1 wchar_t **SOAP_FMAC2 soap_inwstring(struct soap *, const char *tag, wchar_t **p, const char *, int, long, long)
SOAP_FMAC1 void SOAP_FMAC2 soap_clr_attr(struct soap *soap)
SOAP_FMAC1 int SOAP_FMAC2 soap_element_begin_out(struct soap *, const char *tag, int id, const char *type)
void * user
Definition: stdsoap2.h:1246
SOAP_FMAC1 int SOAP_FMAC2 soap_array_reference(struct soap *, const void *p, const struct soap_array *a, int n, int t)
unsigned int level
Definition: stdsoap2.h:997
SOAP_FMAC1 struct soap_clist *SOAP_FMAC2 soap_link(struct soap *, void *, int, int, void(*fdelete)(struct soap_clist *))
Definition: stdsoap2.h:1015
SOAP_FMAC1 int SOAP_FMAC2 soap_match_namespace(struct soap *, const char *, const char *, int n1, int n2)
void * ptr
Definition: stdsoap2.h:1414
SOAP_FMAC1 void SOAP_FMAC2 soap_set_dime(struct soap *)
Definition: stdsoap2.h:1009
struct SOAP_ENV__Header * header
Definition: stdsoap2.h:1244
SOAP_FMAC1 void SOAP_FMAC2 soap_init2(struct soap *, int, int)
const char * proxy_passwd
Definition: stdsoap2.h:1345
SOAP_FMAC1 void SOAP_FMAC2 soap_pop_namespace(struct soap *)
SOAP_FMAC1 char *SOAP_FMAC2 soap_strdup(struct soap *, const char *)
const char * type
Definition: stdsoap2.h:1085
SOAP_FMAC1 const char *SOAP_FMAC2 soap_LONG642s(struct soap *, LONG64)
SOAP_FMAC1 int SOAP_FMAC2 soap_element_start_end_out(struct soap *, const char *tag)
SOAP_FMAC1 const char *SOAP_FMAC2 soap_byte2s(struct soap *, char)
Definition: stdsoap2.h:1119
SOAP_FMAC1 int SOAP_FMAC2 soap_putheader(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2long(struct soap *, const char *, long *)
int errnum
Definition: stdsoap2.h:1349
struct soap_multipart * last
Definition: stdsoap2.h:1088
SOAP_FMAC1 int SOAP_FMAC2 soap_is_single(struct soap *, struct soap_plist *)
SOAP_FMAC1 int *SOAP_FMAC2 soap_inint(struct soap *, const char *tag, int *p, const char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_set_sender_error(struct soap *, const char *, const char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_peek_element(struct soap *)
struct soap_nlist * next
Definition: stdsoap2.h:996
SOAP_FMAC1 unsigned short *SOAP_FMAC2 soap_inunsignedShort(struct soap *, const char *tag, unsigned short *p, const char *, int)
SOAP_FMAC1 void SOAP_FMAC2 soap_set_endpoint(struct soap *, const char *)
struct soap_multipart * next
Definition: stdsoap2.h:1124
int(* fshutdownsocket)(struct soap *, SOAP_SOCKET, int)
Definition: stdsoap2.h:1260
SOAP_FMAC1 int SOAP_FMAC2 soap_pointer_lookup(struct soap *, const void *p, int t, struct soap_plist **)
size_t labidx
Definition: stdsoap2.h:1308
SOAP_FMAC1 void *SOAP_FMAC2 soap_push_block(struct soap *, size_t)
#define ULONG64
Definition: stdsoap2.h:583
SOAP_FMAC1 int SOAP_FMAC2 soap_getheader(struct soap *)
Definition: stdsoap2.h:1112
SOAP_FMAC1 int SOAP_FMAC2 soap_reference(struct soap *, const void *p, int t)
struct soap_multipart * last
Definition: stdsoap2.h:1101
char * labbuf
Definition: stdsoap2.h:1306
struct soap_dom_attribute * next
Definition: stdsoap2.h:1139
struct soap_attribute * attributes
Definition: stdsoap2.h:1323
#define SOAP_PTRHASH
Definition: stdsoap2.h:657
int connect_flags
Definition: stdsoap2.h:1233
size_t bufidx
Definition: stdsoap2.h:1298
SOAP_FMAC1 char *SOAP_FMAC2 soap_putoffset(struct soap *, int)
int recv_timeout
Definition: stdsoap2.h:1228
int id
Definition: stdsoap2.h:1020
int __size
Definition: stdsoap2.h:1011
SOAP_FMAC1 char *SOAP_FMAC2 soap_first_block(struct soap *)
int(* fsend)(struct soap *, const char *, size_t)
Definition: stdsoap2.h:1264
Definition: stdsoap2.h:735
void * copy
Definition: stdsoap2.h:1425
char type[SOAP_TAGLEN]
Definition: stdsoap2.h:1315
const void * ptr
Definition: stdsoap2.h:1017
SOAP_FMAC1 int SOAP_FMAC2 soap_match_array(struct soap *, const char *)
char name[1]
Definition: stdsoap2.h:1040
int port
Definition: stdsoap2.h:1340
Definition: stdsoap2.h:1097
SOAP_FMAC1 int SOAP_FMAC2 soap_outbyte(struct soap *, const char *tag, int id, const char *p, const char *, int)
void * node
Definition: stdsoap2.h:1183
SOAP_FMAC1 struct soap_ilist *SOAP_FMAC2 soap_lookup(struct soap *, const char *)
short mustUnderstand
Definition: stdsoap2.h:1325
int(* fparsehdr)(struct soap *, const char *, const char *)
Definition: stdsoap2.h:1255
SOAP_FMAC1 int SOAP_FMAC2 soap_send_raw(struct soap *, const char *, size_t)
SOAP_FMAC1 int SOAP_FMAC2 soap_puthttphdr(struct soap *, int status, size_t count)
SOAP_FMAC1 int SOAP_FMAC2 soap_ssl_client_context(struct soap *, unsigned short, const char *, const char *, const char *, const char *, const char *)
SOAP_FMAC1 int SOAP_FMAC2 soap_is_embedded(struct soap *, struct soap_plist *)
char * boundary
Definition: stdsoap2.h:1098
SOAP_FMAC1 void *SOAP_FMAC2 soap_id_lookup(struct soap *, const char *id, void **p, int t, size_t n, unsigned int k)
int(* fprepareinit)(struct soap *)
Definition: stdsoap2.h:1267
void * os
Definition: stdsoap2.h:1285
SOAP_FMAC1 const char *SOAP_FMAC2 soap_float2s(struct soap *, float)
SOAP_FMAC1 char *SOAP_FMAC2 soap_inbyte(struct soap *, const char *tag, char *p, const char *, int)
SOAP_FMAC1 void SOAP_FMAC2 soap_init1(struct soap *, int)
const char * float_format
Definition: stdsoap2.h:1221
void(* fdelete)(struct soap_clist *)
Definition: stdsoap2.h:1031
SOAP_FMAC1 int SOAP_FMAC2 soap_element(struct soap *, const char *, int, const char *)
void * data
Definition: stdsoap2.h:1435
SOAP_FMAC1 int SOAP_FMAC2 soap_outwliteral(struct soap *, const char *tag, wchar_t *const *p)
unsigned int max_keep_alive
Definition: stdsoap2.h:1341
SOAP_FMAC1 long *SOAP_FMAC2 soap_inlong(struct soap *, const char *tag, long *p, const char *, int)
SOAP_FMAC1 size_t SOAP_FMAC2 soap_tell(struct soap *)
#define soap_strrchr(s, t)
Definition: stdsoap2.h:1445
SOAP_FMAC1 int SOAP_FMAC2 soap_outstring(struct soap *, const char *tag, int id, char *const *p, const char *, int)
void(* fdelete)(struct soap *soap, struct soap_plugin *p)
Definition: stdsoap2.h:1437
SOAP_FMAC1 int SOAP_FMAC2 soap_ssl_accept(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_bind(struct soap *, const char *, int, int)
SOAP_FMAC1 void SOAP_FMAC2 soap_fault(struct soap *)
SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_copy(struct soap *)
SOAP_FMAC1 void SOAP_FMAC2 soap_revert(struct soap *)
int status
Definition: stdsoap2.h:1346
char * name
Definition: stdsoap2.h:1141
int(* fresponse)(struct soap *, int, size_t)
Definition: stdsoap2.h:1253
SOAP_FMAC1 int SOAP_FMAC2 soap_getmime(struct soap *)
char * userid
Definition: stdsoap2.h:1248
const char * description
Definition: stdsoap2.h:1132
#define SOAP_TAGLEN
Definition: stdsoap2.h:673
int cookie_max
Definition: stdsoap2.h:1365
SOAP_FMAC1 void SOAP_FMAC2 soap_retry(struct soap *)
Definition: stdsoap2.h:1138
SOAP_FMAC1 void SOAP_FMAC2 soap_fcopy(struct soap *soap, int st, int tt, void *p, const void *q, size_t n)
size_t length
Definition: stdsoap2.h:1305
SOAP_FMAC1 const struct soap_code_map *SOAP_FMAC2 soap_code(const struct soap_code_map *, const char *str)
Definition: stdsoap2.h:1117
SOAP_FMAC1 unsigned char *SOAP_FMAC2 soap_gethex(struct soap *, int *)
SOAP_FMAC1 int SOAP_FMAC2 soap_outwstring(struct soap *, const char *tag, int id, wchar_t *const *p, const char *, int)
struct soap_flist * flist
Definition: stdsoap2.h:1426
SOAP_FMAC1 int SOAP_FMAC2 soap_getdimehdr(struct soap *)
SOAP_FMAC1 char *SOAP_FMAC2 soap_dime_option(struct soap *, unsigned short, const char *)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2int(struct soap *, const char *, int *)
char * data
Definition: stdsoap2.h:1142
SOAP_FMAC1 int SOAP_FMAC2 soap_s2double(struct soap *, const char *, double *)
SOAP_FMAC1 void *SOAP_FMAC2 soap_id_enter(struct soap *, const char *id, void *p, int t, size_t n, unsigned int k, const char *type, const char *arrayType, void *(*finstantiate)(struct soap *, int, const char *, const char *, size_t *))
SOAP_FMAC1 const char *SOAP_FMAC2 soap_short2s(struct soap *, short)
void * ptr
Definition: stdsoap2.h:1028
SOAP_FMAC1 char *SOAP_FMAC2 soap_putsizesoffsets(struct soap *, const char *, const int *, const int *, int)
void(* fdimereadclose)(struct soap *, void *)
Definition: stdsoap2.h:1275
int type
Definition: stdsoap2.h:1029
#define SOAP_FMAC2
Definition: stdsoap2.h:87
short position
Definition: stdsoap2.h:1321
char buf[SOAP_BUFLEN]
Definition: stdsoap2.h:1309
const char * id
Definition: stdsoap2.h:1084
SOAP_FMAC1 struct soap *SOAP_FMAC2 soap_new(void)
char flags
Definition: stdsoap2.h:1082
int connect_timeout
Definition: stdsoap2.h:1230
SOAP_FMAC1 const char *SOAP_FMAC2 soap_base642s(struct soap *, const char *, char *, size_t, size_t *)
int proxy_port
Definition: stdsoap2.h:1343
const char * cookie_path
Definition: stdsoap2.h:1364
ostream & operator<<(ostream &stream, const CDenseVector< Type > &vec)
Definition: CDenseVector.h:434
SOAP_FMAC1 short *SOAP_FMAC2 soap_inshort(struct soap *, const char *tag, short *p, const char *, int)
int(* fpreparerecv)(struct soap *, const char *, size_t)
Definition: stdsoap2.h:1269
int(* fclosesocket)(struct soap *, SOAP_SOCKET)
Definition: stdsoap2.h:1259
SOAP_FMAC1 int SOAP_FMAC2 soap_outunsignedByte(struct soap *, const char *tag, int id, const unsigned char *p, const char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_outdateTime(struct soap *, const char *tag, int id, const time_t *p, const char *, int)
long code
Definition: stdsoap2.h:1406
SOAP_FMAC1 int SOAP_FMAC2 soap_element_ref(struct soap *, const char *tag, int id, int href)
struct soap_dom_attribute * atts
Definition: stdsoap2.h:1177
Definition: stdsoap2.h:1003
SOAP_FMAC1 void SOAP_FMAC2 soap_cleanup(struct soap *)
size_t chunkbuflen
Definition: stdsoap2.h:1333
SOAP_FMAC1 int SOAP_FMAC2 soap_getdime(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_send(struct soap *, const char *)
const char * options
Definition: stdsoap2.h:1129
SOAP_FMAC1 size_t SOAP_FMAC2 soap_block_size(struct soap *)
struct soap_dom_element * elts
Definition: stdsoap2.h:1176
void * __ptr
Definition: stdsoap2.h:1010
SOAP_FMAC1 int SOAP_FMAC2 soap_push_namespace(struct soap *, const char *, const char *)
wchar_t * wide
Definition: stdsoap2.h:1181
SOAP_FMAC1 int SOAP_FMAC2 soap_match_tag(struct soap *, const char *, const char *)
char arrayType[SOAP_TAGLEN]
Definition: stdsoap2.h:1316
SOAP_FMAC1 void SOAP_FMAC2 soap_init(struct soap *)
#define LONG64
Definition: stdsoap2.h:582
SOAP_FMAC1 int SOAP_FMAC2 soap_putmime(struct soap *)
SOAP_FMAC1 void SOAP_FMAC2 soap_set_mime(struct soap *, const char *boundary, const char *start)
Definition: stdsoap2.h:1077
short body
Definition: stdsoap2.h:1302
SOAP_FMAC1 int SOAP_FMAC2 soap_getline(struct soap *, char *, int)
char mark2
Definition: stdsoap2.h:1022
SOAP_FMAC1 char *SOAP_FMAC2 soap_s2base64(struct soap *, const unsigned char *, char *, size_t)
char * data
Definition: stdsoap2.h:1180
size_t buflen
Definition: stdsoap2.h:1081
int socket
Definition: stdsoap2.h:1280
SOAP_FMAC1 size_t SOAP_FMAC2 soap_size_block(struct soap *, size_t)
int(* fignore)(struct soap *, const char *)
Definition: stdsoap2.h:1270
#define SOAP_NMAC
Definition: stdsoap2.h:119
const char * type
Definition: stdsoap2.h:1128
short copy
Definition: stdsoap2.h:1217
SOAP_FMAC1 int SOAP_FMAC2 soap_set_receiver_error(struct soap *, const char *, const char *, int)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2unsignedInt(struct soap *, const char *, unsigned int *)
SOAP_FMAC1 int SOAP_FMAC2 soap_getsize(const char *, const char *, int *)
SOAP_FMAC1 char *SOAP_FMAC2 soap_putsize(struct soap *, const char *, int)
SOAP_FMAC1 char **SOAP_FMAC2 soap_instring(struct soap *, const char *tag, char **p, const char *, int, int, long, long)
SOAP_FMAC1 void SOAP_FMAC2 soap_embedded(struct soap *, const void *p, int t)
SOAP_FMAC1 const char *SOAP_FMAC2 soap_QName2s(struct soap *, const char *)
short root
Definition: stdsoap2.h:1320
SOAP_FMAC1 int SOAP_FMAC2 soap_send2(struct soap *, const char *, const char *)
short null
Definition: stdsoap2.h:1326
SOAP_FMAC1 const char *SOAP_FMAC2 soap_double2s(struct soap *, double)
SOAP_FMAC1 int SOAP_FMAC2 soap_s2QName(struct soap *, const char *, char **)
SOAP_FMAC1 const char *SOAP_FMAC2 soap_ULONG642s(struct soap *, ULONG64)
SOAP_FMAC1 int SOAP_FMAC2 soap_begin_send(struct soap *)
short other
Definition: stdsoap2.h:1319
const char * double_format
Definition: stdsoap2.h:1222
int(* fget)(struct soap *)
Definition: stdsoap2.h:1251
char * ptr
Definition: stdsoap2.h:1005
const char * id
Definition: stdsoap2.h:989
SOAP_FMAC1 int SOAP_FMAC2 soap_putmimehdr(struct soap *, struct soap_multipart *)
SOAP_FMAC1 int SOAP_FMAC2 soap_wstring_out(struct soap *, const wchar_t *s, int flag)
#define SOAP_MAXLOGS
Definition: stdsoap2.h:687
size_t buflen
Definition: stdsoap2.h:1299
int accept_flags
Definition: stdsoap2.h:1235
const char * nstr
Definition: stdsoap2.h:1178
struct soap_blist * next
Definition: stdsoap2.h:1004
SOAP_FMAC1 int SOAP_FMAC2 soap_getoffsets(const char *, const int *, int *, int)
struct soap_clist * next
Definition: stdsoap2.h:1027
Definition: stdsoap2.h:1114
int type
Definition: stdsoap2.h:1019
struct soap_nlist * nlist
Definition: stdsoap2.h:1238
int(* fparse)(struct soap *)
Definition: stdsoap2.h:1254
Definition: soapStub.h:132
int size
Definition: stdsoap2.h:1030
SOAP_FMAC1 soap_wchar SOAP_FMAC2 soap_getchar(struct soap *)
struct soap_cookie * cookies
Definition: stdsoap2.h:1362
char * passwd
Definition: stdsoap2.h:1249
const char * encodingStyle
Definition: stdsoap2.h:1226
Definition: stdsoap2.h:1118
SOAP_FMAC1 int SOAP_FMAC2 soap_receiver_fault(struct soap *, const char *, const char *)
char * value
Definition: stdsoap2.h:1036
SOAP_FMAC1 int SOAP_FMAC2 soap_element_id(struct soap *, const char *tag, int id, const void *p, const struct soap_array *a, int d, const char *type, int n)
char tag[SOAP_TAGLEN]
Definition: stdsoap2.h:1312
unsigned int n2
Definition: stdsoap2.h:735
SOAP_FMAC1 int SOAP_FMAC2 soap_begin_recv(struct soap *)
int(* fopen)(struct soap *, const char *, const char *, int)
Definition: stdsoap2.h:1261
size_t size
Definition: stdsoap2.h:1423
SOAP_FMAC1 int SOAP_FMAC2 soap_outunsignedShort(struct soap *, const char *tag, int id, const unsigned short *p, const char *, int)
Definition: stdsoap2.h:1113
SOAP_FMAC1 const char *SOAP_FMAC2 soap_unsignedLong2s(struct soap *, unsigned long)
SOAP_FMAC1 int SOAP_FMAC2 soap_getfault(struct soap *)
SOAP_FMAC1 int SOAP_FMAC2 soap_end_send(struct soap *)
SOAP_FMAC1 void *SOAP_FMAC2 soap_lookup_plugin(struct soap *, const char *)
SOAP_FMAC1 void SOAP_FMAC2 soap_dealloc(struct soap *, void *)
SOAP_FMAC1 int SOAP_FMAC2 soap_putfault(struct soap *)
SOAP_FMAC1 struct soap_ilist *SOAP_FMAC2 soap_enter(struct soap *, const char *)
struct soap * soap
Definition: stdsoap2.h:1144
SOAP_FMAC1 void SOAP_FMAC2 soap_clr_mime(struct soap *)
const struct soap_double_nan soap_double_nan
size_t count
Definition: stdsoap2.h:1304
SOAP_FMAC1 int SOAP_FMAC2 soap_ssl_server_context(struct soap *, unsigned short, const char *, const char *, const char *, const char *, const char *, const char *, const char *)
SOAP_FMAC1 int SOAP_FMAC2 soap_array_pointer_lookup(struct soap *, const void *p, const struct soap_array *a, int n, int t, struct soap_plist **)
SOAP_FMAC1 void *SOAP_FMAC2 soap_malloc(struct soap *, size_t)
SOAP_FMAC1 long SOAP_FMAC2 soap_int_code(const struct soap_code_map *, const char *str, long other)
SOAP_FMAC1 int SOAP_FMAC2 soap_recv_fault(struct soap *)