/* * 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: Daniel Veillard */ #ifndef __NANO_FTP_H__ #define __NANO_FTP_H__ #include <libxml/xmlversion.h> #ifdef LIBXML_FTP_ENABLED /* Needed for portability to Windows 64 bits */ #if defined(_WIN32) && !defined(__CYGWIN__) #include <winsock2.h> #else /** * SOCKET: * * macro used to provide portability of code to windows sockets */ #define SOCKET int /** * INVALID_SOCKET: * * macro used to provide portability of code to windows sockets * the value to be used when the socket is not valid */ #undef INVALID_SOCKET #define INVALID_SOCKET (-1) #endif #ifdef __cplusplus extern "C" { #endif /** * 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. */ typedef void (*ftpListCallback) (void *userData, const char *filename, const char *attrib, const char *owner, const char *group, unsigned long size, int links, int year, const char *month, int day, int hour, int minute); /** * ftpDataCallback: * @userData: the user provided context * @data: the data received * @len: its size in bytes * * A callback for the xmlNanoFTPGet command. */ typedef void (*ftpDataCallback) (void *userData, const char *data, int len); /* * Init */ XMLPUBFUN void XMLCALL xmlNanoFTPInit (void); XMLPUBFUN void XMLCALL xmlNanoFTPCleanup (void); /* * Creating/freeing contexts. */ XMLPUBFUN void * XMLCALL xmlNanoFTPNewCtxt (const char *URL); XMLPUBFUN void XMLCALL xmlNanoFTPFreeCtxt (void * ctx); XMLPUBFUN void * XMLCALL xmlNanoFTPConnectTo (const char *server, int port); /* * Opening/closing session connections. */ XMLPUBFUN void * XMLCALL xmlNanoFTPOpen (const char *URL); XMLPUBFUN int XMLCALL xmlNanoFTPConnect (void *ctx); XMLPUBFUN int XMLCALL xmlNanoFTPClose (void *ctx); XMLPUBFUN int XMLCALL xmlNanoFTPQuit (void *ctx); XMLPUBFUN void XMLCALL xmlNanoFTPScanProxy (const char *URL); XMLPUBFUN void XMLCALL xmlNanoFTPProxy (const char *host, int port, const char *user, const char *passwd, int type); XMLPUBFUN int XMLCALL xmlNanoFTPUpdateURL (void *ctx, const char *URL); /* * Rather internal commands. */ XMLPUBFUN int XMLCALL xmlNanoFTPGetResponse (void *ctx); XMLPUBFUN int XMLCALL xmlNanoFTPCheckResponse (void *ctx); /* * CD/DIR/GET handlers. */ XMLPUBFUN int XMLCALL xmlNanoFTPCwd (void *ctx, const char *directory); XMLPUBFUN int XMLCALL xmlNanoFTPDele (void *ctx, const char *file); XMLPUBFUN SOCKET XMLCALL xmlNanoFTPGetConnection (void *ctx); XMLPUBFUN int XMLCALL xmlNanoFTPCloseConnection(void *ctx); XMLPUBFUN int XMLCALL xmlNanoFTPList (void *ctx, ftpListCallback callback, void *userData, const char *filename); XMLPUBFUN SOCKET XMLCALL xmlNanoFTPGetSocket (void *ctx, const char *filename); XMLPUBFUN int XMLCALL xmlNanoFTPGet (void *ctx, ftpDataCallback callback, void *userData, const char *filename); XMLPUBFUN int XMLCALL xmlNanoFTPRead (void *ctx, void *dest, int len); #ifdef __cplusplus } #endif #endif /* LIBXML_FTP_ENABLED */ #endif /* __NANO_FTP_H__ */
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
DOCBparser.h | File | 3.08 KB | 0644 |
|
HTMLparser.h | File | 9.19 KB | 0644 |
|
HTMLtree.h | File | 3.56 KB | 0644 |
|
SAX.h | File | 4.24 KB | 0644 |
|
SAX2.h | File | 4.83 KB | 0644 |
|
__init__.py | File | 0 B | 0644 |
|
c14n.h | File | 3.04 KB | 0644 |
|
catalog.h | File | 4.79 KB | 0644 |
|
chvalid.h | File | 5.04 KB | 0644 |
|
debugXML.h | File | 5.03 KB | 0644 |
|
dict.h | File | 1.77 KB | 0644 |
|
encoding.h | File | 8.31 KB | 0644 |
|
entities.h | File | 4.6 KB | 0644 |
|
globals.h | File | 14.33 KB | 0644 |
|
hash.h | File | 6.45 KB | 0644 |
|
list.h | File | 3.27 KB | 0644 |
|
nanoftp.h | File | 3.67 KB | 0644 |
|
nanohttp.h | File | 1.96 KB | 0644 |
|
parser.h | File | 38.8 KB | 0644 |
|
parserInternals.h | File | 17.01 KB | 0644 |
|
relaxng.h | File | 5.86 KB | 0644 |
|
schemasInternals.h | File | 25.61 KB | 0644 |
|
schematron.h | File | 4.27 KB | 0644 |
|
threads.h | File | 1.91 KB | 0644 |
|
tree.h | File | 37.21 KB | 0644 |
|
uri.h | File | 2.6 KB | 0644 |
|
valid.h | File | 13.3 KB | 0644 |
|
xinclude.h | File | 2.9 KB | 0644 |
|
xlink.h | File | 4.92 KB | 0644 |
|
xmlIO.h | File | 10.41 KB | 0644 |
|
xmlautomata.h | File | 3.86 KB | 0644 |
|
xmlerror.h | File | 35.95 KB | 0644 |
|
xmlexports.h | File | 1.31 KB | 0644 |
|
xmlmemory.h | File | 5.81 KB | 0644 |
|
xmlmodule.h | File | 1.14 KB | 0644 |
|
xmlreader.h | File | 12.31 KB | 0644 |
|
xmlregexp.h | File | 5.33 KB | 0644 |
|
xmlsave.h | File | 2.28 KB | 0644 |
|
xmlschemas.h | File | 6.9 KB | 0644 |
|
xmlschemastypes.h | File | 4.73 KB | 0644 |
|
xmlstring.h | File | 5.38 KB | 0644 |
|
xmlunicode.h | File | 9.76 KB | 0644 |
|
xmlversion.h | File | 7.85 KB | 0644 |
|
xmlwriter.h | File | 20.77 KB | 0644 |
|
xpath.h | File | 16.17 KB | 0644 |
|
xpathInternals.h | File | 18.9 KB | 0644 |
|
xpointer.h | File | 3.28 KB | 0644 |
|