Perlなんですが・・・
■ このスレッドは過去ログ倉庫に格納されています
0001初心者
01/09/11 15:56ID:9.SKwdnsPerlの質問に答えてみようと思います
とりあえず my は使ったほうがいいみたいです
よろしくお願いします
0002名無しさん@お腹いっぱい。
01/09/11 15:59ID:???0003名無しさん@お腹いっぱい。
01/09/11 16:09ID:???0004初心者
01/09/11 16:11ID:9.SKwdnsそんなに驚かないでください。
0005名無しさん@お腹いっぱい。
01/09/11 16:26ID:???でも、初心者師ねな人にはウザイからサゲでこっそりヤローヨ(・∀・)
0006名無しさん@お腹いっぱい。
01/09/11 16:39ID:???0008名無しさん@お腹いっぱい。
01/09/11 17:21ID:???それでも物足りないなら他のBBSに投稿されている質問に答えてやれ。
そうすることがこの板の住民にとってもアンタにとっても困っている厨房にとっても最も幸いだ。
-完-
0009初心者
01/09/11 18:12ID:???オイこら、初心者だからってなめてんじゃねェよ
答えってやるって言ってんだ
ゴタゴタぬかす前に早く質問晒せよヴォゲ!
0010名無しさん@お腹いっぱい。
01/09/11 18:14ID:???0011名無しさん@お腹いっぱい。
01/09/11 18:18ID:???教えろや(´Д`)コルァ
0013名無しさん@お腹いっぱい。
01/09/11 18:32ID:liJMw8bE0014名無しさん@お腹いっぱい。
01/09/11 18:38ID:???0015初々しい人
01/09/11 18:41ID:???0016名無しさん@お腹いっぱい。
01/09/11 18:46ID:???可逆暗号の基本として排他的論理和(xor)を使うのがあるけど
0017名無しさん@お腹いっぱい。
01/09/11 19:11ID:???教えてください。
0018初心者
01/09/11 19:42ID:9.SKwdnslibcryptの実装によって暗号化アルゴリズムは違うようです。
crypt(3)を呼び出してるだけのようですのでPerlとは直接関係ないです。
>>11
ソースを読んでくださいそれが実装です。
perldoc perlguts も参考になるかもしれません。
>>12
範囲が広すぎです。
Perlでオブジェクト指向を実装するには?ってことですか?
オブジェクト指向の概念ということだとスレ違いです。
>>15
すでにあるようです。
http://search.cpan.org/Catalog/Security/
ここでCrypt:: で始まるモジュールで好きなの選んでください。
使い方がわからなかったらまた聞いてください。
>>17
すみません。
Cはあまりやったこと無いのでxsについてはあまり知りません。
perl perlxs が参考になりそうです。
0019名無しさん@お腹いっぱい。
01/09/11 19:47ID:???感動した!
------------------------------終了------------------------------
0020名無しさん@お腹いっぱい。
01/09/11 19:54ID:???もう一度taintし直すことはできますか?
おしえて初心者さま
0023初心者
01/09/11 20:21ID:???use re 'taint'; も使えます。
マッチさせた値のtaintをそのまま維持するようです。
0024名無しさん@お腹いっぱい
01/09/11 20:27ID:???002520
01/09/11 20:41ID:???今日初めて
man re
してみました。勉強になります。
ただ、今回は一旦evalする必要がある
ので、taintは除去しなきゃいけませ
ん。
いずれにせよありがとうございます
>>初心者さま
0026初心者
01/09/12 19:06ID:y/zpkkrk質問してください。
0027お願いします
01/09/13 01:01ID:???例えばほぼ同時にperlが動いた場合などどの程度同時起動すると止まるんでしょうか
0028名無しさん@お腹いっぱい。
01/09/13 02:32ID:???Apache の MaxClients ディレクティブの設定によって、
CGI起動のプロセス数は制限されるでしょう。
その前に色々なシステムのlimit、
たとえばメモリやファイルのオープン数、に達すれば当然止まるでしょう。
いずれにせよ、環境次第です。
0029初心者
01/09/13 02:33ID:skA46.9M0030_gunzip
01/09/13 06:51ID:???Configureの途中、libperl.soのダイナミックリンクを利用する
方を選択すると、実行モジュールのサイズが小さくなるし、
複数のperlインタプリタでイメージを共有できるので、
結果として,mmap()コールで実行ファイルをメモリににマッピング
する際のオーバヘッドの減少、ディスク/スワップ領域の利用効率の向上、
物理メモリの節約等のメリットがあるね。
(....デフォルトでは実行速度向上のために利用しないようになっているけど)
0031名無しさん@お腹いっぱい。
01/09/13 09:22ID:???0032_gunzip
01/09/13 15:51ID:???Perlのハッシュは分離連鎖法(separate chaining)で、ハッシュ値が衝突した場合リンクリストで繋いでいく方式。
詳しくはhv.cを読めば分かるよ。
#ちなみに、Perl5.7.2からはハッシュ関数が変更されています。
0034名無しさん@お腹いっぱい。
01/11/07 02:11ID:szSo57Rpできれば日本語がよいのですが。
スレ違いですが、DDEに関して教えてくれるスレ知りませんか?
0035初心者
02/01/07 23:41ID:uQai8xGp0036名無しさん@お腹いっぱい。
02/01/08 22:29ID:???0037名無しさん@お腹いっぱい。
02/01/09 17:51ID:???また、どうしてもevalを使う必要があるときの、
攻撃回避方法も教えて下さい。
0038名無しさん@お腹いっぱい。
02/01/09 18:00ID:???よろしくお願いします。
0039名無しさん@お腹いっぱい。
02/01/09 18:04ID:???0040名無しさん@お腹いっぱい。
02/01/09 18:57ID:???俺に教えてみたまえ。Perlという言語はそもそも電気ストーブの開発の為に
考案された言語なのだよ。つまりこの質問に答えられないようならPerlについて何も理解していないということだ。
0041名無しさん@お腹いっぱい。
02/01/09 18:58ID:bJedpWRuメールアドレスをパラメータにしてCGIに渡したいのですが、
このメールアドレスを暗号化した状態(つまり見ても分からない)で
CGIに渡したいです。 それで渡した後、暗号を複合化して
メールアドレスを使いたいです。
CRYPT関数は複合化できないし・・・
どうしたらよいのでしょうか?
0042名無しさん@お腹いっぱい。
02/01/09 19:02ID:???0043親切な人
02/01/09 19:07ID:???ヤフーオークションで、幻の人気商品、発見!!!
今は無き「コピーガードキャンセラー」↓
http://page5.auctions.yahoo.co.jp/jp/auction/e5292701
ヤフーオークション内では、現在、このオークション
の話題で、持ちきりです。
0044名無しさん@お腹いっぱい。
02/01/09 19:07ID:bJedpWRuあの・・具体的に教えていただけると
ありがたいのですが・・・
関数とかないのですか?
0045名無しさん@お腹いっぱい。
02/01/09 19:18ID:???http://search.cpan.org/doc/DPARIS/Crypt-DES-2.03/DES.pm
0046名無しさん@お腹いっぱい。
02/01/09 19:31ID:bJedpWRuありがとうございます
my $key = pack("H16", "0123456789ABCDEF");
my $cipher = new Crypt::DES $key;
my $ciphertext = $cipher->encrypt("plaintex"); # NB - 8 bytes
print unpack("H16", $ciphertext), "\n";
exampleにあったこれでしょうか?
これで0123456789ABCDEFの所にメールアドレスをいれて暗号
化するのですか?
0047初心者
02/01/10 14:45ID:h2cHbHUkevalは引数をコードとして実行する関数です。
例えば、
$code = q{ $foo = 'bar'; };
eval $code;
だと$foo に'bar'が代入されます。
実行するコードを実行時に変化させたい場合によく使います。
ブロックを引数にするevalもあって
eval { $foo = 'bar'; }
はさっきのコードと同じことをしますが、実行するコードは変えられません。
何に使うのかと言うと、evalで実行時エラーをトラップできるので
例外処理によく使われます。
>>37
単純な例で例えば、CGIのクエリーをそのままevalに渡してしまう例、
use CGI;
$q = CGI->new();
eval $q->query('code');
とすると、攻撃者は任意のコードを実行できてしまいます。
回避方法としては汚染チェックをきちんとすることです。
それさえやっていれば、別にevalの使用を恐れることはないでしょう。
0048名無しさん@お腹いっぱい。
02/01/10 14:48ID:???おお!ありがとう初心者たん。
0049名無しさん@お腹いっぱい。
02/01/10 18:51ID:iKOVjCBfplaintexの方ね。
0050名無しさん@お腹いっぱい。
02/01/10 20:48ID:???0051名無しさん@お腹いっぱい。
02/01/10 21:01ID:???.htaccessにこう記載する。
<Files *.cgi>
order deny,allow
deny from all
</Files>
0052名無しさん@お腹いっぱい。
02/01/10 21:03ID:???きしょっ!
0053眼鏡オタですが何か?プ)
02/01/10 23:42ID:???痩せろ
0055名無しさん@NEmacs
02/01/11 01:49ID:fZtnJrfWアスカ様ハァハァ。
>>53
http://www.google.co.jp/search?q=Perl+%89%98%90%F5%83%60%83F%83b%83N&hl=ja
0056初心者
02/02/01 23:49ID:GSMdD5I40057名無しさん@お腹いっぱい。
02/02/02 11:07ID:???上げただけじゃない・・・w
0058名無しさん@お腹いっぱい。
02/02/03 11:44ID:???0059名無しさん@お腹いっぱい。
02/02/03 11:53ID:6O2qk++F0060名無しさん@お腹いっぱい。
02/02/03 15:25ID:???”名無しさん@お腹いっぱい”
なんですか?
0061名無しさん@お腹いっぱい。
02/02/03 17:22ID:???「名無しさん」を変えてないからだよ。
0062名無しさん@お腹いっぱい。
02/02/04 03:23ID:sAx7lHcmperlってなんですか?
0063初心者
02/02/04 04:03ID:g/ay00KkPerlで書かれたスクリプトを実行するコマンドです。
0064名無しさん@お腹いっぱい。
02/02/04 09:42ID:t9Gb2AU10065名無しさん@お腹いっぱい。
02/02/04 09:52ID:t9Gb2AU1まぎらわしいのでHNを中級者に変えません?
0066名無しさん@お腹いっぱい。
02/02/04 11:49ID:fnAmBNHz以下のスクリプトですが
#! /usr/bin/perl # お約束
# 私のスクリプトそのままです(編集はしてません)
$TMP = 10 ** 10; # $TMP に10の10乗を代入
$X = 10; # $X に10を代入
while ($TMP) # $TMPが0になるまで繰り返し処理
{$A = --$TMP % $X; # $TMPの値を-1し、$Xの剰余を$Aに代入
print "$A $TMP \n";}# 処置した値を画面に表示
上記のスクリプトですが、表示される$Aの値が変化しません
5 999999999
5 999999998
5 999999997 ......
$Xの値が1だと$Aは0で固定
$Xの値が2だと$Aは1で固定
$Xの値が3だと$Aは0で固定
$Xの値が4だと$Aは3で固定
$Xの値が5だと$Aは0で固定
$Xの値が6だと$Aは3で固定
$Xの値が7だと$Aは3で固定
$Xの値が8だと$Aは7で固定
$Xの値が9だと$Aは3で固定
私の知識が正しければ、$TMPの値を$Xで割った余りの数値が表示され
1行ごとに値が変更されると思うのですが。。。
どこか間違っているのでしょうか
識者の皆様、ご回答をお願いします
0067名無しさん@お腹いっぱい。
02/02/04 12:00ID:???「皆様」に聞きたいなら初心者スレに書け。
ここは>>1に聞く為のスレだ。
>1行ごとに値が変更されると思うのですが。。。
固定されないが。
0068初心者
02/02/04 13:31ID:g/ay00Kk必要性と言われても・・というのが正直なところです。
何らかの必要性があるからmyやlocalが存在するのでしょう。
一般的にグローバル変数は少ない方がいいとされています。
ソースを他人に見せるときや、昔書いたソースを見直すとき、
グローバル変数が無い方が理解しやすいです。
>>65 初心忘るべからず。
>>66
Perlのバージョンはいくつでしょう?
http://www.perldoc.com/perl5.6.1/pod/perldelta.html#Core-bug-fixes
の3項目、
Integer modulus on large unsigned integers
sometimes returned incorrect values.
と言うわけで、Perl5.6.0以降を使いましょう。
006966
02/02/04 13:53ID:???ご回答ありがとうございました
確認してみたところ、確かに、バージョンが古すぎました
(5.005_03)
$TMPの値を10**10 から 10**9 に変更して実施してみたところ
正常に動作することを確認しました
ご回答、ありがとうございました
0070名無しさん@お腹いっぱい。
02/02/04 20:08ID:+YaLpde/老婆心ながら
変数名を3文字に統一しないなら「TMP」は「TEMP」にした方が良いね。
あと、66のスクリプトなら「$A]と「$X]の変数名は逆にしようよ
一番良いのは
$TEMP => $I(カウント変数)
$A => $X(計算値変数)
$X => $A(定数)
細かいけど、癖にしてたほうが後で役に立つよ
0071名無しさん@お腹いっぱい。
02/02/04 20:11ID:???0072名無しさん@お腹いっぱい。
02/02/04 20:39ID:???自分の知ってる範囲で決めた命名法ほど迷惑なものは無い
# 人に押し付ける事なかれ
0073名無しさん@お腹いっぱい。
02/02/04 20:40ID:nACYCDdm0074名無しさん@お腹いっぱい。
02/02/04 23:04ID:???暗黙の了解化してるな。
$i使うのがカッコイイとか思って使ってきたけどね。
0075名無しさん@お腹いっぱい。
02/02/04 23:18ID:???こないだこれではまりそうになった。
0076名無しさん@お腹いっぱい。
02/02/04 23:21ID:???と、言うと?
$1みたいに何か意味のある変数?
0077名無しさん@お腹いっぱい。
02/02/04 23:30ID:???0078名無しさん@お腹いっぱい。
02/02/04 23:33ID:???勉強になります。
sortってuniqの前準備に、
@list = sort(@list);
でしか使ったこと無いから知らなかったです。
sortも独自の書式使いますね。
sort{a <=> b}こんなん。
0079名無しさん@お腹いっぱい。
02/02/05 01:29ID:ucr4R94I記憶違いだったら本当にごめん
sort文で使用される$a,$bは、完全にsort文だけの中で仮想変数で
外部の変数とは別扱いではなかったでしょうか?
初心者なんで激しいはツッコミは勘弁して下さい
008079
02/02/05 01:30ID:???0081名無しさん@お腹いっぱい。
02/02/05 02:06ID:???0082名無しさん@お腹いっぱい。
02/02/05 02:19ID:???パパパパンパンパッパー
79はレベルがあがった!
0083615
02/02/05 02:55ID:???use strict;
$a = 100; #エラー出ない
これでModification of read-onlyが出ないと場合によっては嵌る事に
なるのかと
Perlはstrict+wスイッチが大前提だから、そんなに神経質になる程じゃ
ないと思いますが。
0084名無しさん@お腹いっぱい。
02/02/05 02:56ID:???615は無視してくだされ。。
0085617 (←違う)
02/02/06 18:40ID:hdNADrgP特定のLAN接続端末のIPアドレスを指定して
そのMACアドレスを知る方法が知りたい、教えれ
これは避けたいです
system "traceroute $IP_ADDR";
@MAC_ADDR = `arp $IP_ADDR`;
0086名無しさん@お腹いっぱい。
02/02/06 20:04ID:???0087名無しさん@お腹いっぱい。
02/02/06 22:13ID:???データリンク?IP使うからネットワーク?
socketは使えないからポート直接操作になるんでしょうか?
008885
02/02/06 22:24ID:hksal3H7arpは、確か操作端末のスタックメモリーの内容を表示するだけの命令だったと思います
直前に、目的のマシンとTCP/IP通信をしないと情報が得られませんし・・。
0089名無しさん@お腹いっぱい。
02/02/06 22:31ID:???親切にありがとうございました。勉強し直してきます。
0090@@@@@@@
02/04/21 09:12ID:???0091nobodyさん
02/11/28 08:20ID:ArDOlCQW0093初心者
02/12/09 01:21ID:vZ/rPhuU0094山崎渉
03/01/15 13:42ID:???0095Name_Not_Found
03/02/17 18:28ID:Kv+xH8ZL0096山崎渉
03/03/13 17:14ID:???0097山崎渉
03/04/17 12:24ID:???0098山崎渉
03/04/20 06:09ID:???( ^^ )< ぬるぽ(^^)
0099山崎渉
03/05/22 02:12ID:???0100山崎渉
03/05/28 17:15ID:???ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
0101nobodyさん
03/07/09 05:25ID:???ActivePerl5.6.1.635とAnhttpdでプログラムを
試しているのですが<STDIN>をプログラムに入れると
固まってしまいます。Anhttpdでプログラムを試している
方はどういう風になさっているんでしょうか。
0102山崎 渉
03/07/15 11:19ID:???__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0103山崎 渉
03/08/02 02:33ID:???( ^^ )< ぬるぽ(^^)
0104ぼるじょあ ◆ySd1dMH5Gk
03/08/02 05:10ID:???ピュ.ー ( ・3・) ( ^^ ) <これからも僕たちを応援して下さいね(^^)。
=〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
= ◎――――――◎ 山崎渉&ぼるじょあ
0105nobodyさん
03/08/03 21:44ID:???#! C:/perl/bin/perl
print "Content-type: text/plain\n\n";
print "HELLO!\n";
print <STDIN>;
こんなんでも動くけど。
ActivePerl5.6.1 build631とAnhttpd1.42h
0106山崎 渉
03/08/15 23:11ID:???│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0108('x')
04/05/07 23:03ID:???0109nobodyさん
2006/06/26(月) 23:02:43ID:???おまえな〜。2ヶ月も前の投稿にレスすんじゃねーよ。
と言いつつ3年前の投稿にレスしてみる。
この板って圧縮されないのかね〜。
0110nobodyさん
2006/10/25(水) 21:59:11ID:thTrAQ7o絶対GPLのライブラリとか使ってると思うんだが…
0111nobodyさん
2006/10/26(木) 22:44:05ID:???0113nobodyさん
2010/04/24(土) 14:20:54ID:???>>110
>絶対GPLのライブラリとか使ってると思う
思うのは自由ですが、どの部分なのかをソースを見て教えて
欲しい。
付き合うからさ。
で、だとしたら何なの?
∧_∧
( ・∀・) | | ガッ
と ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`Д´)/ ←>>98
(_フ彡 /
0116nobodyさん
2013/10/29(火) 22:01:21.71ID:z4zTbkHZ■ このスレッドは過去ログ倉庫に格納されています