68user's page 掲示板

Prev< No. 2023〜2025> Next  [最新発言に戻る] [過去ログ一覧]
No. 2023 # rosegarden 2001/06/16 (土) 02:46:06
こちらでは、お久しぶりです。

>>2016 68user
68user さんは、お気づきだろうと思うので、蛇足ですが。
私の方では core を吐きました。多分、path とか URL の長さチェックを
していないからだと思います。

/* genx.c */
#include <stdio.h>

int
main(int argc, char *argv[])
{
                int i;

                for (i = 0; i < 1000; i++)
                                putchar('x');

                return 0;
}

こんなプログラムを作って、
% ./http-client-2 http://www.yahoo.co.jp/`./genx`.html
としたら signal 10 を受けて core を吐きました。

# 個人的にはこの程度のサンプルで、長さチェックまでやるのは
# 本質的な部分が見えなくなるので、今のままで良いかと思います。
# せいぜい、注意をひとこと書けば良いだけだと思います。

>>2015 nana
上記の通りなので、こういうバグ報告の際には引数に与えた文字列とか
環境変数を参照するものは環境変数とかを明示しないと意味がないです。
上記のは core を吐かせるための一例なので、原因は他にもあるかも
知れませんが。

No. 2024 # 68user 2001/06/16 (土) 02:46:59
>>2022 スナフキン
> 何の事は無い、あっさり解決しました。
そうですか、() で囲めば解決しましたか。プロセスグループとか
tty とか、さっぱりわかってないので適当に言ってみたのですが。

> ()の動作はperlと同じなのですね。
open(IN, "(cd dir; foo | bar) |") みたいなのを言ってますか?
perl では、open の引数の先頭か末尾に `|' を付けると、構文
解析なども行わず 丸ごと /bin/sh に投げます。なので、perl の
作りが sh に似ているのではなく、単に sh を利用しているだけです。

> アイドルが続くとディスプレーが非表示モード(でいいのかな)
> になります。
XFree86 ならば xset -dpms とするか、/etc/XF86Config で
BlankTime, StandbyTime, SuspendTime, OffTime などを設定
します。詳しくは XF86Config(5) をどうぞ。

ただのコンソールならば FreeBSD 4.3-RELEASE なら /etc/rc.conf に
    saver="NO"
です。それ以外の環境はわかりません。

>>750 を見ると Vine Linux をお使いのようですが、毎回必ず
環境を書いた方がよいでしょう。

No. 2025 # 68user 2001/06/16 (土) 02:50:49
>>2023 rosegarden
> 68user さんは、お気づきだろうと思うので、蛇足ですが。
> 私の方では core を吐きました。多分、path とか URL の
> 長さチェックをしていないからだと思います。
全然お気づきではなかったです。お恥ずかしい。

「C で書くならここまでちゃんとやらないと」と言えるような
サンプルにしたいので、直しておきます。

Prev< No. 2023〜2025> Next  [最新発言に戻る] [過去ログ一覧]