libxml-nanoftp.html revision 9cb5ff4e6a18f557a2332111686f0ca69cd43917
1<HTML
2><HEAD
3><TITLE
4>nanoftp</TITLE
5><META
6NAME="GENERATOR"
7CONTENT="Modular DocBook HTML Stylesheet Version 1.44"><LINK
8REL="HOME"
9TITLE="Gnome XML Library Reference Manual"
10HREF="book1.html"><LINK
11REL="UP"
12TITLE="Libxml Library Reference"
13HREF="libxml-lib.html"><LINK
14REL="PREVIOUS"
15TITLE="nanohttp"
16HREF="libxml-nanohttp.html"><LINK
17REL="NEXT"
18TITLE="xmlIO"
19HREF="libxml-xmlio.html"></HEAD
20><BODY
21BGCOLOR="#FFFFFF"
22TEXT="#000000"
23LINK="#0000FF"
24VLINK="#840084"
25ALINK="#0000FF"
26><DIV
27CLASS="NAVHEADER"
28><TABLE
29WIDTH="100%"
30BORDER="0"
31BGCOLOR="#000000"
32CELLPADDING="1"
33CELLSPACING="0"
34><TR
35><TH
36COLSPAN="4"
37ALIGN="center"
38><FONT
39COLOR="#FFFFFF"
40SIZE="5"
41>Gnome XML Library Reference Manual</FONT
42></TH
43></TR
44><TR
45><TD
46WIDTH="25%"
47BGCOLOR="#C00000"
48ALIGN="left"
49><A
50HREF="libxml-nanohttp.html"
51><FONT
52COLOR="#FFFFFF"
53SIZE="3"
54><B
55>&#60;&#60;&#60; Previous Page</B
56></FONT
57></A
58></TD
59><TD
60WIDTH="25%"
61BGCOLOR="#0000C0"
62ALIGN="center"
63><FONT
64COLOR="#FFFFFF"
65SIZE="3"
66><B
67><A
68HREF="book1.html"
69><FONT
70COLOR="#FFFFFF"
71SIZE="3"
72><B
73>Home</B
74></FONT
75></A
76></B
77></FONT
78></TD
79><TD
80WIDTH="25%"
81BGCOLOR="#00C000"
82ALIGN="center"
83><FONT
84COLOR="#FFFFFF"
85SIZE="3"
86><B
87><A
88HREF="libxml-lib.html"
89><FONT
90COLOR="#FFFFFF"
91SIZE="3"
92><B
93>Up</B
94></FONT
95></A
96></B
97></FONT
98></TD
99><TD
100WIDTH="25%"
101BGCOLOR="#C00000"
102ALIGN="right"
103><A
104HREF="libxml-xmlio.html"
105><FONT
106COLOR="#FFFFFF"
107SIZE="3"
108><B
109>Next Page &#62;&#62;&#62;</B
110></FONT
111></A
112></TD
113></TR
114></TABLE
115></DIV
116><H1
117><A
118NAME="LIBXML-NANOFTP"
119>nanoftp</A
120></H1
121><DIV
122CLASS="REFNAMEDIV"
123><A
124NAME="AEN13661"
125></A
126><H2
127>Name</H2
128>nanoftp&nbsp;--&nbsp;</DIV
129><DIV
130CLASS="REFSYNOPSISDIV"
131><A
132NAME="AEN13664"
133></A
134><H2
135>Synopsis</H2
136><TABLE
137BORDER="0"
138BGCOLOR="#D6E8FF"
139WIDTH="100%"
140CELLPADDING="6"
141><TR
142><TD
143><PRE
144CLASS="SYNOPSIS"
145>&#13;
146
147void        (<A
148HREF="libxml-nanoftp.html#FTPLISTCALLBACK"
149>*ftpListCallback</A
150>)              (void *userData,
151                                             const char *filename,
152                                             const char *attrib,
153                                             const char *owner,
154                                             const char *group,
155                                             unsigned <GTKDOCLINK
156HREF="LONG"
157>long</GTKDOCLINK
158> size,
159                                             int links,
160                                             int year,
161                                             const char *month,
162                                             int day,
163                                             int hour,
164                                             int minute);
165void        (<A
166HREF="libxml-nanoftp.html#FTPDATACALLBACK"
167>*ftpDataCallback</A
168>)              (void *userData,
169                                             const char *data,
170                                             int len);
171void        <A
172HREF="libxml-nanoftp.html#XMLNANOFTPINIT"
173>xmlNanoFTPInit</A
174>                  (void);
175void        <A
176HREF="libxml-nanoftp.html#XMLNANOFTPCLEANUP"
177>xmlNanoFTPCleanup</A
178>               (void);
179void*       <A
180HREF="libxml-nanoftp.html#XMLNANOFTPNEWCTXT"
181>xmlNanoFTPNewCtxt</A
182>               (const char *URL);
183void        <A
184HREF="libxml-nanoftp.html#XMLNANOFTPFREECTXT"
185>xmlNanoFTPFreeCtxt</A
186>              (void *ctx);
187void*       <A
188HREF="libxml-nanoftp.html#XMLNANOFTPCONNECTTO"
189>xmlNanoFTPConnectTo</A
190>             (const char *server,
191                                             int port);
192void*       <A
193HREF="libxml-nanoftp.html#XMLNANOFTPOPEN"
194>xmlNanoFTPOpen</A
195>                  (const char *URL);
196int         <A
197HREF="libxml-nanoftp.html#XMLNANOFTPCONNECT"
198>xmlNanoFTPConnect</A
199>               (void *ctx);
200int         <A
201HREF="libxml-nanoftp.html#XMLNANOFTPCLOSE"
202>xmlNanoFTPClose</A
203>                 (void *ctx);
204int         <A
205HREF="libxml-nanoftp.html#XMLNANOFTPQUIT"
206>xmlNanoFTPQuit</A
207>                  (void *ctx);
208void        <A
209HREF="libxml-nanoftp.html#XMLNANOFTPSCANPROXY"
210>xmlNanoFTPScanProxy</A
211>             (const char *URL);
212void        <A
213HREF="libxml-nanoftp.html#XMLNANOFTPPROXY"
214>xmlNanoFTPProxy</A
215>                 (const char *host,
216                                             int port,
217                                             const char *user,
218                                             const char *passwd,
219                                             int type);
220int         <A
221HREF="libxml-nanoftp.html#XMLNANOFTPUPDATEURL"
222>xmlNanoFTPUpdateURL</A
223>             (void *ctx,
224                                             const char *URL);
225int         <A
226HREF="libxml-nanoftp.html#XMLNANOFTPGETRESPONSE"
227>xmlNanoFTPGetResponse</A
228>           (void *ctx);
229int         <A
230HREF="libxml-nanoftp.html#XMLNANOFTPCHECKRESPONSE"
231>xmlNanoFTPCheckResponse</A
232>         (void *ctx);
233int         <A
234HREF="libxml-nanoftp.html#XMLNANOFTPCWD"
235>xmlNanoFTPCwd</A
236>                   (void *ctx,
237                                             char *directory);
238int         <A
239HREF="libxml-nanoftp.html#XMLNANOFTPGETCONNECTION"
240>xmlNanoFTPGetConnection</A
241>         (void *ctx);
242int         <A
243HREF="libxml-nanoftp.html#XMLNANOFTPCLOSECONNECTION"
244>xmlNanoFTPCloseConnection</A
245>       (void *ctx);
246int         <A
247HREF="libxml-nanoftp.html#XMLNANOFTPLIST"
248>xmlNanoFTPList</A
249>                  (void *ctx,
250                                             <A
251HREF="libxml-nanoftp.html#FTPLISTCALLBACK"
252>ftpListCallback</A
253> callback,
254                                             void *userData,
255                                             char *filename);
256int         <A
257HREF="libxml-nanoftp.html#XMLNANOFTPGETSOCKET"
258>xmlNanoFTPGetSocket</A
259>             (void *ctx,
260                                             const char *filename);
261int         <A
262HREF="libxml-nanoftp.html#XMLNANOFTPGET"
263>xmlNanoFTPGet</A
264>                   (void *ctx,
265                                             <A
266HREF="libxml-nanoftp.html#FTPDATACALLBACK"
267>ftpDataCallback</A
268> callback,
269                                             void *userData,
270                                             const char *filename);
271int         <A
272HREF="libxml-nanoftp.html#XMLNANOFTPREAD"
273>xmlNanoFTPRead</A
274>                  (void *ctx,
275                                             void *dest,
276                                             int len);</PRE
277></TD
278></TR
279></TABLE
280></DIV
281><DIV
282CLASS="REFSECT1"
283><A
284NAME="AEN13693"
285></A
286><H2
287>Description</H2
288><P
289></P
290></DIV
291><DIV
292CLASS="REFSECT1"
293><A
294NAME="AEN13696"
295></A
296><H2
297>Details</H2
298><DIV
299CLASS="REFSECT2"
300><A
301NAME="AEN13698"
302></A
303><H3
304><A
305NAME="FTPLISTCALLBACK"
306></A
307>ftpListCallback ()</H3
308><TABLE
309BORDER="0"
310BGCOLOR="#D6E8FF"
311WIDTH="100%"
312CELLPADDING="6"
313><TR
314><TD
315><PRE
316CLASS="PROGRAMLISTING"
317>void        (*ftpListCallback)              (void *userData,
318                                             const char *filename,
319                                             const char *attrib,
320                                             const char *owner,
321                                             const char *group,
322                                             unsigned <GTKDOCLINK
323HREF="LONG"
324>long</GTKDOCLINK
325> size,
326                                             int links,
327                                             int year,
328                                             const char *month,
329                                             int day,
330                                             int hour,
331                                             int minute);</PRE
332></TD
333></TR
334></TABLE
335><P
336></P
337><DIV
338CLASS="INFORMALTABLE"
339><P
340></P
341><TABLE
342BORDER="0"
343WIDTH="100%"
344BGCOLOR="#FFD0D0"
345CELLSPACING="0"
346CELLPADDING="4"
347CLASS="CALSTABLE"
348><TR
349><TD
350WIDTH="20%"
351ALIGN="RIGHT"
352VALIGN="TOP"
353><TT
354CLASS="PARAMETER"
355><I
356>userData</I
357></TT
358>&nbsp;:</TD
359><TD
360WIDTH="80%"
361ALIGN="LEFT"
362VALIGN="TOP"
363>&nbsp;</TD
364></TR
365><TR
366><TD
367WIDTH="20%"
368ALIGN="RIGHT"
369VALIGN="TOP"
370><TT
371CLASS="PARAMETER"
372><I
373>filename</I
374></TT
375>&nbsp;:</TD
376><TD
377WIDTH="80%"
378ALIGN="LEFT"
379VALIGN="TOP"
380>&nbsp;</TD
381></TR
382><TR
383><TD
384WIDTH="20%"
385ALIGN="RIGHT"
386VALIGN="TOP"
387><TT
388CLASS="PARAMETER"
389><I
390>attrib</I
391></TT
392>&nbsp;:</TD
393><TD
394WIDTH="80%"
395ALIGN="LEFT"
396VALIGN="TOP"
397>&nbsp;</TD
398></TR
399><TR
400><TD
401WIDTH="20%"
402ALIGN="RIGHT"
403VALIGN="TOP"
404><TT
405CLASS="PARAMETER"
406><I
407>owner</I
408></TT
409>&nbsp;:</TD
410><TD
411WIDTH="80%"
412ALIGN="LEFT"
413VALIGN="TOP"
414>&nbsp;</TD
415></TR
416><TR
417><TD
418WIDTH="20%"
419ALIGN="RIGHT"
420VALIGN="TOP"
421><TT
422CLASS="PARAMETER"
423><I
424>group</I
425></TT
426>&nbsp;:</TD
427><TD
428WIDTH="80%"
429ALIGN="LEFT"
430VALIGN="TOP"
431>&nbsp;</TD
432></TR
433><TR
434><TD
435WIDTH="20%"
436ALIGN="RIGHT"
437VALIGN="TOP"
438><TT
439CLASS="PARAMETER"
440><I
441>size</I
442></TT
443>&nbsp;:</TD
444><TD
445WIDTH="80%"
446ALIGN="LEFT"
447VALIGN="TOP"
448>&nbsp;</TD
449></TR
450><TR
451><TD
452WIDTH="20%"
453ALIGN="RIGHT"
454VALIGN="TOP"
455><TT
456CLASS="PARAMETER"
457><I
458>links</I
459></TT
460>&nbsp;:</TD
461><TD
462WIDTH="80%"
463ALIGN="LEFT"
464VALIGN="TOP"
465>&nbsp;</TD
466></TR
467><TR
468><TD
469WIDTH="20%"
470ALIGN="RIGHT"
471VALIGN="TOP"
472><TT
473CLASS="PARAMETER"
474><I
475>year</I
476></TT
477>&nbsp;:</TD
478><TD
479WIDTH="80%"
480ALIGN="LEFT"
481VALIGN="TOP"
482>&nbsp;</TD
483></TR
484><TR
485><TD
486WIDTH="20%"
487ALIGN="RIGHT"
488VALIGN="TOP"
489><TT
490CLASS="PARAMETER"
491><I
492>month</I
493></TT
494>&nbsp;:</TD
495><TD
496WIDTH="80%"
497ALIGN="LEFT"
498VALIGN="TOP"
499>&nbsp;</TD
500></TR
501><TR
502><TD
503WIDTH="20%"
504ALIGN="RIGHT"
505VALIGN="TOP"
506><TT
507CLASS="PARAMETER"
508><I
509>day</I
510></TT
511>&nbsp;:</TD
512><TD
513WIDTH="80%"
514ALIGN="LEFT"
515VALIGN="TOP"
516>&nbsp;</TD
517></TR
518><TR
519><TD
520WIDTH="20%"
521ALIGN="RIGHT"
522VALIGN="TOP"
523><TT
524CLASS="PARAMETER"
525><I
526>hour</I
527></TT
528>&nbsp;:</TD
529><TD
530WIDTH="80%"
531ALIGN="LEFT"
532VALIGN="TOP"
533>&nbsp;</TD
534></TR
535><TR
536><TD
537WIDTH="20%"
538ALIGN="RIGHT"
539VALIGN="TOP"
540><TT
541CLASS="PARAMETER"
542><I
543>minute</I
544></TT
545>&nbsp;:</TD
546><TD
547WIDTH="80%"
548ALIGN="LEFT"
549VALIGN="TOP"
550>&#13;</TD
551></TR
552></TABLE
553><P
554></P
555></DIV
556></DIV
557><HR><DIV
558CLASS="REFSECT2"
559><A
560NAME="AEN13757"
561></A
562><H3
563><A
564NAME="FTPDATACALLBACK"
565></A
566>ftpDataCallback ()</H3
567><TABLE
568BORDER="0"
569BGCOLOR="#D6E8FF"
570WIDTH="100%"
571CELLPADDING="6"
572><TR
573><TD
574><PRE
575CLASS="PROGRAMLISTING"
576>void        (*ftpDataCallback)              (void *userData,
577                                             const char *data,
578                                             int len);</PRE
579></TD
580></TR
581></TABLE
582><P
583></P
584><DIV
585CLASS="INFORMALTABLE"
586><P
587></P
588><TABLE
589BORDER="0"
590WIDTH="100%"
591BGCOLOR="#FFD0D0"
592CELLSPACING="0"
593CELLPADDING="4"
594CLASS="CALSTABLE"
595><TR
596><TD
597WIDTH="20%"
598ALIGN="RIGHT"
599VALIGN="TOP"
600><TT
601CLASS="PARAMETER"
602><I
603>userData</I
604></TT
605>&nbsp;:</TD
606><TD
607WIDTH="80%"
608ALIGN="LEFT"
609VALIGN="TOP"
610>&nbsp;</TD
611></TR
612><TR
613><TD
614WIDTH="20%"
615ALIGN="RIGHT"
616VALIGN="TOP"
617><TT
618CLASS="PARAMETER"
619><I
620>data</I
621></TT
622>&nbsp;:</TD
623><TD
624WIDTH="80%"
625ALIGN="LEFT"
626VALIGN="TOP"
627>&nbsp;</TD
628></TR
629><TR
630><TD
631WIDTH="20%"
632ALIGN="RIGHT"
633VALIGN="TOP"
634><TT
635CLASS="PARAMETER"
636><I
637>len</I
638></TT
639>&nbsp;:</TD
640><TD
641WIDTH="80%"
642ALIGN="LEFT"
643VALIGN="TOP"
644>&#13;</TD
645></TR
646></TABLE
647><P
648></P
649></DIV
650></DIV
651><HR><DIV
652CLASS="REFSECT2"
653><A
654NAME="AEN13779"
655></A
656><H3
657><A
658NAME="XMLNANOFTPINIT"
659></A
660>xmlNanoFTPInit ()</H3
661><TABLE
662BORDER="0"
663BGCOLOR="#D6E8FF"
664WIDTH="100%"
665CELLPADDING="6"
666><TR
667><TD
668><PRE
669CLASS="PROGRAMLISTING"
670>void        xmlNanoFTPInit                  (void);</PRE
671></TD
672></TR
673></TABLE
674><P
675>Initialize the FTP protocol layer.
676Currently it just checks for proxy informations,
677and get the hostname</P
678><P
679></P
680></DIV
681><HR><DIV
682CLASS="REFSECT2"
683><A
684NAME="AEN13785"
685></A
686><H3
687><A
688NAME="XMLNANOFTPCLEANUP"
689></A
690>xmlNanoFTPCleanup ()</H3
691><TABLE
692BORDER="0"
693BGCOLOR="#D6E8FF"
694WIDTH="100%"
695CELLPADDING="6"
696><TR
697><TD
698><PRE
699CLASS="PROGRAMLISTING"
700>void        xmlNanoFTPCleanup               (void);</PRE
701></TD
702></TR
703></TABLE
704><P
705></P
706></DIV
707><HR><DIV
708CLASS="REFSECT2"
709><A
710NAME="AEN13790"
711></A
712><H3
713><A
714NAME="XMLNANOFTPNEWCTXT"
715></A
716>xmlNanoFTPNewCtxt ()</H3
717><TABLE
718BORDER="0"
719BGCOLOR="#D6E8FF"
720WIDTH="100%"
721CELLPADDING="6"
722><TR
723><TD
724><PRE
725CLASS="PROGRAMLISTING"
726>void*       xmlNanoFTPNewCtxt               (const char *URL);</PRE
727></TD
728></TR
729></TABLE
730><P
731>Allocate and initialize a new FTP context.</P
732><P
733></P
734><DIV
735CLASS="INFORMALTABLE"
736><P
737></P
738><TABLE
739BORDER="0"
740WIDTH="100%"
741BGCOLOR="#FFD0D0"
742CELLSPACING="0"
743CELLPADDING="4"
744CLASS="CALSTABLE"
745><TR
746><TD
747WIDTH="20%"
748ALIGN="RIGHT"
749VALIGN="TOP"
750><TT
751CLASS="PARAMETER"
752><I
753>URL</I
754></TT
755>&nbsp;:</TD
756><TD
757WIDTH="80%"
758ALIGN="LEFT"
759VALIGN="TOP"
760>  The URL used to initialize the context</TD
761></TR
762></TABLE
763><P
764></P
765></DIV
766></DIV
767><HR><DIV
768CLASS="REFSECT2"
769><A
770NAME="AEN13805"
771></A
772><H3
773><A
774NAME="XMLNANOFTPFREECTXT"
775></A
776>xmlNanoFTPFreeCtxt ()</H3
777><TABLE
778BORDER="0"
779BGCOLOR="#D6E8FF"
780WIDTH="100%"
781CELLPADDING="6"
782><TR
783><TD
784><PRE
785CLASS="PROGRAMLISTING"
786>void        xmlNanoFTPFreeCtxt              (void *ctx);</PRE
787></TD
788></TR
789></TABLE
790><P
791>Frees the context after closing the connection.</P
792><P
793></P
794><DIV
795CLASS="INFORMALTABLE"
796><P
797></P
798><TABLE
799BORDER="0"
800WIDTH="100%"
801BGCOLOR="#FFD0D0"
802CELLSPACING="0"
803CELLPADDING="4"
804CLASS="CALSTABLE"
805><TR
806><TD
807WIDTH="20%"
808ALIGN="RIGHT"
809VALIGN="TOP"
810><TT
811CLASS="PARAMETER"
812><I
813>ctx</I
814></TT
815>&nbsp;:</TD
816><TD
817WIDTH="80%"
818ALIGN="LEFT"
819VALIGN="TOP"
820>  an FTP context</TD
821></TR
822></TABLE
823><P
824></P
825></DIV
826></DIV
827><HR><DIV
828CLASS="REFSECT2"
829><A
830NAME="AEN13820"
831></A
832><H3
833><A
834NAME="XMLNANOFTPCONNECTTO"
835></A
836>xmlNanoFTPConnectTo ()</H3
837><TABLE
838BORDER="0"
839BGCOLOR="#D6E8FF"
840WIDTH="100%"
841CELLPADDING="6"
842><TR
843><TD
844><PRE
845CLASS="PROGRAMLISTING"
846>void*       xmlNanoFTPConnectTo             (const char *server,
847                                             int port);</PRE
848></TD
849></TR
850></TABLE
851><P
852>Tries to open a control connection to the given server/port</P
853><P
854></P
855><DIV
856CLASS="INFORMALTABLE"
857><P
858></P
859><TABLE
860BORDER="0"
861WIDTH="100%"
862BGCOLOR="#FFD0D0"
863CELLSPACING="0"
864CELLPADDING="4"
865CLASS="CALSTABLE"
866><TR
867><TD
868WIDTH="20%"
869ALIGN="RIGHT"
870VALIGN="TOP"
871><TT
872CLASS="PARAMETER"
873><I
874>server</I
875></TT
876>&nbsp;:</TD
877><TD
878WIDTH="80%"
879ALIGN="LEFT"
880VALIGN="TOP"
881>  an FTP server name</TD
882></TR
883><TR
884><TD
885WIDTH="20%"
886ALIGN="RIGHT"
887VALIGN="TOP"
888><TT
889CLASS="PARAMETER"
890><I
891>port</I
892></TT
893>&nbsp;:</TD
894><TD
895WIDTH="80%"
896ALIGN="LEFT"
897VALIGN="TOP"
898>  the port (use 21 if 0)</TD
899></TR
900></TABLE
901><P
902></P
903></DIV
904></DIV
905><HR><DIV
906CLASS="REFSECT2"
907><A
908NAME="AEN13839"
909></A
910><H3
911><A
912NAME="XMLNANOFTPOPEN"
913></A
914>xmlNanoFTPOpen ()</H3
915><TABLE
916BORDER="0"
917BGCOLOR="#D6E8FF"
918WIDTH="100%"
919CELLPADDING="6"
920><TR
921><TD
922><PRE
923CLASS="PROGRAMLISTING"
924>void*       xmlNanoFTPOpen                  (const char *URL);</PRE
925></TD
926></TR
927></TABLE
928><P
929>Start to fetch the given ftp:// resource</P
930><P
931></P
932><DIV
933CLASS="INFORMALTABLE"
934><P
935></P
936><TABLE
937BORDER="0"
938WIDTH="100%"
939BGCOLOR="#FFD0D0"
940CELLSPACING="0"
941CELLPADDING="4"
942CLASS="CALSTABLE"
943><TR
944><TD
945WIDTH="20%"
946ALIGN="RIGHT"
947VALIGN="TOP"
948><TT
949CLASS="PARAMETER"
950><I
951>URL</I
952></TT
953>&nbsp;:</TD
954><TD
955WIDTH="80%"
956ALIGN="LEFT"
957VALIGN="TOP"
958> the URL to the resource</TD
959></TR
960></TABLE
961><P
962></P
963></DIV
964></DIV
965><HR><DIV
966CLASS="REFSECT2"
967><A
968NAME="AEN13854"
969></A
970><H3
971><A
972NAME="XMLNANOFTPCONNECT"
973></A
974>xmlNanoFTPConnect ()</H3
975><TABLE
976BORDER="0"
977BGCOLOR="#D6E8FF"
978WIDTH="100%"
979CELLPADDING="6"
980><TR
981><TD
982><PRE
983CLASS="PROGRAMLISTING"
984>int         xmlNanoFTPConnect               (void *ctx);</PRE
985></TD
986></TR
987></TABLE
988><P
989>Tries to open a control connection</P
990><P
991></P
992><DIV
993CLASS="INFORMALTABLE"
994><P
995></P
996><TABLE
997BORDER="0"
998WIDTH="100%"
999BGCOLOR="#FFD0D0"
1000CELLSPACING="0"
1001CELLPADDING="4"
1002CLASS="CALSTABLE"
1003><TR
1004><TD
1005WIDTH="20%"
1006ALIGN="RIGHT"
1007VALIGN="TOP"
1008><TT
1009CLASS="PARAMETER"
1010><I
1011>ctx</I
1012></TT
1013>&nbsp;:</TD
1014><TD
1015WIDTH="80%"
1016ALIGN="LEFT"
1017VALIGN="TOP"
1018>  an FTP context</TD
1019></TR
1020><TR
1021><TD
1022WIDTH="20%"
1023ALIGN="RIGHT"
1024VALIGN="TOP"
1025><I
1026CLASS="EMPHASIS"
1027>Returns</I
1028> :</TD
1029><TD
1030WIDTH="80%"
1031ALIGN="LEFT"
1032VALIGN="TOP"
1033>-1 in case of error, 0 otherwise</TD
1034></TR
1035></TABLE
1036><P
1037></P
1038></DIV
1039></DIV
1040><HR><DIV
1041CLASS="REFSECT2"
1042><A
1043NAME="AEN13873"
1044></A
1045><H3
1046><A
1047NAME="XMLNANOFTPCLOSE"
1048></A
1049>xmlNanoFTPClose ()</H3
1050><TABLE
1051BORDER="0"
1052BGCOLOR="#D6E8FF"
1053WIDTH="100%"
1054CELLPADDING="6"
1055><TR
1056><TD
1057><PRE
1058CLASS="PROGRAMLISTING"
1059>int         xmlNanoFTPClose                 (void *ctx);</PRE
1060></TD
1061></TR
1062></TABLE
1063><P
1064>Close the connection and both control and transport</P
1065><P
1066></P
1067><DIV
1068CLASS="INFORMALTABLE"
1069><P
1070></P
1071><TABLE
1072BORDER="0"
1073WIDTH="100%"
1074BGCOLOR="#FFD0D0"
1075CELLSPACING="0"
1076CELLPADDING="4"
1077CLASS="CALSTABLE"
1078><TR
1079><TD
1080WIDTH="20%"
1081ALIGN="RIGHT"
1082VALIGN="TOP"
1083><TT
1084CLASS="PARAMETER"
1085><I
1086>ctx</I
1087></TT
1088>&nbsp;:</TD
1089><TD
1090WIDTH="80%"
1091ALIGN="LEFT"
1092VALIGN="TOP"
1093> an FTP context</TD
1094></TR
1095><TR
1096><TD
1097WIDTH="20%"
1098ALIGN="RIGHT"
1099VALIGN="TOP"
1100><I
1101CLASS="EMPHASIS"
1102>Returns</I
1103> :</TD
1104><TD
1105WIDTH="80%"
1106ALIGN="LEFT"
1107VALIGN="TOP"
1108>-1 incase of error, 0 otherwise</TD
1109></TR
1110></TABLE
1111><P
1112></P
1113></DIV
1114></DIV
1115><HR><DIV
1116CLASS="REFSECT2"
1117><A
1118NAME="AEN13892"
1119></A
1120><H3
1121><A
1122NAME="XMLNANOFTPQUIT"
1123></A
1124>xmlNanoFTPQuit ()</H3
1125><TABLE
1126BORDER="0"
1127BGCOLOR="#D6E8FF"
1128WIDTH="100%"
1129CELLPADDING="6"
1130><TR
1131><TD
1132><PRE
1133CLASS="PROGRAMLISTING"
1134>int         xmlNanoFTPQuit                  (void *ctx);</PRE
1135></TD
1136></TR
1137></TABLE
1138><P
1139>Send a QUIT command to the server</P
1140><P
1141></P
1142><DIV
1143CLASS="INFORMALTABLE"
1144><P
1145></P
1146><TABLE
1147BORDER="0"
1148WIDTH="100%"
1149BGCOLOR="#FFD0D0"
1150CELLSPACING="0"
1151CELLPADDING="4"
1152CLASS="CALSTABLE"
1153><TR
1154><TD
1155WIDTH="20%"
1156ALIGN="RIGHT"
1157VALIGN="TOP"
1158><TT
1159CLASS="PARAMETER"
1160><I
1161>ctx</I
1162></TT
1163>&nbsp;:</TD
1164><TD
1165WIDTH="80%"
1166ALIGN="LEFT"
1167VALIGN="TOP"
1168>  an FTP context</TD
1169></TR
1170><TR
1171><TD
1172WIDTH="20%"
1173ALIGN="RIGHT"
1174VALIGN="TOP"
1175><I
1176CLASS="EMPHASIS"
1177>Returns</I
1178> :</TD
1179><TD
1180WIDTH="80%"
1181ALIGN="LEFT"
1182VALIGN="TOP"
1183>-1 in case of error, 0 otherwise</TD
1184></TR
1185></TABLE
1186><P
1187></P
1188></DIV
1189></DIV
1190><HR><DIV
1191CLASS="REFSECT2"
1192><A
1193NAME="AEN13911"
1194></A
1195><H3
1196><A
1197NAME="XMLNANOFTPSCANPROXY"
1198></A
1199>xmlNanoFTPScanProxy ()</H3
1200><TABLE
1201BORDER="0"
1202BGCOLOR="#D6E8FF"
1203WIDTH="100%"
1204CELLPADDING="6"
1205><TR
1206><TD
1207><PRE
1208CLASS="PROGRAMLISTING"
1209>void        xmlNanoFTPScanProxy             (const char *URL);</PRE
1210></TD
1211></TR
1212></TABLE
1213><P
1214>(Re)Initialize the FTP Proxy context by parsing the URL and finding
1215the protocol host port it indicates.
1216Should be like ftp://myproxy/ or ftp://myproxy:3128/
1217A NULL URL cleans up proxy informations.</P
1218><P
1219></P
1220><DIV
1221CLASS="INFORMALTABLE"
1222><P
1223></P
1224><TABLE
1225BORDER="0"
1226WIDTH="100%"
1227BGCOLOR="#FFD0D0"
1228CELLSPACING="0"
1229CELLPADDING="4"
1230CLASS="CALSTABLE"
1231><TR
1232><TD
1233WIDTH="20%"
1234ALIGN="RIGHT"
1235VALIGN="TOP"
1236><TT
1237CLASS="PARAMETER"
1238><I
1239>URL</I
1240></TT
1241>&nbsp;:</TD
1242><TD
1243WIDTH="80%"
1244ALIGN="LEFT"
1245VALIGN="TOP"
1246>  The proxy URL used to initialize the proxy context</TD
1247></TR
1248></TABLE
1249><P
1250></P
1251></DIV
1252></DIV
1253><HR><DIV
1254CLASS="REFSECT2"
1255><A
1256NAME="AEN13926"
1257></A
1258><H3
1259><A
1260NAME="XMLNANOFTPPROXY"
1261></A
1262>xmlNanoFTPProxy ()</H3
1263><TABLE
1264BORDER="0"
1265BGCOLOR="#D6E8FF"
1266WIDTH="100%"
1267CELLPADDING="6"
1268><TR
1269><TD
1270><PRE
1271CLASS="PROGRAMLISTING"
1272>void        xmlNanoFTPProxy                 (const char *host,
1273                                             int port,
1274                                             const char *user,
1275                                             const char *passwd,
1276                                             int type);</PRE
1277></TD
1278></TR
1279></TABLE
1280><P
1281>Setup the FTP proxy informations.
1282This can also be done by using ftp_proxy ftp_proxy_user and
1283ftp_proxy_password environment variables.</P
1284><P
1285></P
1286><DIV
1287CLASS="INFORMALTABLE"
1288><P
1289></P
1290><TABLE
1291BORDER="0"
1292WIDTH="100%"
1293BGCOLOR="#FFD0D0"
1294CELLSPACING="0"
1295CELLPADDING="4"
1296CLASS="CALSTABLE"
1297><TR
1298><TD
1299WIDTH="20%"
1300ALIGN="RIGHT"
1301VALIGN="TOP"
1302><TT
1303CLASS="PARAMETER"
1304><I
1305>host</I
1306></TT
1307>&nbsp;:</TD
1308><TD
1309WIDTH="80%"
1310ALIGN="LEFT"
1311VALIGN="TOP"
1312>  the proxy host name</TD
1313></TR
1314><TR
1315><TD
1316WIDTH="20%"
1317ALIGN="RIGHT"
1318VALIGN="TOP"
1319><TT
1320CLASS="PARAMETER"
1321><I
1322>port</I
1323></TT
1324>&nbsp;:</TD
1325><TD
1326WIDTH="80%"
1327ALIGN="LEFT"
1328VALIGN="TOP"
1329>  the proxy port</TD
1330></TR
1331><TR
1332><TD
1333WIDTH="20%"
1334ALIGN="RIGHT"
1335VALIGN="TOP"
1336><TT
1337CLASS="PARAMETER"
1338><I
1339>user</I
1340></TT
1341>&nbsp;:</TD
1342><TD
1343WIDTH="80%"
1344ALIGN="LEFT"
1345VALIGN="TOP"
1346>  the proxy user name</TD
1347></TR
1348><TR
1349><TD
1350WIDTH="20%"
1351ALIGN="RIGHT"
1352VALIGN="TOP"
1353><TT
1354CLASS="PARAMETER"
1355><I
1356>passwd</I
1357></TT
1358>&nbsp;:</TD
1359><TD
1360WIDTH="80%"
1361ALIGN="LEFT"
1362VALIGN="TOP"
1363>  the proxy password</TD
1364></TR
1365><TR
1366><TD
1367WIDTH="20%"
1368ALIGN="RIGHT"
1369VALIGN="TOP"
1370><TT
1371CLASS="PARAMETER"
1372><I
1373>type</I
1374></TT
1375>&nbsp;:</TD
1376><TD
1377WIDTH="80%"
1378ALIGN="LEFT"
1379VALIGN="TOP"
1380>  the type of proxy 1 for using SITE, 2 for USER a<TT
1381CLASS="PARAMETER"
1382><I
1383>b</I
1384></TT
1385></TD
1386></TR
1387></TABLE
1388><P
1389></P
1390></DIV
1391></DIV
1392><HR><DIV
1393CLASS="REFSECT2"
1394><A
1395NAME="AEN13958"
1396></A
1397><H3
1398><A
1399NAME="XMLNANOFTPUPDATEURL"
1400></A
1401>xmlNanoFTPUpdateURL ()</H3
1402><TABLE
1403BORDER="0"
1404BGCOLOR="#D6E8FF"
1405WIDTH="100%"
1406CELLPADDING="6"
1407><TR
1408><TD
1409><PRE
1410CLASS="PROGRAMLISTING"
1411>int         xmlNanoFTPUpdateURL             (void *ctx,
1412                                             const char *URL);</PRE
1413></TD
1414></TR
1415></TABLE
1416><P
1417>Update an FTP context by parsing the URL and finding
1418new path it indicates. If there is an error in the 
1419protocol, hostname, port or other information, the
1420error is raised. It indicates a new connection has to
1421be established.</P
1422><P
1423></P
1424><DIV
1425CLASS="INFORMALTABLE"
1426><P
1427></P
1428><TABLE
1429BORDER="0"
1430WIDTH="100%"
1431BGCOLOR="#FFD0D0"
1432CELLSPACING="0"
1433CELLPADDING="4"
1434CLASS="CALSTABLE"
1435><TR
1436><TD
1437WIDTH="20%"
1438ALIGN="RIGHT"
1439VALIGN="TOP"
1440><TT
1441CLASS="PARAMETER"
1442><I
1443>ctx</I
1444></TT
1445>&nbsp;:</TD
1446><TD
1447WIDTH="80%"
1448ALIGN="LEFT"
1449VALIGN="TOP"
1450>  an FTP context</TD
1451></TR
1452><TR
1453><TD
1454WIDTH="20%"
1455ALIGN="RIGHT"
1456VALIGN="TOP"
1457><TT
1458CLASS="PARAMETER"
1459><I
1460>URL</I
1461></TT
1462>&nbsp;:</TD
1463><TD
1464WIDTH="80%"
1465ALIGN="LEFT"
1466VALIGN="TOP"
1467>  The URL used to update the context</TD
1468></TR
1469><TR
1470><TD
1471WIDTH="20%"
1472ALIGN="RIGHT"
1473VALIGN="TOP"
1474><I
1475CLASS="EMPHASIS"
1476>Returns</I
1477> :</TD
1478><TD
1479WIDTH="80%"
1480ALIGN="LEFT"
1481VALIGN="TOP"
1482>0 if Ok, -1 in case of error (other host).</TD
1483></TR
1484></TABLE
1485><P
1486></P
1487></DIV
1488></DIV
1489><HR><DIV
1490CLASS="REFSECT2"
1491><A
1492NAME="AEN13981"
1493></A
1494><H3
1495><A
1496NAME="XMLNANOFTPGETRESPONSE"
1497></A
1498>xmlNanoFTPGetResponse ()</H3
1499><TABLE
1500BORDER="0"
1501BGCOLOR="#D6E8FF"
1502WIDTH="100%"
1503CELLPADDING="6"
1504><TR
1505><TD
1506><PRE
1507CLASS="PROGRAMLISTING"
1508>int         xmlNanoFTPGetResponse           (void *ctx);</PRE
1509></TD
1510></TR
1511></TABLE
1512><P
1513>Get the response from the FTP server after a command.</P
1514><P
1515></P
1516><DIV
1517CLASS="INFORMALTABLE"
1518><P
1519></P
1520><TABLE
1521BORDER="0"
1522WIDTH="100%"
1523BGCOLOR="#FFD0D0"
1524CELLSPACING="0"
1525CELLPADDING="4"
1526CLASS="CALSTABLE"
1527><TR
1528><TD
1529WIDTH="20%"
1530ALIGN="RIGHT"
1531VALIGN="TOP"
1532><TT
1533CLASS="PARAMETER"
1534><I
1535>ctx</I
1536></TT
1537>&nbsp;:</TD
1538><TD
1539WIDTH="80%"
1540ALIGN="LEFT"
1541VALIGN="TOP"
1542>  an FTP context</TD
1543></TR
1544><TR
1545><TD
1546WIDTH="20%"
1547ALIGN="RIGHT"
1548VALIGN="TOP"
1549><I
1550CLASS="EMPHASIS"
1551>Returns</I
1552> :</TD
1553><TD
1554WIDTH="80%"
1555ALIGN="LEFT"
1556VALIGN="TOP"
1557>the code number</TD
1558></TR
1559></TABLE
1560><P
1561></P
1562></DIV
1563></DIV
1564><HR><DIV
1565CLASS="REFSECT2"
1566><A
1567NAME="AEN14000"
1568></A
1569><H3
1570><A
1571NAME="XMLNANOFTPCHECKRESPONSE"
1572></A
1573>xmlNanoFTPCheckResponse ()</H3
1574><TABLE
1575BORDER="0"
1576BGCOLOR="#D6E8FF"
1577WIDTH="100%"
1578CELLPADDING="6"
1579><TR
1580><TD
1581><PRE
1582CLASS="PROGRAMLISTING"
1583>int         xmlNanoFTPCheckResponse         (void *ctx);</PRE
1584></TD
1585></TR
1586></TABLE
1587><P
1588>Check if there is a response from the FTP server after a command.</P
1589><P
1590></P
1591><DIV
1592CLASS="INFORMALTABLE"
1593><P
1594></P
1595><TABLE
1596BORDER="0"
1597WIDTH="100%"
1598BGCOLOR="#FFD0D0"
1599CELLSPACING="0"
1600CELLPADDING="4"
1601CLASS="CALSTABLE"
1602><TR
1603><TD
1604WIDTH="20%"
1605ALIGN="RIGHT"
1606VALIGN="TOP"
1607><TT
1608CLASS="PARAMETER"
1609><I
1610>ctx</I
1611></TT
1612>&nbsp;:</TD
1613><TD
1614WIDTH="80%"
1615ALIGN="LEFT"
1616VALIGN="TOP"
1617>  an FTP context</TD
1618></TR
1619><TR
1620><TD
1621WIDTH="20%"
1622ALIGN="RIGHT"
1623VALIGN="TOP"
1624><I
1625CLASS="EMPHASIS"
1626>Returns</I
1627> :</TD
1628><TD
1629WIDTH="80%"
1630ALIGN="LEFT"
1631VALIGN="TOP"
1632>the code number, or 0</TD
1633></TR
1634></TABLE
1635><P
1636></P
1637></DIV
1638></DIV
1639><HR><DIV
1640CLASS="REFSECT2"
1641><A
1642NAME="AEN14019"
1643></A
1644><H3
1645><A
1646NAME="XMLNANOFTPCWD"
1647></A
1648>xmlNanoFTPCwd ()</H3
1649><TABLE
1650BORDER="0"
1651BGCOLOR="#D6E8FF"
1652WIDTH="100%"
1653CELLPADDING="6"
1654><TR
1655><TD
1656><PRE
1657CLASS="PROGRAMLISTING"
1658>int         xmlNanoFTPCwd                   (void *ctx,
1659                                             char *directory);</PRE
1660></TD
1661></TR
1662></TABLE
1663><P
1664>Tries to change the remote directory</P
1665><P
1666></P
1667><DIV
1668CLASS="INFORMALTABLE"
1669><P
1670></P
1671><TABLE
1672BORDER="0"
1673WIDTH="100%"
1674BGCOLOR="#FFD0D0"
1675CELLSPACING="0"
1676CELLPADDING="4"
1677CLASS="CALSTABLE"
1678><TR
1679><TD
1680WIDTH="20%"
1681ALIGN="RIGHT"
1682VALIGN="TOP"
1683><TT
1684CLASS="PARAMETER"
1685><I
1686>ctx</I
1687></TT
1688>&nbsp;:</TD
1689><TD
1690WIDTH="80%"
1691ALIGN="LEFT"
1692VALIGN="TOP"
1693>  an FTP context</TD
1694></TR
1695><TR
1696><TD
1697WIDTH="20%"
1698ALIGN="RIGHT"
1699VALIGN="TOP"
1700><TT
1701CLASS="PARAMETER"
1702><I
1703>directory</I
1704></TT
1705>&nbsp;:</TD
1706><TD
1707WIDTH="80%"
1708ALIGN="LEFT"
1709VALIGN="TOP"
1710>  a directory on the server</TD
1711></TR
1712><TR
1713><TD
1714WIDTH="20%"
1715ALIGN="RIGHT"
1716VALIGN="TOP"
1717><I
1718CLASS="EMPHASIS"
1719>Returns</I
1720> :</TD
1721><TD
1722WIDTH="80%"
1723ALIGN="LEFT"
1724VALIGN="TOP"
1725>-1 incase of error, 1 if CWD worked, 0 if it failed</TD
1726></TR
1727></TABLE
1728><P
1729></P
1730></DIV
1731></DIV
1732><HR><DIV
1733CLASS="REFSECT2"
1734><A
1735NAME="AEN14042"
1736></A
1737><H3
1738><A
1739NAME="XMLNANOFTPGETCONNECTION"
1740></A
1741>xmlNanoFTPGetConnection ()</H3
1742><TABLE
1743BORDER="0"
1744BGCOLOR="#D6E8FF"
1745WIDTH="100%"
1746CELLPADDING="6"
1747><TR
1748><TD
1749><PRE
1750CLASS="PROGRAMLISTING"
1751>int         xmlNanoFTPGetConnection         (void *ctx);</PRE
1752></TD
1753></TR
1754></TABLE
1755><P
1756>Try to open a data connection to the server. Currently only
1757passive mode is supported.</P
1758><P
1759></P
1760><DIV
1761CLASS="INFORMALTABLE"
1762><P
1763></P
1764><TABLE
1765BORDER="0"
1766WIDTH="100%"
1767BGCOLOR="#FFD0D0"
1768CELLSPACING="0"
1769CELLPADDING="4"
1770CLASS="CALSTABLE"
1771><TR
1772><TD
1773WIDTH="20%"
1774ALIGN="RIGHT"
1775VALIGN="TOP"
1776><TT
1777CLASS="PARAMETER"
1778><I
1779>ctx</I
1780></TT
1781>&nbsp;:</TD
1782><TD
1783WIDTH="80%"
1784ALIGN="LEFT"
1785VALIGN="TOP"
1786>  an FTP context</TD
1787></TR
1788><TR
1789><TD
1790WIDTH="20%"
1791ALIGN="RIGHT"
1792VALIGN="TOP"
1793><I
1794CLASS="EMPHASIS"
1795>Returns</I
1796> :</TD
1797><TD
1798WIDTH="80%"
1799ALIGN="LEFT"
1800VALIGN="TOP"
1801>-1 incase of error, 0 otherwise</TD
1802></TR
1803></TABLE
1804><P
1805></P
1806></DIV
1807></DIV
1808><HR><DIV
1809CLASS="REFSECT2"
1810><A
1811NAME="AEN14061"
1812></A
1813><H3
1814><A
1815NAME="XMLNANOFTPCLOSECONNECTION"
1816></A
1817>xmlNanoFTPCloseConnection ()</H3
1818><TABLE
1819BORDER="0"
1820BGCOLOR="#D6E8FF"
1821WIDTH="100%"
1822CELLPADDING="6"
1823><TR
1824><TD
1825><PRE
1826CLASS="PROGRAMLISTING"
1827>int         xmlNanoFTPCloseConnection       (void *ctx);</PRE
1828></TD
1829></TR
1830></TABLE
1831><P
1832>Close the data connection from the server</P
1833><P
1834></P
1835><DIV
1836CLASS="INFORMALTABLE"
1837><P
1838></P
1839><TABLE
1840BORDER="0"
1841WIDTH="100%"
1842BGCOLOR="#FFD0D0"
1843CELLSPACING="0"
1844CELLPADDING="4"
1845CLASS="CALSTABLE"
1846><TR
1847><TD
1848WIDTH="20%"
1849ALIGN="RIGHT"
1850VALIGN="TOP"
1851><TT
1852CLASS="PARAMETER"
1853><I
1854>ctx</I
1855></TT
1856>&nbsp;:</TD
1857><TD
1858WIDTH="80%"
1859ALIGN="LEFT"
1860VALIGN="TOP"
1861>  an FTP context</TD
1862></TR
1863><TR
1864><TD
1865WIDTH="20%"
1866ALIGN="RIGHT"
1867VALIGN="TOP"
1868><I
1869CLASS="EMPHASIS"
1870>Returns</I
1871> :</TD
1872><TD
1873WIDTH="80%"
1874ALIGN="LEFT"
1875VALIGN="TOP"
1876>-1 incase of error, 0 otherwise</TD
1877></TR
1878></TABLE
1879><P
1880></P
1881></DIV
1882></DIV
1883><HR><DIV
1884CLASS="REFSECT2"
1885><A
1886NAME="AEN14080"
1887></A
1888><H3
1889><A
1890NAME="XMLNANOFTPLIST"
1891></A
1892>xmlNanoFTPList ()</H3
1893><TABLE
1894BORDER="0"
1895BGCOLOR="#D6E8FF"
1896WIDTH="100%"
1897CELLPADDING="6"
1898><TR
1899><TD
1900><PRE
1901CLASS="PROGRAMLISTING"
1902>int         xmlNanoFTPList                  (void *ctx,
1903                                             <A
1904HREF="libxml-nanoftp.html#FTPLISTCALLBACK"
1905>ftpListCallback</A
1906> callback,
1907                                             void *userData,
1908                                             char *filename);</PRE
1909></TD
1910></TR
1911></TABLE
1912><P
1913>Do a listing on the server. All files info are passed back
1914in the callbacks.</P
1915><P
1916></P
1917><DIV
1918CLASS="INFORMALTABLE"
1919><P
1920></P
1921><TABLE
1922BORDER="0"
1923WIDTH="100%"
1924BGCOLOR="#FFD0D0"
1925CELLSPACING="0"
1926CELLPADDING="4"
1927CLASS="CALSTABLE"
1928><TR
1929><TD
1930WIDTH="20%"
1931ALIGN="RIGHT"
1932VALIGN="TOP"
1933><TT
1934CLASS="PARAMETER"
1935><I
1936>ctx</I
1937></TT
1938>&nbsp;:</TD
1939><TD
1940WIDTH="80%"
1941ALIGN="LEFT"
1942VALIGN="TOP"
1943>  an FTP context</TD
1944></TR
1945><TR
1946><TD
1947WIDTH="20%"
1948ALIGN="RIGHT"
1949VALIGN="TOP"
1950><TT
1951CLASS="PARAMETER"
1952><I
1953>callback</I
1954></TT
1955>&nbsp;:</TD
1956><TD
1957WIDTH="80%"
1958ALIGN="LEFT"
1959VALIGN="TOP"
1960>  the user callback</TD
1961></TR
1962><TR
1963><TD
1964WIDTH="20%"
1965ALIGN="RIGHT"
1966VALIGN="TOP"
1967><TT
1968CLASS="PARAMETER"
1969><I
1970>userData</I
1971></TT
1972>&nbsp;:</TD
1973><TD
1974WIDTH="80%"
1975ALIGN="LEFT"
1976VALIGN="TOP"
1977>  the user callback data</TD
1978></TR
1979><TR
1980><TD
1981WIDTH="20%"
1982ALIGN="RIGHT"
1983VALIGN="TOP"
1984><TT
1985CLASS="PARAMETER"
1986><I
1987>filename</I
1988></TT
1989>&nbsp;:</TD
1990><TD
1991WIDTH="80%"
1992ALIGN="LEFT"
1993VALIGN="TOP"
1994>  optional files to list</TD
1995></TR
1996><TR
1997><TD
1998WIDTH="20%"
1999ALIGN="RIGHT"
2000VALIGN="TOP"
2001><I
2002CLASS="EMPHASIS"
2003>Returns</I
2004> :</TD
2005><TD
2006WIDTH="80%"
2007ALIGN="LEFT"
2008VALIGN="TOP"
2009>-1 incase of error, 0 otherwise</TD
2010></TR
2011></TABLE
2012><P
2013></P
2014></DIV
2015></DIV
2016><HR><DIV
2017CLASS="REFSECT2"
2018><A
2019NAME="AEN14112"
2020></A
2021><H3
2022><A
2023NAME="XMLNANOFTPGETSOCKET"
2024></A
2025>xmlNanoFTPGetSocket ()</H3
2026><TABLE
2027BORDER="0"
2028BGCOLOR="#D6E8FF"
2029WIDTH="100%"
2030CELLPADDING="6"
2031><TR
2032><TD
2033><PRE
2034CLASS="PROGRAMLISTING"
2035>int         xmlNanoFTPGetSocket             (void *ctx,
2036                                             const char *filename);</PRE
2037></TD
2038></TR
2039></TABLE
2040><P
2041>Initiate fetch of the given file from the server.</P
2042><P
2043></P
2044><DIV
2045CLASS="INFORMALTABLE"
2046><P
2047></P
2048><TABLE
2049BORDER="0"
2050WIDTH="100%"
2051BGCOLOR="#FFD0D0"
2052CELLSPACING="0"
2053CELLPADDING="4"
2054CLASS="CALSTABLE"
2055><TR
2056><TD
2057WIDTH="20%"
2058ALIGN="RIGHT"
2059VALIGN="TOP"
2060><TT
2061CLASS="PARAMETER"
2062><I
2063>ctx</I
2064></TT
2065>&nbsp;:</TD
2066><TD
2067WIDTH="80%"
2068ALIGN="LEFT"
2069VALIGN="TOP"
2070>  an FTP context</TD
2071></TR
2072><TR
2073><TD
2074WIDTH="20%"
2075ALIGN="RIGHT"
2076VALIGN="TOP"
2077><TT
2078CLASS="PARAMETER"
2079><I
2080>filename</I
2081></TT
2082>&nbsp;:</TD
2083><TD
2084WIDTH="80%"
2085ALIGN="LEFT"
2086VALIGN="TOP"
2087>  the file to retrieve (or NULL if path is in context).</TD
2088></TR
2089><TR
2090><TD
2091WIDTH="20%"
2092ALIGN="RIGHT"
2093VALIGN="TOP"
2094><I
2095CLASS="EMPHASIS"
2096>Returns</I
2097> :</TD
2098><TD
2099WIDTH="80%"
2100ALIGN="LEFT"
2101VALIGN="TOP"
2102>the socket for the data connection, or &lt;0 in case of error</TD
2103></TR
2104></TABLE
2105><P
2106></P
2107></DIV
2108></DIV
2109><HR><DIV
2110CLASS="REFSECT2"
2111><A
2112NAME="AEN14135"
2113></A
2114><H3
2115><A
2116NAME="XMLNANOFTPGET"
2117></A
2118>xmlNanoFTPGet ()</H3
2119><TABLE
2120BORDER="0"
2121BGCOLOR="#D6E8FF"
2122WIDTH="100%"
2123CELLPADDING="6"
2124><TR
2125><TD
2126><PRE
2127CLASS="PROGRAMLISTING"
2128>int         xmlNanoFTPGet                   (void *ctx,
2129                                             <A
2130HREF="libxml-nanoftp.html#FTPDATACALLBACK"
2131>ftpDataCallback</A
2132> callback,
2133                                             void *userData,
2134                                             const char *filename);</PRE
2135></TD
2136></TR
2137></TABLE
2138><P
2139>Fetch the given file from the server. All data are passed back
2140in the callbacks. The last callback has a size of 0 block.</P
2141><P
2142></P
2143><DIV
2144CLASS="INFORMALTABLE"
2145><P
2146></P
2147><TABLE
2148BORDER="0"
2149WIDTH="100%"
2150BGCOLOR="#FFD0D0"
2151CELLSPACING="0"
2152CELLPADDING="4"
2153CLASS="CALSTABLE"
2154><TR
2155><TD
2156WIDTH="20%"
2157ALIGN="RIGHT"
2158VALIGN="TOP"
2159><TT
2160CLASS="PARAMETER"
2161><I
2162>ctx</I
2163></TT
2164>&nbsp;:</TD
2165><TD
2166WIDTH="80%"
2167ALIGN="LEFT"
2168VALIGN="TOP"
2169>  an FTP context</TD
2170></TR
2171><TR
2172><TD
2173WIDTH="20%"
2174ALIGN="RIGHT"
2175VALIGN="TOP"
2176><TT
2177CLASS="PARAMETER"
2178><I
2179>callback</I
2180></TT
2181>&nbsp;:</TD
2182><TD
2183WIDTH="80%"
2184ALIGN="LEFT"
2185VALIGN="TOP"
2186>  the user callback</TD
2187></TR
2188><TR
2189><TD
2190WIDTH="20%"
2191ALIGN="RIGHT"
2192VALIGN="TOP"
2193><TT
2194CLASS="PARAMETER"
2195><I
2196>userData</I
2197></TT
2198>&nbsp;:</TD
2199><TD
2200WIDTH="80%"
2201ALIGN="LEFT"
2202VALIGN="TOP"
2203>  the user callback data</TD
2204></TR
2205><TR
2206><TD
2207WIDTH="20%"
2208ALIGN="RIGHT"
2209VALIGN="TOP"
2210><TT
2211CLASS="PARAMETER"
2212><I
2213>filename</I
2214></TT
2215>&nbsp;:</TD
2216><TD
2217WIDTH="80%"
2218ALIGN="LEFT"
2219VALIGN="TOP"
2220>  the file to retrieve</TD
2221></TR
2222><TR
2223><TD
2224WIDTH="20%"
2225ALIGN="RIGHT"
2226VALIGN="TOP"
2227><I
2228CLASS="EMPHASIS"
2229>Returns</I
2230> :</TD
2231><TD
2232WIDTH="80%"
2233ALIGN="LEFT"
2234VALIGN="TOP"
2235>-1 incase of error, 0 otherwise</TD
2236></TR
2237></TABLE
2238><P
2239></P
2240></DIV
2241></DIV
2242><HR><DIV
2243CLASS="REFSECT2"
2244><A
2245NAME="AEN14167"
2246></A
2247><H3
2248><A
2249NAME="XMLNANOFTPREAD"
2250></A
2251>xmlNanoFTPRead ()</H3
2252><TABLE
2253BORDER="0"
2254BGCOLOR="#D6E8FF"
2255WIDTH="100%"
2256CELLPADDING="6"
2257><TR
2258><TD
2259><PRE
2260CLASS="PROGRAMLISTING"
2261>int         xmlNanoFTPRead                  (void *ctx,
2262                                             void *dest,
2263                                             int len);</PRE
2264></TD
2265></TR
2266></TABLE
2267><P
2268>This function tries to read <TT
2269CLASS="PARAMETER"
2270><I
2271>len</I
2272></TT
2273> bytes from the existing FTP connection
2274and saves them in <TT
2275CLASS="PARAMETER"
2276><I
2277>dest</I
2278></TT
2279>. This is a blocking call.</P
2280><P
2281></P
2282><DIV
2283CLASS="INFORMALTABLE"
2284><P
2285></P
2286><TABLE
2287BORDER="0"
2288WIDTH="100%"
2289BGCOLOR="#FFD0D0"
2290CELLSPACING="0"
2291CELLPADDING="4"
2292CLASS="CALSTABLE"
2293><TR
2294><TD
2295WIDTH="20%"
2296ALIGN="RIGHT"
2297VALIGN="TOP"
2298><TT
2299CLASS="PARAMETER"
2300><I
2301>ctx</I
2302></TT
2303>&nbsp;:</TD
2304><TD
2305WIDTH="80%"
2306ALIGN="LEFT"
2307VALIGN="TOP"
2308>  the FTP context</TD
2309></TR
2310><TR
2311><TD
2312WIDTH="20%"
2313ALIGN="RIGHT"
2314VALIGN="TOP"
2315><TT
2316CLASS="PARAMETER"
2317><I
2318>dest</I
2319></TT
2320>&nbsp;:</TD
2321><TD
2322WIDTH="80%"
2323ALIGN="LEFT"
2324VALIGN="TOP"
2325>  a buffer</TD
2326></TR
2327><TR
2328><TD
2329WIDTH="20%"
2330ALIGN="RIGHT"
2331VALIGN="TOP"
2332><TT
2333CLASS="PARAMETER"
2334><I
2335>len</I
2336></TT
2337>&nbsp;:</TD
2338><TD
2339WIDTH="80%"
2340ALIGN="LEFT"
2341VALIGN="TOP"
2342>  the buffer length</TD
2343></TR
2344><TR
2345><TD
2346WIDTH="20%"
2347ALIGN="RIGHT"
2348VALIGN="TOP"
2349><I
2350CLASS="EMPHASIS"
2351>Returns</I
2352> :</TD
2353><TD
2354WIDTH="80%"
2355ALIGN="LEFT"
2356VALIGN="TOP"
2357>the number of byte read. 0 is an indication of an end of connection.
2358-1 indicates a parameter error.</TD
2359></TR
2360></TABLE
2361><P
2362></P
2363></DIV
2364></DIV
2365></DIV
2366><DIV
2367CLASS="NAVFOOTER"
2368><BR
2369CLEAR="all"><BR><TABLE
2370WIDTH="100%"
2371BORDER="0"
2372BGCOLOR="#000000"
2373CELLPADDING="1"
2374CELLSPACING="0"
2375><TR
2376><TD
2377WIDTH="25%"
2378BGCOLOR="#C00000"
2379ALIGN="left"
2380><A
2381HREF="libxml-nanohttp.html"
2382><FONT
2383COLOR="#FFFFFF"
2384SIZE="3"
2385><B
2386>&#60;&#60;&#60; Previous Page</B
2387></FONT
2388></A
2389></TD
2390><TD
2391WIDTH="25%"
2392BGCOLOR="#0000C0"
2393ALIGN="center"
2394><FONT
2395COLOR="#FFFFFF"
2396SIZE="3"
2397><B
2398><A
2399HREF="book1.html"
2400><FONT
2401COLOR="#FFFFFF"
2402SIZE="3"
2403><B
2404>Home</B
2405></FONT
2406></A
2407></B
2408></FONT
2409></TD
2410><TD
2411WIDTH="25%"
2412BGCOLOR="#00C000"
2413ALIGN="center"
2414><FONT
2415COLOR="#FFFFFF"
2416SIZE="3"
2417><B
2418><A
2419HREF="libxml-lib.html"
2420><FONT
2421COLOR="#FFFFFF"
2422SIZE="3"
2423><B
2424>Up</B
2425></FONT
2426></A
2427></B
2428></FONT
2429></TD
2430><TD
2431WIDTH="25%"
2432BGCOLOR="#C00000"
2433ALIGN="right"
2434><A
2435HREF="libxml-xmlio.html"
2436><FONT
2437COLOR="#FFFFFF"
2438SIZE="3"
2439><B
2440>Next Page &#62;&#62;&#62;</B
2441></FONT
2442></A
2443></TD
2444></TR
2445><TR
2446><TD
2447COLSPAN="2"
2448ALIGN="left"
2449><FONT
2450COLOR="#FFFFFF"
2451SIZE="3"
2452><B
2453>nanohttp</B
2454></FONT
2455></TD
2456><TD
2457COLSPAN="2"
2458ALIGN="right"
2459><FONT
2460COLOR="#FFFFFF"
2461SIZE="3"
2462><B
2463>xmlIO</B
2464></FONT
2465></TD
2466></TR
2467></TABLE
2468></DIV
2469></BODY
2470></HTML
2471>