須藤さんの続き
最初,「じゃあ同じPTY番号ならシェルを立ち上げ直してもパスワード入力は省略されるかな?」と思ったんだが,そうではなかった.
この中を調べた後に慌てて帰省してしまったので書くのを忘れてたよ.
/* * Info stored in tty ticket from stat(2) to help with tty matching. */ static struct tty_info { dev_t dev; /* ID of device tty resides on */ dev_t rdev; /* tty device ID */ ino_t ino; /* tty inode number */ struct timeval ctime; /* tty inode change time */ } tty_info;
if (read(fd, &info, sizeof(info)) == sizeof(info) && memcmp(&info, &tty_info, sizeof(info)) == 0) { status = TS_OLD; }
今回一番の驚きはsudoがMercurialで開発されてたってことだなぁ.こういう歴史ある小物コマンドってどこで誰が開発/保守してるんだかよく分からなかったり (eg. pstree(1)
),未だにCVSだったりすることがあるが,ずいぶんモダンだ.