68user's page 掲示板

Prev< No. 4063〜4073> Next  [最新発言に戻る] [過去ログ一覧]
No. 4063 # 68user 2004/12/06 (月) 02:27:19
「ネットワークプログラミングの基礎知識」に
      HTTP クライアントを作ってみよう(5) - 認証編 -
          http://X68000.q-e-d.net/~68user/net/http-auth-1.html
を追加しました。

No. 4064 # sqh00 [E-mail] 2004/12/19 (日) 13:12:22
こんにちは。 こちらのサイトに来るのは今日が初めてですが、内容が充実していて大変参考になるサイトですね。 今後も利用させて頂こうと思います。さっそくですが、xlibについて質問をさせてください。http://x68000.q-e-d.net/~68user/xprogram/xlib-1.html のxlib-1.c を
cc -o xlib-1 xlib-1.c -I /usr/X11R6/include -lX11 -L /usr/X11R6/li のように実行したら、何にも出て来なかった。私が使っているのは red hat linux 8.0です。宜しくお願いします。

No. 4065 # 68user 2004/12/20 (月) 00:08:34
>>4064 sqh00
カレントディレクトリに xlib-1 というバイナリが生成されているか、
あるいは何かしらのエラーメッセージが出力されていると思いますので
確認してみてください。

No. 4066 # sqh00 [E-mail] 2004/12/20 (月) 22:17:10
カレントディレクトリに xlib-1 というバイナリが生成されているが、実行できない。このように、実行したら、何にも出て来なかった。
  
      [root@dm1511 xlib]# xlib-1
        bash: xlib-1: command not found

No. 4067 # 68user 2004/12/20 (月) 22:35:27
>>4066 sqh00
カレントディレクトリにあるバイナリは
    % ./xlib-1
と実行してください (% はプロンプト)。

No. 4068 # sqh00 2004/12/22 (水) 14:30:39
実行ができました。ありがとうございます。

No. 4069 # 68user 2004/12/23 (木) 06:52:27
「ネットワークプログラミングの基礎知識」に
      HTTP クライアントを作ってみよう(6) - Digest 認証編 -
            http://X68000.q-e-d.net/~68user/net/http-auth-2.html
を追加しました。

ところで cnonce は選択平文攻撃への耐性を高める効果があるとかなんとか
知ったかぶって書いてしまいましたが、cnonce がないと具体的にどういう
攻撃ができるんでしょうかね。

差分解読法かなぁと思ったんですが、MD5 に差分解読法って有効なんでしょうか。
あるいは salt 的な意味合いがあるんでしょうか?

いまいちイメージがわかない。

No. 4070 # たなか 2004/12/28 (火) 00:04:48
「ネットワークプログラミングの基礎知識」で勉強させていただいています。
kqueue の説明をみて早速いぢってみました。
サンプルでは kqueue() の戻り値に対して、終了時の処理が何もされていません。
man で調べたたところ、kqueue() の戻り値はファイルデスクリプタと記されています。
init kq = kqueue();
close(kq);
としても、close の戻り値が -1 で閉じることができませんでした。
なので、
init kq = kqueue();
close(kq);
init kq = kqueue();
close(kq);
とすると、kq は 1 回目が 9、2 回目が 10 といったようにインクリメントされてしまいました。
fcntl で kq の情報を取得しようとしてもすべての戻り値は -1 でした。
なんとなく、ファイルデスクリプタとして扱えていないような気がします。
当方は Mac OS X 10.3.7(BSD 4.4 ベースの Darwin) です。
本当の BSD なら、close できるものなのでしょうか。
もし、kqueue の説明を追加する予定があるようでしたら、close または、それに代わる処理も追加してもらえると大変助かります。

No. 4071 # 68user 2004/12/30 (木) 03:31:09
>>4070 たなか
> 本当の BSD なら、close できるものなのでしょうか。
FreeBSD 5.2-RELEASE では close(2) できました。ちなみに
カーネルには queue 用を close するコードも含まれています。

詳しくないので事情はわかりませんが、Mac OS X (Darwin?) の
問題ではないかと思います。

> close または、それに代わる処理も追加してもらえると大変助かります。
echo サーバばかり作っていると終了処理がおろそかになっていけませんね。
「quit」を送ると終了するようにするなど、何かしら考えたいと思います。

No. 4072 # たなか 2004/12/30 (木) 09:44:40
>>4071 68user

どうもありがとうございます。

>> 本当の BSD なら、close できるものなのでしょうか。
> FreeBSD 5.2-RELEASE では close(2) できました。ちなみに
> カーネルには queue 用を close するコードも含まれています。

手元に BSD が動作するマシンがないので、実験できませんでした。
Darwin の問題ですね。Apple に連絡してみます。
下のコードを実行すると次のような結果となります。

kqueue : 3
close(3) : -1
close: Bad file descriptor
kqueue : 4
close(4) : -1
close: Bad file descriptor

------------------------------------------------
#include <stdio.h>

#include <sys/types.h>
#include <sys/event.h>
#include <sys/time.h>

#include <unistd.h>

int
main() {

        int kq;
        int ret;

        kq = kqueue();
        printf("kqueue : %d?n", kq);
        if (kq == -1) {
                perror("kqueue");
        } else {
                ret = close(kq);
                printf("close(%d) : %d?n", kq, ret);
                if (ret == -1) {
                        perror("close");
                }
        }

        kq = kqueue();
        printf("kqueue : %d?n", kq);
        if (kq == -1) {
                perror("kqueue");
        } else {
                ret = close(kq);
                printf("close(%d) : %d?n", kq, ret);
                if (ret == -1) {
                        perror("close");
                }
        }

        return 0;
}
------------------------------------------------

No. 4073 # さいさん 2004/12/30 (木) 18:01:49
サーバがHP-UX11.00で、Bシェルでシェルを書いています。
シェル中で、「ls *.txt」を実行しています。

"*.txt"が存在しない場合、エラーが出力されるので、
「ls *t.xt > /dev/null 2>&1」で、エラーを出さないよう
にしました。

そこで、lsの処理に"grep -v"を追加し、"*.txt"がない
状態にすると「*.txt がみつかりません。」がでます。

ls *t.xt | grep -v "kekka" > /dev/null 2>&1

エラーがでないようにするにはどうしたらよいのですか。

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