[#14185] ruby on Linux/m68k — akira yamada / やまだあきら <akira@...>
[#14196] fork() on MacOS — nobu.nakada@...
なかだです。
[#14206] undef_method :method_missing — Kenichi Komiya <kom@...1.accsnet.ne.jp>
なかだです。
なかだです。
金光です。
むらけんです.
金光です。
楠です
金光です。
金光です。
金光です。どもっ。
なかだです。
金光です。どもっ。
金光です。
岩月と申します。
金光です。どもっ。
有馬です。
金光です。
有馬です。
金光です。どもっ。
とみたです。
金光です。
とみたです。
金光です。
まつもと ゆきひろです
金光です。(^_^;
あづみです。
有馬です。
金光です。
有馬です。
金光です。どもっ。
有馬です。
むらけんです.
むらけんさん wrote:
むらけんです.
長沢です。
まつもと ゆきひろです
金光です。どもっ。
有馬です。
金光です。どもどもっ。
むらけんです.
金光です。いちおうフォローだけ
ふなばです。
一応フォローだけ、ほんとにちょっとだけっすよ
岩月と申します。
むらけんです.
楠です
むらけんです.
金光です。FOXとかもあるのかぁ。すげぇなぁ。
まつもと ゆきひろです
金光です。御大、待ってましたっ。
なかだです。
金光です。どもどもっ。
なかだです。
さくです。
まつもと ゆきひろです
金光です。どもっ。
まつもと ゆきひろです
金光です。どもどもっ。
[#14229] [BUG] segv on [str].pack("p") — Koji Arai <JCA02266@...>
新井です。
なかだです。
新井です。
なかだです。
[#14338] setup.rb (Re: Common GUI framework) — Minero Aoki <aamine@...>
あおきです。
[#14382] [BUG] segv on regex matching with long string — TAKAHASHI Masayoshi <maki@...>
高橋征義です。
[#14390] [Patch] pp.rb and debug.rb — "NAKAMURA, Hiroshi" <nakahiro@...>
なひです。
なひです。書き忘れ。
なかだです。
nobu.nakada@nifty.ne.jpさんの
なひです。
なかだです。
In article <DJEGJLCFNEIMKDNMLFPHMEAHCBAA.nakahiro@sarion.co.jp>,
なひです。
In article <DJEGJLCFNEIMKDNMLFPHEEAICBAA.nakahiro@sarion.co.jp>,
なひです。
まつもと ゆきひろです
In article <997774251.527258.14423.nullmailer@ev.netlab.jp>,
まつもと ゆきひろです
In article <997783083.657819.14685.nullmailer@ev.netlab.jp>,
なひです。
In article <DJEGJLCFNEIMKDNMLFPHEEALCBAA.nakahiro@sarion.co.jp>,
なひです。
In article <DJEGJLCFNEIMKDNMLFPHEEAPCBAA.nakahiro@sarion.co.jp>,
なひです。
In article <DJEGJLCFNEIMKDNMLFPHMEBACBAA.nakahiro@sarion.co.jp>,
あづみです。
なひです。
In article <DJEGJLCFNEIMKDNMLFPHIEBBCBAA.nakahiro@sarion.co.jp>,
うぅむ。ぼーっとしてたら意味もなく Subject を変えてしまった。
In article <20010817205051.UAZHC0A8274C.C78F0C8A@mail.biglobe.ne.jp>,
あづみです。
In article <hvo66bnxe4b.fsf_-_@flux.etl.go.jp>,
古い話題で恐縮ですが…
なかだです。
In article <200109290948.f8T9mbh12942@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
まつもと ゆきひろです
In article <1001945748.240863.24023.nullmailer@ev.netlab.jp>,
なかだです。
In article <200110020334.f923YLb08299@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
In article <200110021010.f92AAIb13474@sharui.nakada.kanuma.tochigi.jp>,
なかだです。
まつもと ゆきひろです
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
なかだです。
まつもと ゆきひろです
In article <1002080461.740444.11187.nullmailer@ev.netlab.jp>,
In article <DJEGJLCFNEIMKDNMLFPHCEPJCAAA.nakahiro@sarion.co.jp>,
なひです。
まつもと ゆきひろです
In article <DJEGJLCFNEIMKDNMLFPHCEPJCAAA.nakahiro@sarion.co.jp>,
あおきです。
In article <20010809221751J.aamine@mx.edit.ne.jp>,
[#14406] typo in ruby 1.7 — Koji Arai <JCA02266@...>
新井です。
[#14413] 1.7.1 2001-08-06: if true && /match/ — WATANABE Tetsuya <tetsu@...>
渡辺哲也です。
[#14465] Ruby/Bsearch — akira yamada / やまだあきら <akira@...>
まつもと ゆきひろです
At Wed, 15 Aug 2001 18:01:50 +0900,
"Akinori MUSHA" <knu@iDaemons.org> wrote:
At Thu, 16 Aug 2001 00:15:05 +0900,
In article <20010816001456V.satoru@namazu.org>,
Tanaka Akira <akr@m17n.org> wrote:
In article <20010816130056C.satoru@namazu.org>,
[#14480] avoid compile warning of tcltklib with VC5 — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
[#14505] BUG: ruby 1.6.4 cannot use threads on Sparc (segv) — akira yamada / やまだあきら <akira@...>
[#14530] restore terminal mode even if readline interrupted. — Koji Arai <JCA02266@...>
新井です。
新井です。
新井です。
新井です。
At Wed, 5 Sep 2001 00:19:51 +0900,
まつもと ゆきひろです
[#14552] read in IO#eof? — nobu.nakada@...
なかだです。
[#14575] infinite loop on Dir.glob("*/**/*") — nobu.nakada@...
なかだです。
[#14577] option nodynamic — Daisuke Aoki <dai@...>
青木@横浜です。
[#14595] SEGV at `$0 = "long long string"' — nobu.nakada@...
なかだです。
なかだです。
まつもと ゆきひろです
[ruby-dev:14513] Re: recursive malloc (Re: supportedplatforms/ K&R)
新井です。
In message "[ruby-dev:14493] Re: recursive malloc (Re: supportedplatforms/ K&R)"
on 16 Aug 2001 06:06:38 +0900,
nobu.nakada@nifty.ne.jp wrote:
> なかだです。
>
> At Thu, 16 Aug 2001 05:24:12 +0900,
> Koji Arai <JCA02266@nifty.ne.jp> wrote:
> > Posix.1g の定義だと、accept()は、ECONNABORTED
> > 「SVR4インプリメンテーション」だと、accept()は、EPROTO
>
> ということは、逆に言えばPosix互換かSVR4なシステムならselect()
> の後のRSTによってブロックすることはないということでしょうか。
そうです。あっ、そうか。
#ifdef SYSV
fd2 = accept(fd, 0, 0);
#else
TRAP_BEG;
fd2 = accept(fd, sockaddr, len);
TRAP_END;
#endif
のようなコードでいいのか
recvfrom() にも同じ対処がいるのかもと思って再現させようとし
たのですが、(たぶん)別件でcore吐いてしまいました。またバック
トレースを持って帰ってないのですが、coreが膨れあがってたこと
とからメモリリークだと思われます(来週以降に追試)。
> やっぱり[ruby-dev:14477]のgetpeername()を使う方法でしょうか。
> デメリットとしてはSysV以外でシステムコールが増えるくらい?
前のメールでは、あまりにも想像で書きすぎました。ごめんなさい。
getpeername() は、効果ありませんでした。
/etc/nsswitch.conf といってたのは、/etc/netconfig というファ
イルで(おお違い)。tcp などのプロトコルに対応するドライバは何
かとか、名前解決に DNSを使うかNIS を使うかといったことが定義
されているファイルです。(まあ役割は nsswitch.conf と大体一緒
ですね)
で、accept()実行時にこのファイルが読み込まれているのは確かで、
(truss コマンド(Linuxでいうstrace)でaccept()実行時のシステム
コールを見たところ、しっかり open()されてました)、これは、
accept() の引数を変えても同じでした。
そういうわけで、今回の件は、結局添付のパッチで良いのではなか
ろうかと思います。
# rb_thread_wait_fd(fd) の呼び出しが retry でかぶるのが気になって
# ちょっとイジってますが、これは余計ですか?
Thu Aug 16 23:03:40 2001 Koji Arai <JCA02266@nifty.ne.jp>
* io.c: prevent recursive malloc calls on NEC UX/4800.
* ext/socket/socket.c: ditto.
Index: io.c
===================================================================
RCS file: /usr/local/cvsup/ruby/ruby/io.c,v
retrieving revision 1.92
diff -u -r1.92 io.c
--- io.c 2001/08/06 03:05:13 1.92
+++ io.c 2001/08/14 20:31:21
@@ -27,7 +27,7 @@
# define NO_LONG_FNAME
#endif
-#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(sun)
+#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(sun) || defined(_nec_ews)
# define USE_SETVBUF
#endif
Index: ext/socket/socket.c
===================================================================
RCS file: /usr/local/cvsup/ruby/ruby/ext/socket/socket.c,v
retrieving revision 1.50
diff -u -r1.50 socket.c
--- ext/socket/socket.c 2001/08/06 06:10:10 1.50
+++ ext/socket/socket.c 2001/08/16 13:37:20
@@ -437,8 +437,8 @@
str = rb_tainted_str_new(0, NUM2INT(len));
- rb_thread_wait_fd(fd);
retry:
+ rb_thread_wait_fd(fd);
TRAP_BEG;
RSTRING(str)->len = recvfrom(fd, RSTRING(str)->ptr, RSTRING(str)->len, flags,
(struct sockaddr*)buf, &alen);
@@ -454,7 +454,6 @@
#if EAGAIN != EWOULDBLOCK
case EAGAIN:
#endif
- rb_thread_wait_fd(fd);
goto retry;
}
rb_sys_fail("recvfrom(2)");
@@ -1100,9 +1099,13 @@
rb_secure(3);
retry:
rb_thread_wait_fd(fd);
+#if defined(_nec_ews)
+ fd2 = accept(fd, sockaddr, len);
+#else
TRAP_BEG;
fd2 = accept(fd, sockaddr, len);
TRAP_END;
+#endif
if (fd2 < 0) {
switch (errno) {
case EMFILE:
@@ -1119,7 +1122,6 @@
#if EAGAIN != EWOULDBLOCK
case EAGAIN:
#endif
- rb_thread_wait_fd(fd);
goto retry;
}
rb_sys_fail(0);
--
新井康司 (Koji Arai)