mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
*** empty log message ***
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
6bb525282c
commit
0861165bdc
11 changed files with 711 additions and 707 deletions
14
ChangeLog
14
ChangeLog
|
@ -1,3 +1,17 @@
|
|||
Tue Mar 3 11:21:28 1998 Yukihiro Matsumoto <matz@netlab.co.jp>
|
||||
|
||||
* eval.c (thread_stop): stopping only thread raises ThreadError
|
||||
exception.
|
||||
|
||||
Tue Mar 3 08:04:56 1998 Tadayoshi Funaba <tadf@kt.rim.or.jp>
|
||||
|
||||
* struct.c (struct_alloc): imcomplete struct initialization made
|
||||
GC to access unallocated addresses.
|
||||
|
||||
Mon Mar 2 16:28:27 1998 Yukihiro Matsumoto <matz@netlab.co.jp>
|
||||
|
||||
* eval.c (thread_stop_method): remove Thread#stop.
|
||||
|
||||
Fri Feb 27 18:16:26 1998 Yukihiro Matsumoto <matz@netlab.co.jp>
|
||||
|
||||
* version 1.1b9 released.
|
||||
|
|
2
MANIFEST
2
MANIFEST
|
@ -104,6 +104,7 @@ lib/mailread.rb
|
|||
lib/mathn.rb
|
||||
lib/matrix.rb
|
||||
lib/mkmf.rb
|
||||
lib/monitor.rb
|
||||
lib/mutex_m.rb
|
||||
lib/observer.rb
|
||||
lib/ostruct.rb
|
||||
|
@ -133,6 +134,7 @@ missing/dir.h
|
|||
missing/dup2.c
|
||||
missing/file.h
|
||||
missing/flock.c
|
||||
missing/memcmp.c
|
||||
missing/memmove.c
|
||||
missing/mkdir.c
|
||||
missing/nt.c
|
||||
|
|
186
configure
vendored
186
configure
vendored
|
@ -2516,16 +2516,52 @@ EOF
|
|||
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6
|
||||
echo "configure:2521: checking for 8-bit clean memcmp" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
if test "$cross_compiling" = yes; then
|
||||
ac_cv_func_memcmp_clean=no
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2529 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
main()
|
||||
{
|
||||
char c0 = 0x40, c1 = 0x80, c2 = 0x81;
|
||||
exit(memcmp(&c0, &c2, 1) < 0 && memcmp(&c1, &c2, 1) < 0 ? 0 : 1);
|
||||
}
|
||||
|
||||
EOF
|
||||
if { (eval echo configure:2539: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
ac_cv_func_memcmp_clean=yes
|
||||
else
|
||||
echo "configure: failed program was:" >&5
|
||||
cat conftest.$ac_ext >&5
|
||||
rm -fr conftest*
|
||||
ac_cv_func_memcmp_clean=no
|
||||
fi
|
||||
rm -fr conftest*
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
echo "$ac_t""$ac_cv_func_memcmp_clean" 1>&6
|
||||
test $ac_cv_func_memcmp_clean = no && LIBOBJS="$LIBOBJS memcmp.o"
|
||||
|
||||
for ac_func in dup2 setenv memmove mkdir strcasecmp strerror strftime\
|
||||
strstr strtoul strdup crypt flock
|
||||
do
|
||||
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
|
||||
echo "configure:2524: checking for $ac_func" >&5
|
||||
echo "configure:2560: checking for $ac_func" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2529 "configure"
|
||||
#line 2565 "configure"
|
||||
#include "confdefs.h"
|
||||
/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $ac_func(); below. */
|
||||
|
@ -2548,7 +2584,7 @@ $ac_func();
|
|||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2552: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
if { (eval echo configure:2588: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_func_$ac_func=yes"
|
||||
else
|
||||
|
@ -2581,12 +2617,12 @@ for ac_func in fmod killpg random wait4 waitpid syscall getcwd\
|
|||
dlopen sigprocmask sigaction _setjmp
|
||||
do
|
||||
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
|
||||
echo "configure:2585: checking for $ac_func" >&5
|
||||
echo "configure:2621: checking for $ac_func" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2590 "configure"
|
||||
#line 2626 "configure"
|
||||
#include "confdefs.h"
|
||||
/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $ac_func(); below. */
|
||||
|
@ -2609,7 +2645,7 @@ $ac_func();
|
|||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2613: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
if { (eval echo configure:2649: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_func_$ac_func=yes"
|
||||
else
|
||||
|
@ -2635,12 +2671,12 @@ done
|
|||
|
||||
if test "$ac_cv_func_strftime" = no; then
|
||||
echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6
|
||||
echo "configure:2639: checking whether struct tm is in sys/time.h or time.h" >&5
|
||||
echo "configure:2675: checking whether struct tm is in sys/time.h or time.h" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2644 "configure"
|
||||
#line 2680 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <sys/types.h>
|
||||
#include <time.h>
|
||||
|
@ -2648,7 +2684,7 @@ int main() {
|
|||
struct tm *tp; tp->tm_sec;
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2652: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:2688: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
ac_cv_struct_tm=time.h
|
||||
else
|
||||
|
@ -2669,12 +2705,12 @@ EOF
|
|||
fi
|
||||
|
||||
echo $ac_n "checking for tm_zone in struct tm""... $ac_c" 1>&6
|
||||
echo "configure:2673: checking for tm_zone in struct tm" >&5
|
||||
echo "configure:2709: checking for tm_zone in struct tm" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_struct_tm_zone'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2678 "configure"
|
||||
#line 2714 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <sys/types.h>
|
||||
#include <$ac_cv_struct_tm>
|
||||
|
@ -2682,7 +2718,7 @@ int main() {
|
|||
struct tm tm; tm.tm_zone;
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2686: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:2722: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
ac_cv_struct_tm_zone=yes
|
||||
else
|
||||
|
@ -2702,12 +2738,12 @@ EOF
|
|||
|
||||
else
|
||||
echo $ac_n "checking for tzname""... $ac_c" 1>&6
|
||||
echo "configure:2706: checking for tzname" >&5
|
||||
echo "configure:2742: checking for tzname" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_var_tzname'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2711 "configure"
|
||||
#line 2747 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <time.h>
|
||||
#ifndef tzname /* For SGI. */
|
||||
|
@ -2717,7 +2753,7 @@ int main() {
|
|||
atoi(*tzname);
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2721: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
if { (eval echo configure:2757: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
rm -rf conftest*
|
||||
ac_cv_var_tzname=yes
|
||||
else
|
||||
|
@ -2739,14 +2775,14 @@ EOF
|
|||
fi
|
||||
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2743 "configure"
|
||||
#line 2779 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
int main() {
|
||||
extern int daylight; int i = daylight;
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2750: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
if { (eval echo configure:2786: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
rm -rf conftest*
|
||||
cat >> confdefs.h <<\EOF
|
||||
#define HAVE_DAYLIGHT 1
|
||||
|
@ -2766,7 +2802,7 @@ EOF
|
|||
|
||||
else
|
||||
echo $ac_n "checking for BSD signal semantics""... $ac_c" 1>&6
|
||||
echo "configure:2770: checking for BSD signal semantics" >&5
|
||||
echo "configure:2806: checking for BSD signal semantics" >&5
|
||||
if eval "test \"`echo '$''{'rb_cv_bsd_signal'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
|
@ -2774,7 +2810,7 @@ else
|
|||
{ echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2778 "configure"
|
||||
#line 2814 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
@ -2796,7 +2832,7 @@ main()
|
|||
}
|
||||
|
||||
EOF
|
||||
if { (eval echo configure:2800: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
if { (eval echo configure:2836: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
rb_cv_bsd_signal=yes
|
||||
else
|
||||
|
@ -2830,19 +2866,19 @@ EOF
|
|||
|
||||
else
|
||||
echo $ac_n "checking whether getpgrp() has arg""... $ac_c" 1>&6
|
||||
echo "configure:2834: checking whether getpgrp() has arg" >&5
|
||||
echo "configure:2870: checking whether getpgrp() has arg" >&5
|
||||
if eval "test \"`echo '$''{'rb_cv_bsdgetpgrp'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2839 "configure"
|
||||
#line 2875 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <unistd.h>
|
||||
int main() {
|
||||
getpgrp(0);
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2846: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:2882: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
rb_cv_bsdgetpgrp=yes
|
||||
else
|
||||
|
@ -2863,19 +2899,19 @@ EOF
|
|||
fi
|
||||
|
||||
echo $ac_n "checking whether setpgrp() has args""... $ac_c" 1>&6
|
||||
echo "configure:2867: checking whether setpgrp() has args" >&5
|
||||
echo "configure:2903: checking whether setpgrp() has args" >&5
|
||||
if eval "test \"`echo '$''{'rb_cv_bsdsetpgrp'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2872 "configure"
|
||||
#line 2908 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <unistd.h>
|
||||
int main() {
|
||||
setpgrp(1, 1);
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2879: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:2915: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
rb_cv_bsdsetpgrp=yes
|
||||
else
|
||||
|
@ -2897,14 +2933,14 @@ EOF
|
|||
fi
|
||||
|
||||
echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6
|
||||
echo "configure:2901: checking whether byte ordering is bigendian" >&5
|
||||
echo "configure:2937: checking whether byte ordering is bigendian" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
ac_cv_c_bigendian=unknown
|
||||
# See if sys/param.h defines the BYTE_ORDER macro.
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2908 "configure"
|
||||
#line 2944 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <sys/types.h>
|
||||
#include <sys/param.h>
|
||||
|
@ -2915,11 +2951,11 @@ int main() {
|
|||
#endif
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2919: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:2955: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
# It does; now see whether it defined to BIG_ENDIAN or not.
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2923 "configure"
|
||||
#line 2959 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <sys/types.h>
|
||||
#include <sys/param.h>
|
||||
|
@ -2930,7 +2966,7 @@ int main() {
|
|||
#endif
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:2934: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:2970: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
ac_cv_c_bigendian=yes
|
||||
else
|
||||
|
@ -2950,7 +2986,7 @@ if test "$cross_compiling" = yes; then
|
|||
{ echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2954 "configure"
|
||||
#line 2990 "configure"
|
||||
#include "confdefs.h"
|
||||
main () {
|
||||
/* Are we little or big endian? From Harbison&Steele. */
|
||||
|
@ -2963,7 +2999,7 @@ main () {
|
|||
exit (u.c[sizeof (long) - 1] == 1);
|
||||
}
|
||||
EOF
|
||||
if { (eval echo configure:2967: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
if { (eval echo configure:3003: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
ac_cv_c_bigendian=no
|
||||
else
|
||||
|
@ -2987,14 +3023,14 @@ EOF
|
|||
fi
|
||||
|
||||
echo $ac_n "checking whether char is unsigned""... $ac_c" 1>&6
|
||||
echo "configure:2991: checking whether char is unsigned" >&5
|
||||
echo "configure:3027: checking whether char is unsigned" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_c_char_unsigned'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
if test "$GCC" = yes; then
|
||||
# GCC predefines this symbol on systems where it applies.
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 2998 "configure"
|
||||
#line 3034 "configure"
|
||||
#include "confdefs.h"
|
||||
#ifdef __CHAR_UNSIGNED__
|
||||
yes
|
||||
|
@ -3016,7 +3052,7 @@ if test "$cross_compiling" = yes; then
|
|||
{ echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3020 "configure"
|
||||
#line 3056 "configure"
|
||||
#include "confdefs.h"
|
||||
/* volatile prevents gcc2 from optimizing the test away on sparcs. */
|
||||
#if !defined(__STDC__) || __STDC__ != 1
|
||||
|
@ -3026,7 +3062,7 @@ main() {
|
|||
volatile char c = 255; exit(c < 0);
|
||||
}
|
||||
EOF
|
||||
if { (eval echo configure:3030: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
if { (eval echo configure:3066: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
ac_cv_c_char_unsigned=yes
|
||||
else
|
||||
|
@ -3051,19 +3087,19 @@ fi
|
|||
|
||||
|
||||
echo $ac_n "checking count field in FILE structures""... $ac_c" 1>&6
|
||||
echo "configure:3055: checking count field in FILE structures" >&5
|
||||
echo "configure:3091: checking count field in FILE structures" >&5
|
||||
if eval "test \"`echo '$''{'rb_cv_fcnt'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3060 "configure"
|
||||
#line 3096 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdio.h>
|
||||
int main() {
|
||||
FILE *f = stdin; f->_cnt = 0;
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3067: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:3103: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
rb_cv_fcnt="_cnt"
|
||||
else
|
||||
|
@ -3073,14 +3109,14 @@ fi
|
|||
rm -f conftest*
|
||||
if test "$rb_cv_fcnt" = ""; then
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3077 "configure"
|
||||
#line 3113 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdio.h>
|
||||
int main() {
|
||||
FILE *f = stdin; f->__cnt = 0;
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3084: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:3120: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
rb_cv_fcnt="__cnt"
|
||||
else
|
||||
|
@ -3091,14 +3127,14 @@ rm -f conftest*
|
|||
fi
|
||||
if test "$rb_cv_fcnt" = ""; then
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3095 "configure"
|
||||
#line 3131 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdio.h>
|
||||
int main() {
|
||||
FILE *f = stdin; f->_r = 0;
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3102: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:3138: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
rb_cv_fcnt="_r"
|
||||
else
|
||||
|
@ -3109,14 +3145,14 @@ rm -f conftest*
|
|||
fi
|
||||
if test "$rb_cv_fcnt" = ""; then
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3113 "configure"
|
||||
#line 3149 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdio.h>
|
||||
int main() {
|
||||
FILE *f = stdin; f->readCount = 0;
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3120: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:3156: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
rb_cv_fcnt="readCount"
|
||||
else
|
||||
|
@ -3141,9 +3177,9 @@ fi
|
|||
|
||||
if test "$ac_cv_func_getpwent" = yes; then
|
||||
echo $ac_n "checking struct passwd""... $ac_c" 1>&6
|
||||
echo "configure:3145: checking struct passwd" >&5
|
||||
echo "configure:3181: checking struct passwd" >&5
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3147 "configure"
|
||||
#line 3183 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <pwd.h>
|
||||
EOF
|
||||
|
@ -3158,7 +3194,7 @@ fi
|
|||
rm -f conftest*
|
||||
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3162 "configure"
|
||||
#line 3198 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <pwd.h>
|
||||
EOF
|
||||
|
@ -3173,7 +3209,7 @@ fi
|
|||
rm -f conftest*
|
||||
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3177 "configure"
|
||||
#line 3213 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <pwd.h>
|
||||
EOF
|
||||
|
@ -3188,7 +3224,7 @@ fi
|
|||
rm -f conftest*
|
||||
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3192 "configure"
|
||||
#line 3228 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <pwd.h>
|
||||
EOF
|
||||
|
@ -3203,7 +3239,7 @@ fi
|
|||
rm -f conftest*
|
||||
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3207 "configure"
|
||||
#line 3243 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <pwd.h>
|
||||
EOF
|
||||
|
@ -3218,7 +3254,7 @@ fi
|
|||
rm -f conftest*
|
||||
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3222 "configure"
|
||||
#line 3258 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <pwd.h>
|
||||
EOF
|
||||
|
@ -3251,7 +3287,7 @@ fi
|
|||
case "$host_os" in
|
||||
linux*)
|
||||
echo $ac_n "checking whether ELF binaries are produced""... $ac_c" 1>&6
|
||||
echo "configure:3255: checking whether ELF binaries are produced" >&5
|
||||
echo "configure:3291: checking whether ELF binaries are produced" >&5
|
||||
if eval "test \"`echo '$''{'rb_cv_linux_elf'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
|
@ -3259,7 +3295,7 @@ else
|
|||
:
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3263 "configure"
|
||||
#line 3299 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
/* Test for whether ELF binaries are produced */
|
||||
|
@ -3279,7 +3315,7 @@ main() {
|
|||
}
|
||||
|
||||
EOF
|
||||
if { (eval echo configure:3283: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
if { (eval echo configure:3319: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
rb_cv_linux_elf=yes
|
||||
else
|
||||
|
@ -3309,7 +3345,7 @@ STATIC=
|
|||
if test "$with_dln_a_out" != yes; then
|
||||
rb_cv_dlopen=unknown
|
||||
echo $ac_n "checking whether OS depend dynamic link works""... $ac_c" 1>&6
|
||||
echo "configure:3313: checking whether OS depend dynamic link works" >&5
|
||||
echo "configure:3349: checking whether OS depend dynamic link works" >&5
|
||||
if test "$GCC" = yes; then
|
||||
case "$host_os" in
|
||||
nextstep*) ;;
|
||||
|
@ -3367,13 +3403,13 @@ dln_a_out_works=no
|
|||
if test "$ac_cv_header_a_out_h" = yes; then
|
||||
if test "$with_dln_a_out" = yes || test "$rb_cv_dlopen" = unknown; then
|
||||
echo $ac_n "checking whether matz's dln works""... $ac_c" 1>&6
|
||||
echo "configure:3371: checking whether matz's dln works" >&5
|
||||
echo "configure:3407: checking whether matz's dln works" >&5
|
||||
cat confdefs.h > config.h
|
||||
if eval "test \"`echo '$''{'rb_cv_dln_a_out'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3377 "configure"
|
||||
#line 3413 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#define USE_DLN_A_OUT
|
||||
|
@ -3383,7 +3419,7 @@ int main() {
|
|||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3387: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:3423: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
rb_cv_dln_a_out=yes
|
||||
else
|
||||
|
@ -3466,7 +3502,7 @@ fi
|
|||
case "$host_os" in
|
||||
human*)
|
||||
echo $ac_n "checking for _harderr in -lsignal""... $ac_c" 1>&6
|
||||
echo "configure:3470: checking for _harderr in -lsignal" >&5
|
||||
echo "configure:3506: checking for _harderr in -lsignal" >&5
|
||||
ac_lib_var=`echo signal'_'_harderr | sed 'y%./+-%__p_%'`
|
||||
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
|
@ -3474,7 +3510,7 @@ else
|
|||
ac_save_LIBS="$LIBS"
|
||||
LIBS="-lsignal $LIBS"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3478 "configure"
|
||||
#line 3514 "configure"
|
||||
#include "confdefs.h"
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
/* We use char because int might match the return type of a gcc2
|
||||
|
@ -3485,7 +3521,7 @@ int main() {
|
|||
_harderr()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3489: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
if { (eval echo configure:3525: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_lib_$ac_lib_var=yes"
|
||||
else
|
||||
|
@ -3513,7 +3549,7 @@ else
|
|||
fi
|
||||
|
||||
echo $ac_n "checking for hmemset in -lhmem""... $ac_c" 1>&6
|
||||
echo "configure:3517: checking for hmemset in -lhmem" >&5
|
||||
echo "configure:3553: checking for hmemset in -lhmem" >&5
|
||||
ac_lib_var=`echo hmem'_'hmemset | sed 'y%./+-%__p_%'`
|
||||
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
|
@ -3521,7 +3557,7 @@ else
|
|||
ac_save_LIBS="$LIBS"
|
||||
LIBS="-lhmem $LIBS"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3525 "configure"
|
||||
#line 3561 "configure"
|
||||
#include "confdefs.h"
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
/* We use char because int might match the return type of a gcc2
|
||||
|
@ -3532,7 +3568,7 @@ int main() {
|
|||
hmemset()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3536: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
if { (eval echo configure:3572: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_lib_$ac_lib_var=yes"
|
||||
else
|
||||
|
@ -3562,12 +3598,12 @@ fi
|
|||
for ac_func in select
|
||||
do
|
||||
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
|
||||
echo "configure:3566: checking for $ac_func" >&5
|
||||
echo "configure:3602: checking for $ac_func" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3571 "configure"
|
||||
#line 3607 "configure"
|
||||
#include "confdefs.h"
|
||||
/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $ac_func(); below. */
|
||||
|
@ -3590,7 +3626,7 @@ $ac_func();
|
|||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:3594: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
if { (eval echo configure:3630: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_func_$ac_func=yes"
|
||||
else
|
||||
|
@ -3615,7 +3651,7 @@ fi
|
|||
done
|
||||
|
||||
echo $ac_n "checking whether PD libc _dtos18 fail to convert big number""... $ac_c" 1>&6
|
||||
echo "configure:3619: checking whether PD libc _dtos18 fail to convert big number" >&5
|
||||
echo "configure:3655: checking whether PD libc _dtos18 fail to convert big number" >&5
|
||||
if eval "test \"`echo '$''{'rb_cv_missing__dtos18'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
|
@ -3623,7 +3659,7 @@ else
|
|||
{ echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3627 "configure"
|
||||
#line 3663 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
@ -3635,7 +3671,7 @@ main ()
|
|||
}
|
||||
|
||||
EOF
|
||||
if { (eval echo configure:3639: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
if { (eval echo configure:3675: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
rb_cv_missing__dtos18=yes
|
||||
else
|
||||
|
@ -3657,7 +3693,7 @@ EOF
|
|||
|
||||
fi
|
||||
echo $ac_n "checking whether PD libc fconvert fail to round""... $ac_c" 1>&6
|
||||
echo "configure:3661: checking whether PD libc fconvert fail to round" >&5
|
||||
echo "configure:3697: checking whether PD libc fconvert fail to round" >&5
|
||||
if eval "test \"`echo '$''{'rb_cv_missing_fconvert'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
|
@ -3665,7 +3701,7 @@ else
|
|||
{ echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 3669 "configure"
|
||||
#line 3705 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
@ -3678,7 +3714,7 @@ main ()
|
|||
}
|
||||
|
||||
EOF
|
||||
if { (eval echo configure:3682: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
if { (eval echo configure:3718: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
rb_cv_missing_fconvert=yes
|
||||
else
|
||||
|
|
|
@ -108,6 +108,7 @@ AC_TYPE_GETGROUPS
|
|||
AC_TYPE_SIGNAL
|
||||
AC_FUNC_ALLOCA
|
||||
AC_FUNC_VFORK
|
||||
AC_FUNC_MEMCMP
|
||||
AC_REPLACE_FUNCS(dup2 setenv memmove mkdir strcasecmp strerror strftime\
|
||||
strstr strtoul strdup crypt flock)
|
||||
AC_CHECK_FUNCS(fmod killpg random wait4 waitpid syscall getcwd\
|
||||
|
|
22
eval.c
22
eval.c
|
@ -5462,23 +5462,16 @@ thread_pass()
|
|||
return Qnil;
|
||||
}
|
||||
|
||||
static VALUE
|
||||
thread_stop_method(thread)
|
||||
VALUE thread;
|
||||
{
|
||||
thread_t th = thread_check(thread);
|
||||
|
||||
thread_critical = 0;
|
||||
th->status = THREAD_STOPPED;
|
||||
thread_schedule();
|
||||
|
||||
return thread;
|
||||
}
|
||||
|
||||
static VALUE
|
||||
thread_stop()
|
||||
{
|
||||
thread_stop_method(curr_thread->thread);
|
||||
thread_critical = 0;
|
||||
curr_thread->status = THREAD_STOPPED;
|
||||
if (curr_thread == curr_thread->next) {
|
||||
Raise(eThreadError, "stopping only thread");
|
||||
}
|
||||
thread_schedule();
|
||||
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
|
@ -5887,7 +5880,6 @@ Init_Thread()
|
|||
|
||||
rb_define_method(cThread, "run", thread_run, 0);
|
||||
rb_define_method(cThread, "wakeup", thread_wakeup, 0);
|
||||
rb_define_method(cThread, "stop", thread_stop_method, 0);
|
||||
rb_define_method(cThread, "exit", thread_kill, 0);
|
||||
rb_define_method(cThread, "value", thread_value, 0);
|
||||
rb_define_method(cThread, "status", thread_status, 0);
|
||||
|
|
21
lib/date.rb
21
lib/date.rb
|
@ -1,8 +1,8 @@
|
|||
#
|
||||
# Date.rb -
|
||||
# $Release Version: $
|
||||
# $Revision: 1.1.1.1.4.3 $
|
||||
# $Date: 1998/02/03 10:02:57 $
|
||||
# $Revision: 1.1.1.1.4.4 $
|
||||
# $Date: 1998/02/18 01:56:47 $
|
||||
# by Yasuo OHBA(SHL Japan Inc. Technology Dept.)
|
||||
#
|
||||
# --
|
||||
|
@ -109,6 +109,9 @@ class Date
|
|||
else
|
||||
raise TypeError, "Illegal type. (Integer or Date)"
|
||||
end
|
||||
if d <= 0
|
||||
raise ArgumentError, "argument out of range. (self > other)"
|
||||
end
|
||||
return Date.at(d)
|
||||
end
|
||||
|
||||
|
@ -146,11 +149,7 @@ class Date
|
|||
end
|
||||
|
||||
def leapyear?
|
||||
if Date.leapyear(@year) == 1
|
||||
return FALSE
|
||||
else
|
||||
return TRUE
|
||||
end
|
||||
Date.leapyear(@year) != 1
|
||||
end
|
||||
|
||||
def _check_date
|
||||
|
@ -221,10 +220,10 @@ def Date.period!(y, m, d)
|
|||
p += dl[mm]
|
||||
end
|
||||
p += (y - 1) * 365 + ((y - 1) / 4.0).to_i
|
||||
if (y - 1) > 1752
|
||||
p -= ((y - 1 - 1752) / 100.0).to_i
|
||||
p += ((y - 1 - 1752) / 400.0).to_i
|
||||
p -= (14 - 3)
|
||||
if y > 1752
|
||||
p -= ((y - 1) / 100.0).to_i
|
||||
p += ((y - 1) / 400.0).to_i
|
||||
p += 2
|
||||
elsif y == 1752 && m == 9 && d >= 14 && d <= 30
|
||||
p -= (14 - 3)
|
||||
end
|
||||
|
|
149
lib/ftplib.rb
149
lib/ftplib.rb
|
@ -1,13 +1,12 @@
|
|||
### ftplib.rb -*- Mode: ruby; tab-width: 8; -*-
|
||||
## ftplib.rb
|
||||
|
||||
## $Revision: 1.5 $
|
||||
## $Date: 1997/09/16 08:03:31 $
|
||||
## by maeda shugo <shugo@po.aianet.ne.jp>
|
||||
# Author: Shugo Maeda <shugo@po.aianet.ne.jp>
|
||||
# Version: $Revision: 1.6 $
|
||||
|
||||
### Code:
|
||||
## Code:
|
||||
|
||||
require "socket"
|
||||
require "sync" if defined? Thread
|
||||
require "monitor"
|
||||
|
||||
class FTPError < Exception; end
|
||||
class FTPReplyError < FTPError; end
|
||||
|
@ -17,58 +16,25 @@ class FTPProtoError < FTPError; end
|
|||
|
||||
class FTP
|
||||
|
||||
RCS_ID = %q$Id: ftplib.rb,v 1.5 1997/09/16 08:03:31 shugo Exp $
|
||||
RCS_ID = %q$Id: ftplib.rb,v 1.6 1998/03/01 08:49:57 shugo Exp shugo $
|
||||
|
||||
include MonitorMixin
|
||||
|
||||
FTP_PORT = 21
|
||||
CRLF = "\r\n"
|
||||
|
||||
attr :passive, TRUE
|
||||
attr :return_code, TRUE
|
||||
attr :debug_mode, TRUE
|
||||
attr :welcome
|
||||
attr :lastresp
|
||||
|
||||
THREAD_SAFE = defined?(Thread) != FALSE
|
||||
|
||||
if THREAD_SAFE
|
||||
def synchronize(mode = :EX)
|
||||
if @sync
|
||||
@sync.synchronize(mode) do
|
||||
yield
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def sock_synchronize(mode = :EX)
|
||||
if @sock
|
||||
@sock.synchronize(mode) do
|
||||
yield
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
def synchronize(mode = :EX)
|
||||
yield
|
||||
end
|
||||
|
||||
def sock_synchronize(mode = :EX)
|
||||
yield
|
||||
end
|
||||
end
|
||||
private :sock_synchronize
|
||||
attr_accessor :passive, :return_code, :debug_mode
|
||||
attr_reader :welcome, :lastresp
|
||||
|
||||
def FTP.open(host, user = nil, passwd = nil, acct = nil)
|
||||
new(host, user, passwd, acct)
|
||||
end
|
||||
|
||||
def initialize(host = nil, user = nil,
|
||||
passwd = nil, acct = nil)
|
||||
if THREAD_SAFE
|
||||
@sync = Sync.new
|
||||
end
|
||||
@passive = FALSE
|
||||
def initialize(host = nil, user = nil, passwd = nil, acct = nil)
|
||||
super
|
||||
@passive = false
|
||||
@return_code = "\n"
|
||||
@debug_mode = FALSE
|
||||
@debug_mode = false
|
||||
if host
|
||||
connect(host)
|
||||
if user
|
||||
|
@ -79,10 +45,10 @@ class FTP
|
|||
|
||||
def open_socket(host, port)
|
||||
if defined? SOCKSsocket and ENV["SOCKS_SERVER"]
|
||||
@passive = TRUE
|
||||
SOCKSsocket.open(host, port)
|
||||
@passive = true
|
||||
return SOCKSsocket.open(host, port)
|
||||
else
|
||||
TCPsocket.open(host, port)
|
||||
return TCPsocket.open(host, port)
|
||||
end
|
||||
end
|
||||
private :open_socket
|
||||
|
@ -93,18 +59,15 @@ class FTP
|
|||
end
|
||||
synchronize do
|
||||
@sock = open_socket(host, port)
|
||||
if THREAD_SAFE
|
||||
@sock.extend Sync_m
|
||||
end
|
||||
voidresp
|
||||
end
|
||||
end
|
||||
|
||||
def sanitize(s)
|
||||
if s =~ /^PASS /i
|
||||
s[0, 5] + "*" * (s.length - 5)
|
||||
return s[0, 5] + "*" * (s.length - 5)
|
||||
else
|
||||
s
|
||||
return s
|
||||
end
|
||||
end
|
||||
private :sanitize
|
||||
|
@ -129,7 +92,7 @@ class FTP
|
|||
if @debug_mode
|
||||
print "get: ", sanitize(line), "\n"
|
||||
end
|
||||
line
|
||||
return line
|
||||
end
|
||||
private :getline
|
||||
|
||||
|
@ -143,7 +106,7 @@ class FTP
|
|||
buff << "\n" << line
|
||||
end until line[0, 3] == code and line[3] != ?-
|
||||
end
|
||||
buff << "\n"
|
||||
return buff << "\n"
|
||||
end
|
||||
private :getmultiline
|
||||
|
||||
|
@ -174,22 +137,17 @@ class FTP
|
|||
|
||||
def sendcmd(cmd)
|
||||
synchronize do
|
||||
sock_synchronize do
|
||||
putline(cmd)
|
||||
getresp
|
||||
end
|
||||
return getresp
|
||||
end
|
||||
end
|
||||
|
||||
def voidcmd(cmd)
|
||||
synchronize do
|
||||
sock_synchronize do
|
||||
putline(cmd)
|
||||
voidresp
|
||||
end
|
||||
end
|
||||
nil
|
||||
end
|
||||
|
||||
def sendport(host, port)
|
||||
hbytes = host.split(".")
|
||||
|
@ -205,7 +163,7 @@ class FTP
|
|||
port = sock.addr[1]
|
||||
host = TCPsocket.getaddress(@sock.addr[2])
|
||||
resp = sendport(host, port)
|
||||
sock
|
||||
return sock
|
||||
end
|
||||
private :makeport
|
||||
|
||||
|
@ -225,7 +183,7 @@ class FTP
|
|||
end
|
||||
conn = sock.accept
|
||||
end
|
||||
conn
|
||||
return conn
|
||||
end
|
||||
private :transfercmd
|
||||
|
||||
|
@ -241,7 +199,7 @@ class FTP
|
|||
else
|
||||
realuser = "anonymous"
|
||||
end
|
||||
realuser + "@" + thishost
|
||||
return realuser + "@" + thishost
|
||||
end
|
||||
private :getaddress
|
||||
|
||||
|
@ -270,7 +228,7 @@ class FTP
|
|||
synchronize do
|
||||
voidcmd("TYPE I")
|
||||
conn = transfercmd(cmd)
|
||||
while TRUE
|
||||
loop do
|
||||
data = conn.read(blocksize)
|
||||
break if data == nil
|
||||
callback.call(data)
|
||||
|
@ -289,7 +247,7 @@ class FTP
|
|||
synchronize do
|
||||
voidcmd("TYPE A")
|
||||
conn = transfercmd(cmd)
|
||||
while TRUE
|
||||
loop do
|
||||
line = conn.gets
|
||||
break if line == nil
|
||||
if line[-2, 2] == CRLF
|
||||
|
@ -312,13 +270,11 @@ class FTP
|
|||
synchronize do
|
||||
voidcmd("TYPE I")
|
||||
conn = transfercmd(cmd)
|
||||
while TRUE
|
||||
loop do
|
||||
buf = file.read(blocksize)
|
||||
break if buf == nil
|
||||
conn.write(buf)
|
||||
if use_callback
|
||||
callback.call(buf)
|
||||
end
|
||||
callback.call(buf) if use_callback
|
||||
end
|
||||
conn.close
|
||||
voidresp
|
||||
|
@ -333,7 +289,7 @@ class FTP
|
|||
synchronize do
|
||||
voidcmd("TYPE A")
|
||||
conn = transfercmd(cmd)
|
||||
while TRUE
|
||||
loop do
|
||||
buf = file.gets
|
||||
break if buf == nil
|
||||
if buf[-2, 2] != CRLF
|
||||
|
@ -344,17 +300,14 @@ class FTP
|
|||
buf = buf + CRLF
|
||||
end
|
||||
conn.write(buf)
|
||||
if use_callback
|
||||
callback.call(buf)
|
||||
end
|
||||
callback.call(buf) if use_callback
|
||||
end
|
||||
conn.close
|
||||
voidresp
|
||||
end
|
||||
end
|
||||
|
||||
def getbinaryfile(remotefile, localfile,
|
||||
blocksize, callback = nil)
|
||||
def getbinaryfile(remotefile, localfile, blocksize, callback = nil)
|
||||
if iterator?
|
||||
callback = Proc.new
|
||||
end
|
||||
|
@ -364,9 +317,7 @@ class FTP
|
|||
f.binmode
|
||||
retrbinary("RETR " + remotefile, blocksize) do |data|
|
||||
f.write(data)
|
||||
if use_callback
|
||||
callback.call(data)
|
||||
end
|
||||
callback.call(data) if use_callback
|
||||
end
|
||||
ensure
|
||||
f.close
|
||||
|
@ -383,17 +334,14 @@ class FTP
|
|||
retrlines("RETR " + remotefile) do |line|
|
||||
line = line + @return_code
|
||||
f.write(line)
|
||||
if use_callback
|
||||
callback.call(line)
|
||||
end
|
||||
callback.call(line) if use_callback
|
||||
end
|
||||
ensure
|
||||
f.close
|
||||
end
|
||||
end
|
||||
|
||||
def putbinaryfile(localfile, remotefile,
|
||||
blocksize, callback = nil)
|
||||
def putbinaryfile(localfile, remotefile, blocksize, callback = nil)
|
||||
if iterator?
|
||||
callback = Proc.new
|
||||
end
|
||||
|
@ -402,9 +350,7 @@ class FTP
|
|||
begin
|
||||
f.binmode
|
||||
storbinary("STOR " + remotefile, f, blocksize) do |data|
|
||||
if use_callback
|
||||
callback.call(data)
|
||||
end
|
||||
callback.call(data) if use_callback
|
||||
end
|
||||
ensure
|
||||
f.close
|
||||
|
@ -419,9 +365,7 @@ class FTP
|
|||
f = open(localfile)
|
||||
begin
|
||||
storlines("STOR " + remotefile, f) do |line|
|
||||
if use_callback
|
||||
callback.call(line)
|
||||
end
|
||||
callback.call(line) if use_callback
|
||||
end
|
||||
ensure
|
||||
f.close
|
||||
|
@ -442,7 +386,7 @@ class FTP
|
|||
retrlines(cmd) do |line|
|
||||
files.push(line)
|
||||
end
|
||||
files
|
||||
return files
|
||||
end
|
||||
|
||||
def list(*args)
|
||||
|
@ -499,7 +443,7 @@ class FTP
|
|||
def size(filename)
|
||||
resp = sendcmd("SIZE " + filename)
|
||||
if resp[0, 3] == "213"
|
||||
return Integer(resp[3 .. -1].strip)
|
||||
return resp[3 .. -1].strip.to_i
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -528,27 +472,20 @@ class FTP
|
|||
|
||||
def abort
|
||||
line = "ABOR" + CRLF
|
||||
resp = ""
|
||||
sock_synchronize do
|
||||
print "put: ABOR\n" if @debug_mode
|
||||
@sock.send(line, Socket::MSG_OOB)
|
||||
resp = getmultiline
|
||||
end
|
||||
unless ["426", "226", "225"].include?(resp[0, 3])
|
||||
raise FTPProtoError, resp
|
||||
end
|
||||
resp
|
||||
return resp
|
||||
end
|
||||
|
||||
def status
|
||||
line = "STAT" + CRLF
|
||||
resp = ""
|
||||
sock_synchronize do
|
||||
print "put: STAT\n" if @debug_mode
|
||||
@sock.send(line, Socket::MSG_OOB)
|
||||
resp = getresp
|
||||
end
|
||||
resp
|
||||
return getresp
|
||||
end
|
||||
|
||||
def mdtm(filename)
|
||||
|
@ -592,7 +529,7 @@ class FTP
|
|||
raise FTPProtoError, resp
|
||||
end
|
||||
host = numbers[0, 4].join(".")
|
||||
port = (Integer(numbers[4]) << 8) + Integer(numbers[5])
|
||||
port = (numbers[4].to_i << 8) + numbers[5].to_i
|
||||
return host, port
|
||||
end
|
||||
private :parse227
|
||||
|
@ -622,3 +559,5 @@ class FTP
|
|||
end
|
||||
private :parse257
|
||||
end
|
||||
|
||||
## ftplib.rb ends here
|
||||
|
|
|
@ -297,8 +297,8 @@ module Sync_m
|
|||
private :sync_try_lock_sub
|
||||
|
||||
def sync_synchronize(mode = EX)
|
||||
begin
|
||||
sync_lock(mode)
|
||||
begin
|
||||
yield
|
||||
ensure
|
||||
sync_unlock
|
||||
|
|
|
@ -59,8 +59,8 @@ class Mutex
|
|||
end
|
||||
|
||||
def synchronize
|
||||
begin
|
||||
lock
|
||||
begin
|
||||
yield
|
||||
ensure
|
||||
unlock
|
||||
|
@ -115,22 +115,22 @@ class Queue
|
|||
end
|
||||
|
||||
def pop non_block=false
|
||||
item = nil
|
||||
until item
|
||||
Thread.critical = true
|
||||
begin
|
||||
loop do
|
||||
if @que.length == 0
|
||||
if non_block
|
||||
Thread.critical = false
|
||||
raise ThreadError, "queue empty"
|
||||
end
|
||||
@waiting.push Thread.current
|
||||
Thread.stop
|
||||
else
|
||||
item = @que.shift
|
||||
return @que.shift
|
||||
end
|
||||
end
|
||||
ensure
|
||||
Thread.critical = false
|
||||
item
|
||||
end
|
||||
end
|
||||
|
||||
def empty?
|
||||
|
|
21
missing/memcmp.c
Normal file
21
missing/memcmp.c
Normal file
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* memcmp --- compare memories.
|
||||
*
|
||||
*/
|
||||
|
||||
int
|
||||
memcmp(s1,s2,len)
|
||||
char *s1;
|
||||
char *s2;
|
||||
register int len;
|
||||
{
|
||||
register unsigned char *a = (unsigned char*)s1;
|
||||
register unsigned char *b = (unsigned char*)s2;
|
||||
register int tmp;
|
||||
|
||||
while (len--) {
|
||||
if (tmp = *a++ - *b++)
|
||||
return tmp;
|
||||
}
|
||||
return 0;
|
||||
}
|
8
struct.c
8
struct.c
|
@ -210,9 +210,9 @@ struct_alloc(klass, values)
|
|||
else {
|
||||
NEWOBJ(st, struct RStruct);
|
||||
OBJSETUP(st, klass, T_STRUCT);
|
||||
st->len = n;
|
||||
st->ptr = 0; /* avoid GC crashing */
|
||||
st->len = 0; /* avoid GC crashing */
|
||||
st->ptr = ALLOC_N(VALUE, n);
|
||||
st->len = n;
|
||||
MEMCPY(st->ptr, RARRAY(values)->ptr, VALUE, RARRAY(values)->len);
|
||||
memclear(st->ptr+RARRAY(values)->len, n - RARRAY(values)->len);
|
||||
|
||||
|
@ -318,9 +318,9 @@ struct_clone(s)
|
|||
{
|
||||
NEWOBJ(st, struct RStruct);
|
||||
CLONESETUP(st, s);
|
||||
st->len = RSTRUCT(s)->len;
|
||||
st->ptr = 0; /* avoid GC crashing */
|
||||
st->len = 0; /* avoid GC crashing */
|
||||
st->ptr = ALLOC_N(VALUE, RSTRUCT(s)->len);
|
||||
st->len = RSTRUCT(s)->len;
|
||||
MEMCPY(st->ptr, RSTRUCT(s)->ptr, VALUE, st->len);
|
||||
|
||||
return (VALUE)st;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue