マウントできた

ディスクイメージのマウントに成功。


TCP待ち受け/送信クラスの例外回りを強化。デストラクタでごにょごにょするソケットクラスを書き直した。
こういうのをリファクタリングと言うのかな。

それから、UDPパケットを送るたびにソケットを作っていたのを、最初にいくつか作っておいて使いまわすように変更。
ソケット(sendto())って排他処理要るのかな? 動いているから要らないんだろうなぁ。


それと、ログレベル(LogDebugError)を1つ追加。

LogDebug0 (グレー)
LogDebug  (グレー)
LogDebugError (白)
LogInfo (黄色)
LogWarn (マゼンタ)
LogError (赤)

の6レベル。
内容は上から、

これは要るのか?と言うほど冗長なメッセージ
デバッグ用のメッセージ
普通に有りうる各種失敗(ネゴシエーションがコンフリクトとか)
初期化&終了時のメッセージ
復旧可能なエラー
終了せざるを得ないエラー


あ、そういえばログクラスの実装が中途半端で終わっていた。
色づけ+コンソールに出力 しかない。
ファイルに出力とsyslogを追加しないと。

メッセージに特定の文字列(引数で指定)が入っていたら、その部分に色を付ける、なんて機能があるといいな。grep --colorみたいな。
ログを書き出す処理は本体とは別のスレッドで回っているので、重い処理をしても大丈夫。