From owner-FreeBSD-users-jp@jp.FreeBSD.org Sat Feb 22 10:33:52 2003
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id h1M1XqL45740;
	Sat, 22 Feb 2003 10:33:52 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from hfep02.dion.ne.jp (hfep02.dion.ne.jp [203.181.105.68])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id h1M1Xpi45711
	for <FreeBSD-users-jp@jp.freebsd.org>; Sat, 22 Feb 2003 10:33:51 +0900 (JST)
	(envelope-from hossy421@yahoo.co.jp)
Received: from hossy ([218.222.181.46]) by hfep02.dion.ne.jp with ESMTP
          id <20030222013347685.VNFP@hfep02.dion.ne.jp>
          for <FreeBSD-users-jp@jp.freebsd.org>;
          Sat, 22 Feb 2003 10:33:47 +0900
Message-ID: <001001c2da12$755c3980$2eb5deda@hossy>
From: "=?iso-2022-jp?B?GyRCJVslQyU3ITwbKEI=?=" <hossy421@yahoo.co.jp>
To: <FreeBSD-users-jp@jp.FreeBSD.org>
MIME-Version: 1.0
Content-Type: text/plain;
	charset="iso-2022-jp"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.00.2919.6700
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700
Reply-To: FreeBSD-users-jp@jp.FreeBSD.org
Precedence: list
Date: Sat, 22 Feb 2003 10:33:45 +0900
X-Sequence: FreeBSD-users-jp 73524
Subject: [FreeBSD-users-jp 73524] fetch =?ISO-2022-JP?B?GyRCJTMbKEI=?=
 =?ISO-2022-JP?B?GyRCJV4lcyVJJE4bKEI=?= -r
 =?ISO-2022-JP?B?GyRCJSolVyU3JWclcyROSVQ2cTlnISlKczlwIXUbKEI=?=
 =?ISO-2022-JP?B?GyRCJVElQyVBGyhC?= 
Errors-To: owner-FreeBSD-users-jp@jp.FreeBSD.org
Sender: owner-FreeBSD-users-jp@jp.FreeBSD.org
X-Originator: hossy421@yahoo.co.jp
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+030107

$B$I$&$b!#%[%C%7!<$3$H@17nM%M$$G$9!#D9J8<:Ni$7$^$9!#(B

fetch $B%3%^%s%I$O(B -r $B%*%W%7%g%s$r$D$1$k$H!"(B
$BCfCG$5$l$?B3$-$+$i%@%&%s%m!<%I$G$-$k$h$&$G$9!#(B
$B$=$l$rMxMQ$7$F!"(BJDK13 $B$N%=!<%9$r>/$7$:$D(B
$B%@%&%s%m!<%I$7$F$$$k$H!"IT6q9g$i$7$-$b$N$,8+$D$+$C$?$N$G!"(B
$B%Q%C%A$H$$$C$7$g$KJs9p$5$;$F$$$?$@$-$^$9!#4{=P$G$"$l$P$9$$$^$;$s!#(B

$BIT6q9g>\:Y!'(B
$B!!%@%&%s%m!<%I:F3+;~$K!"2<5-$N>r7o$,$=$m$&$H!"(B
***: local file (*** bytes) is longer than remote file (*** bytes)
$B$H$$$C$?46$8$N%(%i!<%a%C%;!<%8$r=P$7$^$9!#(B

$B:F8=>r7o!'(B
$B!&4{$KH>J,0J>e%@%&%s%m!<%I:Q$_$G$"$k$3$H!#(B
$B!!Nc$($P!"(B30MB $B$N%U%!%$%k$r%@%&%s%m!<%I$7$h$&$H$7$F!"(B
$B!!4{$K(B 15MB $B0J>e%@%&%s%m!<%I:Q$_$G!"(Bresume $B$7$h$&$H$9$k!#(B
$B!&(BHTTP $B$r;H$&$3$H!#(B(FTP$B$G$O!"2<5-$NLdBj$,5/$3$i$J$$!#(B)

$BIT6q9g$N860x!'(B
$B!&(B src/usr.bin/fetch/fetch.c $B$K$F!"%5!<%P$,JV$7$?%U%!%$%k%5%$%:$H(B
$B!!%m!<%+%k$K$"$k%U%!%$%k$N%5%$%:$rHf3S$9$k$,!"(Bresume $B$N>l9g!"(B
$B!!%5!<%P$O!V%U%!%$%k$NAm%5%$%:!W$G$O$J$/!"!VE>Aw$9$k%5%$%:!W$r(B
$B!!JV$9$,!"$=$l$H%m!<%+%k$N%5%$%:$H$rHf$Y$k$?$a!#(B

$BNc$($P!"(B30MB $B$N%U%!%$%k$r(B 18MB $B%@%&%s%m!<%I:Q$_$G!"(Bresume $B$9$k$H!"(B
$B%5!<%P$+$iJV$5$l$k?tCM$O!"(B12MB $B$G$"$k!#$=$7$F!"(Bfetch $B%3%^%s%I$O!"(B
$B$3$l$rHf3S$7!"%m!<%+%k$NJ}$,%5%$%:$,Bg$-$$$H$7!"%(%i!<$r=P$7=*N;!#(B

$BIT6q9g$N=$@5!'(B
$B!!>e5-$NM}M3$+$i!"%5!<%P$K!"!V%U%!%$%k$NAm%5%$%:!W$rLd$$9g$o$;!"(B
$B$=$l$HHf3S$9$k$h$&$K$9$l$P$$$$!#(B

$B$H$$$&$o$1$G!"%Q%C%A$r:n$C$F$_$^$7$?!#(BFTP$B$N>l9g$O(B
$B!V%5!<%P$,JV$9%5%$%:!aAm%5%$%:!W$J$N$GFC$KLdBj$OL5$$$H;W$$$^$9!#(B
$B$H$j$"$($:$3$A$i$G$O(B HTTP / FTP $B6&$KLdBj$J$/F0:n$7$F$*$j$^$9!#(B

$B$D$$$G$K!"(BHTTP $B$G$N(B resume $B;~!"I=<($5$l$k%5%$%:!?%Q!<%;%s%H$b!"(B
$B%5!<%P$,JV$7$??tCM$J$N$G!"(BFTP$B$K$"$o$;!"Am%5%$%:$r85$KI=<($9$k$h$&$K(B
$B=$@5$7$F$_$^$7$?!#(B

# $B%Q%C%A:n$k$N=i$a$F$J$N$G$A$g$C$HIT0B!D!D4V0c$C$F$?$i$4;XE&$/$@$5$$!#(B

================ $B%Q%C%A$3$3$+$i(B ===================
*** fetch.c.orig Fri Feb 21 19:57:12 2003
--- fetch.c Sat Feb 22 10:18:24 2003
***************
*** 264,269 ****
--- 264,270 ----
   int r;
   u_int timeout;
   u_char *ptr;
+  off_t remote_size;

   f = of = NULL;
   tmppath = NULL;
***************
*** 349,354 ****
--- 350,360 ----
    * file was a truncated copy of the remote file; we can drop
    * the connection later if we change our minds.
    */
+
+  if ( fetchStat(url, &us, flags) == -1 )
+   goto failure;
+  remote_size = us.size;
+
   sb.st_size = -1;
   if (!o_stdout && stat(path, &sb) == -1 && errno != ENOENT) {
    warnx("%s: stat()", path);
***************
*** 413,422 ****
      goto failure_keep;
     }
    } else {
!    if (us.size == sb.st_size)
      /* nothing to do */
      goto success;
!    if (sb.st_size > us.size) {
      /* local file too long! */
      warnx("%s: local file (%lld bytes) is longer "
          "than remote file (%lld bytes)", path,
--- 419,428 ----
      goto failure_keep;
     }
    } else {
!    if (remote_size == sb.st_size)
      /* nothing to do */
      goto success;
!    if (sb.st_size > remote_size) {
      /* local file too long! */
      warnx("%s: local file (%lld bytes) is longer "
          "than remote file (%lld bytes)", path,
***************
*** 496,502 ****
   count = url->offset;

   /* start the counter */
!  stat_start(&xs, path, us.size, count);

   sigalrm = siginfo = sigint = 0;

--- 502,508 ----
   count = url->offset;

   /* start the counter */
!  stat_start(&xs, path, remote_size, count);

   sigalrm = siginfo = sigint = 0;

================ $B%Q%C%A$3$3$^$G(B ===================

*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
 $BAw?.<T(B : $B@17n(B $BM%M$(B ($B%[%C%7!<(B)
   Mail : hossy421@yahoo.co.jp
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*



