モーグルとカバとパウダーの日記

モーグルやカバ(EXカービング)山スキー(BC)などがメインの日記でした。今は仕事のコンピュータ系のネタが主になっています。以前はスパム対策関連が多かったのですが最近はディープラーニング関連が多めです。

mobileimapを複数ユーザで使いたい

だいぶ前にちょっと書いてたmobileimapを入れて使ってみた。
確かに良い感じだったのだけど、自分の必要な機能がなかったのでどうしたものか。


mobileimapは、ユーザとパスワードをわたして起動して使う。そして、そのまま独立したHTTPDとして起動したままにして使うのだ。
だからそのポートに接続すれば、認証無しに使えてしまうし、他のユーザに切り替えることも出来ない。
普通のWebメーラーのように、接続後にユーザとパスワードを入れてログインして使うようなパッチが無いか、探してみたのだけど見つからなかった。


しかたないので改造しようと思い、ソースを眺めてみた。

imapd経由なので、起動時だけでなく操作の前に毎に認証するようになっているため、ログイン時にユーザ名とパスワードを取得するように改造すれば良いだけに見えた。
しかし、セッション管理しないといけなくなるため、そこがちょっとめんどくさい。
Rubyで書いてあるから、Rubyのセッション管理方法について調べないといけないので。


あと、なぜこういう仕様にしたのか、ということが書いてあって、携帯からユーザ名やパスワードを入れるのは大変でやってられないから、ということだった。
確かにそうだなあ、と思う。
で、数字だけだったらどうだろう、と考えた。数字だけならそのまま打てばよいだけだから、多少長くなってもそれほどうっとおしくないだろう。

つまり、

aAbB-012

がパスワードだったとすると、

6533663413161718

という数字に変換したもをパスワードとする。
これはASCIIコードから制御コード分の32を引いた数字。
同様に、ユーザ名も数字だけのコードに変換してしまってもよいだろう。

で、ユーザ名やパスワードの入力が数字だけだった場合、このコード変換されたもの、として文字に変換し、それからログインを試行する。


とか考えたが、まずはRubyに慣れないとなんともならんな…


(関連)

モーグルとカバとパウダーの日記 - 携帯からPCのメールを確認するためのツール