Tag
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 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 <pm@datasphere.ch>, 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__