Monthly Archives: 5月 2006

portsnapの罠

Pocket

先日の日記でも少し触れたportsnap。日記ではさらりと書いているが実はすごく苦労した。

最終的にあのような結論に至った訳だが、今回、別のマシンに6.0-RELEASEを入れて分かったことがある。もう少し早く気づけばよかった。

6.0-RELEASEのportsnapでは、認証が必要なPROXY越えは出来ない。

その後、いくつか修正が入ったものの、本当の意味で使えるようになったのは6.1-RELEASEから。

5系列では、5.4-RELEASE、および3/9より以前の5-STABLEも同様にPROXY越え不可。

6系列におけるphttpget.cのバージョンを下記に示す。

6.0-RELEASEのもの。

__FBSDID(“$FreeBSD: src/usr.sbin/portsnap/phttpget/phttpget.c,v 1.4.2.1 2005/08/15 20:24:08 cperciva Exp $”);

6.1-RELEASEのもの。

__FBSDID(“$FreeBSD: src/usr.sbin/portsnap/phttpget/phttpget.c,v 1.4.2.5 2006/03/09 17:08:41 ume Exp $”);

http://www.freebsd.org/cgi/cvsweb.cgi/src/usr.sbin/portsnap/phttpget/phttpget.c

上記リンクを参照すると分かるが、認証要PROXYに対応したのは1.4.2.2から。

ただしHTTP_PROXY_AUTHについて、誤った書式をもとに読み込んでいるため、正しく動かない。

ここを修正したのが1.4.2.5。

もちろん、1.4.2.5より前のphttpget.cでも上記の情報をもとに修正すれば問題なく動く。

小夜曲

Pocket

幾日か前に久しぶりに、本当に久しぶりにクラシックのコンサートに行った。

世はモーツァルト生誕250周年で、どのコンサートもモーツァルトの曲ばかり。

俺の行ったコンサートでも、モーツァルトのアイネ・クライネ・ナハトムジークが演奏された。メインは別の。

やはりリアルのホールの響きは素晴らしかったのだが、演奏を聴いていて、テンポが速く感じてしまった。

もうちょっとゆっくり弾けば、そこここのフレーズでもっと沢山の事が出来るのにもったいない。

自分の頭の中に、理想のフレーズ、理想の演奏があって、目の前の演奏とそれがことごとく異なる場合には、やっぱり結構なストレスになる。

録音ものにも自分の好みと似た演奏がない場合、自分で弾いてしまうか、そんな技術もない場合にはスコアや楽譜を眺めて頭の中で音を鳴らす他ない。

知り合いのピアニストは「人の演奏を聴くよりもスコアを見ている方が楽しい」と言っていた。

最近、彼の言ったことがよくわかるようになった。

[misc.] かわらない日常

Pocket

休みの人が多い5/1,5/2に敢えて出社し、モリモリ仕事を片付けて、「すごくヤバイ状況」が「かなりヤバイ状況」にまで改善されたのだが、連休明けたら「めちゃめちゃヤバイ状況」にいよいよ悪化している件について。

[misc.] Les Miserables

Pocket

何日か前にレ・ミゼラブルのミュージカルを観に行った。

有名な右の画像は例によってWikipediaのレ・ミゼラブルの項から。

1862年の初版に掲載されたEmile Bayardによるコゼットの絵

その昔、オペラといえば、音楽と美術、各エリアの粋を集めているために、時代の芸術の象徴と言ったらしいが、現代で言えばミュージカルもその一つなのだろうか。

それだけに、期待に胸躍らせて行ったのだが、残念な内容であった。

主人公ジャンバルジャンと、彼を追い続ける警視ジャベールの二人に多くスポットが当てられていたが、あれだけの長い内容を数時間のミュージカルで消化するには仕方がないことなのかもしれない。

その一方で、片思いの相手のために銃弾に斃れる女子エポニーヌが妙に強調されたり(最後天使のようになって出てきてびっくりした)、革命の戦士クールフェラックは、わざとらしく旗の下で死んだりする。オリジナルでは落城したカフェの中で堂々と死んでいくのに。

重点の置き方がよくわからない。

加えて、決まりの場面では決まった拍手があり、演ずるの方も観る方もお約束ばかりのミュージカルであるような印象を受けた。

残念。

これまたWikipediaによれば、一応は評価もあるミュージカルらしいのだが。

俺的には、革命のまっただなか、酔いつぶれて爆睡し、最後の最後、落城のときに起きて速攻で死ぬ革命戦士Aが大好きなのだが、ミュージカルではまったく触れられなかった。

しょんぼり。

FreeBSD 6.1-RELEASE

Pocket

公式発表はまだだが、6.1-RがFTPにアップされていたのでバージョンアップした。

俺のいるのはRELENG_6だけど。

$ uname -a

FreeBSD ***.* 6.1-STABLE FreeBSD 6.1-STABLE #0: Sun May 7 04:42:29 JST 2006

root@***.*:/usr/obj/usr/src/sys/GENERIC i386

Anne of Green Gables

Pocket

赤毛のアン(アニメ)を観ている。

微笑ましい内容だけに、殺伐とした状況にいる俺は楽しんでいる。

また、アンの心のインプットとアウトプットが予想を超えていて、彼女の心の中身がちょっとした小宇宙に思えて面白い。

隣の画像はWikipedia(英語)より。Donna Greenという人の絵。

で、観ている赤毛のアンは、ハウスの世界名作劇場の第5作として1979年に放映されたもの。

全50話。

50話と聞くと少しのけぞるが、30分番組であることを考えると、米国ドラマ24の1クールより少し長い程度である。

スタッフには宮崎駿、高畑勲、近藤喜文(「耳をすませば」の監督)、富野喜幸(ガンダムの人)など、錚々たるメンバーが並んでいて驚く。

ただし内容は原作にほぼ忠実に作られている。原題はAnne of Green Gables。作者はルーシー・モウド・モンゴメリ(Lucy Maud Montgomery)。

日本では村岡花子訳のものが有名である。俺もこれで読んだ。新潮文庫から出てる背表紙が赤いやつ。

この村岡花子という人が、アンを初めて日本に紹介した人なのだが、戦時中に訳され、戦後しばらく経ってから出版されたなど、ちょっとした紆余曲折があったようだ。内容は下記サイトに詳しい。

http://club.pep.ne.jp/~r.miki/index_j.htm

ところで、普段はオープニングやエンディングにリストされる人の名前など見ない、というか飛ばしてしまうのだが、それぞれにかかる曲が不思議でじっくり聴いてしまい、それで気がついたのだ。

曲が不思議、というのは、なんかこう、聴いていて考え込んでしまうような曲としかいいようがない。

調べてみたところ、三善 晃という有名な作曲家が作ったらしい。別の機会に他の曲も調べてみようと思う。

あるカナダ人によると、「日本では赤毛のアンがすごく有名だと学校で習った」と言っているくらいで、本国よりも日本でのほうが有名らしい。

事実、Wikipedia(英語)にもそのような記述がある。「日本でアンは国民のアイドル」- The novels have a huge national following in Japan, and Anne is an icon there. -(俺訳) ちょっと言い過ぎか?

また話は変わるが、Green Gablesという言葉。小説を読んだときからの疑問であった。辞書を引くと切妻と出てくる。

で、その切妻がよく分からなかったのだが、Wikipediaは本当に便利だ。調べてみたところ、建築用語で屋根のタイプを表すもの。切妻とは簡単に言うと、本を開きページ面を下にして立てた形状のものを言う。

よってGreen Gablesは緑の切妻屋根。

おお。言われてみれば確かにアンの家は緑の切妻屋根である。

ちなみに、この家にはきちんとモデルがあって、これもWikipedia(英)の写真を参照してもらうとよく分かるが、作者のいとこ所有の農家である。アニメの家とそっくり、というかきちんと調べて描いているのがよくわかった。

そんなわけで、あと三十数話、じっくり観るのだ。

参考リンク

赤毛のアン(Wikipedia(日))

赤毛のアン(アニメ)(Wikipedia(日))

認証の必要なPROXY越しのportsnap

Pocket

認証の必要なPROXY越しのportsnapをしようとしても、必ず失敗する。

最初はportsnapサーバの調子が悪いだけかと思っていたのだが、自宅からだと認証は必要ないものの100%成功する。これは明らかにおかしいと調べたところ、何とか解決した。

先に結論:

 portsnapで認証要のPROXYを突破するときは、下記環境変数を設定すること。

  HTTP_PROXY=”http://URL:port/”

  HTTP_PROXY_AUTH=”basic:*:username:pass”

以下、顛末

このFreeBSDマシンは認証の必要なPROXYの内側にあるわけだが、もともと俺はfetchおよびwget用に環境変数HTTP_PROXYを”http://username:pass@URL:port/”という書式で設定しており、fetchとwgetの動作に特に問題は無かった。

が、portsnapだけが失敗するので今回調べてみた。

portsnapはファイルの取得にfetch等を使用せず、独自のphttpgetというプログラムを使用している。

詳しくはPipelined HTTP GET utilityを参照。

ここを見ると、作者はphttpgetに自信を持っているようだが、使う側の率直な意見として、好きなのを使わせてくれてもと思う。

phttpgetはportsnapとともにFreeBSDに取り込まれているので、ソースは下記の場所にある。

/usr/src/usr/sbin/portsnap/phttpget/phttpget.c

中をのぞいて見ると、環境変数HTTP_PROXY内にユーザネーム、パスワードを入れる方法は受け付けない事が分かる。

HTTP_PROXY_AUTHに書かないといけない。また、”basic:*:username:pass”という書式を想定しているようだ。こういった環境変数の一覧どっかにないものか。

下記が該当部分

/usr/src/usr/sbin/portsnap/phttpget/phttpget.c

__FBSDID(“$FreeBSD: /repoman/r/ncvs/src/usr.sbin/portsnap/phttpget/phttpget.c,v 1.4.2.5 2006/03/09 17:08:41 ume Exp $”);

<snip>

env_HTTP_PROXY_AUTH = getenv(“HTTP_PROXY_AUTH”);

if ((env_HTTP_PROXY != NULL) &&

(env_HTTP_PROXY_AUTH != NULL) &&

(strncasecmp(env_HTTP_PROXY_AUTH, “basic:” , 6) == 0)) {

/* Ignore authentication scheme */

(void) strsep(&env_HTTP_PROXY_AUTH, “:”);

/* Ignore realm */

(void) strsep(&env_HTTP_PROXY_AUTH, “:”);

/* Obtain username and password */

proxy_auth_user = strsep(&env_HTTP_PROXY_AUTH, “:”);

proxy_auth_pass = env_HTTP_PROXY_AUTH;

}