プログラム

Linux で TCP クライアントを実装する上での注意点・初級編

「ソケットを直に触るプログラムを書くのは初めてなんですが、何かアドバイスないですか?」みたいなことを聞かれたので、入門書には載ってなさそうな注意点をまとめてみる。 とは言っても、私自身、直にソケットを叩いて C や C++ でプログラムを書いていた…

100までの素数@シェルで 1-liner

http://ll.jus.or.jp/2006/blog/doukaku1 より。 1週間遅れてるけど、短さで勝負。 seq 2 100 | factor | awk 'NF == 2 {print $2}'GNU coreutils と awk が必要。 factor なんていうマイナーなコマンドを知ってるかどうかだけなので、プログラムとしては味…

cronolog -S

cronolog の usage には usage: cronolog [OPTIONS] logfile-spec (snip) -S NAME, --symlink=NAME maintain a symbolic link from NAME to current logとか書いてあるのに、うちの環境では、古い symlink がリンク切れのまま放置されてるのをよく見かける。…

MD5 Collision Generation

http://www.stachliu.com/collisions.html 昨年大きな話題になった MD5 ハッシュコリジョンの実証プログラム。 実行方法は簡単で、コンパイルして引き数なしで実行して(CPU にもよるが)数十分待つと 128バイトのデータ列が2つ表示される。*1で、その 2 つの…

gonzui - perl 用 langscan モジュールの改造

gonzui 付属の Perl 用 langscan モジュールの挙動がいろいろ気になったので、改造して使っている。改造点は以下。 PPI::Symbol 関連。 sigil (先頭記号)を取り除いたものを ident と見なすようにした。*1 sigil が '&' の場合、funcall と見なすようにした…