■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50

2ch閉鎖の危機なんだと(Part3.1)

162 :ななしさん@通信技術 :2001/08/26(日) 04:46
とりあえずzz_query_stringをパースしている部分とBigline[]からstrcpyしている
部分だけでもなんとかしたほうがいいかと。

個人的には、do_Replaceが今後のメインテナンスでバグを誘発する可能性が高そうな
仕様なので気になるのだけど…

163 :145 :2001/08/26(日) 04:47
すまない。あげてしまった。

バッファオーバフロー:
http://www-6.ibm.com/jp/developerworks/security/overflows-index-j.html
ここを参照してみてはいかがでしょう

164 :名無し娘。 ◆vP.bOZFQ :2001/08/26(日) 04:47
>>159
了解です。お疲れさまです。
それにしても、いきなりver10は違和感があります(w

165 :149 :2001/08/26(日) 04:47
>>153
サンクスw
最初の方で s/strcpy/strncpy/ しておいて、パラメータでミスるか>自分

166 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:47
2chの動作報告はここで。
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998764239

167 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:49
転送方式以前に、書き込みの有無に関係なく上位に表示される
固定スレを作ってもらえば、ごみスレが減るのでかなり軽くな
ると思うんですけど。。。ダメかな?

168 : :2001/08/26(日) 04:49
>>154
1.1に移行させるいい機会かも。

169 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:50
そういえば、mailto:sage の場合にリンクを省略する処理を入れている人、いる?
Web 製作板で出ていた要望だけど
投稿日時の前後に sage とでも出しておけば十分、という意見が

170 :名無し ◆NtVkSITE :2001/08/26(日) 04:50
>>158
>>154-155を読んでみてください。これが原因です。

171 :厨房@煽り担当 :2001/08/26(日) 04:50
age

172 :145 :2001/08/26(日) 04:50
>>161
目的が違い、延々リロードしてDoS紛いの事をする馬鹿を弾くというわけです

173 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:51
strcpy、memcpyではダメナノカー

174 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:51
>>151
CVS対応っつ〜のは、read.cgi を full scratch するという流れの
上での話だと思われ。

どんなちっこいソースでも、複数で手を入れる限りはバージョン管理
必要でしょ。

175 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:51
>>167
レスの数順にソートされたindexがあればいいかもしれませんね。

176 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:52
圧縮したら軽くなったって話だけど
だれかgprofしてみない?
write system callが極端に減ったとか?

177 :369 ◆3XTuRnAc :2001/08/26(日) 04:52
>名無し娘。さん
えと、IPがまた変わりました。っていうかまたモデムが落とされた模様(^^;;。
ftp://210.170.170.131/
です。

178 :138 :2001/08/26(日) 04:52
>>156
ニュース速報板とUNIX板で文字化け確認しました。
もじ化けするのは画面の「リロード」押した時のみ発生します。F5はリロードできます。

↓の>>27>>35の方も同症状の様です
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998764239

179 :ななしさん@通信技術 :2001/08/26(日) 04:53
>>148
たぶんうっかりミスでしょうけどROMの人もいるだろうから解説つきです。

in read5.01.02.c :
ええと、strncpy(char *dst, char* src, size_t n)は、不幸にして
nまで逝ってしまったときにはnull-terminateしない仕様なので、
strncpy(dst,kk0 + strlen(tgt) + 1,1024) ;
の後に一行、
dst[1024 -1] = '\0';
を付け加えてあげてください。
#本当は1024はdefineしたほうがいいと思いますけど。

180 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:53
>>172
Last-Modifiedのチェックで十分はじけると思いますが…
Ctrl+F5でえんえんリロードしてるならそもそもIf-Modified-Sinceは
来ませんし。

181 :名無し娘。 ◆vP.bOZFQ :2001/08/26(日) 04:53
>>162
zz_query_string関連は、826行目ですか。
biglineはいまいちよくわかっていません。
>>163
いちおう既読ではあるのですが。。。

182 :aki :2001/08/26(日) 04:55
>>369さん
ミラー元直しておきました。
http://www.gedoh.org/aki/2ch/210.170.170.131/incoming/

これで寝ちゃうので、これ以後IPアドレス変わったらごめんなさい。
メール頂ければ直せるかも。

183 :名無し娘。 ◆vP.bOZFQ :2001/08/26(日) 04:56
>>179
ああ、そこまで見ていなかった。。。鬱氏

184 :名無し ◆NtVkSITE :2001/08/26(日) 04:57
178
>>154-155がそれに対する回答です。
また、動作についてのお話は
2chの動作報告はここで。
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998764239
のほうでお願いします。

185 :161 :2001/08/26(日) 04:57
>>172
なるほど。
DoS目的の厨房はIMS要求を出さないでしょうが、
DoSまがいの厨房には効果がありそうですね。
すくなくとも、datの更新をチェックするという手間が省けます。

186 :名無しさん@お腹いっぱい。 :2001/08/26(日) 04:58
具体的には、圧縮して転送されることにより、どの程度の帯域節約効果があるのでしょうか?

あるスレッドのHTMLがCGI経由で圧縮して転送される際の転送量と、同一発言数分のdatファイルを
未圧縮で受ける際の転送量とでは、どちらが概ね優位(転送量=少)となるでしょうか?

187 :369 ◆3XTuRnAc :2001/08/26(日) 05:00
>akiさん
えと、もうちょっと待っていただけますか?
今知人が捨てdyndns取ってくれているんで。

188 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:01
>>186
AA板のデータを使った場合だが
1/16という数字が示されている。

189 :ななしさん@通信技術 :2001/08/26(日) 05:04
ざっと見たところですが、汚染データに起因するbuffer overrunについては、
zz_quary_stringのパーサと、あとは一連のstrcpy(p, Bigline[hoge]);
とかのBigbuffに関連したものを同様に修正すれば、とりあえずよさそうに見えます。

さっきから文句いっているだけですが、よろしくおねがいします。mOm

190 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:04
>>179
それなら
strncpy(dst,src,1023);
*(dst + 1023) = '\0';
のほうがすっきりしてないか?

191 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:06
過去 .dat は .gz を用意する、と言う処理も残っているか……

192 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:06
ついでに、
sprintf→snprintf
もしといたほうがいいと思う。

193 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:08
俺なら
dst[1023]=0;
strcpy(dst,src);
にしちゃうかも。
ちょっとは軽くなりそうだし。

194 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:08
monazilla
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=981726544
html(374,629 バイト)→zip(101,535 バイト)
dat(317,161 バイト)

このキャラを流行らせろ!そして伝説にしろ!
http://piza2.2ch.net/test/read.cgi?bbs=mona&key=998527576
html(406,290 バイト)→zip(51,623 バイト)
dat(351,889 バイト)

最大で1/16 の報告あり、最低でも1/3程度かな
.dat直はやはりそんなにサイズは小さくない、ただ専用ツールは
一度取得するとレジュームきかせて差分取得する

195 :名無し娘。 ◆vP.bOZFQ :2001/08/26(日) 05:09
>>189
ありがとうございます。ここまでは対処してうぷできる状態ですが、
>>190-193
どうしましょう(笑

196 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:09
すまん、間違えた。
回線切って首吊ります。

197 :名有りさん@お腹へった :2001/08/26(日) 05:09
Solaris8だとこんな関数があるんだけど Linuxにはないかな?

size_t strlcpy(char *dst, const char *src, size_t dstsize);

The strlcpy() function copies at most dstsize-1 characters
(dstsize being the size of the string buffer dst) from src
to dst, truncating src if necessary. The result is always
null-terminated.

198 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:09
>>193
*(dst + 1023) = '\0';
じゃないか?

ポインタと配列、数値と文字列は違う

……アセンブラレベルに落としたら一緒だろうな……

199 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:10
>>191
mod_gzipが入るから必要ない
.gzがあれば使うそうだから多少は軽くなるかもしれないけど
read.cgi入れたらかえって軽くなったくらいだから

200 :首吊り :2001/08/26(日) 05:10
間違えは193です。たびたびすまぬ。

201 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:10
ちょっと待て。浮かれるな。
目的は「2ちゃん存続」だぞ。
転送量の削減はもちろんのこと、それを「ひろゆきにアピール」しなきゃいけない。
さらにbuffer overflowも含めた、プログラムのセキュリティの見直し。
measurementした?
当初の要求は満たせている?

202 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:11
>>198
この場合まったく違いません。
中途半端な知識を聞きかじってると思われ
プログラム板あたりで勉強しなおしてきてください

203 :◆O7f7xdLk :2001/08/26(日) 05:11

ftp://210.141.174.136/2ch/210.170.170.131/
でもミラー始めた。

204 :親の威を借りる狐 ◆v0Ec25uo :2001/08/26(日) 05:11
つーか、転送量にも絡む問題だが、2ちゃん浄化策として、
100落ちるまで、10レスつかなかったスレは自動削除とかも
いいかな、と思う、うに板の面々はこういう機能実装する
気はさらさらないかの(藁??

205 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:12
微妙にオナニーになってるね

206 :ななしさん@通信技術 :2001/08/26(日) 05:12
>>190
#まるでC言語教室のようですが…

まず、*(foo + n)はfoo[n]と等価です。

それから、1024 -1をプログラマが計算して1023と書いてしまうことは
おすすめしません。後でメインテナンスする人(もしかしたら何かの
フィルタかもしれない)が困る可能性があるからです。
この程度の計算はまともなコンパイラなら最適化するので、可読性を
優先することを勧めます。

あと、strncpyで、1024-1にすることでまれに1要素分の転送を省くことが
出来る可能性があることは認めます。(^^;

207 :首吊り :2001/08/26(日) 05:12
>>198
いや、それ以前に、意味のないコードになってます。
*(src+1023)='\0';
です。
src書き換えが御法度なら不可能なやり口です。

208 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:12
>>204
それは板違い、批判要望板へ

209 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:13
zlib使うように書き換えようと思ったが
パッチどころの話じゃ無いね、鬱だ

210 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:13
つかまず
#define BUFFER_SIZE 1024
*(src+BUFFER_SIZE-1)=foobar
ってやろうよ。

211 :369 ◆3XTuRnAc :2001/08/26(日) 05:13
>名無し娘。さん
サーバー、dyndns取りました。
ftp://2ch-read.dyndns.org/
です。

212 :そのころ夜勤さんは…… :2001/08/26(日) 05:14
http://teri.2ch.net/test/read.cgi?bbs=accuse&key=998743632&st=223&to=223
223 名前:夜勤 ★ 投稿日:2001/08/26(日) 04:22 ID:???
わたしも、そろそろ のんびりムード、

いろいろ動きがあるとしたら、あしたの夜遅くです。
あの板の騒ぎが収まった頃に出てきます。

では、

----
そろそろまとめないと。。。

213 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:14
だからコードのリファクタリングなんかどうでもいいだってば。
この改善で2ちゃんが存続できるのか否かが問題。

214 :首吊り :2001/08/26(日) 05:15
親切なレス付きまくったのでつきあいます。

strncpy(dst,src,cnt);
の場合、ループの脱出チェックの要件が2つあるので
strcpy(dst,src);
の方が、一般的に微妙に早いんです。

215 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:16
行毎に相談したって仕方ない
フェーズ決めて一括レビューしてったほうがいいんじゃん?

216 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:17
>>202
違いが無いのを分かっていて言ってるんだよ
文字を扱っているのか、数値を扱っているのかをしっかり理解してコードを書いているなら、この辺りは使い分けるものだ

同じ事をするならどんなコードを書いても良いって訳じゃない事位知っているだろう

217 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:17
>>213 だからそれは批判要望で話すべきことだって

218 :aki :2001/08/26(日) 05:18
>369さん
はいな、追従。これでアドレス変わっても大丈夫ですね。
http://www.gedoh.org/aki/2ch/2ch-read.dyndns.org/incoming/

先ほどプログラム板でのリクエストでwikiもあげときました。
http://www.gedoh.org/aki/2ch/wiki/

219 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:18
そういえば、glibc の strstr って(というか文字列全般?)
激遅という話を聞いたことあるけど。
プログラマ板の話題かな?

220 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:19
>>214
なら src が const じゃないなら *(src + 1024 - 1) = '\0' して strcpy() か

221 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:19
今のメイン作業って?

222 :名無し ◆NtVkSITE :2001/08/26(日) 05:19
この板での対応は、あくまでも現行5.01のセキュリティホールを埋めるだけにとどめましょうよ。

223 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:19
>>219
*BSD の strstr とか引っ張ってきても一緒ならコード書き起こしか

224 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:21
がんばって下さいネ。

225 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:21
高速化が目的?
鯖の負荷軽減が目的?
1ビットでも鯖からの出力を削減するのが目的じゃないのか?
もちろんセキュリティ的に問題のある部分は直さなければならないが。

226 :ななしさん@通信技術 :2001/08/26(日) 05:21
>>216
まともなプログラマなら、値や変数の型を重視するのが当然です。
バグのない幸せな世界への近道だからです。
>>202はそのことが指摘したかったのだと思われ。

型と型を知らない人の話題、これ以上は別スレ推奨…

227 :首吊り :2001/08/26(日) 05:23
もし可能であれば、頭で文字列バッファ長に切りつめて
それを下属関数で使い回すのが、安全かと。

荒らしみたいになってすいません。もう寝ます。

228 :名無し ◆NtVkSITE :2001/08/26(日) 05:23
>>225
それは、プログラム板の方のスレで検討しています。

229 :名無しさん@お腹いっぱい。 :2001/08/26(日) 05:24
>>228
それってどれ?
高速化と負荷軽減のこと?

230 :名無し ◆NtVkSITE :2001/08/26(日) 05:25
2ch閉鎖の危機なんだと(Part3.1)  @UNIX
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998764722

具体的に、read.cgi の修正に入っています。こっちは主にセキュリティホール埋め

プログラマが2chを救う!? @プログラム
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998736516
こっちが、read.cgiの大幅な書き換え or 書き直し

231 :名無し ◆NtVkSITE :2001/08/26(日) 05:26
>>229さん
というか、さかのぼってお読みになればわかっていただけたはずなのですが・・・

232 :ななしさん@通信技術 :2001/08/26(日) 05:27
>>227
汚染データはまとめて処理したほうが安全なので、俺ならそう設計します。
でも、今も昔もこれからも、readcをメインテナンスするのは俺らではないので、
ここは既存のコードに従うのがセオリーなんです…

233 :369 ◆3XTuRnAc :2001/08/26(日) 05:27
>akiさん
どもです。
まあ、攻撃食らって回線落とされる可能性からは逃げられませんけどね(^^;;。
・・・って自分がいない間に回線切られてIP変わったらなんの意味も・・・(笑
まいっか。

234 :名無し娘。 ◆vP.bOZFQ :2001/08/26(5) 29:00
混線してきているようなので、とりあえず
ftp://2ch-read.dyndns.org/incoming/read5.01.03.c
ここまででどうでしょうか?

235 :名無しさん@お腹いっぱい。 :2001/08/26(5) 30:00
>>225
高速化並びにリソース軽減は長期的に見れば転送量の話にかかってくると
思われる。結果としてサーバにより多くの板を収容できるようになれば、

サーバの数(増加率?)が減る

サーバメンテにかかる諸費用が減る

回線増強にかかる費用負担に繋がる

という感じで。

236 :369 ◆3XTuRnAc :2001/08/26(5) 30:00
>名無し娘。さん
了解です。2ch-read-currentに手動コピーしておきます。

237 :  :2001/08/26(5) 30:00
というか2Chの運営はプロジーだろ
ひろゆきは管理人
別にプロジーもひろゆきも広告費で元は取ってるんだ
ここのやつらがそんなことしてどうすんだ?
新しいP2P形式の掲示板システムを作る研究してくれ

238 :名無し娘。 ◆vP.bOZFQ :2001/08/26(5) 31:00
>>234
一応動作確認はしたのですが、厨房丸出しでも許して下さい>all
>>236
お疲れさまです。

239 :名無しさん@お腹いっぱい。 :2001/08/26(5) 31:00
B級グルメ板です。
時間表示が変になっています
http://natto.2ch.net/jfoods/index2.htm


150 名前:やめられない名無しさん 投稿日:2001/08/26(5) 28:00
そんなけなげな>>149に萌えながらage

151 名前:やめられない名無しさん 投稿日:2001/08/26(5) 30:00
>>150
あれ?28:00って・・・

240 :名無し娘。 ◆vP.bOZFQ :2001/08/26(5) 32:00
>>239
ん、この板もですね。。。

241 :名無しさん@お腹いっぱい。 :2001/08/26(5) 33:00
曜日が抜けてるんだね…。

242 :名無しさん@お腹いっぱい。 :2001/08/26(5) 33:00
時間取得メチャクチャ・・・・・

243 :名無しさん@お腹いっぱい。 :2001/08/26(5) 33:00
話によると1つずれてるっぽいですね……
曜日と時刻の奴が……

244 :名無しさん@お腹いっぱい。 :2001/08/26(5) 34:00
33:00か、さすがに寝ないとな・・・っていってる場合ではないか

245 :名無しさん@お腹いっぱい。 :2001/08/26(5) 35:00
2001/08/26(5) 34:00
2001/08/26( ) 5:34

246 :名無しさん@お腹いっぱい。 :2001/08/26(5) 35:00
ああ、カッコの中にHourが入ってて、その次のは本来ならminuteなのね

247 :名無しさん@お腹いっぱい。 :2001/08/26(5) 35:00
2001/08/26(5) 33:00
=>
2001/08/26(?) 5:33

すぐ直せるね

248 :名無しさん@お腹いっぱい。 :2001/08/26(5) 36:00
ソースどこにあるの?
仕事ではC++とJavaだけど、Perlも個人的に趣味でやってますんで
ちょっと手伝いたいかなあと・・

249 :名有りさん@お腹へった :2001/08/26(5) 36:00
gccでコンパイルする時に"-Wall"付けれ
printf系のパラメータチェックしてくれるから

250 :名無しさん@お腹いっぱい。 :2001/08/26(5) 36:00
>>248
C++ やってるなら大丈夫だろ
ソースは C だ

251 :名無し娘。 ◆vP.bOZFQ :2001/08/26(5) 37:00
投稿日ずれ、bbs.cgiの問題でしょうか。

252 :名無しさん@お腹いっぱい。 :2001/08/26(5) 38:00
曜日を削ろうとして直し損ねたと

253 :名無し ◆NtVkSITE :2001/08/26(5) 38:00
みなさん、お疲れさまでした。
夜勤さんは仮眠中でしょうかね?

それと、このスレはスレの読み出しを行うcgiのための場所です。
異常報告はこちらでお願いします。

2chの動作報告はここで。
http://cocoa.2ch.net/test/read.cgi?bbs=unix&key=998764239

254 :名無しさん@お腹いっぱい。 :2001/08/26(5) 39:00
かちゅーしゃで現象確認。
datが原因だからbbs.cgiかな?

255 :ななしさん@通信技術 :2001/08/26(5) 39:00
>>234
in read5.01.03.c :
276行目の
strcpy(p,BigLine[line]);
はなにか理由がありますでしょうか。
うっかりミスだったらこっちも修正お願いします。

256 :名無し娘。 ◆vP.bOZFQ :2001/08/26(5) 40:00
>>252
それはもしや、read.cgiで曜日部分を無視するように仕様変更する、
ってことの前触れ?

257 :369 ◆3XTuRnAc :2001/08/26(5) 40:00
ソースコードの最新はここにあります。

ftp://2ch-read.dyndns.org/incoming/2ch-read-current/

・・・で、一番タイムスタンプが新しいのが最新です。

>名無し娘。さん
あ、バージョンですけど、read10.01.03.cにしました。
ちょっと「5つも飛ぶのかよ!」って気もしますが、先にread10が
できてしまったんで(^^;;。

258 :名無し娘。 ◆vP.bOZFQ :2001/08/26(5) 41:00
>>255
はーい。アップしたファイルが古かったです(氏
早急に対処します。

259 :名無しさん@お腹いっぱい。 :2001/08/26(5) 42:00
>>256
投稿日はdatにそのまんま入ってるから
read.cgiのほうは修正不要かと

260 :名無しさん@お腹いっぱい。 :2001/08/26(5) 43:00
ひとつ提案。
サーバ負荷を減らすために、read.cgi をリクエストあるたびに
プロセスを起こす方式じゃなくて、 http://www.fastcgi.com を使ったら
どうっすか?。これなら、プロセス起動しっぱなしなんで、
プロセス起動の負荷が減ると思いますが。。。

261 :名無し ◆NtVkSITE :2001/08/26(5) 43:00
>>257
バージョン別にしましょうよ。こっちは古い枝番号でいいじゃないですか。

257KB
新着レスの表示

スレッドリストへ戻る 全部 前100 次100 最新50

0ch BBS 2004-10-30