muttがimapのユーザー名とパスワードを要求し続けるのはなぜですか?


13

未設定のmuttの設定変数imap_userimap_pass(そしておそらくpreconnectimap_authenticators経由だけでなく)account-hook . "unset ... "呼び出しは、必要性、複数のIMAPアカウントを処理するために(見えない場合は、一般的な方法のようです管理、複数のIMAP / POPアカウント(オプション)MuttはIMAP複数のアカウントをmuttの:gmail IMAPが応答しないfuntoo.orgのアカウントフック関連の構成ファイル)。

現在、IMAPを介して1つのアカウントのみを処理しています。複数のアカウントを処理する計画を立てると、上記のリンクの最後にある指示に従うことになります(誰かのmutt設定の例)。したがって、同様の方法で、次を使用しました。

account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
account-hook 'imaps://mail.domain.net:993/INBOX/' "set imap_user=UserName@domain.net"
account-hook 'imaps://mail.domain.net:993/INBOX/' "set imap_pass=${my_password}"

これは別のファイル(名前付きaccount_hooks)に保存され、内部から取得されますmuttrc。私が理解できない理由のために、muttはユーザー名パスワードを尋ね続けます。ただし、変数imap_userimap_passがに直接設定されているmuttrc場合、たとえば

set my_password="`gpg --decrypt ~/.mutt/password.gpg`"
set imap_authenticators='login'
set imap_login = 'UserName@domain.net'
set imap_user = 'UserName@domain.net'
set imap_pass ="${my_password}"

すべてが正常に動作します。account_hooksファイルには、ソースの最初のものとなし、他のあるaccount-hook . "unset ..."他の場所で呼び出し(複数可)が存在する(複数可)。

更新folder-hooksファイルは次のとおりです(そして、私はそうでした)。

#--------------------------------------------------------------------------
# Folders and hooks
#--------------------------------------------------------------------------
# folder-hook 'imaps://UserName%domain.net@mail.domain.net:993/'
set folder = "~/.maildir"       # IMAP: local, using offlineimap -- folder="imaps://mail.domain.net:993/INBOX/"
source ~/.mutt/mailboxes        # source automatically generated mailboxes
set spoolfile = "+INBOX"        # spoolfile='imaps://mail.domain.net:993/'
set postponed = "+INBOX/Drafts"

# Sending -----------------------------------------------------------------
set smtp_url="smtp://UserName@domain.net@mail.domain.net:587/"
set smtp_pass=${my_password}
set record = "+INBOX/Sent"
set copy=yes

# Index format ----------------------------------------------------------------
folder-hook *[sS]ent* 'set sort=threads'
folder-hook *[sS]ent* 'set sort_browser=reverse-date'
folder-hook *[sS]ent* 'set sort_aux=reverse-last-date-received'
folder-hook *[sS]ent* 'set index_format="%2C | %Z [%d] %-30.30t (%-4.4c) %s"'
folder-hook ! *[sS]ent* 'set index_format="%2C | %Z [%d] %-30.30F (%-4.4c) %s"':

なぜ、個別のファイルaccount_hooksが、この場合の対象変数(imap_userimap_pass)を適切に供給しないのですか?


あなたがまだ答えに興味があるなら、私はfolder-hookあなたがあなたの行に持っている行を見たいです.muttrc。その後、いくつかの結論を導き出し、完全なソリューションを提供できます。
lord.garbage 14年

1
@brauner、とても遅くて忙しい、謝罪。私はそれを必要としなかったので、これをもっと実験する時間を見つけていません。folder-hook当時使用していた設定をトレースバックする必要があります。バックアップとして使用していると思います。
ニコスアレクサン

'mutt -d 5'からデバッグファイルを投稿できますか?
asdmin

今のところ@asdmin、応答はDEBUG was not defined during compilation. Ignored.です。時間があれば、再コンパイルしてポストバックします。
ニコスアレクサン

編集のための@kyrias thnx
ニコスアレクサン

回答:


3

ユーザー名とパスワードは直接設定できますが、を使用するaccount-hookaccount-hook機能しないため、おそらく機能しません。

アンは、account-hookから構成され、正規表現のメールボックスが一致した場合に実行する必要があるメールボックス、およびそれらのコマンドの正規表現を

コマンド(set imap_userset imap_pass)は実行されregexpないため、メールボックスと一致しなかったと想定できます。

非常に具体的な「imaps://mail.domain.net:993 / INBOX /」を使用しています。おそらく、メールボックスの名前はわずかに異なります。

これはmail.domain.netあなたが使用している唯一のメールアカウントですか?その場合、正規表現をに減らす'mail.domain.net'だけで、メールボックスを一致させることができます。

account-hook . 'unset imap_user; unset imap_pass; unset tunnel
account-hook mail.domain.net "set imap_user=UserName@domain.net"
account-hook mail.domain.net "set imap_pass=${my_password}"

私はこれを解決するために戻ってきました。おそらくあなたの解釈は正しいです。うまくいけば、これをすぐに確認します。ありがとうございました。
ニコスアレクサン

両方の場合set imap_userとがset imap_pass実行されていない、なぜ私はのためにパスワードの入力を要求していますPassword for UserName@mail.domain.net:、その後?ファイルに設定されaccount-hookている正確なユーザーIDとドメインaccount-hooks
ニコスアレクサン

直しました!変数を${my_password}正しく提供することができなかったと思いsmtp_passます。それはだった${password}...: - /
ニコスAlexandris

私の最後のコメントに関して、複数の実験的な編集の後"${password}"、の代わりにを誤って使用したようです"${my_password}"account-hooksファイルが正しく、今、少なくとも2 acountsのために働くようです。そして、別の3番目の問題、つまりにこだわっていSSL failed: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unsupported protocolます。しかし、それはここで答えられて答えられた質問に直接関係していません。そのため、「タイプミス」を除くと、問題は当初、実際に問題regexpのメールボックスと一致しないことでした。
ニコスアレクサン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.