[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: "Call stack" and "Connection Reset" issues.
Hi Scott,
I have downloaded the new version.
http://www.scottklement.com/httpapi/beta/httpapi.savf
The installation fails :
An error occurred during translation.
Historique des incidents mis à jour.
File d'attente en sortie QSCAPAROQ de QSC3431962 existe déjà.
La compilation a échoué. Le module HTTPXMLR4 n'a pas été créé dans la
bibliothèque LIBHTTP.
Erreur. RNS9309 non intercepté par INSTALL à la spécif 24900, inst
X'029A'.
Message RNS9309 reçu par INSTALL à l'instruction 24900. (C D I R)
Thanks for your help.
Stephane
-----Message d'origine-----
De : ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] De la part de ian
Envoyé : mercredi 29 août 2007 11:15
À : 'HTTPAPI and FTPAPI Projects'
Objet : RE: "Call stack" and "Connection Reset" issues.
Success.
I have tested 1.21 on V5R1 with following options:
SSL yes
Expat No
We use the procedures http_url_get() and http_url_post() In chunked and unchunked transmissions.
By the way, the list contact info at the end of the README source is out of date :-)
Regards
Ian Patterson
-----Original Message-----
From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx
[mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Scott Klement
Sent: 28 August 2007 23:42
To: HTTPAPI and FTPAPI Projects
Subject: Re: "Call stack" and "Connection Reset" issues.
hi Ian,
> Testing version 1.21 on V5R1
> Get the following error with running INSTALL: *LIBL/QSRVSRC.HTTPAPI2
> line 114: ***ERROR Symbol not defined:
> 'HTTP_XMLRETURNPTR'
Thanks for your feedback. I've fixed this problem, and updated the beta
code on my site. Can you please try again?
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 1
Commande . . . . . . . . . . . . : CRTRPGMOD
Emetteur . . . . . . . . . . . : GCPF
Module . . . . . . . . . . . . . : HTTPXMLR4
Bibliothèque . . . . . . . . . : LIBHTTP
Descriptif . . . . . . . . . . . : *SRCMBRTXT
Membre source . . . . . . . . . : HTTPXMLR4
Fichier source . . . . . . . . . : QRPGLESRC
Bibliothèque . . . . . . . . . : LIBHTTP
CCSID . . . . . . . . . . . . : 37
Descriptif . . . . . . . . . . . : Routines for XML parsing with EXPAT
Dernière modification . . . . . : 22/08/07 19:20:48
Niveau gravité pour génération . : 10
Options de compilation . . . . . : *XREF *GEN *NOSECLVL *SHOWCPY
*EXPDDS *EXT *NOSHOWSKP *NOSRCSTMT
*DEBUGIO *NOEVENTF
Vues de débogage . . . . . . . . : *LIST
Sortie . . . . . . . . . . . . . : *PRINT
Niveau d'optimisation . . . . . : *NONE
Indentation de la liste source . : *NONE
Options de conversion . . . . . : *NONE
Séquence de tri . . . . . . . . : *HEX
Identificateur de langue . . . . : *JOBRUN
Remplacer module . . . . . . . . : *YES
Droits . . . . . . . . . . . . . : *LIBCRTAUT
Tronquer valeurs numériques . . : *YES
Corriger valeurs numériques . . : *NONE
Edition du système cible . . . . : *CURRENT
Admettre valeurs indéfinies . . : *NO
Répertoire de liage . . . . . . : *NONE
Définir noms de condition. . . . : *NONE
Collecte de performance possible : *PEP
Données de profilage . . . . . . : *NOCOL
Options du microcode sous licence . :
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 2
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
L i s t e s o u r c e
1 /*- + 040728 000100
2 * Copyright (c) 2005-2007 Scott C. Klement + 070125 000200
3 * All rights reserved. + 040728 000300
4 * + 040728 000400
5 * Redistribution and use in source and binary forms, with or without + 040728 000500
6 * modification, are permitted provided that the following conditions + 040728 000600
7 * are met: + 040728 000700
8 * 1. Redistributions of source code must retain the above copyright + 040728 000800
9 * notice, this list of conditions and the following disclaimer. + 040728 000900
10 * 2. Redistributions in binary form must reproduce the above copyright + 040728 001000
11 * notice, this list of conditions and the following disclaimer in the + 040728 001100
12 * documentation and/or other materials provided with the distribution. + 040728 001200
13 * + 040728 001300
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS µµAS IS'' AND + 040728 001400
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + 040728 001500
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + 040728 001600
17 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + 040728 001700
18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + 040728 001800
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + 040728 001900
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + 040728 002000
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + 040728 002100
22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + 040728 002200
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + 040728 002300
24 * SUCH DAMAGE. + 040728 002400
25 * + 040728 002500
26 */ + 040728 002600
27 040728 002700
28 /* 040728 002800
29 * HTTPXMLR4 -- Parse XML responses from a host 040728 002900
30 * 040728 003000
31 * This uses the Expat service program to parse the XML 070125 003100
32 * response and return it to a call-back procedure. 040728 003200
33 * 040728 003300
34 */ 040728 003400
35 040728 003500
36 H COPYRIGHT('Copyright (c) 2004-2007 Scott C. Klement. All rights + 070125 003600
37 H reserved. A member called "LICENSE" was included with this + 040728 003700
38 H distribution, and contains important license information.') 040728 003800
39 040728 003900
40 H OPTION(*NOSHOWCPY: *SRCSTMT: *NODEBUGIO) 040728 004000
004100 H NOMAIN CCSID(*UCS2:1200) 060922 004100
004200 040728 004200
004300 /copy qrpglesrc,httpapi_h 060323 004300
LINES EXCLUDED: 0
*--------------------------------------------------------------------*
* Options de compilation utilisées : *
*--------------------------------------------------------------------*
* Descriptif . . . . . . . . . . . : *
* Routines for XML parsing with EXPAT *
* Niveau gravité pour génération . : 10 *
* Options de compilation . . . . . : *XREF *GEN *
* *NOSECLVL *NOSHOWCPY *
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 3
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
* *EXPDDS *EXT *
* *NOSHOWSKP *SRCSTMT *
* *NODEBUGIO *NOEVENTF *
* Niveau d'optimisation . . . . . : *NONE *
* Indentation de la liste source . : *NONE *
* Options de conversion . . . . . : *NONE *
* Séquence de tri . . . . . . . . : *HEX *
* Identificateur de langue . . . . : *JOBRUN *
* Droits . . . . . . . . . . . . . : *LIBCRTAUT *
* Tronquer valeurs numériques . . : *YES *
* Corriger valeurs numériques . . : *NONE *
* Admettre valeurs indéfinies . . : *NO *
* Répertoire de liage de commande : *NONE *
* Répertoire de liage du source . : *NONE *
* Collecte de performance possible : *PEP *
* Données de profilage . . . . . . : *NOCOL *
*--------------------------------------------------------------------*
LINES EXCLUDED: 0
LINES EXCLUDED: 0
LINES EXCLUDED: 0
LINES EXCLUDED: 0
LINES EXCLUDED: 0
LINES EXCLUDED: 0
LINES EXCLUDED: 0
004400 /copy qrpglesrc,private_h 060323 004400
LINES EXCLUDED: 0
LINES EXCLUDED: 0
LINES EXCLUDED: 0
004500 /copy qrpglesrc,expat_h 060323 004500
LINES EXCLUDED: 0
LINES EXCLUDED: 0
LINES EXCLUDED: 0
LINES EXCLUDED: 0
004600 /copy qrpglesrc,ifsio_h 060323 004600
LINES EXCLUDED: 0
004700 /copy qrpglesrc,errno_h 060323 004700
LINES EXCLUDED: 0
004800 040728 004800
004900 D InitParser PR like(XML_Parser) 040804 004900
005000 D peElemStack likeds(elemroot) 040804 005000
005100 D peEncoding 100C const 060923 005100
005200 040804 005200
005300 D startElement Pr 060922 005300
005400 D root likeds(elemroot) 060922 005400
005500 D name 16373C options(*varsize) 060922 005500
005600 D atts * dim(32767) options(*varsize) 060922 005600
005700 D charData Pr 060922 005700
005800 D root likeds(elemroot) 060922 005800
005900 D string 16373C options(*varsize) 060922 005900
006000 D len 10I 0 value 060922 006000
006100 D endElement Pr 060922 006100
006200 D root likeds(elemroot) 060922 006200
006300 D name * value 060922 006300
006400 040803 006400
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 4
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
006500 D ParseXML PR 10I 0 040803 006500
006600 D peFD 10I 0 value 040803 006600
006700 D peData 8192A options(*varsize) 040803 006700
006800 D peLength 10I 0 value 040803 006800
006900 040805 006900
007000 D copyAttrs PR * 040805 007000
007100 D root likeds(elemroot) 070822 007100
007200 D peAttr * dim(32767) options(*varsize) 040805 007200
007300 D freeAttrs PR 040805 007300
007400 D peAttrs * value 040805 007400
007500 040728 007500
007600 D MAXDEPTH C 512 040728 007600
007700 040802 007700
007800 D elemroot ds qualified 040728 007800
007900 D depth 10I 0 040728 007900
008000 D startcb * procptr 040805 008000
008100 D endcb * procptr 040805 008100
008200 D userdata * 040802 008200
008300 D entry * dim(MAXDEPTH) 040728 008300
008400 D buf 8192A varying 040803 008400
008500 D errcode 10I 0 040803 008500
008600 D line 10I 0 040803 008600
008700 D column 10I 0 040803 008700
008800 D namespace 1N 070329 008800
008900 D nschar 1A 070329 008900
009000 D xlate 52a 070816 009000
009100 040728 009100
009200 D p_element s * 040728 009200
009300 D element ds qualified based(p_element) 040728 009300
009400 D path 8192A varying 060922 009400
009500 D ns 1024A varying 070329 009500
009600 D name 1024A varying 040804 009600
009700 D value * 070816 009700
009800 D size 10i 0 070816 009800
009900 D allocsize 10i 0 070816 009900
010000 D attrs * 040805 010000
010100 070816 010100
010200 D CHUNKSIZE C const(65536) 070816 010200
010300 040803 010300
010400 D wkParser s like(XML_Parser) 040803 010400
010500 D wkElemRoot ds likeds(elemroot) 040803 010500
010600 D wkNamespace s 1N inz(*OFF) 070329 010600
010700 D wkRetFull s 1N inz(*OFF) 070816 010700
010800 070202 010800
010900 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 070202 010900
011000 * http_get_xml(): 070202 011000
011100 * http_url_get_xml(): Send a GET request to an HTTP server and 070202 011100
011200 * receive/parse an XML response. 070202 011200
011300 * 070202 011300
011400 * peURL = (input) URL to perform GET request to 070202 011400
011500 * peStartProc = (input) call-back procedure to call at the start 070202 011500
011600 * of each XML element received. 070202 011600
011700 * peEndProc = (input) call-back procedure to call at the end 070202 011700
011800 * of each XML element received. 070202 011800
011900 * peUsrDta = (input) user-defined data that will be passed to the 070202 011900
012000 * call-back routine 070202 012000
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 5
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
012100 * 070202 012100
012200 * (other parms are identical to those in HTTP_url_get()) 070202 012200
012300 * 070202 012300
012400 * Returns 1 if successful, -1 upon error, 0 if timeout 070202 012400
012500 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 070202 012500
012600 P http_url_get_xml... 070202 012600
012700 P B export 070202 012700
012800 D http_url_get_xml... 070202 012800
012900 D PI 10I 0 070202 012900
013000 D peURL 32767A varying const options(*varsize) 070202 013000
013100 D peStartProc * value procptr 070202 013100
013200 D peEndProc * value procptr 070202 013200
013300 D peUsrDta * value 070202 013300
013400 D peTimeout 10I 0 value options(*nopass) 070202 013400
013500 D peUserAgent 64A const options(*nopass:*omit) 070206 013500
013600 D peModTime Z const options(*nopass:*omit) 070206 013600
013700 D peContentType 64A const options(*nopass:*omit) 070206 013700
013800 D peSOAPAction 64A const options(*nopass:*omit) 070206 013800
013900 070202 013900
014000 D wwRC s 10I 0 070202 014000
014100 D wwEmptyBuf s 1A 070202 014100
014200 070202 014200
014300 /free 070202 014300
014400 070202 014400
014500 wkElemRoot = *ALLx'00'; 070202 014500
014600 wkElemRoot.userdata = peUsrDta; 070202 014600
014700 wkElemRoot.startcb = peStartProc; 070202 014700
014800 wkElemRoot.endcb = peEndProc; 070202 014800
014900 %len(wkElemRoot.buf) = 0; 070202 014900
015000 070202 015000
015100 wkParser = InitParser(wkElemRoot: *blanks); 070202 015100
015200 070202 015200
015300 select; B01 070202 015300
015400 when (%parms < 5); X01 070202 015400
015500 wwRC = http_url_get_raw( peURL 01 070202 015500
015600 : 3 01 070202 015600
015700 : %paddr(ParseXML)); 01 070202 015700
015800 when (%parms < 6); X01 070202 015800
015900 wwRC = http_url_get_raw( peURL 01 070202 015900
016000 : 4 01 070202 016000
016100 : %paddr(ParseXML) 01 070202 016100
016200 : peTimeout ); 01 070202 016200
016300 when (%parms < 7); X01 070202 016300
016400 wwRC = http_url_get_raw( peURL 01 070202 016400
016500 : 5 01 070202 016500
016600 : %paddr(ParseXML) 01 070202 016600
016700 : peTimeout 01 070202 016700
016800 : peUserAgent ); 01 070202 016800
016900 when (%parms < 8); X01 070202 016900
017000 wwRC = http_url_get_raw( peURL 01 070202 017000
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 6
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
017100 : 6 01 070202 017100
017200 : %paddr(ParseXML) 01 070202 017200
017300 : peTimeout 01 070202 017300
017400 : peUserAgent 01 070202 017400
017500 : peModTime ); 01 070202 017500
017600 when (%parms < 9); X01 070202 017600
017700 wwRC = http_url_get_raw( peURL 01 070202 017700
017800 : 7 01 070202 017800
017900 : %paddr(ParseXML) 01 070202 017900
018000 : peTimeout 01 070202 018000
018100 : peUserAgent 01 070202 018100
018200 : peModTime 01 070202 018200
018300 : peContentType ); 01 070202 018300
018400 other; X01 070202 018400
018500 wwRC = http_url_get_raw( peURL 01 070202 018500
018600 : 8 01 070202 018600
018700 : %paddr(ParseXML) 01 070202 018700
018800 : peTimeout 01 070202 018800
018900 : peUserAgent 01 070202 018900
019000 : peModTime 01 070202 019000
019100 : peContentType 01 070202 019100
019200 : peSOAPAction ); 01 070202 019200
019300 endsl; E01 070202 019300
019400 070202 019400
019500 if (wkElemRoot.errcode = 0); B01 070202 019500
019600 ParseXML(0: wwEmptyBuf: 0); 01 070202 019600
019700 endif; E01 070202 019700
019800 070202 019800
019900 if (wwRC=1 and wkElemRoot.errcode > 0); B01 070426 019900
020000 SetError(HTTP_XMLERR: 'XML parse failed at line ' 01 070202 020000
020100 + %char(wkElemRoot.line) + ', col ' 01 070202 020100
020200 + %char(wkElemRoot.column) + ': ' 01 070202 020200
020300 + %str(XML_ErrorString(wkElemRoot.errcode))); 01 070202 020300
020400 wwRC = -1; 01 070202 020400
020500 endif; E01 070202 020500
020600 070202 020600
020700 close_iconv(wkElemRoot.xlate); 070816 020700
020800 XML_ParserFree(wkParser); 070202 020800
020900 070202 020900
021000 return wwRC; 070202 021000
021100 /end-free 070202 021100
021200 P E 070202 021200
021300 070202 021300
021400 070202 021400
021500 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 070202 021500
021600 * http_post_xml(): 070202 021600
021700 * http_url_post_xml(): Post data to HTTP server, and receive 070202 021700
021800 * XML response. Response is parsed as it's received 070202 021800
021900 * off the wire (no temporary file is used.) 070202 021900
022000 * 070202 022000
022100 * peURL = (input) URL to perform GET request to 070202 022100
022200 * pePostData = (input) data to POST to the web server 070202 022200
022300 * pePostDataLen = (input) length of pePostData 070202 022300
022400 * peStartProc = (input) call-back procedure to call at the start 070202 022400
022500 * of each XML element received. 070202 022500
022600 * peEndProc = (input) call-back procedure to call at the end 070202 022600
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 7
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
022700 * of each XML element received. 070202 022700
022800 * peUsrDta = (input) user-defined data that will be passed 070202 022800
022900 * to the call-back routine 070202 022900
023000 * 070202 023000
023100 * (other parms are identical to those in HTTP_url_post()) 070202 023100
023200 * 070202 023200
023300 * Returns 1 if successful, -1 upon error, 0 if timeout 070202 023300
023400 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 070202 023400
023500 P http_url_post_xml... 070202 023500
023600 P B export 070202 023600
023700 D http_url_post_xml... 070202 023700
023800 D PI 10I 0 070202 023800
023900 D peURL 32767A varying const options(*varsize) 070202 023900
024000 D pePostData * value 070202 024000
024100 D pePostDataLen 10I 0 value 070202 024100
024200 D peStartProc * value procptr 070202 024200
024300 D peEndProc * value procptr 070202 024300
024400 D peUsrDta * value 070202 024400
024500 D peTimeout 10I 0 value options(*nopass) 070202 024500
024600 D peUserAgent 64A const options(*nopass:*omit) 070206 024600
024700 D peContentType 64A const options(*nopass:*omit) 070206 024700
024800 D peSOAPAction 64A const options(*nopass:*omit) 070206 024800
024900 070202 024900
025000 D wwRC s 10I 0 070202 025000
025100 D wwEmptyBuf s 1A 070202 025100
025200 070202 025200
025300 /free 070202 025300
025400 070202 025400
025500 wkElemRoot = *ALLx'00'; 070202 025500
025600 wkElemRoot.userdata = peUsrDta; 070202 025600
025700 wkElemRoot.startcb = peStartProc; 070202 025700
025800 wkElemRoot.endcb = peEndProc; 070202 025800
025900 %len(wkElemRoot.buf) = 0; 070202 025900
026000 070202 026000
026100 wkParser = InitParser(wkElemRoot :*blanks); 070202 026100
026200 070202 026200
026300 select; B01 070202 026300
026400 when (%parms < 7); X01 070202 026400
026500 wwRC = http_url_post_raw( peURL 01 070202 026500
026600 : pePostData 01 070202 026600
026700 : pePostDataLen 01 070202 026700
026800 : 5 01 070202 026800
026900 : %paddr(ParseXML) ); 01 070202 026900
027000 when (%parms < 8); X01 070202 027000
027100 wwRC = http_url_post_raw( peURL 01 070202 027100
027200 : pePostData 01 070202 027200
027300 : pePostDataLen 01 070202 027300
027400 : 6 01 070202 027400
027500 : %paddr(ParseXML) 01 070202 027500
027600 : peTimeout ); 01 070202 027600
027700 when (%parms < 9); X01 070202 027700
027800 wwRC = http_url_post_raw( peURL 01 070202 027800
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 8
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
027900 : pePostData 01 070202 027900
028000 : pePostDataLen 01 070202 028000
028100 : 7 01 070202 028100
028200 : %paddr(ParseXML) 01 070202 028200
028300 : peTimeout 01 070202 028300
028400 : peUserAgent ); 01 070202 028400
028500 when (%parms < 10); X01 070202 028500
028600 wwRC = http_url_post_raw( peURL 01 070202 028600
028700 : pePostData 01 070202 028700
028800 : pePostDataLen 01 070202 028800
028900 : 8 01 070202 028900
029000 : %paddr(ParseXML) 01 070202 029000
029100 : peTimeout 01 070202 029100
029200 : peUserAgent 01 070202 029200
029300 : peContentType ); 01 070202 029300
029400 other; X01 070202 029400
029500 wwRC = http_url_post_raw( peURL 01 070202 029500
029600 : pePostData 01 070202 029600
029700 : pePostDataLen 01 070202 029700
029800 : 9 01 070202 029800
029900 : %paddr(ParseXML) 01 070202 029900
030000 : peTimeout 01 070202 030000
030100 : peUserAgent 01 070202 030100
030200 : peContentType 01 070202 030200
030300 : peSOAPAction ) ; 01 070202 030300
030400 endsl; E01 070202 030400
030500 070202 030500
030600 if (wkElemRoot.errcode = 0); B01 070202 030600
030700 ParseXML(0: wwEmptyBuf: 0); 01 070202 030700
030800 endif; E01 070202 030800
030900 070202 030900
031000 if (wwRC=1 and wkElemRoot.errcode > 0); B01 070426 031000
031100 SetError(HTTP_XMLERR: 'XML parse failed at line ' 01 070202 031100
031200 + %char(wkElemRoot.line) + ', col ' 01 070202 031200
031300 + %char(wkElemRoot.column) + ': ' 01 070202 031300
031400 + %str(XML_ErrorString(wkElemRoot.errcode))); 01 070202 031400
031500 %len(wkElemRoot.buf) = 0; 01 070202 031500
031600 wwRC = -1; 01 070202 031600
031700 endif; E01 070202 031700
031800 070202 031800
031900 close_iconv(wkElemRoot.xlate); 070816 031900
032000 XML_ParserFree(wkParser); 070202 032000
032100 070202 032100
032200 return wwRC; 070202 032200
032300 /end-free 070202 032300
032400 P E 070202 032400
032500 070202 032500
032600 070202 032600
032700 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 070202 032700
032800 * http_url_post_stmf_xml(): 070202 032800
032900 * http_post_stmf_xml(): Post data to HTTP server, and receive 070202 032900
033000 * XML response. Response is parsed as it's received 070202 033000
033100 * off the wire (no temporary file is used.) 070202 033100
033200 * 070202 033200
033300 * peURL = (input) URL to post to 070202 033300
033400 * pePostFile = (input) File of stream file (in IFS) to post 070202 033400
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 9
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
033500 * peStartProc = (input) call-back procedure to call at the start 070202 033500
033600 * of each XML element received. 070202 033600
033700 * peEndProc = (input) call-back procedure to call at the end 070202 033700
033800 * of each XML element received. 070202 033800
033900 * peUsrDta = (input) user-defined data that will be passed 070202 033900
034000 * to the call-back routine 070202 034000
034100 * peTimeout = (optional) give up if no data is received for 070202 034100
034200 * this many seconds. 070202 034200
034300 * peContentType = (optional) content type to supply (mainly 070202 034300
034400 * useful when talking to CGI scripts) 070202 034400
034500 * 070202 034500
034600 * Returns -1 upon failure, 0 upon timeout, 070202 034600
034700 * 1 for success, or an HTTP response code 070202 034700
034800 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 070202 034800
034900 P http_url_post_stmf_xml... 070202 034900
035000 P B export 070202 035000
035100 D http_url_post_stmf_xml... 070202 035100
035200 D PI 10I 0 070202 035200
035300 D peURL 32767A varying const options(*varsize) 070202 035300
035400 D pePostFile 32767A varying const options(*varsize) 070202 035400
035500 D peStartProc * value procptr 070202 035500
035600 D peEndProc * value procptr 070202 035600
035700 D peUsrDta * value 070202 035700
035800 D peTimeout 10I 0 value options(*nopass) 070202 035800
035900 D peUserAgent 64A const options(*nopass:*omit) 070206 035900
036000 D peContentType 64A const options(*nopass:*omit) 070206 036000
036100 D peSOAPAction 64A const options(*nopass:*omit) 070206 036100
036200 070202 036200
036300 D wwStat ds likeds(statds) 070202 036300
036400 D wwPostFD S 10I 0 070202 036400
036500 D wwRC S 10I 0 070202 036500
036600 D wwEmptyBuf s 1A 070202 036600
036700 070202 036700
036800 /free 070202 036800
036900 070202 036900
037000 // ********************************************************* 070202 037000
037100 // * open file to be posted 070202 037100
037200 // ********************************************************* 070202 037200
037300 070202 037300
037400 if ( stat(pePostFile : %addr(wwStat)) < 0 ); B01 070202 037400
037500 SetError(HTTP_FDSTAT 01 070202 037500
037600 : 'stat(): ' + %str(strerror(errno))); 01 070202 037600
037700 return -1; 01 070202 037700
037800 endif; E01 070202 037800
037900 070202 037900
038000 wwPostFD = open(pePostFile : O_RDONLY); 070202 038000
038100 if ( wwPostFD < 0 ); B01 070202 038100
038200 SetError(HTTP_FDOPEN 01 070202 038200
038300 : 'open(): ' + %str(strerror(errno))); 01 070202 038300
038400 return -1; 01 070202 038400
038500 endif; E01 070202 038500
038600 070202 038600
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 10
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
038700 // ********************************************************* 070202 038700
038800 // Initialize the XML parser & our own data 070202 038800
038900 // ********************************************************* 070202 038900
039000 070202 039000
039100 wkElemRoot = *ALLx'00'; 070202 039100
039200 wkElemRoot.userdata = peUsrDta; 070202 039200
039300 wkElemRoot.startcb = peStartProc; 070202 039300
039400 wkElemRoot.endcb = peEndProc; 070202 039400
039500 %len(wkElemRoot.buf) = 0; 070202 039500
039600 070202 039600
039700 wkParser = InitParser(wkElemRoot: *blanks); 070202 039700
039800 070202 039800
039900 070202 039900
040000 // ********************************************************* 070202 040000
040100 // * Call the 'raw' post procedure telling it to use the 070202 040100
040200 // * IFS API called 'read' to load data from the stream 070202 040200
040300 // * file -- and use our ParseXML routine for the data 070202 040300
040400 // * that's received. 070202 040400
040500 // ********************************************************* 070202 040500
040600 070202 040600
040700 select; B01 070202 040700
040800 when %parms < 6; X01 070202 040800
040900 wwRC = http_url_post_raw2( peURL 01 070202 040900
041000 : wwPostFD 01 070202 041000
041100 : %paddr(read) 01 070202 041100
041200 : wwStat.st_size 01 070202 041200
041300 : 5 01 070202 041300
041400 : %paddr(ParseXML) ); 01 070202 041400
041500 when %parms < 7; X01 070202 041500
041600 wwRC = http_url_post_raw2( peURL 01 070202 041600
041700 : wwPostFD 01 070202 041700
041800 : %paddr(read) 01 070202 041800
041900 : wwStat.st_size 01 070202 041900
042000 : 6 01 070202 042000
042100 : %paddr(ParseXML) 01 070202 042100
042200 : peTimeout ); 01 070202 042200
042300 when %parms < 8; X01 070202 042300
042400 wwRC = http_url_post_raw2( peURL 01 070202 042400
042500 : wwPostFD 01 070202 042500
042600 : %paddr(read) 01 070202 042600
042700 : wwStat.st_size 01 070202 042700
042800 : 7 01 070202 042800
042900 : %paddr(ParseXML) 01 070202 042900
043000 : peTimeout 01 070202 043000
043100 : peUserAgent ); 01 070202 043100
043200 when %parms < 9; X01 070202 043200
043300 wwRC = http_url_post_raw2( peURL 01 070202 043300
043400 : wwPostFD 01 070202 043400
043500 : %paddr(read) 01 070202 043500
043600 : wwStat.st_size 01 070202 043600
043700 : 8 01 070202 043700
043800 : %paddr(ParseXML) 01 070202 043800
043900 : peTimeout 01 070202 043900
044000 : peUserAgent 01 070202 044000
044100 : peContentType ); 01 070202 044100
044200 other; X01 070202 044200
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 11
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
044300 wwRC = http_url_post_raw2( peURL 01 070202 044300
044400 : wwPostFD 01 070202 044400
044500 : %paddr(read) 01 070202 044500
044600 : wwStat.st_size 01 070202 044600
044700 : 9 01 070202 044700
044800 : %paddr(ParseXML) 01 070202 044800
044900 : peTimeout 01 070202 044900
045000 : peUserAgent 01 070202 045000
045100 : peContentType 01 070202 045100
045200 : peSOAPAction ); 01 070202 045200
045300 endsl; E01 070202 045300
045400 070202 045400
045500 callp close(wwPostFD); 070202 045500
045600 070202 045600
045700 if (wkElemRoot.errcode = 0); B01 070426 045700
045800 ParseXML(0: wwEmptyBuf: 0); 01 070202 045800
045900 endif; E01 070202 045900
046000 070202 046000
046100 if (wwRC=1 and wkElemRoot.errcode > 0); B01 070426 046100
046200 SetError(HTTP_XMLERR: 'XML parse failed at line ' 01 070202 046200
046300 + %char(wkElemRoot.line) + ', col ' 01 070202 046300
046400 + %char(wkElemRoot.column) + ': ' 01 070202 046400
046500 + %str(XML_ErrorString(wkElemRoot.errcode))); 01 070202 046500
046600 %len(wkElemRoot.buf) = 0; 01 070202 046600
046700 wwRC = -1; 01 070202 046700
046800 endif; E01 070202 046800
046900 070202 046900
047000 close_iconv(wkElemRoot.xlate); 070816 047000
047100 XML_ParserFree(wkParser); 070202 047100
047200 070202 047200
047300 return wwRC; 070202 047300
047400 070202 047400
047500 /end-free 070202 047500
047600 P E 070202 047600
047700 070202 047700
047800 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040803 047800
047900 * http_get_xmltf(): Request URL from server. Receive response 070202 047900
048000 * to temporary file, then parse it. 070202 048000
048100 * 040803 048100
048200 * peURL = (input) URL to perform GET request to 040805 048200
048300 * peStartProc = (input) call-back procedure to call at the start 040805 048300
048400 * of each XML element received. 040805 048400
048500 * peEndProc = (input) call-back procedure to call at the end 040805 048500
048600 * of each XML element received. 040805 048600
048700 * peUsrDta = (input) user-defined data that will be passed to the 040805 048700
048800 * call-back routine 040803 048800
048900 * 040803 048900
049000 * (other parms are identical to those in HTTP_url_get()) 040803 049000
049100 * 040803 049100
049200 * Returns 1 if successful, -1 upon error, 0 if timeout 040803 049200
049300 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040803 049300
049400 P http_get_xmltf... 070202 049400
049500 P B export 040728 049500
049600 D http_get_xmltf... 070202 049600
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 12
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
049700 D PI 10I 0 040728 049700
049800 D peURL 32767A varying const options(*varsize) 040728 049800
049900 D peStartProc * value procptr 040805 049900
050000 D peEndProc * value procptr 040805 050000
050100 D peUsrDta * value 040728 050100
050200 D peTimeout 10I 0 value options(*nopass) 070206 050200
050300 D peUserAgent 64A const options(*nopass:*omit) 070206 050300
050400 D peModTime Z const options(*nopass:*omit) 070206 050400
050500 D peContentType 64A const options(*nopass:*omit) 070206 050500
050600 D peSOAPAction 64A const options(*nopass:*omit) 070206 050600
050700 040802 050700
050800 D wwRC s 10I 0 040802 050800
050900 D wwFile s 40a varying 070125 050900
051000 040802 051000
051100 /free 040802 051100
051200 070125 051200
051300 // ******************************************** 070125 051300
051400 // * Download HTTP file to temporary location 070125 051400
051500 // ******************************************** 070125 051500
051600 070125 051600
051700 wwFile = http_tempfile(); 070125 051700
051800 040802 051800
051900 select; B01 040802 051900
052000 when (%parms < 5); X01 040805 052000
052100 wwRC = http_url_get( peURL 01 070125 052100
052200 : wwFile ); 01 070125 052200
052300 when (%parms < 6); X01 050221 052300
052400 wwRC = http_url_get( peURL 01 070125 052400
052500 : wwFile 01 070125 052500
052600 : peTimeout ); 01 070125 052600
052700 when (%parms < 7); X01 050221 052700
052800 wwRC = http_url_get( peURL 01 070125 052800
052900 : wwFile 01 070125 052900
053000 : peTimeout 01 070125 053000
053100 : peUserAgent ); 01 070125 053100
053200 when (%parms < 8); X01 050221 053200
053300 wwRC = http_url_get( peURL 01 070125 053300
053400 : wwFile 01 070125 053400
053500 : peTimeout 01 070125 053500
053600 : peUserAgent 01 070125 053600
053700 : peModTime ); 01 070125 053700
053800 when (%parms < 9); X01 050221 053800
053900 wwRC = http_url_get( peURL 01 070125 053900
054000 : wwFile 01 070125 054000
054100 : peTimeout 01 070125 054100
054200 : peUserAgent 01 070125 054200
054300 : peModTime 01 070125 054300
054400 : peContentType ); 01 070125 054400
054500 other; X01 040802 054500
054600 wwRC = http_url_get( peURL 01 070125 054600
054700 : wwFile 01 070125 054700
054800 : peTimeout 01 070125 054800
054900 : peUserAgent 01 070125 054900
055000 : peModTime 01 070125 055000
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 13
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
055100 : peContentType 01 070125 055100
055200 : peSOAPAction ); 01 070125 055200
055300 endsl; E01 040802 055300
055400 070125 055400
055500 if (wwRC <> 1); B01 070125 055500
055600 unlink(wwFile); 01 070125 055600
055700 return wwRC; 01 070125 055700
055800 endif; E01 070125 055800
055900 070125 055900
056000 // ******************************************** 070125 056000
056100 // * Run temp file through XML parser. 070125 056100
056200 // ******************************************** 070125 056200
056300 070125 056300
056400 wwRC = http_parse_xml_stmf( wwFile 070125 056400
056500 : HTTP_XML_CALC 070125 056500
056600 : peStartProc 070125 056600
056700 : peEndProc 070125 056700
056800 : peUsrDta ); 070125 056800
056900 unlink(wwFile); 070125 056900
057000 040802 057000
057100 if (wwRC = 0); B01 070202 057100
057200 return 1; 01 070202 057200
057300 else; X01 070202 057300
057400 return -1; 01 070202 057400
057500 endif; E01 070202 057500
057600 070202 057600
057700 /end-free 040802 057700
057800 P E 040728 057800
057900 040728 057900
058000 040728 058000
058100 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040803 058100
058200 * http_post_xmltf(): Post data from memory. Receive 070202 058200
058300 * response to temporary file, then parse it. 070202 058300
058400 * 040803 058400
058500 * peURL = (input) URL to perform GET request to 040803 058500
058600 * pePostData = (input) data to POST to the web server 040803 058600
058700 * pePostDataLen = (input) length of pePostData 040803 058700
058800 * peStartProc = (input) call-back procedure to call at the start 040805 058800
058900 * of each XML element received. 040805 058900
059000 * peEndProc = (input) call-back procedure to call at the end 040805 059000
059100 * of each XML element received. 040805 059100
059200 * peUsrDta = (input) user-defined data that will be passed 040803 059200
059300 * to the call-back routine 040803 059300
059400 * 040803 059400
059500 * (other parms are identical to those in HTTP_url_post()) 040803 059500
059600 * 040803 059600
059700 * Returns 1 if successful, -1 upon error, 0 if timeout 040803 059700
059800 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040803 059800
059900 P http_post_xmltf... 070202 059900
060000 P B export 040728 060000
060100 D http_post_xmltf... 070202 060100
060200 D PI 10I 0 040728 060200
060300 D peURL 32767A varying const options(*varsize) 040728 060300
060400 D pePostData * value 040728 060400
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 14
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
060500 D pePostDataLen 10I 0 value 040728 060500
060600 D peStartProc * value procptr 040805 060600
060700 D peEndProc * value procptr 040805 060700
060800 D peUsrDta * value 040728 060800
060900 D peTimeout 10I 0 value options(*nopass) 040728 060900
061000 D peUserAgent 64A const options(*nopass:*omit) 070206 061000
061100 D peContentType 64A const options(*nopass:*omit) 070206 061100
061200 D peSOAPAction 64A const options(*nopass:*omit) 070206 061200
061300 040804 061300
061400 D wwRC s 10I 0 040804 061400
061500 D wwFile s 40a varying 070125 061500
061600 040804 061600
061700 /free 040804 061700
061800 070125 061800
061900 // ******************************************** 070125 061900
062000 // * POST data and download results to temporary 070125 062000
062100 // * stream file. 070125 062100
062200 // ******************************************** 070125 062200
062300 070125 062300
062400 wwFile = http_tempfile(); 070125 062400
062500 040804 062500
062600 select; B01 040804 062600
062700 when (%parms < 7); X01 040805 062700
062800 wwRC = http_url_post( peURL 01 070125 062800
062900 : pePostData 01 070125 062900
063000 : pePostDataLen 01 070125 063000
063100 : wwFile ); 01 070125 063100
063200 when (%parms < 8); X01 050221 063200
063300 wwRC = http_url_post( peURL 01 070125 063300
063400 : pePostData 01 070125 063400
063500 : pePostDataLen 01 070125 063500
063600 : wwFile 01 070125 063600
063700 : peTimeout ); 01 070125 063700
063800 when (%parms < 9); X01 050221 063800
063900 wwRC = http_url_post( peURL 01 070125 063900
064000 : pePostData 01 070125 064000
064100 : pePostDataLen 01 070125 064100
064200 : wwFile 01 070125 064200
064300 : peTimeout 01 070125 064300
064400 : peUserAgent ); 01 070125 064400
064500 when (%parms < 10); X01 050221 064500
064600 wwRC = http_url_post( peURL 01 070125 064600
064700 : pePostData 01 070125 064700
064800 : pePostDataLen 01 070125 064800
064900 : wwFile 01 070125 064900
065000 : peTimeout 01 070125 065000
065100 : peUserAgent 01 070125 065100
065200 : peContentType ); 01 070125 065200
065300 other; X01 040804 065300
065400 wwRC = http_url_post( peURL 01 070125 065400
065500 : pePostData 01 070125 065500
065600 : pePostDataLen 01 070125 065600
065700 : wwFile 01 070125 065700
065800 : peTimeout 01 070125 065800
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 15
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
065900 : peUserAgent 01 070125 065900
066000 : peContentType 01 070125 066000
066100 : peSOAPAction ); 01 070125 066100
066200 endsl; E01 040804 066200
066300 070125 066300
066400 if (wwRC <> 1); B01 070125 066400
066500 unlink(wwFile); 01 070125 066500
066600 return wwRC; 01 070125 066600
066700 endif; E01 070125 066700
066800 070125 066800
066900 // ******************************************** 070125 066900
067000 // * Run temporary file through XML parser. 070125 067000
067100 // ******************************************** 070125 067100
067200 070125 067200
067300 wwRC = http_parse_xml_stmf( wwFile 070125 067300
067400 : HTTP_XML_CALC 070125 067400
067500 : peStartProc 070125 067500
067600 : peEndProc 070125 067600
067700 : peUsrDta ); 070125 067700
067800 unlink(wwFile); 070125 067800
067900 070202 067900
068000 if (wwRC = 0); B01 070202 068000
068100 return 1; 01 070202 068100
068200 else; X01 070202 068200
068300 return -1; 01 070202 068300
068400 endif; E01 070202 068400
068500 /end-free 040804 068500
068600 P E 040728 068600
068700 040805 068700
068800 040805 068800
068900 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040805 068900
069000 * http_post_stmf_xmltf(): Post data from stream file. Receive 070202 069000
069100 * response to temporary file, then parse it. 070202 069100
069200 * 040805 069200
069300 * peURL = (input) URL to post to 040805 069300
069400 * pePostFile = (input) File of stream file (in IFS) to post 040805 069400
069500 * peStartProc = (input) call-back procedure to call at the start 040805 069500
069600 * of each XML element received. 040805 069600
069700 * peEndProc = (input) call-back procedure to call at the end 040805 069700
069800 * of each XML element received. 040805 069800
069900 * peUsrDta = (input) user-defined data that will be passed 040805 069900
070000 * to the call-back routine 040805 070000
070100 * peTimeout = (optional) give up if no data is received for 040805 070100
070200 * this many seconds. 040805 070200
070300 * peContentType = (optional) content type to supply (mainly 040805 070300
070400 * useful when talking to CGI scripts) 040805 070400
070500 * 040805 070500
070600 * Returns -1 upon failure, 0 upon timeout, 040805 070600
070700 * 1 for success, or an HTTP response code 040805 070700
070800 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040805 070800
070900 P http_post_stmf_xmltf... 070202 070900
071000 P B export 040805 071000
071100 D http_post_stmf_xmltf... 070202 071100
071200 D PI 10I 0 040805 071200
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 16
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
071300 D peURL 32767A varying const options(*varsize) 040805 071300
071400 D pePostFile 32767A varying const options(*varsize) 040805 071400
071500 D peStartProc * value procptr 040805 071500
071600 D peEndProc * value procptr 040805 071600
071700 D peUsrDta * value 040805 071700
071800 D peTimeout 10I 0 value options(*nopass) 040805 071800
071900 D peUserAgent 64A const options(*nopass:*omit) 070206 071900
072000 D peContentType 64A const options(*nopass:*omit) 070206 072000
072100 D peSOAPAction 64A const options(*nopass:*omit) 070206 072100
072200 040805 072200
072300 D wwRC S 10I 0 040805 072300
072400 D wwFile s 50a varying 070125 072400
072500 040805 072500
072600 /free 040805 072600
072700 040805 072700
072800 040805 072800
072900 // ********************************************************* 040805 072900
073000 // Send stream file to server, and download results 070125 073000
073100 // to a temporary location. 070125 073100
073200 // ********************************************************* 040805 073200
073300 070125 073300
073400 wwFile = http_tempfile(); 070125 073400
073500 040805 073500
073600 select; B01 040805 073600
073700 when %parms < 6; X01 040805 073700
073800 wwRC = http_url_post_stmf( peURL 01 070125 073800
073900 : pePostFile 01 070125 073900
074000 : wwFile ); 01 070125 074000
074100 when %parms < 7; X01 050221 074100
074200 wwRC = http_url_post_stmf( peURL 01 070125 074200
074300 : pePostFile 01 070125 074300
074400 : wwFile 01 070125 074400
074500 : peTimeout ); 01 070125 074500
074600 when %parms < 8; X01 050221 074600
074700 wwRC = http_url_post_stmf( peURL 01 070125 074700
074800 : pePostFile 01 070125 074800
074900 : wwFile 01 070125 074900
075000 : peTimeout 01 070125 075000
075100 : peUserAgent ); 01 070125 075100
075200 when %parms < 9; X01 050221 075200
075300 wwRC = http_url_post_stmf( peURL 01 070125 075300
075400 : pePostFile 01 070125 075400
075500 : wwFile 01 070125 075500
075600 : peTimeout 01 070125 075600
075700 : peUserAgent 01 070125 075700
075800 : peContentType); 01 070125 075800
075900 other; X01 040805 075900
076000 wwRC = http_url_post_stmf( peURL 01 070125 076000
076100 : pePostFile 01 070125 076100
076200 : wwFile 01 070125 076200
076300 : peTimeout 01 070125 076300
076400 : peUserAgent 01 070125 076400
076500 : peContentType 01 070125 076500
076600 : peSOAPAction ); 01 070125 076600
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 17
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
076700 endsl; E01 040805 076700
076800 070125 076800
076900 if (wwRC <> 1); B01 070125 076900
077000 unlink(wwFile); 01 070125 077000
077100 return wwRC; 01 070125 077100
077200 endif; E01 070125 077200
077300 070125 077300
077400 // ********************************************************* 070125 077400
077500 // Parse temporary XML results 070125 077500
077600 // ********************************************************* 070125 077600
077700 070125 077700
077800 wwRC = http_parse_xml_stmf( wwFile 070125 077800
077900 : HTTP_XML_CALC 070125 077900
078000 : peStartProc 070125 078000
078100 : peEndProc 070125 078100
078200 : peUsrDta ); 070125 078200
078300 unlink(wwFile); 070125 078300
078400 070202 078400
078500 if (wwRC = 0); B01 070202 078500
078600 return 1; 01 070202 078600
078700 else; X01 070202 078700
078800 return -1; 01 070202 078800
078900 endif; E01 070202 078900
079000 /end-free 040805 079000
079100 P E 040805 079100
079200 040728 079200
079300 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040728 079300
079400 * ParseXML(): (internal) routine called by HTTPAPI when any 040803 079400
079500 * data is received. We buffer it and pass it along 040803 079500
079600 * to XML_Parse (part of Expat) as required. 040803 079600
079700 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040728 079700
079800 P ParseXML B export 040802 079800
079900 D ParseXML PI 10I 0 040802 079900
080000 D peFD 10I 0 value 040802 080000
080100 D peData 8192A options(*varsize) 060923 080100
080200 D peLength 10I 0 value 060923 080200
080300 060923 080300
080400 D done s 10I 0 inz(0) 060923 080400
080500 040802 080500
080600 /free 040802 080600
080700 if (peLength = 0); B01 060923 080700
080800 done = 1; 01 060923 080800
080900 endif; E01 060923 080900
081000 070426 081000
081100 if (wkElemRoot.errcode > 0); B01 070426 081100
081200 return peLength; 01 070426 081200
081300 endif; E01 070426 081300
081400 060923 081400
081500 if ( XML_Parse( wkParser: %addr(peData): peLength: done ) B01 060923 081500
081600 = XML_STATUS_ERROR ); B01 060923 081600
081700 wkElemRoot.errcode = XML_GetErrorCode(wkParser); 01 060923 081700
081800 wkElemRoot.line = XML_GetCurrentLineNumber(wkParser); 01 060923 081800
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 18
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
081900 wkElemRoot.column = XML_GetCurrentColumnNumber(wkParser); ---- 01 060923 081900
082000 endif; E01 060923 082000
082100 040803 082100
082200 return peLength; 060923 082200
082300 /end-free 040803 082300
082400 P E 040803 082400
082500 040802 082500
082600 040802 082600
082700 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040802 082700
082800 * InitParser(): Initialize the XML parser that will parse the 040802 082800
082900 * data that we receive, and associate it with 040802 082900
083000 * our element stack... 040802 083000
083100 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040802 083100
083200 P InitParser B 040802 083200
083300 D InitParser PI like(XML_Parser) 040802 083300
083400 D peElemStack likeds(elemroot) 040802 083400
083500 D peEncoding 100C const 060923 083500
083600 D wwParser s like(XML_Parser) 040802 083600
083700 /free 040728 083700
083800 070329 083800
083900 peElemStack.namespace = wkNamespace; 070329 083900
084000 peElemStack.nschar = x'0c'; 070329 084000
084100 070816 084100
084200 peElemStack.xlate = new_iconv(13488: 0); 070816 084200
084300 040728 084300
084400 select; B01 070329 084400
084500 when wkNamespace=*off and peEncoding=*blanks; X01 070329 084500
084600 wwParser = XML_ParserCreate(*omit); 01 070329 084600
084700 when wkNamespace=*off; X01 070329 084700
084800 wwParser = XML_ParserCreate(peEncoding); 01 070329 084800
084900 when peEncoding=*blanks; X01 070329 084900
085000 wwParser = XML_ParserCreateNS(*omit: peElemStack.nschar); 01 070329 085000
085100 other; X01 070329 085100
085200 wwParser = XML_ParserCreateNS(peEncoding: peElemStack.nschar); 01 070329 085200
085300 endsl; E01 070329 085300
085400 040728 085400
085500 XML_SetUserData(wwParser: %addr(peElemStack)); 040804 085500
085600 040728 085600
085700 XML_SetElementHandler( wwParser 040728 085700
085800 : %paddr(startElement) 040728 085800
085900 : %paddr(endElement) ); 040728 085900
086000 040728 086000
086100 XML_SetCharacterDataHandler( wwParser 040728 086100
086200 : %paddr(charData) ); 040728 086200
086300 040728 086300
086400 return wwParser; 040728 086400
086500 040728 086500
086600 /end-free 040728 086600
086700 P E 040728 086700
086800 040805 086800
086900 040728 086900
087000 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040728 087000
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 19
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
087100 * Expat calls this when the start tag for an element appears 070130 087100
087200 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040728 087200
087300 P startElement B export 040804 087300
087400 D startElement PI 040728 087400
087500 D root likeds(elemroot) 040728 087500
087600 D localName 16373C options(*varsize) 070426 087600
087700 D atts * dim(32767) options(*varsize) 040728 087700
087800 040728 087800
087900 D p_oldElem s * 040728 087900
088000 D oldElem ds likeds(element) 040728 088000
088100 D based(p_oldElem) 040804 088100
088200 040728 088200
088300 D p_newElem s * 040728 088300
088400 D newElem ds likeds(element) 040728 088400
088500 D based(p_newElem) 040804 088500
088600 040805 088600
088700 D p_callback s * procptr 040805 088700
088800 D Callback PR extproc(p_callback) 040805 088800
088900 D userdata * value 040805 088900
089000 D depth 10I 0 value 040805 089000
089100 D name 1024A varying const 040805 089100
089200 D path 24576A varying const 040805 089200
089300 D attrs * dim(32767) 040805 089300
089400 D const options(*varsize) 040805 089400
089500 D CallbackNS PR extproc(p_callback) 070329 089500
089600 D userdata * value 070329 089600
089700 D depth 10I 0 value 070329 089700
089800 D namespace 1024A varying const 070329 089800
089900 D name 1024A varying const 070329 089900
090000 D path 24576A varying const 070329 090000
090100 D attrs * dim(32767) 070329 090100
090200 D const options(*varsize) 070329 090200
090300 040805 090300
090400 D p_AttrAry s * 040805 090400
090500 D wwAttrAry s * dim(32767) based(p_AttrAry) 040805 090500
090600 040804 090600
090700 D testatt s 1024A varying 040804 090700
090800 D x s 10I 0 040804 090800
090900 D len s 10I 0 051229 090900
091000 D pos s 10I 0 070329 091000
091100 D xlname s 1024a based(p_xlname) 070822 091100
091200 040728 091200
091300 /free 040728 091300
091400 040728 091400
091500 // make room for a new element. 040728 091500
091600 040728 091600
091700 root.depth = root.depth + 1; 040728 091700
091800 root.entry(root.depth) = xalloc(%size(newElem)); 070125 091800
091900 p_newElem = root.entry(root.depth); 040804 091900
092000 newElem = *ALLX'00'; 040804 092000
092100 070816 092100
092200 // make room for data in the new element. 070816 092200
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 20
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
092300 070816 092300
092400 newElem.size = 0; 070816 092400
092500 newElem.AllocSize = CHUNKSIZE; 070816 092500
092600 newElem.value = xalloc(CHUNKSIZE); 070816 092600
092700 040728 092700
092800 // copy path from previous element. 040728 092800
092900 040728 092900
093000 if (root.depth > 1); B01 040728 093000
093100 p_oldElem = root.entry(root.depth - 1); 01 040728 093100
093200 newElem.path = oldElem.path + '/' + oldElem.name; 01 040728 093200
093300 endif; E01 040728 093300
093400 040728 093400
093500 // set new name & translate to EBCDIC. 040804 093500
093600 040728 093600
093700 len = %scan(u'0000': localName) - 1; 070426 093700
094100 len = iconvdyn( len * 2 070822 094100
094200 : %addr(localName) 070822 094200
094300 : root.xlate 070822 094300
094400 : p_xlname ); 070822 094400
094500 newElem.name = %subst(xlname:1:len); 070822 094500
094600 070329 094600
094700 // if namespaces are enabled, separate namespace... 070329 094700
094800 070329 094800
094900 if (root.namespace); B01 070329 094900
095000 newElem.ns = ''; 01 070329 095000
095100 pos = %scan(root.nschar: newElem.name); 01 070329 095100
095200 if (pos>1 and pos<len); B02 070329 095200
095300 newElem.ns = %subst(newElem.name:1:pos-1); 02 070330 095300
095400 newElem.name = %subst(newElem.name:pos+1); 02 070330 095400
095500 endif; E02 070329 095500
095600 endif; E01 070329 095600
095700 040804 095700
095800 newElem.attrs = copyAttrs(root:atts); 070822 095800
095900 040805 095900
096000 if (root.startcb <> *NULL); B01 040805 096000
096100 p_AttrAry = newElem.Attrs; 01 040805 096100
096200 p_callback = root.startcb; 01 040805 096200
096300 if (root.namespace); B02 070329 096300
096400 CallbackNS( root.userdata 02 070329 096400
096500 : root.depth 02 070329 096500
096600 : newElem.ns 02 070329 096600
096700 : newElem.name 02 070329 096700
096800 : newElem.path 02 070329 096800
096900 : wwAttrAry ); 02 070329 096900
097000 else; X02 070329 097000
097100 Callback( root.userdata 02 070329 097100
097200 : root.depth 02 070329 097200
097300 : newElem.name 02 070329 097300
097400 : newElem.path 02 070329 097400
097500 : wwAttrAry ); 02 070329 097500
097600 endif; E02 070329 097600
097700 endif; E01 040805 097700
097800 040728 097800
097900 return; 040728 097900
098000 /end-free 040728 098000
098100 P E 040728 098100
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 21
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
098200 040728 098200
098300 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040728 098300
098400 * charData(): Expat calls this when character data is found in 070130 098400
098500 * between one element and another. 040728 098500
098600 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040728 098600
098700 P charData B export 040804 098700
098800 D charData PI 040728 098800
098900 D root likeds(elemroot) 040728 098900
099000 D string 16373C options(*varsize) 060922 099000
099100 D len 10I 0 value 040728 099100
099200 D x s 10I 0 040728 099200
099300 D y s 10I 0 070816 099300
099400 D newsize s 10u 0 070816 099400
099500 D newval s like(string) based(p_newval) 070816 099500
099600 /free 040728 099600
099700 040728 099700
099800 p_element = root.entry(root.depth); 040804 099800
099900 070816 099900
100000 newsize = element.size + (len * 2); 070816 100000
100100 dow (newsize > element.allocsize); B01 070816 100100
100200 element.allocsize = element.allocsize + CHUNKSIZE; 01 070816 100200
100300 element.value = xrealloc( element.value 01 070816 100300
100400 : element.allocsize ); 01 070816 100400
100500 enddo; E01 070816 100500
100600 070816 100600
100700 p_newval = element.value + element.size; 070816 100700
100800 y = 0; 070816 100800
100900 040728 100900
101000 for x = 1 to len; B01 040728 101000
101100 if (%subst(string: x: 1) <> u'000d' B02 060922 101100
101200 and %subst(string: x: 1) <> u'000a'); B02 060922 101200
101300 y = y + 1; 02 070816 101300
101400 %subst(newval:y:1) = %subst(string:x:1); 02 070816 101400
101500 endif; E02 040728 101500
101600 endfor; E01 040728 101600
101700 070816 101700
101800 element.size = element.size + (y*2); 070816 101800
101900 /end-free 040728 101900
102000 P E 040728 102000
102100 040728 102100
102200 040728 102200
102300 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040728 102300
102400 * Expat calls this when the close tag for an element appears 070130 102400
102500 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 040728 102500
102600 P endElement B export 040804 102600
102700 D endElement PI 040728 102700
102800 D root likeds(elemroot) 040728 102800
102900 D name * value 040728 102900
103000 040728 103000
103100 D p_callback s * procptr 040728 103100
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 22
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
103200 D Callback PR extproc(p_callback) 040728 103200
103300 D userdata * value 040805 103300
103400 D depth 10I 0 value 040728 103400
103500 D name 1024A varying const 040804 103500
103600 D path 24576A varying const 040804 103600
103700 D retval * value 070816 103700
103800 D Attrs * dim(32767) 040805 103800
103900 D const options(*varsize) 070329 103900
104000 D CallbackNS PR extproc(p_callback) 070329 104000
104100 D userdata * value 070329 104100
104200 D depth 10I 0 value 070329 104200
104300 D ns 1024A varying const 070329 104300
104400 D name 1024A varying const 070329 104400
104500 D path 24576A varying const 070329 104500
104600 D retval * value 070816 104600
104700 D Attrs * dim(32767) 070329 104700
104800 D const options(*varsize) 070329 104800
104900 040805 104900
105000 D p_AttrAry s * 040805 105000
105100 D wwAttrAry s * dim(32767) based(p_AttrAry) 040805 105100
105200 070816 105200
105300 D valDS ds 070816 105300
105400 D p_newval * inz(*null) 070816 105400
105500 D len 10i 0 inz(0) 070816 105500
105600 070816 105600
105700 D newval s 65535a based(p_newval) 070816 105700
105800 D value s 65535a varying 070816 105800
105900 D p_retval s * 070816 105900
106000 040728 106000
106100 /free 040728 106100
106200 040728 106200
106300 p_element = root.entry(root.depth); 040804 106300
106400 040805 106400
106500 if (root.endcb <> *NULL); B01 040805 106500
106600 070816 106600
106700 p_AttrAry = element.attrs; 01 070816 106700
106800 p_callback = root.endcb; 01 040805 106800
106900 p_newval = *null; 01 070816 106900
107000 070816 107000
107100 if (element.size < 1); B02 070816 107100
107200 value = ''; 02 070816 107200
107300 len = 0; 02 070816 107300
107400 else; X02 070816 107400
107500 len = iconvdyn( element.size 02 070816 107500
107600 : element.value 02 070816 107600
107700 : root.xlate 02 070816 107700
107800 : p_newval ); 02 070816 107800
107900 endif; E02 070816 107900
108000 070816 108000
108100 if (wkRetFull); B02 070816 108100
108200 p_retval = %addr(valDs); 02 070816 108200
108300 else; X02 070816 108300
108400 if (len > %size(value)-2); B03 070816 108400
108500 len = %size(value) - 2; 03 070816 108500
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 23
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
108600 endif; E03 070816 108600
108700 value = %subst(newval:1:len); 02 070816 108700
108800 p_retval = %addr(value); 02 070816 108800
108900 endif; E02 070816 108900
109000 070816 109000
109100 if (root.namespace); B02 070329 109100
109200 CallbackNS( root.userdata 02 070329 109200
109300 : root.depth 02 070329 109300
109400 : element.ns 02 070329 109400
109500 : element.name 02 070329 109500
109600 : element.path 02 070329 109600
109700 : p_retval 02 070816 109700
109800 : wwAttrAry 02 070329 109800
109900 ); 02 070329 109900
110000 else; X02 070329 110000
110100 Callback( root.userdata 02 070329 110100
110200 : root.depth 02 070329 110200
110300 : element.name 02 070329 110300
110400 : element.path 02 070329 110400
110500 : p_retval 02 070816 110500
110600 : wwAttrAry 02 070329 110600
110700 ); 02 070329 110700
110800 endif; E02 070329 110800
110900 if (p_newval <> *null); B02 070816 110900
111000 xdealloc(p_newval); 02 070816 111000
111100 endif; E02 070816 111100
111200 endif; E01 040805 111200
111300 040728 111300
111400 freeAttrs(element.attrs); 040805 111400
111500 xdealloc(element.value); 070816 111500
111600 xdealloc(root.entry(root.depth)); 070125 111600
111700 p_element = *NULL; 040728 111700
111800 root.depth = root.depth - 1; 040728 111800
111900 040728 111900
112000 return; 040728 112000
112100 /end-free 040728 112100
112200 P E 040728 112200
112300 040805 112300
112400 040805 112400
112500 ****************************************************************** 040805 112500
112600 * copyAttrs(): Allocate space for tag attributes, copy them 040805 112600
112700 * to the space, and translate them to EBCDIC 040805 112700
112800 ****************************************************************** 040805 112800
112900 P copyAttrs B 040805 112900
113000 D copyAttrs PI * 040805 113000
113100 D root likeds(elemroot) 070822 113100
113200 D peAttr * dim(32767) options(*varsize) 040805 113200
113300 040805 113300
113400 D x s 10I 0 040805 113400
113500 D wwCount s 10I 0 040805 113500
113600 D wwLen s 10I 0 040805 113600
113700 040805 113700
113800 D p_Array s * 040805 113800
113900 D wwArray s * dim(32767) based(p_Array) 040805 113900
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 24
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
114000 051229 114000
114100 D p_endnull s * 051229 114100
114200 D endnull s 1A based(p_endnull) 051229 114200
114300 060922 114300
114400 D attrdta s 16383C based(p_attrdta) 060922 114400
114500 D newdta s 16383A based(p_newdta) 060922 114500
114600 D xlname s 1024a based(p_xlname) 070822 114600
114700 040805 114700
114800 /free 040805 114800
114900 040805 114900
115000 // figure out how many elements are in the peAttr array: 040805 115000
115100 040805 115100
115200 x = 1; 040805 115200
115300 dow peAttr(x) <> *NULL; B01 040805 115300
115400 x = x + 1; 01 040805 115400
115500 enddo; E01 040805 115500
115600 wwCount = x; 040805 115600
115700 040805 115700
115800 // allocate space for the array of pointers 040805 115800
115900 040805 115900
116000 p_array = xalloc(%size(p_array) * wwCount); 070125 116000
116100 040805 116100
116200 040805 116200
116300 // allocate space for each attribute, copy it, and 040805 116300
116400 // translate it to EBCDIC. 040805 116400
116500 040805 116500
116600 for x = 1 to (wwCount - 1); B01 040805 116600
116700 p_attrdta = peAttr(x); 01 060922 116700
116800 wwLen = %scan(u'0000': attrdta); 01 060922 116800
116900 if (wwLen = 0); B02 060922 116900
117000 wwLen = %len(attrdta); 02 060922 117000
117100 endif; E02 060922 117100
117200 if (wwLen > 0); B02 070822 117200
117300 wwLen = iconvdyn( wwLen * 2 02 070822 117300
117400 : p_attrdta 02 070822 117400
117500 : root.xlate 02 070822 117500
117600 : wwArray(x) ); 02 070822 117600
117800 else; X02 070822 117800
118400 %subst(newdta:1:1) = x'00'; 02 060922 118400
118500 endif; E02 060922 118500
118600 endfor; E01 040805 118600
118700 040805 118700
118800 wwArray(wwCount) = *NULL; 040805 118800
118900 040805 118900
119000 return p_Array; 040805 119000
119100 /end-free 040805 119100
119200 P E 040805 119200
119300 040805 119300
119400 040805 119400
119500 ****************************************************************** 040805 119500
119600 * freeAttrs(): deallocate the memory allocaed by copyAttrs 040805 119600
119700 ****************************************************************** 040805 119700
119800 P freeAttrs B 040805 119800
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 25
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
119900 D freeAttrs PI 040805 119900
120000 D peAttrs * value 040805 120000
120100 040805 120100
120200 D x s 10I 0 040805 120200
120300 D p_Array s * 040805 120300
120400 D wwArray s * dim(32767) based(p_Array) 040805 120400
120500 040805 120500
120600 /free 040805 120600
120700 040805 120700
120800 p_Array = peAttrs; 040805 120800
120900 x = 1; 040805 120900
121000 040805 121000
121100 dow wwArray(x) <> *NULL; B01 040805 121100
121200 xdealloc(wwArray(x)); 01 070125 121200
121300 x = x + 1; 01 040805 121300
121400 enddo; E01 040805 121400
121500 040805 121500
121600 xdealloc(peAttrs); 070125 121600
121700 040805 121700
121800 /end-free 040805 121800
121900 P E 040805 121900
122000 060923 122000
122100 060923 122100
122200 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 060923 122200
122300 * http_parse_xml_stmf(): Parse XML data directly from a stream file 060923 122300
122400 * (instead of downloading it from a server) 060923 122400
122500 * 060923 122500
122600 * peFile = (input) Stream file (in IFS) to read data from 060923 122600
122700 * peCCSID = (input) CCSID of stream file, 060923 122700
122800 * or HTTP_XML_CALC to attempt to calculate it 060923 122800
122900 * from the XML encoding 060923 122900
123000 * or HTTP_STMF_CALC to use the stream file's 060923 123000
123100 * CCSID attribute. 060923 123100
123200 * peStartProc = (input) call-back procedure to call at the start 060923 123200
123300 * of each XML element received. 060923 123300
123400 * peEndProc = (input) call-back procedure to call at the end 060923 123400
123500 * of each XML element received. 060923 123500
123600 * peUsrDta = (input) user-defined data that will be passed 060923 123600
123700 * to the call-back routine 060923 123700
123800 * 060923 123800
123900 * Returns -1 upon failure, 0 upon success 070202 123900
124000 *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 060923 124000
124100 P http_parse_xml_stmf... 060923 124100
124200 P B export 060923 124200
124300 D http_parse_xml_stmf... 060923 124300
124400 D PI 10I 0 060923 124400
124500 D peFile 32767A varying const options(*varsize) 060923 124500
124600 D peCCSID 10I 0 value 060923 124600
124700 D peStartProc * value procptr 060923 124700
124800 D peEndProc * value procptr 060923 124800
124900 D peUsrDta * value 060923 124900
125000 060923 125000
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 26
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
125100 D wwFD S 10I 0 060923 125100
125200 D wwRC S 10I 0 060923 125200
125300 D wwLen S 10I 0 060923 125300
125400 D wwBuf S 8192a 060923 125400
125500 D wwXBuf s 8192a based(p_Buf) 060923 125500
125600 D wwEncoding s 100C 060923 125600
125700 D wwManual s 1N inz(*OFF) 060923 125700
125800 060923 125800
125900 /free 060923 125900
126000 060923 126000
126100 // ********************************************************* 060923 126100
126200 // * open file to be parsed 060923 126200
126300 // ********************************************************* 060923 126300
126400 060923 126400
126500 select; B01 060923 126500
126600 when peCCSID = HTTP_XML_CALC; X01 060923 126600
126700 wwEncoding = *blanks; 01 060923 126700
126800 wwFD = open(peFile : O_RDONLY ); 01 060923 126800
126900 when peCCSID = HTTP_STMF_CALC; X01 060923 126900
127000 wwEncoding = XML_ENC_UTF8; 01 060923 127000
127100 wwFD = open(peFile 01 070202 127100
127200 : O_RDONLY + O_TEXTDATA 01 070202 127200
127300 : 0 01 070202 127300
127400 : 1208 ); 01 070202 127400
127500 other; X01 060923 127500
127600 HTTP_xml_SetCCSIDs(peCCSID: 1208); 01 060923 127600
127700 wwFD = open(peFile : O_RDONLY); 01 060923 127700
127800 wwEncoding = XML_ENC_UTF8; 01 060923 127800
127900 wwManual = *ON; 01 060923 127900
128000 endsl; E01 060923 128000
128100 060923 128100
128200 if ( wwFD < 0 ); B01 060923 128200
128300 SetError(HTTP_FDOPEN 01 060923 128300
128400 : 'open(): ' + %str(strerror(errno))); 01 060923 128400
128500 return -1; 01 060923 128500
128600 endif; E01 060923 128600
128700 060923 128700
128800 060923 128800
128900 // ********************************************************* 060923 128900
129000 // Initialize the XML parser & our own data 060923 129000
129100 // ********************************************************* 060923 129100
129200 060923 129200
129300 wkElemRoot = *ALLx'00'; 060923 129300
129400 wkElemRoot.userdata = peUsrDta; 060923 129400
129500 wkElemRoot.startcb = peStartProc; 060923 129500
129600 wkElemRoot.endcb = peEndProc; 060923 129600
129700 %len(wkElemRoot.buf) = 0; 060923 129700
129800 060923 129800
129900 wkParser = InitParser(wkElemRoot: wwEncoding); 060923 129900
130000 060923 130000
130100 060923 130100
130200 // ********************************************************* 060923 130200
130300 // Read the stream file data and pass it to the parser 060923 130300
130400 // ********************************************************* 060923 130400
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 27
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
130500 060923 130500
130600 wwRC = 0; 060923 130600
130700 dow '1'; B01 060923 130700
130800 wwLen = read(wwFD: %addr(wwBuf): %size(wwBuf)); 01 060923 130800
130900 if (wwLen < 1) ; B02 060923 130900
131000 leave; 02 060923 131000
131100 endif; E02 060923 131100
131200 060923 131200
131300 if (wwManual); B02 060923 131300
131400 wwLen = xml_xlate( wwLen: %addr(wwBuf): p_buf ); 02 060923 131400
131500 wwLen = parsexml(0: wwXBuf: wwLen); 02 070202 131500
131600 xdealloc(p_Buf); 02 070125 131600
131700 else; X02 060923 131700
131800 wwLen = parsexml(0: wwBuf: wwLen); 02 070202 131800
131900 endif; E02 060923 131900
132000 060923 132000
132100 if (wwLen < 0); B02 070202 132100
132200 leave; 02 060923 132200
132300 endif; E02 060923 132300
132400 enddo; E01 060923 132400
132500 060923 132500
132600 callp close(wwFD); 060923 132600
132700 060923 132700
132800 if (wkElemRoot.errcode = 0); B01 060923 132800
132900 ParseXML(0: wwBuf: 0); 01 060923 132900
133000 endif; E01 060923 133000
133100 060923 133100
133200 060923 133200
133300 // ********************************************************* 060923 133300
133400 // Check for error. 060923 133400
133500 // ********************************************************* 060923 133500
133600 060923 133600
133700 if (wkElemRoot.errcode > 0); B01 060923 133700
133800 SetError(HTTP_XMLERR: 'XML parse failed at line ' 01 060923 133800
133900 + %char(wkElemRoot.line) + ', col ' 01 060923 133900
134000 + %char(wkElemRoot.column) + ': ' 01 060923 134000
134100 + %str(XML_ErrorString(wkElemRoot.errcode))); 01 060923 134100
134200 %len(wkElemRoot.buf) = 0; 01 060923 134200
134300 wwRC = -1; 01 060923 134300
134400 endif; E01 060923 134400
134500 060923 134500
134600 // ********************************************************* 060923 134600
134700 // All done§ 060923 134700
134800 // ********************************************************* 060923 134800
134900 060923 134900
135000 close_iconv(wkElemRoot.xlate); 070816 135000
135100 XML_ParserFree(wkParser); 060923 135100
135200 return wwRC; 060923 135200
135300 060923 135300
135400 /end-free 060923 135400
135500 P E 060923 135500
135600 070329 135600
135700 070329 135700
135800 *++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 070329 135800
135900 * http_xmlns(): Enable XML Namespace processing 070329 135900
136000 * 070329 136000
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 28
Numéro <---------------------- Spécifications source-----------------------------><-- Commentaires --> N° Page Date ID Numéro
Numéro ....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10 N° Lign modif SrceNuméro
136100 * peEnable = (input) *ON to enable parsing, *OFF to disable. 070329 136100
136200 * (it is disabled by default) 070329 136200
136300 *++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 070329 136300
136400 P http_xmlns B export 070329 136400
136500 D http_xmlns PI 070329 136500
136600 D peEnable 1N const 070329 136600
136700 /free 070329 136700
136800 if (peEnable=*On or peEnable=*OFF); B01 070329 136800
136900 wkNamespace = peEnable; 01 070329 136900
137000 endif; E01 070329 137000
137100 /end-free 070329 137100
137200 P E 070329 137200
137300 070816 137300
137400 070816 137400
137500 *++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 070816 137500
137600 * http_XmlReturnPtr(): XML End Element Handler should return a 070816 137600
137700 * pointer to the full element value instead of 070816 137700
137800 * returning a VARYING character string. 070816 137800
137900 * (VARYING is limited to 64k) 070816 137900
138000 * 070816 138000
138100 * peEnable = (input) *ON to return a pointer, *OFF to return 070816 138100
138200 * a VARYING string (*OFF = default) 070816 138200
138300 *++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 070816 138300
138400 P http_XmlReturnPtr... 070816 138400
138500 P B export 070816 138500
138600 D http_XmlReturnPtr... 070816 138600
138700 D PI 070816 138700
138800 D peEnable 1N const 070816 138800
138900 /free 070816 138900
139000 if (peEnable=*On or peEnable=*OFF); B01 070816 139000
139100 wkRetFull = peEnable; 01 070816 139100
139200 endif; E01 070816 139200
139300 /end-free 070816 139300
139400 P E 070816 139400
139500 040805 139500
139600 /define ERRNO_LOAD_PROCEDURE 040805 139600
139700 /copy qrpglesrc,errno_h 060323 139700
LINES EXCLUDED: 0
* * * * * F I N D E S O U R C E * * * * *
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 29
M e s s a g e s d e d i a g n o s t i c s u p p l é m e n t a i r e s
ID msg Gr Instruct Texte message
*RNF5409 00 019600 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 030700 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 045500 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 045800 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 055600 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 056900 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 066500 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 067800 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 077000 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 078300 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 127600 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 132600 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF5409 00 132900 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
* * * * * F I N D E S M E S S A G E S D E D I A G N O S T I C S U P P L E M E N T A I R E S * * * * *
M e m b r e s / C O P Y
Numéro ID Nom RPG <-------- Nom externe -------> CCSID <- Dern modif ->
Numéro Srce Biblio Fichier Membre Date Heure
004300 1 HTTPAPI_H LIBHTTP QRPGLESRC HTTPAPI_H 37 27/08/07 23:02:54
1003700 2 CONFIG_H LIBHTTP QRPGLESRC CONFIG_H 37 27/08/07 23:02:53
004400 3 PRIVATE_H LIBHTTP QRPGLESRC PRIVATE_H 37 16/08/07 13:25:55
004500 4 EXPAT_H LIBHTTP QRPGLESRC EXPAT_H 37 27/08/07 13:35:33
004600 5 IFSIO_H LIBHTTP QRPGLESRC IFSIO_H 37 31/01/07 00:27:29
004700 6 ERRNO_H LIBHTTP QRPGLESRC ERRNO_H 37 31/01/07 00:26:24
139700 7 ERRNO_H LIBHTTP QRPGLESRC ERRNO_H 37 31/01/07 00:26:24
* * * * * F I N D E S M E M B R E S / C O P Y * * * * *
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 30
R é f é r e n c e s c r o i s é e s
Références de fichier et d'enregistrement :
Fichier Unité Références (D=Défini)
Enreg
Aucune référence dans le source.
Références de zone globales :
Zone Attributs Références (D=Défini M=Modifié)
à__ERRNO *(16) 6031800D 7034000
PROTOTYPE
*RNF7031 ACCESS I(10,0) 5031300D
PROTOTYPE
*RNF7031 ACTIME I(10,0) 5026500D
*RNF7031 ATOI I(10,0) 3009200D
PROTOTYPE
*RNF7031 ATOLL I(20,0) 3009500D
PROTOTYPE
*RNF7031 BASE64_ENCODE I(10,0) 3000900D
PROTOTYPE
*RNF7031 BASE64_INIT PROTOTYPE 3000600D
CHARDATA PROTOTYPE 005700D 086200 098700 098800
*RNF7031 CHDIR I(10,0) 5032200D
PROTOTYPE
*RNF7031 CHMOD I(10,0) 5033000D
PROTOTYPE
*RNF7031 CHOWN I(10,0) 5033900D
PROTOTYPE
CHUNKSIZE CONST 010200D 092500 092600 100200
CLOSE I(10,0) 5035800D 045500 132600
PROTOTYPE
CLOSE_ICONV PROTOTYPE 3013200D 020700M 031900M 047000M
135000M
*RNF7031 CLOSEDIR I(10,0) 5036800D
PROTOTYPE
*RNF7031 CLOSEF I(10,0) 5035400D
PROTOTYPE
*RNF7031 COMMTCP_CONNECTBLOCKING...
I(10,0) 3006500D
PROTOTYPE
*RNF7031 COMMTCP_CONNECTNONBLOCK...
I(10,0) 3007000D
PROTOTYPE
*RNF7031 COMMTCP_FD_ISSET N(1) 3008000D
PROTOTYPE
*RNF7031 COMMTCP_FD_SET PROTOTYPE 3007500D
*RNF7031 COMMTCP_FD_ZERO PROTOTYPE 3008500D
*RNF7031 CONVERT *(16) PROCPTR 4012500D
COPYATTRS *(16) 007000D 095800 112900 113000
PROTOTYPE
CP_ASCII CONST 5006700D
CP_DOSASCII CONST 5006600D
*RNF7031 CREAT I(10,0) 5037600D
PROTOTYPE
*RNF7031 D_FILENO U(10,0) 5029300D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 31
*RNF7031 D_NAME A(640) 5030300D
*RNF7031 D_NAMELEN U(10,0) 5030200D
*RNF7031 D_NLSINFO A(12) 5029700D 5029800 5029900 5030000
5030100
*RNF7031 D_RECLEN U(10,0) 5029400D
*RNF7031 D_RESERV1 A(16) 5029100D
*RNF7031 D_RESERV2 U(10,0) 5029200D
*RNF7031 D_RESERV3 I(10,0) 5029500D
*RNF7031 D_RESERV4 A(8) 5029600D
*RNF7031 DATA *(16) 4012400D
*RNF7031 DEBUG_CLOSE PROTOTYPE 3003800D
*RNF7031 DEBUG_MSG PROTOTYPE 3003500D
*RNF7031 DEBUG_SETPROC PROTOTYPE 3002700D
*RNF7031 DEBUG_WRITE PROTOTYPE 3003100D
*RNF7031 DIRENT DS(696) 5029000D
BASED(P_DIRENT)
*RNF7031 DUP I(10,0) 5038500D
PROTOTYPE
*RNF7031 DUP2 I(10,0) 5039300D
PROTOTYPE
EACCES CONST 6011100D
EADDRINUSE CONST 6013300D
EADDRNOTAVAIL CONST 6013500D
EAFNOSUPPORT CONST 6013700D
EAGAIN CONST 6012100D
EALREADY CONST 6013900D
EBADDATA CONST 6008800D
EBADF CONST 6019500D
EBADFID CONST 6026500D
EBADFUNC CONST 6008400D
EBADKEYLN CONST 6009800D
EBADMODE CONST 6007400D
EBADNAME CONST 6007200D
EBADOPT CONST 6009000D
EBADPOS CONST 6007600D
EBADSEEK CONST 6007000D
EBUSY CONST 6030900D
ECHILD CONST 6027300D
ECLOSED CONST 6013100D
ECONNABORTED CONST 6014100D
ECONNREFUSED CONST 6014300D
ECONNRESET CONST 6014500D
ECONVERT CONST 6024100D
EDAMAGE CONST 6022900D
EDATALINK CONST 6029700D
EDEADLK CONST 6020500D
EDESTADDRREQ CONST 6014700D
EDESTROYED CONST 6021100D
EDOM CONST 6005000D
EEXIST CONST 6020300D
EFAULT CONST 6012500D
EFBIG CONST 6025700D
EFILECVT CONST 6026300D
EGETANDPUT CONST 6010200D
EHOSTDOWN CONST 6014900D
EHOSTUNREACH CONST 6015100D
EIDRM CONST 6025900D
EILSEQ CONST 6024500D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 32
EINPROGRESS CONST 6015300D
EINTR CONST 6012300D
EINVAL CONST 6030300D
EIO CONST 6030500D
EIOERROR CONST 6010400D
EIORECERR CONST 6010600D
EISCONN CONST 6015500D
EISDIR CONST 6022100D
EITERBAD CONST 6022700D
EJOURNALED CONST 6029300D
EJRNDAMAGE CONST 6028100D
EJRNENTTOOLONG CONST 6029500D
EJRNINACTIVE CONST 6028300D
EJRNRCVSPC CONST 6028500D
EJRNRMT CONST 6028700D
*RNF7031 ELEMENT DS(10304) 009300D 088000 088400
BASED(P_ELEMENT)
.ALLOCSIZE I(10,0) 009900D 100100 100200M 100200
100400
.ATTRS *(16) 010000D 106700 111400
.NAME A(1024) 009600D 109500 110300
VARYING
.NS A(1024) 009500D 109400
VARYING
.PATH A(8192) 009400D 109600 110400
VARYING
.SIZE I(10,0) 009800D 100000 100700 101800M
101800 107100 107500
.VALUE *(16) 009700D 100300M 100300 100700
107600 111500
*RNF7031 ELEMROOT DS(16516) 005000 005400 005800 006200
007100 007800D 010500 083400
087500 098900 102800 113100
*RNF7031 .BUF A(8192) 008400D
VARYING
*RNF7031 .COLUMN I(10,0) 008700D
*RNF7031 .DEPTH I(10,0) 007900D
*RNF7031 .ENDCB *(16) PROCPTR 008100D
*RNF7031 .ENTRY(512) *(16) 008300D
*RNF7031 .ERRCODE I(10,0) 008500D
*RNF7031 .LINE I(10,0) 008600D
*RNF7031 .NAMESPACE N(1) 008800D
*RNF7031 .NSCHAR A(1) 008900D
*RNF7031 .STARTCB *(16) PROCPTR 008000D
*RNF7031 .USERDATA *(16) 008200D
*RNF7031 .XLATE A(52) 009000D
ELOCKED CONST 6025500D
ELOOP CONST 6023100D
EMFILE CONST 6019700D
EMLINK CONST 6021500D
EMSGSIZE CONST 6015700D
ENAMETOOLONG CONST 6023300D
ENDELEMENT PROTOTYPE 006100D 085900 102600 102700
ENETDOWN CONST 6015900D
ENETRESET CONST 6016100D
ENETUNREACH CONST 6016300D
ENEWJRN CONST 6029100D
ENEWJRNRCV CONST 6028900D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 33
ENFILE CONST 6019900D
ENOBUFS CONST 6016500D
ENODEV CONST 6030700D
ENOENT CONST 6031100D
ENOLCK CONST 6023500D
ENOMEM CONST 6020700D
ENOMSG CONST 6026100D
ENOPOS CONST 6007800D
ENOPROTOOPT CONST 6016700D
ENOREC CONST 6008600D
ENOSPC CONST 6011500D
ENOSYS CONST 6021900D
ENOSYSRSC CONST 6023900D
ENOTCONN CONST 6016900D
ENOTDIR CONST 6011300D
ENOTDLT CONST 6009400D
ENOTEMPTY CONST 6023700D
ENOTENROLL CONST 6024900D
ENOTOPEN CONST 6005600D
ENOTREAD CONST 6005800D
ENOTSAFE CONST 6027700D
ENOTSIGINIT CONST 6027100D
ENOTSOCK CONST 6017100D
ENOTSUP CONST 6017300D
ENOTUPD CONST 6009200D
ENOTWRITE CONST 6006200D
ENUMMBRS CONST 6008000D
ENUMRECS CONST 6008200D
ENXIO CONST 6012900D
EOFFLINE CONST 6025100D
EOPNOTSUPP CONST 6017500D
EOVERFLOW CONST 6027900D
EOWNERTERM CONST 6020900D
EPAD CONST 6009600D
EPERM CONST 6031300D
EPFNOSUPPORT CONST 6017700D
EPIPE CONST 6020100D
EPROTONOSUPPORT CONST 6018000D
EPROTOTYPE CONST 6018200D
EPUTANDGET CONST 6010000D
ERANGE CONST 6005200D
ERCVDERR CONST 6018400D
ERECIO CONST 6006000D
EROFS CONST 6022300D
EROOBJ CONST 6025300D
ERRNO I(10,0) 6032700D 037600 038300 128400
PROTOTYPE 7033600 7033700
ESHUTDOWN CONST 6018600D
ESOCKTNOSUPPORT CONST 6018900D
ESOFTDAMAGE CONST 6024700D
ESPIPE CONST 6021700D
ESRCH CONST 6026900D
ESTALE CONST 6026700D
ESTDERR CONST 6006800D
ESTDIN CONST 6006400D
ESTDOUT CONST 6006600D
ETERM CONST 6021300D
ETIME CONST 6012700D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 34
ETIMEDOUT CONST 6019100D
ETOOMANYREFS CONST 6027500D
ETRUNC CONST 6005400D
EUNATCH CONST 6019300D
EUNKNOWN CONST 6022500D
EWOULDBLOCK CONST 6011900D
EXDEV CONST 6011700D
E2BIG CONST 6024300D
F_OK CONST 5012900D
*RNF7031 FCHMOD I(10,0) 5040200D
PROTOTYPE
*RNF7031 FCHOWN I(10,0) 5041100D
PROTOTYPE
*RNF7031 FCNTL I(10,0) 5042200D
PROTOTYPE
*RNF7031 FDSET A(28) 3008800D
BASED(TEMPLATE)
*RNF7031 FILE_CCSID I(10,0) 3005500D
PROTOTYPE
*RNF7031 FPATHCONF I(10,0) 5043400D
PROTOTYPE
FREEATTRS PROTOTYPE 007300D 111400M 119800 119900
*RNF7031 FSTAT I(10,0) 5044300D
PROTOTYPE
*RNF7031 FSYNC I(10,0) 5045200D
PROTOTYPE
*RNF7031 FTRUNCATE I(10,0) 5046000D
PROTOTYPE
*RNF7031 GETCWD *(16) 5046900D
PROTOTYPE
*RNF7031 GETEGID U(10,0) 5047800D
PROTOTYPE
*RNF7031 GETEUID U(10,0) 5048500D
PROTOTYPE
*RNF7031 GETGID U(10,0) 5049200D
PROTOTYPE
*RNF7031 GETGRID *(16) 5049900D
PROTOTYPE
*RNF7031 GETGRNAM *(16) 5050700D
PROTOTYPE
*RNF7031 GETGROUPS *(16) 5051500D
PROTOTYPE
*RNF7031 GETPATHFID *(16) 5063100D
PROTOTYPE
*RNF7031 GETPWNAM *(16) 5052800D
PROTOTYPE
*RNF7031 GETPWUID *(16) 5054000D
PROTOTYPE
*RNF7031 GETUID U(10,0) 5054800D
PROTOTYPE
*RNF7031 GR_GID U(10,0) 5022600D
*RNF7031 GR_MEM(256) *(16) 5022700D
*RNF7031 GR_NAME *(16) 5022500D
*RNF7031 GROUP DS(4128) 5022400D
BASED(P_GROUP)
HTTP_ACCES CONST 1152400D
HTTP_ASCII CONST 2006500D
HTTP_ATHTYP CONST 1155600D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 35
HTTP_ATHVAL CONST 1155800D
HTTP_AUTH_BASIC CONST 1164200D
HTTP_AUTH_MD5_DIGEST...
CONST 1164400D
HTTP_AUTH_NONE CONST 1164000D
HTTP_BADCHK CONST 1151800D
HTTP_BADCNN CONST 1149100D
HTTP_BADPNT CONST 1157700D
HTTP_BADURL CONST 1148100D
HTTP_BRRECV CONST 1157100D
HTTP_BRSELE CONST 1157300D
HTTP_BRTIME CONST 1156900D
*RNF7031 HTTP_BUILD_SOCKADDR...
I(10,0) 1023400D
PROTOTYPE
HTTP_BWSELE CONST 1159500D
HTTP_BWSEND CONST 1159300D
HTTP_BWTIME CONST 1159700D
HTTP_BWTIMO CONST 1160900D
HTTP_CCSID CONST 2007800D
HTTP_CHKSIZ CONST 1152000D
HTTP_CKDUMP CONST 1162300D
HTTP_CKOPEN CONST 1162500D
HTTP_CKSTAT CONST 1162700D
*RNF7031 HTTP_CLOSE I(10,0) 1024800D
PROTOTYPE
HTTP_CNNTIMO CONST 1149300D
*RNF7031 HTTP_COMP PROTOTYPE 1142500D
HTTP_CONTTYPE CONST 2004400D
HTTP_CONVERR CONST 1162900D
HTTP_COOKIE_DEFAULT...
CONST 2010800D
*RNF7031 HTTP_COOKIE_FILE PROTOTYPE 1141600D
*RNF7031 HTTP_CRASH PROTOTYPE 1144200D
HTTP_CSSELE CONST 1155000D
*RNF7031 HTTP_DEBUG PROTOTYPE 1119500D
*RNF7031 HTTP_DEBUG_FILE A(500) 2011400D
VARYING
*RNF7031 HTTP_DIAG PROTOTYPE 1143400D
HTTP_EBCDIC CONST 2006400D
*RNF7031 HTTP_ERROR A(80) 1026000D
PROTOTYPE
HTTP_FDOPEN CONST 1152600D 038200 128300
HTTP_FDSTAT CONST 1161300D 037500
*RNF7031 HTTP_GET I(10,0) 1006900D
PROTOTYPE
*RNF7031 HTTP_GET_XML I(10,0) 1073900D
PROTOTYPE
*RNF7031 HTTP_GET_XMLTF I(10,0) 1077800D 049400 049700
PROTOTYPE
*RNF7031 HTTP_GETAUTH I(10,0) 1033700D
PROTOTYPE
HTTP_GSKAPPID CONST 1152800D
HTTP_GSKATYP CONST 1153000D
HTTP_GSKENVI CONST 1153200D
HTTP_GSKENVO CONST 1153400D
HTTP_GSKKEYF CONST 1161900D
HTTP_GSKSTYP CONST 1153600D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 36
*RNF7031 HTTP_HEADER A(32500) 1138500D
VARYING
PROTOTYPE
HTTP_HOSTNF CONST 1148300D
HTTP_IFOPEN CONST 1161700D
HTTP_IFSMODE CONST 2009300D
HTTP_INVPTR CONST 1158900D
*RNF7031 HTTP_LONG_PARSEURL...
I(10,0) 1060300D
PROTOTYPE
HTTP_LRRECV CONST 1159900D
HTTP_LRSELE CONST 1160100D
HTTP_LRTIME CONST 1160300D
*RNF7031 HTTP_MFD_ENCODER_ADDSTMF...
N(1) 1116800D
PROTOTYPE
*RNF7031 HTTP_MFD_ENCODER_ADDVAR...
N(1) 1113100D
PROTOTYPE
*RNF7031 HTTP_MFD_ENCODER_ADDVAR_S...
N(1) 1114900D
PROTOTYPE
*RNF7031 HTTP_MFD_ENCODER_CLOSE...
PROTOTYPE 1118200D
*RNF7031 HTTP_MFD_ENCODER_OPEN...
*(16) 1111300D
PROTOTYPE
HTTP_MUTABLE CONST 1162100D
HTTP_NDAUTH CONST 1155400D
HTTP_NOAUTH CONST 1156000D
HTTP_NOCDRIV CONST 1160700D
HTTP_NODATA CONST 1158700D
HTTP_NOMEM CONST 1158500D
HTTP_NONBLK CONST 1148900D
HTTP_NOSPAC CONST 1159100D
HTTP_NOTREG CONST 1155200D
HTTP_NOTSUPP CONST 1160500D
HTTP_PARSE_XML_STMF...
I(10,0) 1136500D 056400 067300 077800
PROTOTYPE 124100 124400
*RNF7031 HTTP_PARSEURL I(10,0) 1021100D
PROTOTYPE
*RNF7031 HTTP_PERSIST_CLOSE...
I(10,0) 1109000D
PROTOTYPE
*RNF7031 HTTP_PERSIST_GET I(10,0) 1101600D
PROTOTYPE
*RNF7031 HTTP_PERSIST_OPEN *(16) 1098400D
PROTOTYPE
*RNF7031 HTTP_PERSIST_POST I(10,0) 1106700D
PROTOTYPE
HTTP_POINT_ADDL_HEADER...
CONST 1169400D
HTTP_POINT_DEBUG CONST 1165900D
HTTP_POINT_DOWNLOAD_STATUS...
CONST 1168300D
HTTP_POINT_PARSE_HDR_LONG...
CONST 1171400D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 37
HTTP_POINT_PARSE_HEADER...
CONST 1170400D
HTTP_POINT_UPLOAD_STATUS...
CONST 1167100D
*RNF7031 HTTP_POST I(10,0) 1010900D
PROTOTYPE
*RNF7031 HTTP_POST_STMF I(10,0) 1068800D
PROTOTYPE
*RNF7031 HTTP_POST_STMF_XML...
I(10,0) 1091700D
PROTOTYPE
*RNF7031 HTTP_POST_STMF_XMLTF...
I(10,0) 1096100D 070900 071200
PROTOTYPE
*RNF7031 HTTP_POST_XML I(10,0) 1083300D
PROTOTYPE
*RNF7031 HTTP_POST_XMLTF I(10,0) 1087700D 059900 060200
PROTOTYPE
*RNF7031 HTTP_PROXY_GETAUTH...
I(10,0) 1040800D
PROTOTYPE
*RNF7031 HTTP_PROXY_SETAUTH...
I(10,0) 1038300D
PROTOTYPE
HTTP_PST417 CONST 1156300D
HTTP_PXNDAUTH CONST 1163300D
HTTP_RDCRLF CONST 1157500D
HTTP_RDRECV CONST 1150900D
HTTP_RDSELE CONST 1151100D
HTTP_RDTIME CONST 1156700D
HTTP_RDWERR CONST 1151400D
*RNF7031 HTTP_REDIR_LOC A(1024) 1043900D
VARYING
PROTOTYPE
HTTP_REGERR CONST 1153800D
HTTP_RESP CONST 1150700D
HTTP_RRRECV CONST 1150300D
HTTP_RRSELE CONST 1150500D
HTTP_RRTIME CONST 1156500D
HTTP_SAALLO CONST 1148500D
HTTP_SDSELE CONST 1154800D
HTTP_SDSEND CONST 1151600D
*RNF7031 HTTP_SELECT_COMMDRIVER...
*(16) 1062100D
PROTOTYPE
*RNF7031 HTTP_SET_100_TIMEOUT...
PROTOTYPE 1132500D
HTTP_SETATTR CONST 1163100D
*RNF7031 HTTP_SETAUTH I(10,0) 1035300D
PROTOTYPE
*RNF7031 HTTP_SETCCSIDS I(10,0) 1121100D
PROTOTYPE
*RNF7031 HTTP_SETFILECCSID PROTOTYPE 1125000D
*RNF7031 HTTP_SETPROXY I(10,0) 1036700D
PROTOTYPE
*RNF7031 HTTP_SETTABLES I(10,0) 1122700D
PROTOTYPE
HTTP_SOCERR CONST 1148700D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 38
HTTP_SRSELE CONST 1149700D
HTTP_SRXLATE CONST 1149500D
HTTP_SRXMIT CONST 1150000D
HTTP_SSOPEN CONST 1154000D
HTTP_SSPROT CONST 1157900D
HTTP_SSPSET CONST 1158300D
HTTP_SSPUNK CONST 1158100D
HTTP_SSSNFD CONST 1154200D
HTTP_SSSNTO CONST 1154400D
HTTP_SSTIMO CONST 1154600D
HTTP_STMF_CALC CONST 1137300D 126900
HTTP_SWCERR CONST 1161100D
HTTP_TEMPFILE A(40) 1145000D 051700 062400 073400
VARYING
PROTOTYPE
HTTP_TIMEOUT CONST 2003100D
*RNF7031 HTTP_URL_ENCODER *(16) 1045100D 1045300 1047700 1050100
1052700 1055300 1057300
*RNF7031 HTTP_URL_ENCODER_ADDVAR...
N(1) 1047600D
PROTOTYPE
*RNF7031 HTTP_URL_ENCODER_ADDVAR_S...
N(1) 1057200D
PROTOTYPE
*RNF7031 HTTP_URL_ENCODER_FREE...
N(1) 1055200D
PROTOTYPE
*RNF7031 HTTP_URL_ENCODER_GETPTR...
PROTOTYPE 1050000D
*RNF7031 HTTP_URL_ENCODER_GETSTR...
A(32767) 1052600D
VARYING
PROTOTYPE
*RNF7031 HTTP_URL_ENCODER_NEW...
*(16) 1045300D
PROTOTYPE
HTTP_URL_GET I(10,0) 1007700D 052100 052400 052800
PROTOTYPE 053300 053900 054600
HTTP_URL_GET_RAW I(10,0) 1015000D 015500 015900 016400
PROTOTYPE 017000 017700 018500
*RNF7031 HTTP_URL_GET_XML I(10,0) 1075000D 012600 012900
PROTOTYPE
HTTP_URL_POST I(10,0) 1011800D 062800 063300 063900
PROTOTYPE 064600 065400
HTTP_URL_POST_RAW I(10,0) 1018200D 026500 027100 027800
PROTOTYPE 028600 029500
HTTP_URL_POST_RAW2...
I(10,0) 1064700D 040900 041600 042400
PROTOTYPE 043300 044300
HTTP_URL_POST_STMF...
I(10,0) 1068000D 073800 074200 074700
PROTOTYPE 075300 076000
*RNF7031 HTTP_URL_POST_STMF_XML...
I(10,0) 1092800D 034900 035200
PROTOTYPE
*RNF7031 HTTP_URL_POST_XML I(10,0) 1084500D 023500 023800
PROTOTYPE
*RNF7031 HTTP_USE_COOKIES PROTOTYPE 1140000D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 39
HTTP_USERAGENT CONST 2003700D
HTTP_XFRENC CONST 1152200D
*RNF7031 HTTP_XLATE I(10,0) 1126400D
PROTOTYPE
*RNF7031 HTTP_XLATEDYN I(10,0) 1129800D
PROTOTYPE
*RNF7031 HTTP_XLATEP I(10,0) 1128100D
PROTOTYPE
HTTP_XML_CALC CONST 1137200D 056500 067400 077900
126600
HTTP_XML_SETCCSIDS...
I(10,0) 1134000D 127600M
PROTOTYPE
HTTP_XMLERR CONST 1161500D 020000 031100 046200
133800
*RNF7031 HTTP_XMLNS PROTOTYPE 1145900D 136400 136500
*RNF7031 HTTP_XMLRETURNPTR PROTOTYPE 1147300D 138400 138700
*RNF7031 HTTP_XPROC I(10,0) 1042700D
PROTOTYPE
HTTPAPI_RELDATE CONST 1003500D
HTTPAPI_VERSION CONST 1003300D
*RNF7031 HTTPDATE A(29) 3005200D
PROTOTYPE
*RNF7031 HTTPS_CLEANUP I(10,0) 1031200D
PROTOTYPE
*RNF7031 HTTPS_DCM_REG I(10,0) 1030100D
PROTOTYPE
*RNF7031 HTTPS_INIT I(10,0) 1028100D
PROTOTYPE
ICONVDYN I(10,0) 3013500D 094100 107500 117300
PROTOTYPE
INITPARSER *(16) 004900D 015100 026100 039700
PROTOTYPE 083200 083300 129900
*RNF7031 IOCTL I(10,0) 5055500D
PROTOTYPE
*RNF7031 LINK I(10,0) 5056500D
PROTOTYPE
*RNF7031 LSEEK I(10,0) 5057400D
PROTOTYPE
*RNF7031 LSTAT I(10,0) 5058400D
PROTOTYPE
*RNF7031 MAP(256) I(10,0) 4012300D
MAXDEPTH CONST 007600D 008300
*RNF7031 MD5 N(1) 3004000D
PROTOTYPE
*RNF7031 MEMCPY *(16) 3010200D
PROTOTYPE
*RNF7031 MKDIR I(10,0) 5059300D
PROTOTYPE
*RNF7031 MODTIME I(10,0) 5026600D
NEW_ICONV A(52) 3012800D 084200
PROTOTYPE
*RNF7031 NLS_CCSID I(10,0) 5029800D
*RNF7031 NLS_CNTRY A(2) 5029900D
*RNF7031 NLS_LANG A(3) 5030000D
*RNF7031 NLS_RESERV A(3) 5030100D
O_APPEND CONST 5008900D
O_CCSID CONST 5008500D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 40
O_CODEPAGE CONST 5010700D
O_CREAT CONST 5008100D
O_DSYNC CONST 5009300D
O_EXCL CONST 5008300D
O_INHERITMODE CONST 5011600D
O_LARGEFILE CONST 5011900D
O_NOCTTY CONST 5009700D
O_RDONLY CONST 5007500D 038000 126800 127200
127700
O_RDWR CONST 5007900D
O_RSYNC CONST 5009500D
O_SHARE_NONE CONST 5010500D
O_SHARE_RDONLY CONST 5009900D
O_SHARE_RDWR CONST 5010300D
O_SHARE_WRONLY CONST 5010100D
O_SYNC CONST 5009100D
O_TEXT_CREAT CONST 5011400D
O_TEXTDATA CONST 5010900D 127200
O_TRUNC CONST 5008700D
O_WRONLY CONST 5007700D
OPEN I(10,0) 5060200D 038000 126800 127100
PROTOTYPE 127700
*RNF7031 OPENDIR *(16) 5061400D
PROTOTYPE
P_DIRENT *(16) 5028900D 5029000
P_ELEMENT *(16) 009200D 009300 099800M 106300M
111700M
P_GROUP *(16) 5022300D 5022400
P_PASSWD *(16) 5024600D 5024700
P_STATDS *(16) 5019200D 5019300
P_UTIMBUF *(16) 5026300D 5026400
PARSEXML I(10,0) 006500D 015700 016100 016600
PROTOTYPE 017200 017900 018700 019600
026900 027500 028200 029000
029900 030700 041400 042100
042900 043800 044800 045800
079800 079900 131500 131800
132900M
*RNF7031 PASSWD DS(64) 5024700D
BASED(P_PASSWD)
*RNF7031 PATHCONF I(10,0) 5062200D
PROTOTYPE
*RNF7031 PERROR PROTOTYPE 6032300D
*RNF7031 PW_DIR *(16) 5025100D
*RNF7031 PW_GID U(10,0) 5025000D
*RNF7031 PW_NAME *(16) 5024800D
*RNF7031 PW_SHELL *(16) 5025200D
*RNF7031 PW_UID U(10,0) 5024900D
R_OK CONST 5013000D
READ I(10,0) 5066100D 041100 041800 042600
PROTOTYPE 043500 044500 130800
*RNF7031 READDIR *(16) 5067100D
PROTOTYPE
*RNF7031 READLINK I(10,0) 5067900D
PROTOTYPE
*RNF7031 RELEASE *(16) PROCPTR 4012600D
*RNF7031 RENAME I(10,0) 5064200D
PROTOTYPE
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 41
*RNF7031 REPLACE I(10,0) 5065200D
PROTOTYPE
*RNF7031 REWINDDIR PROTOTYPE 5068900D
*RNF7031 RMDIR I(10,0) 5069800D
PROTOTYPE
S_IRGRP CONST 5015200D
S_IROTH CONST 5015700D
S_IRUSR CONST 5014700D
S_IRWXG CONST 5015500D
S_IRWXO CONST 5016000D
S_IRWXU CONST 5015000D
S_IWGRP CONST 5015300D
S_IWOTH CONST 5015800D
S_IWUSR CONST 5014800D
S_IXGRP CONST 5015400D
S_IXOTH CONST 5015900D
S_IXUSR CONST 5014900D
SEEK_CUR CONST 5016600D
SEEK_END CONST 5016700D
SEEK_SET CONST 5016500D
SETERROR PROTOTYPE 3004800D 020000M 031100M 037500M
038200M 046200M 128300M 133800M
*RNF7031 ST_ALCTIZE U(10,0) 5020600D
*RNF7031 ST_ATIME I(10,0) 5020100D
*RNF7031 ST_BLKSIZE U(10,0) 5020500D
*RNF7031 ST_CODEPAG U(5,0) 5020800D
*RNF7031 ST_CTIME I(10,0) 5020300D
*RNF7031 ST_DEV U(10,0) 5020400D
*RNF7031 ST_GID U(10,0) 5019900D
*RNF7031 ST_INO U(10,0) 5019500D
*RNF7031 ST_INO_GEN_ID U(10,0) 5021000D
*RNF7031 ST_MODE U(10,0) 5019400D
*RNF7031 ST_MTIME I(10,0) 5020200D
*RNF7031 ST_NLINK U(5,0) 5019600D
*RNF7031 ST_OBJTYPE A(12) 5020700D
*RNF7031 ST_PAD A(2) 5019700D
*RNF7031 ST_RESV11 A(62) 5020900D
*RNF7031 ST_SIZE I(10,0) 5020000D
*RNF7031 ST_UID U(10,0) 5019800D
STARTELEMENT PROTOTYPE 005300D 085800 087300 087400
STAT I(10,0) 5070600D 037400
PROTOTYPE
*RNF7031 STATDS DS(128) 5019300D 036300
BASED(P_STATDS)
STRERROR *(16) 6032000D 037600 038300 128400
PROTOTYPE
*RNF7031 SYMLINK I(10,0) 5071500D
PROTOTYPE
*RNF7031 SYSCONF I(10,0) 5072400D
PROTOTYPE
TEMPLATE *(16) 3008800 4008100 4012200
TO_ASCII CONST 1172000D
TO_EBCDIC CONST 1172100D
*RNF7031 TS_FREE PROTOTYPE 3011700D
*RNF7031 TS_MALLOC *(16) 3011100D
PROTOTYPE
*RNF7031 TS_REALLOC *(16) 3011400D
PROTOTYPE
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 42
*RNF7031 UMASK U(10,0) 5073200D
PROTOTYPE
UNLINK I(10,0) 5074200D 055600M 056900M 066500M
PROTOTYPE 067800M 077000M 078300M
*RNF7031 URL_ENCODE PROTOTYPE 3002000D
*RNF7031 URL_ENCODE_PRE I(10,0) 3001500D
PROTOTYPE
*RNF7031 UTIL_DIAG N(1) 3004500D
PROTOTYPE
*RNF7031 UTIMBUF DS(8) 5026400D
BASED(P_UTIMBUF)
*RNF7031 UTIME I(10,0) 5075000D
PROTOTYPE
W_OK CONST 5013100D
WKELEMROOT DS(16516) 010500D 014500M 015100 025500M
026100 039100M 039700 129300M
129900
.BUF A(8192) 010500D 014900M 025900M 031500M
VARYING 039500M 046600M 129700M 134200M
.COLUMN I(10,0) 010500D 020200 031300 046400
081900M 134000
*RNF7031 .DEPTH I(10,0) 010500D
.ENDCB *(16) PROCPTR 010500D 014800M 025800M 039400M
129600M
*RNF7031 .ENTRY(512) *(16) 010500D
.ERRCODE I(10,0) 010500D 019500 019900 020300
030600 031000 031400 045700
046100 046500 081100 081700M
132800 133700 134100
.LINE I(10,0) 010500D 020100 031200 046300
081800M 133900
*RNF7031 .NAMESPACE N(1) 010500D
*RNF7031 .NSCHAR A(1) 010500D
.STARTCB *(16) PROCPTR 010500D 014700M 025700M 039300M
129500M
.USERDATA *(16) 010500D 014600M 025600M 039200M
129400M
.XLATE A(52) 010500D 020700 031900 047000
135000
WKNAMESPACE N(1) 010600D 083900 084500 084700
136900M
WKPARSER *(16) 010400D 015100M 020800 026100M
032000 039700M 047100 081500
081700 081800 081900 129900M
135100
WKRETFULL N(1) 010700D 108100 139100M
*RNF7031 WRITE I(10,0) 5075900D
PROTOTYPE
X_OK CONST 5013200D
XALLOC *(16) 3012000D 091800 092600 116000
PROTOTYPE
XDEALLOC PROTOTYPE 3012200D 111000M 111500M 111600M
121200M 121600M 131600M
XML_ENC_ISO8859_1 CONST 4006100D
XML_ENC_US_ASCII CONST 4006400D
XML_ENC_UTF16 CONST 4005900D
XML_ENC_UTF8 CONST 4005700D 127000 127800
*RNF7031 XML_ENCODING DS(1072) 4012200D 4034100
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 43
BASED(TEMPLATE)
XML_ERRORSTRING *(16) 4027700D 020300 031400 046500
PROTOTYPE 134100
XML_GETCURRENTCOLUMNNUMBER...
I(10,0) 4030200D 081900
PROTOTYPE
XML_GETCURRENTLINENUMBER...
I(10,0) 4028900D 081800
PROTOTYPE
XML_GETERRORCODE I(10,0) 4026500D 081700
PROTOTYPE
XML_PARSE I(10,0) 4025000D 081500
PROTOTYPE
*RNF7031 XML_PARSER *(16) 4008100D 4013900 4015700 4019300
BASED(TEMPLATE) 4020000 4020600 4023300 4025100
4026600 4029100 4030400 4031500
4033900 4036800 4039600 4041500
004900 010400 083300 083600
XML_PARSERCREATE *(16) 4013800D 084600 084800
PROTOTYPE
XML_PARSERCREATENS...
*(16) 4036600D 085000 085200
PROTOTYPE
XML_PARSERFREE PROTOTYPE 4031400D 020800M 032000M 047100M
135100M
XML_SETCHARACTERDATAHANDLER...
PROTOTYPE 4023100D 086100M
XML_SETELEMENTHANDLER...
PROTOTYPE 4019200D 085700M
*RNF7031 XML_SETENDELEMENTHANDLER...
PROTOTYPE 4020400D
*RNF7031 XML_SETENDNAMESPACEDECLHANDLER...
PROTOTYPE 4041300D
*RNF7031 XML_SETSTARTELEMENTHANDLER...
PROTOTYPE 4019800D
*RNF7031 XML_SETSTARTNAMESPACEDECLHANDLER...
PROTOTYPE 4039400D
*RNF7031 XML_SETUNKNOWNENCODINGHANDLER...
PROTOTYPE 4033700D
XML_SETUSERDATA PROTOTYPE 4015600D 085500M
XML_STATUS_ERROR CONST 4005000D 081600
XML_STATUS_OK CONST 4004800D
XML_XLATE I(10,0) 3005700D 131400
PROTOTYPE
XREALLOC *(16) 3012400D 100300
PROTOTYPE
Références de zone de sous-procédure HTTP_URL_GET_XML
Zone Attributs Références (D=Défini M=Modifié)
PEURL A(32767) 013000D 015500 015900 016400
BASED(_QRNL_PST+) 017000 017700 018500
VARYING
PESTARTPROC *(16) PROCPTR 013100D 014700
PEENDPROC *(16) PROCPTR 013200D 014800
PEUSRDTA *(16) 013300D 014600
PETIMEOUT I(10,0) 013400D 016200 016700 017300
018000 018800
PEUSERAGENT A(64) 013500D 016800 017400 018100
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 44
BASED(_QRNL_PST+) 018900
PEMODTIME Z(26) 013600D 017500 018200 019000
BASED(_QRNL_PST+)
PECONTENTTYPE A(64) 013700D 018300 019100
BASED(_QRNL_PST+)
PESOAPACTION A(64) 013800D 019200
BASED(_QRNL_PST+)
WWRC I(10,0) 014000D 015500M 015900M 016400M
017000M 017700M 018500M 019900
020400M 021000
WWEMPTYBUF A(1) 014100D 019600
_QRNL_PSTR_PEUSERAGENT...
_QRNL_PSTR_PEMODTIME...
_QRNL_PSTR_PECONTENTTYPE...
_QRNL_PSTR_PESOAPACTION...
Références de zone de sous-procédure HTTP_URL_POST_XML
Zone Attributs Références (D=Défini M=Modifié)
PEURL A(32767) 023900D 026500 027100 027800
BASED(_QRNL_PST+) 028600 029500
VARYING
PEPOSTDATA *(16) 024000D 026600 027200 027900
028700 029600
PEPOSTDATALEN I(10,0) 024100D 026700 027300 028000
028800 029700
PESTARTPROC *(16) PROCPTR 024200D 025700
PEENDPROC *(16) PROCPTR 024300D 025800
PEUSRDTA *(16) 024400D 025600
PETIMEOUT I(10,0) 024500D 027600 028300 029100
030000
PEUSERAGENT A(64) 024600D 028400 029200 030100
BASED(_QRNL_PST+)
PECONTENTTYPE A(64) 024700D 029300 030200
BASED(_QRNL_PST+)
PESOAPACTION A(64) 024800D 030300
BASED(_QRNL_PST+)
WWRC I(10,0) 025000D 026500M 027100M 027800M
028600M 029500M 031000 031600M
032200
WWEMPTYBUF A(1) 025100D 030700
_QRNL_PSTR_PEUSERAGENT...
_QRNL_PSTR_PECONTENTTYPE...
_QRNL_PSTR_PESOAPACTION...
Références de zone de sous-procédure HTTP_URL_POST_STMF_XML
Zone Attributs Références (D=Défini M=Modifié)
PEURL A(32767) 035300D 040900 041600 042400
BASED(_QRNL_PST+) 043300 044300
VARYING
PEPOSTFILE A(32767) 035400D 037400 038000
BASED(_QRNL_PST+)
VARYING
PESTARTPROC *(16) PROCPTR 035500D 039300
PEENDPROC *(16) PROCPTR 035600D 039400
PEUSRDTA *(16) 035700D 039200
PETIMEOUT I(10,0) 035800D 042200 043000 043900
044900
PEUSERAGENT A(64) 035900D 043100 044000 045000
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 45
BASED(_QRNL_PST+)
PECONTENTTYPE A(64) 036000D 044100 045100
BASED(_QRNL_PST+)
PESOAPACTION A(64) 036100D 045200
BASED(_QRNL_PST+)
WWSTAT DS(128) 036300D 037400
*RNF7031 .ST_ALCTIZE U(10,0) 036300D
*RNF7031 .ST_ATIME I(10,0) 036300D
*RNF7031 .ST_BLKSIZE U(10,0) 036300D
*RNF7031 .ST_CODEPAG U(5,0) 036300D
*RNF7031 .ST_CTIME I(10,0) 036300D
*RNF7031 .ST_DEV U(10,0) 036300D
*RNF7031 .ST_GID U(10,0) 036300D
*RNF7031 .ST_INO U(10,0) 036300D
*RNF7031 .ST_INO_GEN_ID U(10,0) 036300D
*RNF7031 .ST_MODE U(10,0) 036300D
*RNF7031 .ST_MTIME I(10,0) 036300D
*RNF7031 .ST_NLINK U(5,0) 036300D
*RNF7031 .ST_OBJTYPE A(12) 036300D
*RNF7031 .ST_PAD A(2) 036300D
*RNF7031 .ST_RESV11 A(62) 036300D
.ST_SIZE I(10,0) 041200 041900 042700 043600
044600 036300D
*RNF7031 .ST_UID U(10,0) 036300D
WWPOSTFD I(10,0) 036400D 038000M 038100 041000
041700 042500 043400 044400
045500
WWRC I(10,0) 036500D 040900M 041600M 042400M
043300M 044300M 046100 046700M
047300
WWEMPTYBUF A(1) 036600D 045800
_QRNL_PSTR_PEPOSTFILE...
_QRNL_PSTR_PEUSERAGENT...
_QRNL_PSTR_PECONTENTTYPE...
_QRNL_PSTR_PESOAPACTION...
Références de zone de sous-procédure HTTP_GET_XMLTF
Zone Attributs Références (D=Défini M=Modifié)
PEURL A(32767) 049800D 052100 052400 052800
BASED(_QRNL_PST+) 053300 053900 054600
VARYING
PESTARTPROC *(16) PROCPTR 049900D 056600
PEENDPROC *(16) PROCPTR 050000D 056700
PEUSRDTA *(16) 050100D 056800
PETIMEOUT I(10,0) 050200D 052600 053000 053500
054100 054800
PEUSERAGENT A(64) 050300D 053100 053600 054200
BASED(_QRNL_PST+) 054900
PEMODTIME Z(26) 050400D 053700 054300 055000
BASED(_QRNL_PST+)
PECONTENTTYPE A(64) 050500D 054400 055100
BASED(_QRNL_PST+)
PESOAPACTION A(64) 050600D 055200
BASED(_QRNL_PST+)
WWRC I(10,0) 050800D 052100M 052400M 052800M
053300M 053900M 054600M 055500
055700 056400M 057100
WWFILE A(40) 050900D 051700M 052200 052500
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 46
VARYING 052900 053400 054000 054700
055600 056400 056900
_QRNL_PSTR_PEUSERAGENT...
_QRNL_PSTR_PEMODTIME...
_QRNL_PSTR_PECONTENTTYPE...
_QRNL_PSTR_PESOAPACTION...
Références de zone de sous-procédure HTTP_POST_XMLTF
Zone Attributs Références (D=Défini M=Modifié)
PEURL A(32767) 060300D 062800 063300 063900
BASED(_QRNL_PST+) 064600 065400
VARYING
PEPOSTDATA *(16) 060400D 062900 063400 064000
064700 065500
PEPOSTDATALEN I(10,0) 060500D 063000 063500 064100
064800 065600
PESTARTPROC *(16) PROCPTR 060600D 067500
PEENDPROC *(16) PROCPTR 060700D 067600
PEUSRDTA *(16) 060800D 067700
PETIMEOUT I(10,0) 060900D 063700 064300 065000
065800
PEUSERAGENT A(64) 061000D 064400 065100 065900
BASED(_QRNL_PST+)
PECONTENTTYPE A(64) 061100D 065200 066000
BASED(_QRNL_PST+)
PESOAPACTION A(64) 061200D 066100
BASED(_QRNL_PST+)
WWRC I(10,0) 061400D 062800M 063300M 063900M
064600M 065400M 066400 066600
067300M 068000
WWFILE A(40) 061500D 062400M 063100 063600
VARYING 064200 064900 065700 066500
067300 067800
_QRNL_PSTR_PEUSERAGENT...
_QRNL_PSTR_PECONTENTTYPE...
_QRNL_PSTR_PESOAPACTION...
Références de zone de sous-procédure HTTP_POST_STMF_XMLTF
Zone Attributs Références (D=Défini M=Modifié)
PEURL A(32767) 071300D 073800 074200 074700
BASED(_QRNL_PST+) 075300 076000
VARYING
PEPOSTFILE A(32767) 071400D 073900 074300 074800
BASED(_QRNL_PST+) 075400 076100
VARYING
PESTARTPROC *(16) PROCPTR 071500D 078000
PEENDPROC *(16) PROCPTR 071600D 078100
PEUSRDTA *(16) 071700D 078200
PETIMEOUT I(10,0) 071800D 074500 075000 075600
076300
PEUSERAGENT A(64) 071900D 075100 075700 076400
BASED(_QRNL_PST+)
PECONTENTTYPE A(64) 072000D 075800 076500
BASED(_QRNL_PST+)
PESOAPACTION A(64) 072100D 076600
BASED(_QRNL_PST+)
WWRC I(10,0) 072300D 073800M 074200M 074700M
075300M 076000M 076900 077100
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 47
077800M 078500
WWFILE A(50) 072400D 073400M 074000 074400
VARYING 074900 075500 076200 077000
077800 078300
_QRNL_PSTR_PEPOSTFILE...
_QRNL_PSTR_PEUSERAGENT...
_QRNL_PSTR_PECONTENTTYPE...
_QRNL_PSTR_PESOAPACTION...
Références de zone de sous-procédure PARSEXML
Zone Attributs Références (D=Défini M=Modifié)
*RNF7031 PEFD I(10,0) 080000D
PEDATA A(8192) 080100D 081500
BASED(_QRNL_PST+)
PELENGTH I(10,0) 080200D 080700 081200 081500
082200
DONE I(10,0) 080400D 080800M 081500
Références de zone de sous-procédure INITPARSER
Zone Attributs Références (D=Défini M=Modifié)
PEELEMSTACK DS(16516) 083400D 085500
BASED(_QRNL_PST+)
*RNF7031 .BUF A(8192) D
VARYING
*RNF7031 .COLUMN I(10,0) D
*RNF7031 .DEPTH I(10,0) D
*RNF7031 .ENDCB *(16) PROCPTR D
*RNF7031 .ENTRY(512) *(16) D
*RNF7031 .ERRCODE I(10,0) D
*RNF7031 .LINE I(10,0) D
.NAMESPACE N(1) 083900M D
.NSCHAR A(1) 084000M 085000 085200 D
*RNF7031 .STARTCB *(16) PROCPTR D
*RNF7031 .USERDATA *(16) D
.XLATE A(52) 084200M D
PEENCODING C(100) 083500D 084500 084800 084900
BASED(_QRNL_PST+) 085200
CCSID(1200)
WWPARSER *(16) 083600D 084600M 084800M 085000M
085200M 085500 085700 086100
086400
_QRNL_PSTR_PEELEMSTACK...
_QRNL_PSTR_PEENCODING...
Références de zone de sous-procédure STARTELEMENT
Zone Attributs Références (D=Défini M=Modifié)
ROOT DS(16516) 087500D 095800
BASED(_QRNL_PST+)
*RNF7031 .BUF A(8192) D
VARYING
*RNF7031 .COLUMN I(10,0) D
.DEPTH I(10,0) 091700M 091700 091800 091900
093000 093100 096500 097200
D
*RNF7031 .ENDCB *(16) PROCPTR D
.ENTRY(512) *(16) 091800M 091900 093100 D
*RNF7031 .ERRCODE I(10,0) D
*RNF7031 .LINE I(10,0) D
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 48
.NAMESPACE N(1) 094900 096300 D
.NSCHAR A(1) 095100 D
.STARTCB *(16) PROCPTR 096000 096200 D
.USERDATA *(16) 096400 097100 D
.XLATE A(52) 094300 D
LOCALNAME C(16373) 087600D 093700 094200
BASED(_QRNL_PST+)
CCSID(1200)
ATTS(32767) *(16) 087700D 095800
BASED(_QRNL_PST+)
P_OLDELEM *(16) 087900D 088100 093100M
*RNF7031 OLDELEM DS(10304) 088000D
BASED(P_OLDELEM)
*RNF7031 .ALLOCSIZE I(10,0) 088000D
*RNF7031 .ATTRS *(16) 088000D
.NAME A(1024) 093200 088000D
VARYING
*RNF7031 .NS A(1024) 088000D
VARYING
.PATH A(8192) 093200 088000D
VARYING
*RNF7031 .SIZE I(10,0) 088000D
*RNF7031 .VALUE *(16) 088000D
P_NEWELEM *(16) 088300D 088500 091900M
NEWELEM DS(10304) 088400D 091800 092000M
BASED(P_NEWELEM)
.ALLOCSIZE I(10,0) 092500M 088400D
.ATTRS *(16) 095800M 096100 088400D
.NAME A(1024) 094500M 095100 095300 095400M
VARYING 095400 096700 097300 088400D
.NS A(1024) 095000M 095300M 096600 088400D
VARYING
.PATH A(8192) 093200M 096800 097400 088400D
VARYING
.SIZE I(10,0) 092400M 088400D
.VALUE *(16) 092600M 088400D
P_CALLBACK *(16) PROCPTR 088700D 088800 089500 096200M
CALLBACK PROTOTYPE 088800D 097100M
CALLBACKNS PROTOTYPE 089500D 096400M
P_ATTRARY *(16) 090400D 090500 096100M
WWATTRARY(32767) *(16) 090500D 096900 097500
BASED(P_ATTRARY)
*RNF7031 TESTATT A(1024) 090700D
VARYING
*RNF7031 X I(10,0) 090800D
LEN I(10,0) 090900D 093700M 094100M 094100
094500 095200
POS I(10,0) 091000D 095100M 095200 095200
095300 095400
XLNAME A(1024) 091100D 094500
BASED(P_XLNAME)
P_XLNAME *(16) 091100 094400
_QRNL_PSTR_LOCALNAME...
Références de zone de sous-procédure CHARDATA
Zone Attributs Références (D=Défini M=Modifié)
*RNF7031 ROOT DS(16516) 098900D
BASED(_QRNL_PST+)
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 49
*RNF7031 .BUF A(8192) D
VARYING
*RNF7031 .COLUMN I(10,0) D
.DEPTH I(10,0) 099800 D
*RNF7031 .ENDCB *(16) PROCPTR D
.ENTRY(512) *(16) 099800 D
*RNF7031 .ERRCODE I(10,0) D
*RNF7031 .LINE I(10,0) D
*RNF7031 .NAMESPACE N(1) D
*RNF7031 .NSCHAR A(1) D
*RNF7031 .STARTCB *(16) PROCPTR D
*RNF7031 .USERDATA *(16) D
*RNF7031 .XLATE A(52) D
STRING C(16373) 099000D 099500 101100 101200
BASED(_QRNL_PST+) 101400
CCSID(1200)
LEN I(10,0) 099100D 100000 101000
X I(10,0) 099200D 101000 101100 101200
101400
Y I(10,0) 099300D 100800M 101300M 101300
101400 101800
NEWSIZE U(10,0) 099400D 100000M 100100
NEWVAL C(16373) 099500D 101400M
BASED(P_NEWVAL)
CCSID(1200)
P_NEWVAL *(16) 099500 100700M
Références de zone de sous-procédure ENDELEMENT
Zone Attributs Références (D=Défini M=Modifié)
*RNF7031 ROOT DS(16516) 102800D
BASED(_QRNL_PST+)
*RNF7031 .BUF A(8192) D
VARYING
*RNF7031 .COLUMN I(10,0) D
.DEPTH I(10,0) 106300 109300 110200 111600
111800M 111800 D
.ENDCB *(16) PROCPTR 106500 106800 D
.ENTRY(512) *(16) 106300 111600 D
*RNF7031 .ERRCODE I(10,0) D
*RNF7031 .LINE I(10,0) D
.NAMESPACE N(1) 109100 D
*RNF7031 .NSCHAR A(1) D
*RNF7031 .STARTCB *(16) PROCPTR D
.USERDATA *(16) 109200 110100 D
.XLATE A(52) 107700 D
*RNF7031 NAME *(16) 102900D
P_CALLBACK *(16) PROCPTR 103100D 103200 104000 106800M
CALLBACK PROTOTYPE 103200D 110100M
CALLBACKNS PROTOTYPE 104000D 109200M
P_ATTRARY *(16) 105000D 105100 106700M
WWATTRARY(32767) *(16) 105100D 109800 110600
BASED(P_ATTRARY)
VALDS DS(20) 105300D 108200
P_NEWVAL *(16) 105400D 105700 106900M 107800
110900 111000
LEN I(10,0) 105500D 107300M 107500M 108400
108500M 108700
NEWVAL A(65535) 105700D 108700
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 50
BASED(P_NEWVAL)
VALUE A(65535) 105800D 107200M 108400 108500
VARYING 108700M 108800
P_RETVAL *(16) 105900D 108200M 108800M 109700
110500
Références de zone de sous-procédure COPYATTRS
Zone Attributs Références (D=Défini M=Modifié)
*RNF7031 ROOT DS(16516) 113100D
BASED(_QRNL_PST+)
*RNF7031 .BUF A(8192) D
VARYING
*RNF7031 .COLUMN I(10,0) D
*RNF7031 .DEPTH I(10,0) D
*RNF7031 .ENDCB *(16) PROCPTR D
*RNF7031 .ENTRY(512) *(16) D
*RNF7031 .ERRCODE I(10,0) D
*RNF7031 .LINE I(10,0) D
*RNF7031 .NAMESPACE N(1) D
*RNF7031 .NSCHAR A(1) D
*RNF7031 .STARTCB *(16) PROCPTR D
*RNF7031 .USERDATA *(16) D
.XLATE A(52) 117500 D
PEATTR(32767) *(16) 113200D 115300 116700
BASED(_QRNL_PST+)
X I(10,0) 113400D 115200M 115300 115400M
115400 115600 116600 116700
117600
WWCOUNT I(10,0) 113500D 115600M 116000 116600
118800
WWLEN I(10,0) 113600D 116800M 116900 117000M
117200 117300M 117300
P_ARRAY *(16) 113800D 113900 116000M 116000
119000
WWARRAY(32767) *(16) 113900D 117600 118800M
BASED(P_ARRAY)
P_ENDNULL *(16) 114100D 114200
*RNF7031 ENDNULL A(1) 114200D
BASED(P_ENDNULL)
ATTRDTA C(16383) 114400D 116800 117000
BASED(P_ATTRDTA)
CCSID(1200)
P_ATTRDTA *(16) 114400 116700M 117400
NEWDTA A(16383) 114500D 118400M
BASED(P_NEWDTA)
P_NEWDTA *(16) 114500
*RNF7031 XLNAME A(1024) 114600D
BASED(P_XLNAME)
P_XLNAME *(16) 114600
Références de zone de sous-procédure FREEATTRS
Zone Attributs Références (D=Défini M=Modifié)
PEATTRS *(16) 120000D 120800 121600
X I(10,0) 120200D 120900M 121100 121200
121300M 121300
P_ARRAY *(16) 120300D 120400 120800M
WWARRAY(32767) *(16) 120400D 121100 121200
BASED(P_ARRAY)
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 51
Références de zone de sous-procédure HTTP_PARSE_XML_STMF
Zone Attributs Références (D=Défini M=Modifié)
PEFILE A(32767) 124500D 126800 127100 127700
BASED(_QRNL_PST+)
VARYING
PECCSID I(10,0) 124600D 126600 126900 127600
PESTARTPROC *(16) PROCPTR 124700D 129500
PEENDPROC *(16) PROCPTR 124800D 129600
PEUSRDTA *(16) 124900D 129400
WWFD I(10,0) 125100D 126800M 127100M 127700M
128200 130800 132600
WWRC I(10,0) 125200D 130600M 134300M 135200
WWLEN I(10,0) 125300D 130800M 130900 131400M
131400 131500M 131500 131800M
131800 132100
WWBUF A(8192) 125400D 130800 130800 131400
131800 132900
WWXBUF A(8192) 125500D 131500
BASED(P_BUF)
P_BUF *(16) 125500 131400 131600
WWENCODING C(100) 125600D 126700M 127000M 127800M
CCSID(1200) 129900
WWMANUAL N(1) 125700D 127900M 131300
Références de zone de sous-procédure HTTP_XMLNS
Zone Attributs Références (D=Défini M=Modifié)
PEENABLE N(1) 136600D 136800 136800 136900
BASED(_QRNL_PST+)
_QRNL_PSTR_PEENABLE...
Références de zone de sous-procédure HTTP_XMLRETURNPTR
Zone Attributs Références (D=Défini M=Modifié)
PEENABLE N(1) 138800D 139000 139000 139100
BASED(_QRNL_PST+)
_QRNL_PSTR_PEENABLE...
Références de zone de sous-procédure ERRNO
Zone Attributs Références (D=Défini M=Modifié)
P_ERRNO *(16) 7033800D 7033900 7034000M
WWRETURN I(10,0) 7033900D 7034100
BASED(P_ERRNO)
Références d'indicateur :
Indicateur Références (D=Défini M=Modifié)
* * * * * F I N D E S R E F E R E N C E S C R O I S E E S * * * * *
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 52
R é f é r e n c e s e x t e r n e s
Procédures liées statiquement :
Procédure Références
MD5 3004000
dup 5038500
atoi 3009200
dup2 5039300
link 5056500
open 5060200 038000 126800 127400
127700
read 5066100 041100 130800
stat 5070600 037400
atoll 3009500
chdir 5032200
chmod 5033000
chown 5033900
close 5035400 5035800 045500 132600
creat 5037600
fcntl 5042200
fstat 5044300
fsync 5045200
ioctl 5055500
lseek 5057400
lstat 5058400
mkdir 5059300
rmdir 5069800
umask 5073200
utime 5075000
write 5075900
memcpy 3010200
XALLOC 3012000 091800 092600 116000
access 5031300
fchmod 5040200
fchown 5041100
getcwd 5046900
getgid 5049200
getuid 5054800
unlink 5074200 055600 056900 066500
067800 077000 078300
perror 6032300
getegid 5047800
geteuid 5048500
opendir 5061400
readdir 5067100
symlink 5071500
sysconf 5072400
__errno 6031800 7034000
SETERROR 3004800 020300 031400 037600
038300 046500 128400 134100
HTTPDATE 3005200
XDEALLOC 3012200 111000 111500 111600
121200 121600 131600
XREALLOC 3012400 100400
ICONVDYN 3013500 094400 107800 117600
closedir 5036800
getgrgid 5049900
getgrnam 5050700
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 53
getpwnam 5052800
getpwuid 5054000
pathconf 5062200
readlink 5067900
strerror 6032000 037600 038300 128400
HTTP_COMP 1142500
HTTP_DIAG 1143400
DEBUG_MSG 3003500
UTIL_DIAG 3004500
XML_XLATE 3005700 131400
NEW_ICONV 3012800 084200
XML_Parse 4025000 081500
fpathconf 5043400
ftruncate 5046000
getgroups 5051500
rewinddir 5068900
HTTP_CLOSE 1024800
HTTP_ERROR 1026000
HTTPS_INIT 1028100
HTTP_XPROC 1042700
HTTP_DEBUG 1119500
HTTP_XLATE 1126400
HTTP_CRASH 1144200
URL_ENCODE 3002000
FILE_CCSID 3005500
_C_TS_free 3011700
HTTP_XLATEP 1128100
HTTP_HEADER 1138500
BASE64_INIT 3000600
DEBUG_WRITE 3003100
DEBUG_CLOSE 3003800
CLOSE_ICONV 3013200 020700 031900 047000
135000
HTTP_URL_GET 1006900 1007700 052200 052600
053100 053700 054400 055200
HTTP_GETAUTH 1033700
HTTP_SETAUTH 1035300
_C_TS_malloc 3011100
HTTP_URL_POST 1010900 1011800 063100 063700
064400 065200 066100
HTTP_PARSEURL 1021100
HTTPS_DCM_REG 1030100
HTTPS_CLEANUP 1031200
HTTP_SETPROXY 1036700
HTTP_XLATEDYN 1129800
HTTP_TEMPFILE 1145000 051700 062400 073400
BASE64_ENCODE 3000900
DEBUG_SETPROC 3002700
_C_TS_realloc 3011400
HTTP_REDIR_LOC 1043900
HTTP_SETCCSIDS 1121100
HTTP_SETTABLES 1122700
URL_ENCODE_PRE 3001500
COMMTCP_FD_SET 3007500
XML_ParserFree 4031400 020800 032000 047100
135100
Qp0lRenameKeep 5064200
COMMTCP_FD_ZERO 3008500
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 54
XML_SetUserData 4015600 085500
XML_ErrorString 4027700 020300 031400 046500
134100
HTTP_URL_GET_RAW 1015000 015700 016200 016800
017500 018300 019200
HTTP_PERSIST_GET 1101600
HTTP_USE_COOKIES 1140000
HTTP_COOKIE_FILE 1141600
COMMTCP_FD_ISSET 3008000
XML_ParserCreate 4013800 084600 084800
XML_GetErrorCode 4026500 081700
Qp0lRenameUnlink 5065200
HTTP_URL_POST_RAW 1018200 026900 027600 028400
029300 030300
HTTP_PERSIST_OPEN 1098400
HTTP_PERSIST_POST 1106700
HTTP_SETFILECCSID 1125000
HTTP_PROXY_SETAUTH 1038300
HTTP_PROXY_GETAUTH 1040800
HTTP_LONG_PARSEURL 1060300
HTTP_URL_POST_RAW2 1064700 041400 042200 043100
044100 045200
HTTP_URL_POST_STMF 1068000 1068800 074000 074500
075100 075800 076600
HTTP_PERSIST_CLOSE 1109000
HTTP_XML_SETCCSIDS 1134000 127600
XML_ParserCreateNS 4036700 085000 085200
HTTP_BUILD_SOCKADDR 1023400
HTTP_URL_ENCODER_NEW 1045300
HTTP_SET_100_TIMEOUT 1132500
HTTP_URL_ENCODER_FREE 1055200
HTTP_MFD_ENCODER_OPEN 1111300
XML_SetElementHandler 4019200 085900
Qp0lGetPathFromFileID 5063100
HTTP_SELECT_COMMDRIVER 1062100
HTTP_MFD_ENCODER_CLOSE 1118200
HTTP_URL_ENCODER_ADDVAR 1047600
HTTP_URL_ENCODER_GETPTR 1050000
HTTP_URL_ENCODER_GETSTR 1052600
HTTP_MFD_ENCODER_ADDVAR 1113100
COMMTCP_CONNECTBLOCKING 3006500
COMMTCP_CONNECTNONBLOCK 3007000
HTTP_MFD_ENCODER_ADDSTMF 1116800
XML_SetEndElementHandler 4020400
XML_GetCurrentLineNumber 4028900 081800
HTTP_URL_ENCODER_ADDVAR_S 1057200
HTTP_MFD_ENCODER_ADDVAR_S 1114900
XML_SetStartElementHandler 4019800
XML_GetCurrentColumnNumber 4030200 081900
XML_SetCharacterDataHandler 4023100 086200
XML_SetUnknownEncodingHandler 4033700
XML_SetEndNamespaceDeclHandler 4041300
XML_SetStartNamespaceDeclHandler 4039400
Zones importées :
Zone Attributs Définie
Aucune référence dans le source.
Zones exportées :
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 55
Zone Attributs Définie
Aucune référence dans le source.
* * * * * F I N D E S R E F E R E N C E S E X T E R N E S * * * * *
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 56
R é c a p i t u l a t i f d e s m e s s a g e s
ID msg Gr Numéro Texte message
*RNF5409 00 13 L'appel prototype renvoie une valeur perdue lors de
l'utilisation de CALLP.
*RNF7031 00 277 Le nom ou l'indicateur n'est pas utilisé.
* * * * * F I N D U R E C A P I T U L A T I F D E S M E S S A G E S * * * * *
5722WDS V5R1M0 010525 RN IBM ILE RPG LIBHTTP/HTTPXMLR4 ASBROCHO 27/08/07 23:05:03 Page 57
R é c a p i t u l a t i f f i n a l
Nombre total de messages :
Information (00) . . . . . . . : 290
Avertissement (10) . . . . . . : 0
Erreur (20) . . . . . . . : 0
Erreur grave (30+) . . . . . . : 0
--------------------------------- -------
Total . . . . . . . . . . . . . : 290
Nombre total d'enregistrements source :
Enregistrements . . . . . . . . : 1388
Spécifications . . . . . . . . : 848
Enregistrements de données . . : 0
Commentaires . . . . . . . . . : 263
* * * * * F I N D U R E C A P I T U L A T I F F I N A L * * * * *
M e s s a g e s d e g é n é r a t i o n d e c o d e
Error creating source debugger information.
An error occurred during translation.
* * * * * F I N D E S M E S S A G E S D E G E N E R A T I O N D E C O D E * * * * *
-----------------------------------------------------------------------
This is the FTPAPI mailing list. To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------