1 * Summary: minimal FTP implementation
2 * Description: minimal FTP implementation allowing to fetch resources
3 * like external subset.
5 * Copy: See Copyright for the status of this software.
7 * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
9 /if not defined(NANO_FTP_H__)
12 /include /libxmlrpg/xmlversion"
14 /if defined(LIBXML_FTP_ENABLED)
19 * @userData: user provided data for the callback
20 * @filename: the file name (including "->" when links are shown)
21 * @attrib: the attribute string
22 * @owner: the owner string
23 * @group: the group string
24 * @size: the file size
25 * @links: the link count
32 * A callback for the xmlNanoFTPList command.
33 * Note that only one of year and day:minute are specified.
36 d s * based(######typedef######)
40 * @userData: the user provided context
41 * @data: the data received
42 * @len: its size in bytes
44 * A callback for the xmlNanoFTPGet command.
47 d s * based(######typedef######)
52 d xmlNanoFTPInit pr extproc('xmlNanoFTPInit')
54 d xmlNanoFTPCleanup...
55 d pr extproc('xmlNanoFTPCleanup')
57 * Creating/freeing contexts.
59 d xmlNanoFTPNewCtxt...
60 d pr * extproc('xmlNanoFTPNewCtxt') void *
61 d URL * value options(*string) const char *
63 d xmlNanoFTPFreeCtxt...
64 d pr extproc('xmlNanoFTPFreeCtxt')
67 d xmlNanoFTPConnectTo...
68 d pr * extproc('xmlNanoFTPConnectTo') void *
69 d server * value options(*string) const char *
72 * Opening/closing session connections.
74 d xmlNanoFTPOpen pr * extproc('xmlNanoFTPOpen') void *
75 d URL * value options(*string) const char *
77 d xmlNanoFTPConnect...
78 d pr 10i 0 extproc('xmlNanoFTPConnect')
82 d pr 10i 0 extproc('xmlNanoFTPClose')
85 d xmlNanoFTPQuit pr 10i 0 extproc('xmlNanoFTPQuit')
88 d xmlNanoFTPScanProxy...
89 d pr extproc('xmlNanoFTPScanProxy')
90 d URL * value options(*string) const char *
93 d pr extproc('xmlNanoFTPProxy')
94 d host * value options(*string) const char *
96 d user * value options(*string) const char *
97 d passwd * value options(*string) const char *
100 d xmlNanoFTPUpdateURL...
101 d pr 10i 0 extproc('xmlNanoFTPUpdateURL')
103 d URL * value options(*string) const char *
105 * Rather internal commands.
107 d xmlNanoFTPGetResponse...
108 d pr 10i 0 extproc('xmlNanoFTPGetResponse')
111 d xmlNanoFTPCheckResponse...
112 d pr 10i 0 extproc('xmlNanoFTPCheckResponse')
115 * CD/DIR/GET handlers.
117 d xmlNanoFTPCwd pr 10i 0 extproc('xmlNanoFTPCwd')
119 d directory * value options(*string) const char *
121 d xmlNanoFTPDele pr 10i 0 extproc('xmlNanoFTPDele')
123 d file * value options(*string) const char *
125 d xmlNanoFTPGetConnection...
126 d pr 10i 0 extproc('xmlNanoFTPGetConnection') Socket descriptor
129 d xmlNanoFTPCloseConnection...
130 d pr 10i 0 extproc('xmlNanoFTPCloseConnection')
133 d xmlNanoFTPList pr 10i 0 extproc('xmlNanoFTPList')
135 d callback value like(ftpListCallback)
136 d userData * value void *
137 d filename * value options(*string) const char *
139 d xmlNanoFTPGetSocket...
140 d pr 10i 0 extproc('xmlNanoFTPGetSocket') Socket descriptor
142 d filename * value options(*string) const char *
144 d xmlNanoFTPGet pr 10i 0 extproc('xmlNanoFTPGet')
146 d callback value like(ftpDataCallback)
147 d userData * value void *
148 d filename * value options(*string) const char *
150 d xmlNanoFTPRead pr 10i 0 extproc('xmlNanoFTPRead')
152 d dest * value void *
155 /endif LIBXML_FTP_ENABLED