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