書いてる人: 高橋カヲル | [mixi] | [PGP] | [TETRiS DS] | [portscout] | [RSS]
memo
memo
age: #o030 -> #o031すでに 030 の大台だっての。
released
YYYY-MM-DD スタイルが ISO のいくつか忘れていて調べていてぶつかったのでメモ。 YY/MM/DD やら YYYY/MM/DD は混乱のタネだから、自分からは使わないようにしてる。む、ISO 8601 か。 RFC3339 や W3C-DTF は知らなかったな。
FreeBSD の ports が USE_GETTEXT 祭りになっているようだ。 gnubg の port も USE_GETTEXT にしつつ 0.14.1 に上げないとダメか。
H" から vodafone に転向しました。テレビのない生活からテレビ付き携帯のある生活になりました。どうせ見ないんですけどね!!いままでの番号に 972264070 足しといてください。
./MAKEDEV all を走らせると ttyp? が作り直されることを思い知る。ひさびさに FreeBSD 4.9 なんか触ったらこれだよ。 chown と chmod しなおしてやる。乱暴に行くなら shell を kill -HUP して追い出すなり reboot するなり。
_bgpd と _tcpdump の追加。
[ `uname -s` != OpenBSD ] && exit
VAREMPTY=' -d /var/empty -s /sbin/nologin '
NONEXISTENT=' -d /nonexistent -s /sbin/nologin '
groupadd -g 74 _pflogd
groupadd -g 75 _bgpd
groupadd -g 76 _tcpdump
useradd -u 74 -g _pflogd -c 'pflogd privsep' ${VAREMPTY} _pflogd
useradd -u 75 -g _bgpd -c 'BGP Deamon' ${VAREMPTY} _bgpd
useradd -u 76 -g _tcpdump -c 'tcpdump' ${VAREMPTY} _tcpdump
memo.
あなたの電波度は【不思議系】レベルで【85%】ぐらいです。自分では普通にしているつもりでも、どこか他人と半歩ズレてしまうあなた。電波度としては偏差値よりやや高めの優等生です。自分では自分を「普通」だと思って毎日の生活をしているでしょう。それなのに人から「変わっているね」と言われることが多そうです。あなたは決して多くを望んでいないのに、強すぎる感受性や、人とは異なった独特のセンスが、それを許してくれないようです。緩やかな電波を発しているあなたは、時に孤独になることもありそうですが、不思議ちゃん系の電波は、それほど人から嫌われません。むしろ独特の世界観を芸術的な方向で表現することで、一山当てることもできるでしょう。才能を発掘してください。
あなたにぴったりの社会更正法:身の内側で燻っているエネルギーを絵や造形物、詩などで表現すること
そんな感じで今日から始める mobileimap 生活。来月からはハッピーパケット + mobileimap 生活。携帯の端末に SSL のクライアント証明書はインストールできませんか。さあて、どうしてやればいいんだか。
conserver ね。
もうほんとダメダメ。夕方まで倒れてて、ミューズリー食ってから KRP で作業。こういうときのミューズリーって妙にうまいんだがどうよ。mpg321 -vZ running_cadence.mp3
いつかぶつかりそうな気がするのでメモ。 [samba-jp:15772] [samba-jp:15799]
プロトコル的なものを調べるのに飽きたから、とりあえず man 見ればすぐ分かる類いのものを整理。 SSH2 にだけ適用
SSH1 にだけ適用
懐かしいものをひっぱりだして fresh, rb に置いた。
if [ -x /usr/local/bin/mktexlsr -a -f /usr/local/share/texmf/ls-R ]; then
/usr/local/bin/mktexlsr
fi
if [ -x /usr/local/bin/rfc -a -f /usr/local/etc/rfc-index ]; then
env RFCVIEWER=/usr/local/bin/w3m /usr/local/bin/rfc -i
fi
if [ -x /usr/sbin/ntpdate ]; then
/usr/sbin/ntpdate -u -b -s localhost
fi
if [ -e /etc/make.conf ]; then
cd /usr/ports && /usr/bin/nice -15 /usr/bin/make update > /dev/null
fi
text/html の Content-Type のままで行くために、重い腰をあげて XHTML 1.1 から XHTML 1.0 にする。
AddType "application/xhtml+xml; charset=ISO-2022-JP" html
するのはどうもね。現実逃避パワーとは恐ろしいものだ。XHTML Media Types (ja) XML テクノロジに思い入れがあるわけでもなし、 SHOULD NOT が MAY になっただけなんだから気休め気休めしかも recommendation でなくて note なんだし。
memo
FreeBSD のブートフロッピーに手を加えて作ってあるらし。自分でアレンジできそうなところがおもしろい。 FreeBSD 4 の /dev/urandom よりは、 FreeBSD 5 の /dev/random の方が速いだろうな。FreeBSD 5 の /dev/random はYarrowで、 GNU shred は ISAAC 使ってるようだ。 HDD への write の方が律速になるだろうからどうでもいいかもしれないが。
セックスの科学WEEK/痛みの研究:恋の痛み2004年2月9日 PM 9:00 より放送予定です。どうぞお見逃しなく、お楽しみください。
仕事で凹んでるときにタイミング悪いな、ケッ。
「これの納期って何日だっけ?」
「今月末だろ。その日まではウジ虫だ! 地球上で最下等の生命体だ」
/etc/rc.d/ttys を見ていて chflags の flags に八進数を指定できることに気づく。 noschg と打つより 0 の方が手っ取り早い。8進数って書いてもいいのか、10進数の誤りに関してはとりあえず影響ないからな。
打ち合わせの帰りにコストコホールセール@尼ヶ崎で Contrex ゲト。
memo
超適当なハックをして社内のコミット通知システムを入れ替える。 Ruby に RFC2047 エンコードするモジュールが見当たらないので適当にハック。折り返しなんて無視。 ISO-2022-JP 以外アウトオブ眼中、頼まれたってバトルなんかしねえよ。まったく commit log に漢字使いたいだなんておめでてーよな。
テストを同じファイルに同居させるときにどうするのがかっこいいのか調べてみる。 if __FILE__ == $0 〜 end にくるむのはインデントがついてどうもな。 time.rb を見てこんな技を盗むことにした。何かの拍子に __END__ の前に改行が入ったりしたら乙だな。
if __FILE__ == $0 eval DATA.read, nil, $0, __LINE__+4 end __END__ require 'test/unit'
__FILE__ == $0 と $0 == __FILE__ はどっちでもいい。 = に typo したときの被害を防ごうなんて考えないから。
Muesli と Contrex ばかりの生活は丈夫なハラを作ると思うのだがどうよ。
というのはめんどくさい、というハナシ。基本的にアカウントを作りたくない場合は非トンネルモード、アカウントがすでにある場合はトンネルモードってのを想定してるのにムチャをやろうってんだから面倒なのは当たり前だな。
-t オプションをつけて kick した時点で、通常の認証とは別の扱いになる。
if (get_access(b, AUTHENTICATED) >= required
&& b->tunnel && strcmp(mech, "EXTERNAL") == 0)
{
apr_uid_t uid;
apr_gid_t gid;
if (!mecharg) /* Must be present */
return svn_ra_svn_write_tuple(conn, pool, "w(c)", "failure",
"Mechanism argument must be present");
if (apr_uid_current(&uid;, &gid;, pool) != APR_SUCCESS
|| apr_uid_name_get((char **) &b-;>user, uid, pool) != APR_SUCCESS)
return svn_ra_svn_write_tuple(conn, pool, "w(c)", "failure",
"Can't determine username");
if (*mecharg && strcmp(mecharg, b->user) != 0)
return svn_ra_svn_write_tuple(conn, pool, "w(c)", "failure",
"Requested username does not match");
SVN_ERR(svn_ra_svn_write_tuple(conn, pool, "w()", "success"));
*success = TRUE;
return SVN_NO_ERROR;
}
apr_uid_current(&uid;, &gid;, pool) は単に getuid(), getgid() しているだけ、apr_uid_name_get((char **) &b-;>user, uid, pool) は getpwuid_r() か getpwuid() が呼ばれる。 strcmp(mecharg, b->user) して確認まで取られる。同じ uid に複数の login name を割り振っても不幸になるだけ。
さて、どうしてくれりゃいいんだか。
memo
memo
まあ、しょうがないので svnserve をハックする方向でいくことに決定。やっぱり ssh-agent + agent forward 使いたいんだよ。
svnserve に適当なコマンドラインオプションをでっちあげて、 username を強制的に指定できるようにするのを目標で。
スパイシー行って、それからオフサイド。太るよ。
ああ、もうダメダメ。
ふむ、世間はバレンタインデーですか。チョコですか? もったいなくて食えませんよ。
謎メモというかバックアップというか。
kaoru@misty% sudo fdisk -l /dev/hda Disk /dev/hda: 60.0 GB, 60011642880 bytes 240 heads, 63 sectors/track, 7752 cylinders Units = cylinders of 15120 * 512 = 7741440 bytes Device Boot Start End Blocks Id System /dev/hda1 1 192 1451488+ c W95 FAT32 (LBA) /dev/hda2 * 193 258 498960 83 Linux /dev/hda3 259 324 498960 82 Linux swap /dev/hda4 325 7752 56155680 5 Extended /dev/hda5 325 853 3999208+ 83 Linux /dev/hda6 854 1118 2003368+ 83 Linux /dev/hda7 1119 3234 15996928+ 83 Linux /dev/hda8 3235 7752 34156048+ 83 Linux
# Flags Head Sect Cyl ID Head Sect Cyl Sector Sectors -- ----- ---- ---- ---- ---- ---- ---- ---- ----------- ----------- 1 0x00 1 1 0 0x0C 239 63 191 63 2902977 2 0x80 0 1 192 0x83 239 63 257 2903040 997920 3 0x00 0 1 258 0x82 239 63 323 3900960 997920 4 0x00 0 1 324 0x05 239 63 1023 4898880 112311360 5 0x00 1 1 324 0x83 239 63 852 63 7998417 6 0x00 1 1 853 0x83 239 63 1023 63 4006737 7 0x00 239 63 1023 0x83 239 63 1023 63 31993857 8 0x00 239 63 1023 0x83 239 63 1023 63 68312097
kaoru@rave% disklabel /dev/ad0s1 8 partitions: a: 524288 0 4.2BSD 2048 16384 32776 b: 2097152 524288 swap c: 78156162 0 unused 0 0 # "raw" part, don't edit d: 6291456 2621440 4.2BSD 2048 16384 28552 e: 8388608 8912896 4.2BSD 2048 16384 28512 f: 16777216 17301504 4.2BSD 2048 16384 28512 g: 44077442 34078720 4.2BSD 2048 16384 28512
kaoru@fresh% disklabel /dev/ad0s1 8 partitions: a: 1048576 0 4.2BSD 2048 16384 8 b: 2097152 1048576 swap c: 240107427 0 unused 0 0 # "raw" part, don't edit d: 2097152 3145728 4.2BSD 2048 16384 28552 e: 6291456 5242880 4.2BSD 2048 16384 28552 f: 12582912 11534336 4.2BSD 2048 16384 28552 g: 33554432 24117248 4.2BSD 2048 16384 28552 h: 182435747 57671680 4.2BSD 2048 16384 28552
体調まで悪くなってきやがった。
RSA 署名のときの hash は MD5 優先で、相手がバグっている場合は SHA1 になると知る。
nid = (datafellows & SSH_BUG_RSASIGMD5) ? NID_md5 : NID_sha1;
今のオレはリリアンで何 rpm 出せるかな、とふと気になったり。 5pin の disc なし classic なやつで。持ち歩きの CAT5e のケーブルに被せるぐらいしか使い道は思いつかないな。マリみて もスケバン刑事3も知りませんよ?
4月14日がブラックデーだなんて初耳だ。
適当にハックして svnserve に --username オプションを追加してみた。 ~svn/.ssh/authorized_keys に
command="/usr/local/bin/svnserve -t --username kaoru6",no-port-forwarding ssh-dss AA... command="/usr/local/bin/svnserve -t --username kaoru4",no-port-forwarding ssh-dss AA...
みたいな風にして使うのを想定。そこまでして svn+ssh: で使いたいんですよ!
memo
4. You must get the HEAD of ViewCVS. ViewCVS 0.9.2 does not have theSubversion support in it.
0.9.2 入れてから気づくなんて。1.0-dev 入れ直しですよ。
Generally speaking, you'll know when your installation of Subversion'sbindings has been successful if you can import the 'svn.repos' modulefrom within your Python interpreter:
% python Python 2.2.2 (#1, Oct 29 2002, 02:47:30) [GCC 2.96 20000731 (Red Hat Linux 7.2 2.96-108.7.2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import svn.repos >>>
Python binding なんて入れてねぇよ。Subversion 入れ直しですよ。しかし、standalone.py はいいな。 db に write permission が必要なのはなんとかなんねえかな。 readonly でいいんだよ、ホントに。頼むよ。
もう ISO-2022-jp の unstructed 限定でいいからちゃんと書くか、という気分になる。
「普通の人にはちょっと理解できないですよね、ソレ。」「できないねえ。アタマおかしいと言われるでしょ。でもホラ、RFC2047 って やっぱそーゆーもんだから…base64.rb かまして '=?ISO-2022-JP?B?' + encoded_text + '?=' してハイ、 field-body 出来あがり。やっぱそーゆうのじゃないワケだから」
現実逃避で適当に書いてみた。重要なのはメッセージの見栄えなんだが、どうするとカッコイイだろう?
(defmacro lunit-assert-eq (expected actual &optional; message)
(let ((expected-value (eval expected))
(actual-value (eval actual)))
`(unless ,(eq expected-value actual-value)
(signal 'lunit-failure
(list (format "(eq %S %S)\n%S expected but was \n%S\n%s"
',expected ',actual
',expected-value ',actual-value
,(or message "")))))))
メッセージに凝るなら先にシグナルのデータ構造を変えるべきか。シグナルで文字列を飛ばすのを前提に。んで、%s で文字列をそのまま出してもらえば済む。 lunit-test-printer-kaoru クラスでも作って実験するのがいいのかね。と思ったら test runner に凝る気はしない。
(lunit-assert '(nil))
が悲しくなることに気づいたので直す
ぐらい思いついたが、真ん中のやつで commit した。最初のやつは三重否定になっちまって読みにくい。最後のやつは期待通りに展開されるかよくどうかわからん、たぶん大丈夫だが。
memo
memo
うちのトップを assert_title() すると error になるんだよな。 XHTML 1.0 なのがいけないのかね。
mxo でも mxd でもメッセージが Refiling and deleting... なのか。 mxo させたときにドキっとした。いや、オレが使ってたわけじゃないんだが。
condition に list が返ってきたぐらいで発狂するのは確かに問題だが、 t, nil 以外のものが返ってきても warning も出さずに黙ってるのもどうかと思う。
memo
この前のハックと同じような機能が本家に入ってる気がする。 svn diff -r 8733:8734 してみると、変数名以外ほとんど一緒だ。デジャヴのような感覚。うーん、まったくもって欲しかった機能そのものだ。
~svn/.ssh/authorized_keys に committer どもの公開鍵を並べて
command="/usr/local/bin/svnserve --tunnel --tunnel-user=ailce" ssh-dss AAAA... command="/usr/local/bin/svnserve --tunnel --tunnel-user=bob" ssh-dss AAAA... command="/usr/local/bin/svnserve --tunnel --tunnel-user=carol" ssh-dss AAAA... command="/usr/local/bin/svnserve --tunnel --tunnel-user=dave" ssh-dss AAAA... command="/usr/local/bin/svnserve --tunnel --tunnel-user=eve" ssh-dss AAAA... command="/usr/local/bin/svnserve --tunnel --tunnel-user=trent" ssh-dss AAAA... command="/usr/local/bin/svnserve --tunnel --tunnel-user=peggy" ssh-dss AAAA...
とやる。実運用のときには --root もいるかな。no-port-forwarding,no-X11-forwarding,no-agent-forwarding の追加はこの手の運用の常識。committer によって許可するレポジトリを切り替えたい場合は conf でいきゃいいのだが、公開鍵によって許可するレポジトリを切り替えたい場合は --allow-root オプションを追加するようにハックするしかないのか。しょんぼりだ。 --read-only オプションが消えてるぐらいだもんなぁ…。
msg 以外に何が違うってんだろう…。
教育委員会からのメールの envelope from が www@エロサイトってどうよ。まあ、普通は header from しか見ないか。
おいおい svnserve に --tunnel-user が入ってねえよ!はあ、パッチ用意しとかなきゃいけねぇ。
svn diff --old http://svn.collab.net/repos/svn/tags/1.0.0/ \ --new http://svn.collab.net/repos/svn/trunk/ subversion/svnserve
複数の emacsen を同時にたちあげて SKK いじる人は skk-share-private-jisyo 設定しとけということか。
ふむ。
memo
Powered by 早起き生活