岡本@大阪医科大学です。 以前に On Mon, 27 May 2002 14:06:29 +0900 Akihiro Okamoto <med012@xxxxxxxxxxxxxxxxxxx> wrote: > Netatalk 1.5のバグおよび対策パッチの作製をおしらせします。 で vine-users ML にパッチを流した件ですが、Netatalk-devel MLで bugfixのパッチに問題が指摘されました。 以前のパッチでは、ファイルのlockで問題が生じる可能性があります。 修正したパッチを以下につけておきます。また、以前に私のサイトより netatalk-1.5.3.1-1をダウンロードされた方はご面倒をおかけしますが netatalk-1.5.3.1-2を作りなおしましたのでそちらをお使い下さい。 (http://www.osaka-med.ac.jp/~med012/HomePage/Vine25/) シノバーさま、すみませんがVineSeedPlusの方修正お願いいたします。 誠に申し訳ございませんでした。 --- netatalk-1.5.3.1/etc/afpd/fork.c.orig Thu May 30 12:34:48 2002 +++ netatalk-1.5.3.1/etc/afpd/fork.c Thu May 30 12:36:48 2002 @@ -852,13 +852,7 @@ goto afp_read_err; } - /* subtract off the offset */ - size -= offset; savereqcount = reqcount; - if (reqcount > size) { - reqcount = size; - err = AFPERR_EOF; - } saveoff = offset; /* if EOF lock on the old reqcount, some prg may need it */ @@ -882,6 +876,13 @@ if ((obj->proto == AFPPROTO_DSI) && (*rbuflen < reqcount) && !nlmask) { DSI *dsi = obj->handle; + /* subtract off the offset */ + size -= offset; + if (reqcount > size) { + reqcount = size; + err = AFPERR_EOF; + } + if (obj->options.flags & OPTION_DEBUG) { printf( "(read) reply: %d/%d, %d\n", *rbuflen, reqcount, dsi->clientID); --- Akihiro Okamoto (med012@xxxxxxxxxxxxxxxxxxx) Osaka Medical College, Biochemistry http://www.osaka-med.ac.jp/~med012/HomePage/