ご存知の方おられましたら、ご教授ください。 環境OSは、Win2000です。 OpenSSLライブラリを利用したDER形式の鍵ファイルの読み書き方法を実装方法が わかりません。i2d_RSAPrivateKey、d2i_RSAPrivateKeyを利用し、ファイル出力 をしてみましたが、_fp付きはエラーです。(_bio付きはOK) また、ここで出力された鍵ファイルは、OpenSSLでは、暗号/復号可能です。 しかし、他社製品(RSA BSAFE)では、鍵ファイル読み込みエラーとなります。 rsaコマンド等で変換作業を行うと読み込み可能となり、暗号・復号ができます。 なんだか理解できません。 以上、宜しくお願い致します。 |
>>4081 しょしん 暗号に関する一般的な質問も受け付けていません。 ■暗号技術【ROUND2】■ http://pc5.2ch.net/test/read.cgi/tech/1088530204/l50 などで質問してください。 - OpenSSL のバージョンくらい書きましょう。 - 何を知りたいのか不明。_bio 付きで出力して、rsa コマンド等で 変換して、RSA BSAFE で読み込めているんなら別にいいのでは。 例えば「rsa コマンドに頼りたくない」「なぜ rsa コマンドを 使わなければいけないのかわからないので、解説してほしい」 などと書くべき。 - 単に _fp 付きはエラーと言われても、「コーディングミスでは?」 くらいしか返す言葉はありません。つーか、ソースくらい提示しましょう。 |
内容不備&質問場所違いでした。 大変失礼しました。 撤収します。 |
CGIでmkdirとかmountとかを呼び出す方法をご教授願います。 サーバー上でプログラムを実行させたいのですが、動作しませんでした。 C言語にてCGIプログラムを作っています。 execveを使用してもうまく動作しませんでした。 ------- test.c (test.cgi) ----------------------- #include <stdio.h> int main() { char *argv[3]; argv[0]="/bin/mkdir"; argv[1]="test"; argv[2]=NULL; int pid=fork(); if(pid==0){ execve(argv[0],argv,NULL); perror("execve"); exit(0); } return 0; } |
↓↓ #include <unistd.h> が抜けていました。 よろしくお願いします。 |
はじめまして。 いつも「UNIXの部屋」を利用させていただいています。 awkコマンドのところですが、誤字がありましたのでお知らせさせていただきました。 **************************************************************** 特殊なパターンとして BEGIN と END がある。BEGIN は最初に実行され、END は最後に実行される。 % ls -l | awl 'BEGIN { print "START!"} {total+=$5; print $9} END {print "size total="total} ' **************************************************************** 1つ目のパイプの後の「awk」が「awl」になっています。 「awkのエイリアスです。」なんていわれたら、どうしようもありませんが…。 取り急ぎ、ご連絡までに… |
>>4086 たらい 修正いたしました。ご指摘ありがとうございました。 http://X68000.q-e-d.net/~68user/unix/pickup?awk |
ライセンスについて質問です。 このサイトにあるコードはフリーソフトウェアと考えてよいでしょうか。 チュートリアルサイトなのでコードを自由に利用してよいだろうとは思ったのですが、 念のため確認させてください。 具体的にはecho-server-select.cを参考にしながらプログラムを書いたのですが、 将来それをフリーソフトウェアとして配布したいと考えています。 問題ないですよね? 問題あるなら空で書けるように修行してやり直すことになるのですが…。 ちなみに作っているものはこれ http://humming.dip.jp/bardic/ でネットゲームのようなものです。 よろしくお願いします。 |
>>4088 tansy > 将来それをフリーソフトウェアとして配布したいと考えています。 > 問題ないですよね? はい、問題ありません。ただしエラーチェックが甘めなので、それを踏まえた上で お使いください。 ついでなのでライセンスを明確にしたいと思います。 わたしが書いたプログラムは、特に明記していない場合は修正 BSD ライセンスと します (現時点で修正 BSD ライセンス以外のライセンスを適用しているプログラム はありません)。 わたしが書いた文章は、フリーではありません。ただし (言うまでもありませんが) 著作権法における引用は可です。 |
>>4089 68user 修正BSDライセンスであること了解しました。 > ただしエラーチェックが甘めなので、それを踏まえた上でお使いください。 了解です。 ありがとうございました。 |
はじめまして。今卒業研究に必死に取り組んでいるんですけども、 ソケットプログラミングがよく分かりません・・・ sendやrecvなどを使って、更新されていくデータを一定時間 ずーっと送信、もしくは受信ってできますか? 研究室も誰もいないし、聞けるのはみなさんしかいません。うう。 どうかお願いします。 PS.焦っているので、他の掲示板などでも同様の書き込みをするかもしれません。 ここが最初ですが、もし他の掲示板から何かいいアドバイスをいただけましたら、 すぐに反映させていきたいと思います。よろしくお願いします。 |
亜紀さん 質問の内容が漠然としているので、ちょっと答えずらいのですが。。。 一定時間ずっと、送信もしくは受信することはできますよ。 まあ、ソケットはありふれたものなので、インターネット上を検索すれば、 ソースコードの例は簡単に見つかると思いますよ。 ソケット、socket、ソースなどのキーワードで検索すれば簡単に見つかるかも。 焦る気持ちはわかりますが、同じ質問を複数の掲示板に書き込む行為は良く ないので、やめたほうがいいですね。 では。 |
JAVA から cシェルを実行したいのですが どのように記述すればよいのでしょうか。 Runtime rt = Runtime.getRuntime(); String[] command = {"/root/scripts/t.csh"} ; Process process = rt.exec(command); と記述しておりますが、実行できず困っています。 |
UNIXのシェルスクリプトについて教えて下さい。 OSは、HP-UX11.00です。 ファイル中に存在するある文字列をsedを使用して置換して いるのですが、sedで置換を行うとき条件を指定して実行する ことはできるのでしょうか。 id: u=aaaa.bbbb,o=co.jp,o=1234,code=vip aaaaaa,bbbb,code=vip,code=ip bbbbb,bbbb id: u=aaaa.bbbb,o=co.jp,o=1234,code=vip aaaaaa,bbbb,code=vip,code=ip bbbbb,bbbb id: u=aaaa.bbbb,o=co.jp,o=1234,code=vip aaaaaa,bbbb,code=vip,code=ip bbbbb,bbbb id: u=aaaa.bbbb,o=co.jp,o=1234,code=vip sed 's/code=vip$/code=normal/g' ファイル名 とすると「code=vip」がある行に対して置換が行われます。 先頭が、"id: "から始まる行のみ「code=vip」を「code=normal」に 置換したいのですが、sed1回で可能でしょうか。 それとも、作り込みが必要でしょうか。 |
Solaris8のcshについて教えて下さい。 nawkを使用しているのですが、1行での表記が長いので手頃なところで改行 して見易いように複数行にしたいのですが、その場合、これは、1行の処理 ですと認識させたいのですが、どのようにすればよいのですか。 ¥、&、$とかつけてみたのですが、「Unmatched '」がでてしまいます。 お願いします。 #!/usr/bin/csh # set sys_no = "99" set aaa=`nawk -v NO=$sys_no -F":" '/^[ \t]*#START/,/^[ \t]*#END/ \ { if (substr($1,1,1) != "#" && substr($1,1,2) == NO) print $2 }' list.txt` echo $aaa |
>>4094 とも sed -e 's/^\(id.*code=\)vip/\1nomal/' file とか sed -e '/^id/ { s/code=vip$/code=normal/ }' file あたりでできます。 >>4095 ばんじょう 「\\」でいけたと思います。 ・・・正直cshはやめた方が良いと思いますが・・・ |
>4096 >「\\」でいけたと思います。 でやってみましたが無理でした。 動きはしましたが、nawk内の条件が無視され全て取り出されました。 ふと、もう1個ふやしたらどうなるのだろうと、「\\\」でやって みたところ上手くいきました。いった模様です。 しかし、変ですね。怖い環境、怖いcshだと。 >・・・正直cshはやめた方が良いと思いますが・・・ ということは、shとかbashですか。 Solarisは、bashが多いですが・ |
>>4096 zsh >sed -e 's/^\(id.*code=\)vip/\1nomal/' file では、上手く行きました。 >sed -e '/^id/ { s/code=vip$/code=normal/ }' file では、 sed: 関数 /^id:/ { s/code=vip$/code=normal/ } はパースできません。 となりました。 |
>> 4096 参考に、sedで使用している 「's/^\(id.*code=\)vip/\1nomal/' 」 「'/^id/ { s/code=vip$/code=normal/ }' 」 の使い方について教えて下さい。 |
>>4098 とも }の前に改行を入れないと動作しません。 (実装しているsedの違いかもしれませんが。) >>4099 やまげん 説明下手なので、この辺を参考にしてください。 ttp://pegasus.rutgers.edu/~elflord/unix/sed.html |
>>4100 zsh >説明下手なので、この辺を参考にしてください。 >ttp://pegasus.rutgers.edu/~elflord/unix/sed.html 英語なんですね。 |
>>4101 やまげん それじゃあ簡単に。 "\("と"\)"で囲まれた部分にマッチした文字列は、 変数に格納され、順番に\1,\2で取り出す事が可能です。 /Pattern/ { command } でPatternに一致した行に対してcommandを実行します。 こんな感じですかね。 正直、自分の解釈が間違っている可能性があるので、 あまり人に教えることはしないのですが。。。 |
はじめまして、高島屋です。 solarisでC言語にてアプリケーションを作成する際の、1プロセスが可能なファイルオープンのMAX値について教えていただけないでしょうか? 実際にopen可能な、、と言う意味ではなく、「メーカで保障されている」MAX値を調査しています。 利用しているコンパイラは「SunOneStudio8」。 まず、当方で調査した結果を報告致します。 ・ANSI規格の規格では8以上とされている。(「新ANSIC言語辞典」技術評論社→コンパイラに対して8以上を保障しなさいと言う意味だと思います) ただし、/usr/include/isostdio_iso.hでは、FOPEN_MAX=20と設定されている。(CPU=SPARK) ・solris limit,sysdefコマンドで確認した所、 limitコマンドでのファイル記述子の最大数は256。 sysdefコマンドのfile descriptorsに関する、"process Resource Limit"の値も共に256。 実際に1プロセスで256ファイル以上をオープンすると、それ以降のファイルオープンが失敗しました。 ・その他 システム全体で同時open可能なファイルの最大数があるのかは不明(調査不足) なお、sysdefコマンドで確認した所、maximum number of process = 30000 maximum processes per user id = 29995の制限値が設定されていました。 ただ、上記はあくまで、実際に設定されている値で、それぞれのメーカーが保障している値ではありません。 SunOneのマニュアルからも最大値の記述は読み取れませんでした。(調査不足?) Q1.FOPEN_MAXの20と言うのは何に利用されているかご存知ですか?CPUにより異なる様なのですが。。 プロセスを最大数立ち上げた際にオープン出来るファイルの最大数と言う事なのしょうか? Q2.コンパイラごとに異なるものなのでしょうか?OSやCで決まるものなのでしょうか? 何を基準に(c?solaris?コンパイラ?)マックス値を調査すればよいのでしょう? Q3.漠然とした質問で申し訳無いのですが、上記の様なファイルオープン数のメーカーからの保障について、どなたかご存知ですか? 以上、拙文で申し訳ないのですが、ご存知の方ご教授下さい。 |
質問は受け付けないって書いてあるのに、変わった人たちですね。 まぁいいですけど。 > Q1.FOPEN_MAXの20と言うのは何に利用されているかご存知ですか? Solaris8 の stdio(3) には以下のように記述されています。 The integer constant FOPEN_MAX specifies the minimum number of files that the implementation guarantees can be open simultaneously. JIS X 3010 (C99 相当) には以下のように記述されています。 FOPEN_MAX は、同時にオープンできることを処理系が保証するファイル 数の最小値をあらわす整数定数式に展開する。 なお、FOPEN_MAX は最大値ではなく最小値です。「少なくともこれだけは オープンできる」という値です。 FOPEN_MAX が具体的にどう使われているか、という話であれば、処理系 依存です。たとえば FreeBSD であれば libc において static FILE usual[FOPEN_MAX - 3]; などと使われており、リソースを確保しなおすことなくオープンできる ファイル数が FOPEN_MAX である、という形になっているようです。 Linux などで使われている glibc においては FOPEN_MAX を一切使用して おらず、意味のない値になっています。Solaris はソースを持ってないので 知りません。 > Q2.コンパイラごとに異なるものなのでしょうか?OSやCで決まる > ものなのでしょうか? 何がですか? FOPEN_MAX が? > Q3.漠然とした質問で申し訳無いのですが、上記の様なファイルオープン数の > メーカーからの保障について、どなたかご存知ですか? 「保証する値」にこだわるのであれば、メーカーに問い合わせるのが 一番かと思います。 |
http://x68000.q-e-d.net/~68user/net/http-auth-2.html にある「クライアント対応状況」ですが、apache本体(2.0.51以降)に パッチが取り込まれています。 http://httpd.apache.org/docs-2.0/mod/mod_auth_digest.html#msie ご参考まで。 いつも勉強させてもらってます。 これからもすばらしいコンテンツ期待しています。 |
Solaris8のshについて教えて下さい。 shでシェルを書いています。 もともとは、HP-UX11.00で動かしていたのをSoralisに移しました。 位置パラメータを使ってlsの結果(個数)を取得し、ファイルが存在 しているか、存在しないかのチェックをしています。 ファイルが存在しないときは、不要なメッセージを出力しないように もしています。 その際、ファイルが存在しなった場合、0件として終了してくれません。 位置パラメータの個数が"1"で取得されます。 引数で、チェックするディレクトリを判断するためのパラメータを渡して いるのですが、どうやらこの引数や値が引き継がれているみたです。 上手く処理するにはどうしたらよいのですか。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー #!/bin/sh # PATH=${PATH}:/usr/bin:/etc:/usr/ccs/bin:/usr/local/bin:.; export PATH TZ=JST-9; export TZ if [ $# -lt 1 ] ; then echo "Parameter Error" echo "$0 Processing MODE [R:real/B:batch]" exit 1 fi mode=$1 if [ ${mode} = "R" ] ; then DIR="/tmp/real" elif [ ${mode} = "B" ] ; then DIR="/tmp/batch" else echo "Processing MODE Error" echo "Processing MODE = [R:rela/B:batch]" exit 1 fi cd ${LDIF_DIR} set -- `ls *.txt 2>/dev/null | grep -v "_kekka_"` if [ $# -eq 0 ] ; then echo "Ldif File Nothing Today" exit 1 fi echo $* cnt=$# echo ${cnt} |
>>4105 tkb > 「クライアント対応状況」ですが、apache本体(2.0.51以降)に > パッチが取り込まれています。 これは知りませんでした。早速追記しました。 http://x68000.q-e-d.net/~68user/net/http-auth-2.html ご教示ありがとうございました。 |
>>4106 さいさん > 引数で、チェックするディレクトリを判断するためのパラメータを渡して > いるのですが、どうやらこの引数や値が引き継がれているみたです。 位置パラメタは「set --」でクリアできますが、本当に引数を引き継いでいますか? (「echo $*」部分で引数が出力されてますか?) |
>>4108 zsh >(「echo $*」部分で引数が出力されてますか?) 起動時に渡した、RまたはBが表示されます。 「echo #?」も1と表示されます。 |
「UNIX の部屋」を更新しました。 http://X68000.q-e-d.net/~68user/unix/ |
>> 4109 #!/bin/sh -> #!/bin/ksh man sh man ksh |
>>4112 zsh Solaris8入ってるマシン3台くらいで確認したんですけど shでも通常はそんな動作にはならないんですよ。 一度 set -- でリセットした方が確実かなと思います。 |
× >>4112 zsh ○ >>4111 んー 失礼しました。 |
Tee の説明文中 find . -name a\* だと a から始まるファイル名が返って来ますよね. |
>>4112 zsh >一度 >set -- >でリセットした方が確実かなと思います。 とやってみたんですが、かわりなしです。 |
>>4114 野暮天 ご指摘ありがとうございます。修正しました。 http://X68000.q-e-d.net/~68user/unix/pickup?Tee |
>>4115 さいさん じゃあshiftで一つずらしてください。 |
質問はダメみたいですが、どうしてもできないので、誰か教えてください。。 http://x68000.q-e-d.net/~68user/net/pop3-1.html を実際にやってみたんですが、 POP3サーバ名、ポート番号で、接続できました。 そして、USERも接続できたんですが、PASSだけが接続できません。 ちゃんと手順通り(パスは合ってる)にやっているんですが、、なぜでしょうか? 誰か教えてください。POP3サーバー名は、pop.mail.yahoo.co.jpです。 エラー内容は、-ERR invalid user/password もう1個えらー内容がでました。 -ERR command valid only in authorization state. |
>>4118 ヘルプ 私は Yahoo! のメイルアカウントを持ってないので何ともですが、 http://help.yahoo.co.jp/help/jp/mail/pop/pop-03.html を参考にしてありがちなミスを考えると、USER 名が小文字になってないとか。 |
ネットワークプログラミングの基礎知識 http://X68000.q-e-d.net/~68user/net/ に Java で HTTP クライアントを作ってみよう (1) http://X68000.q-e-d.net/~68user/net/java-http-socket-1.html Java で HTTP クライアントを作ってみよう (2) http://X68000.q-e-d.net/~68user/net/java-http-url-connection-1.html Java で HTTP クライアントを作ってみよう (3) http://X68000.q-e-d.net/~68user/net/java-http-url-connection-2.html を追加しました。 |