cURL / Mailing Lists / curl-library / Single Mail

curl-library

PATH: CURLOPT_FTP_CREATE_MISSING_DIRECTORIES

From: Early Ehlinger <early_at_respower.com>
Date: Wed, 6 Aug 2003 16:46:13 -0500

To extract, use tar -xjf diff.tar.bz2

- Added option CURLOPT_FTP_CREATE_MISSING_DIRS
    This option will force the target file's path to be created if it
    does not already exist on the remote system.

  Files affected:
    - include/curl/curl.h
        Added option CURLOPT_FTP_CREATE_MISSING_DIRS
    - lib/ftp.c
        Added function ftp_mkd, which issues a MKD command
        Added function ftp_force_cwd, which attempts a CWD,
          and does a MKD and retries the CWD if the original CWD
          fails
        Modified ftp_perform() to call its change directory function
          through a pointer. The pointer points to ftp_cwd by default,
          and is modified to point to ftp_force_cwd IFF
          data->set.ftp_create_missing_dirs is not 0.
    - lib/url.c
        Modified Curl_setopt to recognize CURLOPT_FTP_CREATE_MISSING_DIRS
    - lib/urldata.h
        Added ftp_create_missing_dirs to struct UserDefined

- Minor Bugfix for CURLOPT_TIMECONDITION with FTP - if the file was not
  present to do the time comparison, the transfer would fail. This is bad
  for an upload where you're trying to upload only if the local copy is
  newer than the remote copy. By definition, the local copy is newer if
  the remote copy is non-extant.

  Files affected:
    - lib/ftp.c
        In ftp_perform(), the call to ftp_getfiletime() used to be followed
        by
   if (result)
            return result;
        And then by the code that actually did the time comparison.
        The code that did the comparison handled the case where the filetime
        was not available (as indicated by info.filetime < 0 or
set.timevalue
        < 0), so I replaced the if (result) return result with a
switch(result)
        that allows CURLE_FTP_COULDNT_RETR_FILE to fall through to the
        normal time comparison.

begin 666 diff.tar.bz2
M0EIH.3%!62936?\:4.8`#!)_A__W" #[_______>[O_O__\"`! ```" "& /
M+[QV]P'AW>)MKPYY&GIO+TX=&1UBTT!5:-2!44*AZX21$32GZD](]J,IZ,GI
M#32>1#)HT-J::,@R!H :-!Z@`T&)$TPHTQ,J: `!H9#0!IH&@ `````!J8T4
MT$TRI[2_at_S4 -#U -`!H`!H!H`&@-`!(2$$4S0$T34?E1^4F@\C3U)Y31M3U'
MZH]&H-/4``,FCU/4/1#C0T-#0#0&(&@,@ `TT #0#( ``&$B0F@$(TQ!/2:I
M^J>8B8:31,1F4::9!M3$&0#0>ID-.-!/Z NLRST7PY)/D@<<9(&F$DE99!@P
MU,'9V0YU%X$6!B_at_A(L8M_at_6DK;;ZH'<@8FTAIM ,0#0B-`F,3&A P:2]K^'Q?
MMB:E!^^_/\OO'O^Y_&],#Q,OW99MA[L(FTC1JVRV!?#<H:;1UR788],#;XH@
M;V[G[,CVV.UNB(S>^3B#ZX8MBTF&[KK_at_A7GV#K1KMU5E0$$2:\& :>4FTM+0
M'<17LD%6D!-I,(!;?M+2^%/['(ABO/OSN8L"HBHDZ:0QV:,B,7+((VR*Q>#N
MD"MO%\I3<D-"I*SE4=^98O*@ZA**(%&#0A'2,W;!>5F>8]@YF<AC3,S,QK37
MR53=[7M53;"7*(46.6IF8X=R"DD@/M%[$VNP)@VAH.) T" I_at_A!VHA--`V%A
M*,C:DA!IPB_at_R);T!4F-MIT0_at_P8X-0;!I*"$RRZ4$@Q7(1_at_VQML?6XCNN#3!L
M_,<*.-"T-O>Z;JNS'A4&AE?)*]B2X4.58Z+OG.,8H#,YEUT$+U4QV:D<XG\V
MWQE6,YCJR%$KI,CE[.OTWV(8>K$)@QZ!99B[12; *WHJ1L#NZ),!Q-A1O\ -
M8W\1,4(RVUX\`1M<Y8,-?)!@(+2K"S_at_L.&!E>E=A9$](];%#*=WR=;H;!GSG
M-%/9KT&C7J<!@B+Q-MNRN$>Z#-^BS"PN6?13J0;^NN93%LM[&KO0M8=<%(TB
M&2WBU_at_8P*WS5690*,+F2%'&+!M).3A&J+F^ZQ-^8E#+@^514*-!SX O%$3/9
M%X5[3B325[U(:9$+@)D2'ZT>$E9DBVQU)Y#M`L[[;B%=3!JQC!+(J99*`2'Y
ME"5=BO&ER6+Q!4T`*)I.%SGU*JH50A9\5L#6NB:4#%.\`SV^@QSH[Y,1"E)@
M')9FX> PNMQ ;6F AR_at_6>UK0RH"T@*@"1C0'&R,[D;P0V?)$%.?(+,(YKZZ-
M&O/7.RQ<?! <#VUT&2P_at_D(AE"UQT`G:*(QMSSAOAO;GX\Y"&%)(Y_at_DS19T<U
M[VALPJVJ+3E/:/0]$ON!HE$@9JXRY%T-9UII8!P5F:C=%S ,E;9(9=R(S>A*
MZ<7N$O54)D5(E(K#0"!62CB>[HD4Z27WAKI!BOG#<M]$Y9Q42[4&U<]^SI'.
M,[.Y?@R;E\TN&H;1C>QNXWML*JLGDC/+6^@>19#<<<T)I6:-W47"__;XR.YM
M[^IBEG15&\K3YH[;39XH;.WEGT[^^SR.UXJ*H<7';J&'9^6J8-H;3&C<PDSO
M!2@"G(B&"R3YTA ;$CUP_at_D":#6>#23#=U@,]/R=WZI?)['TWVB[M\-B^+9%]
M_at_S&&YD6,V8N[FX^Z;S]PHW80;9DFCIQFFJ8C4+B$J2_at_WD;0C^H@)98:@&8)@
M<<$?O:G[%J6WJO+3+9;'DLCX2ZTR!M^4^([^:62*:6QCA8L%*[[/;\HA>;MX
M]J/E)0(]EKF'@7,,/.P88HF3&,;&QP!1'4_at_Y!!][O31#ZW,$&A(30=7?2-WI
M_UY=0/F/\^;X]B#7:FQ.)'8YF#J(*!L7:X L0:*,K,_(=L%/$7'PRA%9\NP)
MH-^%KORDZ1/..Y1!2_at_Q7WR#&M*4I+S$YW9V\;;++1%:L96VV9)><`6I(5R!O
MAHM82"NL6=1A?6BXV630PO1ZXONJVC)!(Q;"LRRRL(5I$[:"+'22&?1=HTSL
M- 7XA!F8W695082LN5F.0KQ:+,\[K)A&`C%%7Q<T&+7$RS(U7VZ+NZ#1#ELJ
MLC <"#&YQ 4$T8*2@*4I:9&N3[Y*AF%4&[W+&WX`NU==.02U-*L3MCD%C-<E
M:'N0: F-2C3ZFG8NQ4[E.U0'(A!<)-:FEJ;+V*@RBU5*E0LFW!FS7V]0KS<_
MU&7",F0R0=::<@*D$B<X0% %M_at_MZY6\"QJ7XO/=&X+?T0?#%32.OSN>4V>#Q
MAY5<V(?J2_at_X"];#QC$>ZVT'R=1-S;;['Y/93;UX=X_at_GRG$B!6]SW/W@]9(8<
MGZ4?`B[UV&_?\JJ8*:&@-G*@S0<UI'OEOIUC'-#[\$(^!S)&E!+6I?,\7,,3
M0C4_at_J;9:!:T<&)*\Z?7%J J%]N.XTEO"D&J=\DN19WR$3? 7(O1OHN&UN#2?
M5JNN#I)(J\E-*+ I.AG#HJ.<"^^T@"6)&&+,34PD\',@R-A**SHBXIH0_at_O16
MJ"=SM-8/1%<58:0XDIHMV:)?M/:IY^-;<M=IMOQ:.*\*3XTJL1ZR_at_6ZRG *0
M^2F8/BQ6_at_T"VEV1_at_A!RW725HI;KMNZNQ>IFT]SU#9.M<B6?JZ43:<V\QA\>^
M$H2&J7B]`_QM&_\$38QQ0GH14YABR:NAHE0E$(3 5R(+I+8(8"/^E5ZOGI:7
M#<+YBK75-!X;_GS+[I6N/H=Z7F-\JO^XU'.ENS*H6COZ$%B7$73)_1,5X<@C
MH/'>.W@$7[L\@+4D*%DQ6,Q24_at_EF@MEK1.!,U?0$G1Q7*T$K?7U=P_at_6CM<^2
MH$()3_at_Q=BLT8^M6XL'SE_%W=,";UFQ6C1:D:[,BT7?04-RXR$#2:[S?$*04<
M;/2TBPSF0S7_at_06$M4VTBM@?A%AH;;;9D@+X9CGB52+GD%5*)0:8^!N$O('Y,
M)M-MA9R_at_M5F_4J- X4GO9I&PA_at_1MYM\Y_&R!,+- >XCA0M8GP=**TU+4T_F0
MB-GHY/?[F,;7N3)"J(I3,92G%0_at_B+C<CFKX3LW;HZC=.*"H,9"_J[.=WR"71
M,;"J/*1VMSL\LRF(HHZ-VR]AY4$5J1;4@;E@[9O90P-*ML6VTF3[4MO&K*LZ
MMGG:R5"B,ZQ<%F<$0J$D6&(B[P^,E40S5;^873C>IL'E-DI.##.=*2I!0_at_7;
M2^NK3U]Z_SZ5%.(V.-;O^^R$;$04[BSO2S07[6T&+9$,B""VU8F^2/03YN7Q
M;C96D&691FOCAW"A`BA<7 CV\9A<"G9<T(UI8<)Q<*) LGZ6:8:($TF_at_Y:(+
M.%G(_(B9FA.HET&$!8'(91V+!@^4P-?(%4_at_KXV*HI:S*:6]_:>([42,TQ+ZV
MA>6(P8;M:#)+(>M#!%)7%3"661B+=E<R%T<:&/B<'(B(**#.R^^,"@$FE[S2
M&TP8'6^Q-DYD@]U!S0IFA\/]ETB5PZ'[1!]"[;XUIWF_`WSTLVOE?3B'P4WX
M\[9S,07);>E8B9Z2$+=+4A*_E7_at_Z0DW4WQU"X=3TS;2C?=FN&K6O$$6T&%!M
MSVM,)A!5,PUF0$MUDFV#X^86"4L3ZWT()!8(YKD2]GN<M>YK(R#GO09H<#L+
M/%X9FAOB29#GU7_at_DVGQFFVT=`II:*ZH0'0K1IM-\2",O8SL:\YE!PZ#&X-(4
MMFM(DCA%9+@$8T*H>,ZXB!;1`0:-$-+@02,Q&1!<$),B"Z]6P*1F.ZJ@\C(H
MA0E@_6":- !M)K)KE!Q!J& S9JR7&7<14*K(%'-A0(M4$VBZ&@8T';.:P"+J
M][O!7IFA7_at_SRNMN QH5'4A#<X(@81$]W=2S8!Q-:DN&:-J]%2H<8ETG(;YFK
M`%<5,.8,TK"RB"-*P9BPD#%"8SFHE.V\B<Q"[6V_at_K8:LTK<97(TY:FI,>B *
M22_at_G)!<T$(6H. +*DPW\FA2,EK=AG=@)"O\>(O1)#?TJ(91;-.P\%%$BSCP^
M2087%>7C*$G^[+2OC87&(M9T;J0;-J#*E!,(#!L;&VR,(PAH@]IL:"8$IK':
M;>X_at_W\B392F B!&P9TL7(>]/!4\,*J=Z03$'N'A(3_V8\><OI?FXCC#DY1I0
M1T) ,1% 1Q\/U>HAGA!R"Y&I?5!<"D$6IF@[C[>V=6,UJU#JZ];Y8E.2(C]>
M4UL8M8(LBG>^*S%UFP<]A;6L(+<Y2_at_G+Q#19P]1D=<T7PA1BODA5M2R>M[<!
MM%_at_32ID>CQ"-!I?T#,!EA!70D[/6($1?2Y_;HVO&?-PTT;I5"7L9%-[(4 WB
MF+*US+@A'<XLZ"V-,[VH;#1YR[!%!R,2_at_7R20MD0-BP!FEI<:;!BTDH*`R%&
MS#PLO+$7#$7Z&D!Q8P'X'W\!IH_at_LAKG!:[W",R_at_4BH\(%F\JP@:#*YH!L2S:
M2+.$&'1J07#056%V,B<8<]+K01.WBRN\\D&Q!V#"?W"\!YD'JW"@^:"Q(62&
M)=6H,MH:/5:N',&>X%J0>1)P%4(GQ<O+R1-:?-I/N02F.T!\W(EIF-3H=&A
M0*;-[5=@"@HE._%3#1HS(D@$Z.!/+=DDZJ3^!82DKD#0'%B,EUZ&^V0O`,#[
@7[3";*2H6<3]!9#L/_$>.R<J-D ?\7<D4X4)#_&E#F `
`
end

-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
Received on 2003-08-06