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><<< 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 >>></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 -- </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> 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> :</TD 359><TD 360WIDTH="80%" 361ALIGN="LEFT" 362VALIGN="TOP" 363> </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> :</TD 376><TD 377WIDTH="80%" 378ALIGN="LEFT" 379VALIGN="TOP" 380> </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> :</TD 393><TD 394WIDTH="80%" 395ALIGN="LEFT" 396VALIGN="TOP" 397> </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> :</TD 410><TD 411WIDTH="80%" 412ALIGN="LEFT" 413VALIGN="TOP" 414> </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> :</TD 427><TD 428WIDTH="80%" 429ALIGN="LEFT" 430VALIGN="TOP" 431> </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> :</TD 444><TD 445WIDTH="80%" 446ALIGN="LEFT" 447VALIGN="TOP" 448> </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> :</TD 461><TD 462WIDTH="80%" 463ALIGN="LEFT" 464VALIGN="TOP" 465> </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> :</TD 478><TD 479WIDTH="80%" 480ALIGN="LEFT" 481VALIGN="TOP" 482> </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> :</TD 495><TD 496WIDTH="80%" 497ALIGN="LEFT" 498VALIGN="TOP" 499> </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> :</TD 512><TD 513WIDTH="80%" 514ALIGN="LEFT" 515VALIGN="TOP" 516> </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> :</TD 529><TD 530WIDTH="80%" 531ALIGN="LEFT" 532VALIGN="TOP" 533> </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> :</TD 546><TD 547WIDTH="80%" 548ALIGN="LEFT" 549VALIGN="TOP" 550> </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> :</TD 606><TD 607WIDTH="80%" 608ALIGN="LEFT" 609VALIGN="TOP" 610> </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> :</TD 623><TD 624WIDTH="80%" 625ALIGN="LEFT" 626VALIGN="TOP" 627> </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> :</TD 640><TD 641WIDTH="80%" 642ALIGN="LEFT" 643VALIGN="TOP" 644> </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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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> :</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 <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> :</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> :</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> :</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> :</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> :</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> :</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> :</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><<< 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 >>></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>