From 35a201cc8ef0c3f5b2df88d2e528aabee1048348 Mon Sep 17 00:00:00 2001 From: Wojtek Kosior Date: Fri, 30 Apr 2021 18:47:09 +0200 Subject: Initial/Final commit --- libxml2-2.9.10/os400/libxmlrpg/nanoftp.rpgle | 172 +++++++++++++++++++++++++++ 1 file changed, 172 insertions(+) create mode 100644 libxml2-2.9.10/os400/libxmlrpg/nanoftp.rpgle (limited to 'libxml2-2.9.10/os400/libxmlrpg/nanoftp.rpgle') diff --git a/libxml2-2.9.10/os400/libxmlrpg/nanoftp.rpgle b/libxml2-2.9.10/os400/libxmlrpg/nanoftp.rpgle new file mode 100644 index 0000000..ac4f2aa --- /dev/null +++ b/libxml2-2.9.10/os400/libxmlrpg/nanoftp.rpgle @@ -0,0 +1,172 @@ + * Summary: minimal FTP implementation + * Description: minimal FTP implementation allowing to fetch resources + * like external subset. + * + * Copy: See Copyright for the status of this software. + * + * Author: Patrick Monnerat , DATASPHERE S.A. + + /if not defined(NANO_FTP_H__) + /define NANO_FTP_H__ + + /include "libxmlrpg/xmlversion" + + /if defined(LIBXML_FTP_ENABLED) + + /include "libxmlrpg/xmlTypesC" + + d INVALID_SOCKET c -1 + + * ftpListCallback: + * @userData: user provided data for the callback + * @filename: the file name (including "->" when links are shown) + * @attrib: the attribute string + * @owner: the owner string + * @group: the group string + * @size: the file size + * @links: the link count + * @year: the year + * @month: the month + * @day: the day + * @hour: the hour + * @minute: the minute + * + * A callback for the xmlNanoFTPList command. + * Note that only one of year and day:minute are specified. + + d ftpListCallback... + d s * based(######typedef######) + d procptr + + * ftpDataCallback: + * @userData: the user provided context + * @data: the data received + * @len: its size in bytes + * + * A callback for the xmlNanoFTPGet command. + + d ftpDataCallback... + d s * based(######typedef######) + d procptr + + * Init + + d xmlNanoFTPInit pr extproc('xmlNanoFTPInit') + + d xmlNanoFTPCleanup... + d pr extproc('xmlNanoFTPCleanup') + + * Creating/freeing contexts. + + d xmlNanoFTPNewCtxt... + d pr * extproc('xmlNanoFTPNewCtxt') void * + d URL * value options(*string) const char * + + d xmlNanoFTPFreeCtxt... + d pr extproc('xmlNanoFTPFreeCtxt') + d ctx * value void * + + d xmlNanoFTPConnectTo... + d pr * extproc('xmlNanoFTPConnectTo') void * + d server * value options(*string) const char * + d port value like(xmlCint) + + * Opening/closing session connections. + + d xmlNanoFTPOpen pr * extproc('xmlNanoFTPOpen') void * + d URL * value options(*string) const char * + + d xmlNanoFTPConnect... + d pr extproc('xmlNanoFTPConnect') + d like(xmlCint) + d ctx * value void * + + d xmlNanoFTPClose... + d pr extproc('xmlNanoFTPClose') + d like(xmlCint) + d ctx * value void * + + d xmlNanoFTPQuit pr extproc('xmlNanoFTPQuit') + d like(xmlCint) + d ctx * value void * + + d xmlNanoFTPScanProxy... + d pr extproc('xmlNanoFTPScanProxy') + d URL * value options(*string) const char * + + d xmlNanoFTPProxy... + d pr extproc('xmlNanoFTPProxy') + d host * value options(*string) const char * + d port value like(xmlCint) + d user * value options(*string) const char * + d passwd * value options(*string) const char * + d type value like(xmlCint) + + d xmlNanoFTPUpdateURL... + d pr extproc('xmlNanoFTPUpdateURL') + d like(xmlCint) + d ctx * value void * + d URL * value options(*string) const char * + + * Rather internal commands. + + d xmlNanoFTPGetResponse... + d pr extproc('xmlNanoFTPGetResponse') + d like(xmlCint) + d ctx * value void * + + d xmlNanoFTPCheckResponse... + d pr extproc('xmlNanoFTPCheckResponse') + d like(xmlCint) + d ctx * value void * + + * CD/DIR/GET handlers. + + d xmlNanoFTPCwd pr extproc('xmlNanoFTPCwd') + d like(xmlCint) + d ctx * value void * + d directory * value options(*string) const char * + + d xmlNanoFTPDele pr extproc('xmlNanoFTPDele') + d like(xmlCint) + d ctx * value void * + d file * value options(*string) const char * + + d xmlNanoFTPGetConnection... + d pr extproc('xmlNanoFTPGetConnection') Socket descriptor + d like(xmlCint) + d ctx * value void * + + d xmlNanoFTPCloseConnection... + d pr extproc('xmlNanoFTPCloseConnection') + d like(xmlCint) + d ctx * value void * + + d xmlNanoFTPList pr extproc('xmlNanoFTPList') + d like(xmlCint) + d ctx * value void * + d callback value like(ftpListCallback) + d userData * value void * + d filename * value options(*string) const char * + + d xmlNanoFTPGetSocket... + d pr extproc('xmlNanoFTPGetSocket') Socket descriptor + d like(xmlCint) + d ctx * value void * + d filename * value options(*string) const char * + + d xmlNanoFTPGet pr extproc('xmlNanoFTPGet') + d like(xmlCint) + d ctx * value void * + d callback value like(ftpDataCallback) + d userData * value void * + d filename * value options(*string) const char * + + d xmlNanoFTPRead pr extproc('xmlNanoFTPRead') + d like(xmlCint) + d ctx * value void * + d dest * value void * + d len value like(xmlCint) + + /endif LIBXML_FTP_ENABLED + /endif NANO_FTP_H__ -- cgit v1.2.3