refactoring: SuexecError のファイルを分離
refactor: 定数を分離
refactor: UserDir が有効か無効かをみるメソッドは passwd の方が適してそうなので移動
refactor: passwd/group じゃなくて user/group でいいや。os/user と package も干渉しないし
refactor: コンパイル時の定数を表示するメソッドを constants に移動
fix: suexec.c では uid でユーザ情報を逆引きできないユーザで実行した場合は 102 を返す挙動だったので合わせる
add test: suexecコマンドの引き数が足らん場合のテストを追加
modify: regex.Compile がコケたのを捉えたところで何もできないので MustCompile にして panic() 出してもらうようにする
modify: 実行ユーザを確認するテストができてなかったので uid を注入してテストするようにした
fix: uid,gid の比較を文字列で行っていて、AP_UID_MIN, AP_GID_MIN との比較を意図せずすり抜けてたので int 型で扱うようにした
modify: テスト時に stderr への出力がでてしまうので、一時的に nil にして消す
modify: 定数の有無はコンパイル時に確定されるからいらんや
modify: テスト実行すると カレントディレクトリが変更されるので、Before() で元に戻す
modify: エラーログの中味もテストしたいので statu と message を持った SuexecError で返すようにした
modify: 改行コードの有る無しが混ざって煩雑になりがちなので、\n 無しに統一する
modify: Param のフィールドを public にした。他によいやり方あるかしら
modify: exec() を分離するためにインタフェースの変更
add test: suexec する条件が全部揃った時には nil を返すことのテストを追加
modify: 改行がもれてて、ログがひどいことになっていたので 改行足す
error.status = 0 の時はログを出さないよ