http://mxr.mozilla.org/mozilla-central/source/content/base/src/nsCopySupport.cpp?rev=ca34c11bf55d#420
記事を投稿してても、別に回答できるほど理解できているわけではない(汗
まず、この質問の回答を考えるにあたって、.NET側ではなくWebKit側のコードを読んでから判断したいと思ってhttp://trac.webkit.org/browser/trunk/へ行った。Safariでも、Google Chromeでも対応しているようだった。ChromeはNSSとかいうディレクトリにそれ絡みのコードが合ったようだが、Safariは違うようだ。
運良く、CredentialTypeClientCertificateという列挙体のメンバらしきもの発見。ここまでは順調だった…んだけど、CredentialStorageにしてもProtectionSpaceにしても、それを使って認証を行なっているところが見つからないorz 使用しなさそうなAuthenticationChallengeだのが必須だったりと調査がかなり難航。
ところで自分がコード中から問題となっている箇所を探すとき、「"GTK"や"Qt"はテーマみたいなもので基本Linux絡み。Windowsには関係ない」という認識。良くは理解してないが、読まずに飛ばす。winはWindowsだからcfも関係ないのだろうという認識で読み飛ばし。
が、win,WebCore,WebKit,WebKit2を読めども、ちっとも見つけられず。
setClientCertificateを見つけたことで「実はCF必要で、そこにあるんじゃないか」と予想。
Q7843523, もたもたしてたら、回答されてしまったな。くそぅ。
実はこの質問、途中まで調査は簡単なのだが、最後までたどり着くのが意外と難しい。
まず、記事投稿時点で存在しないサイト-例えばhttp://localhost.co.jp/とかを検索すると、Server not foundという文言が表示される。例によってMXRで検索するとdnsNotFound.titleが見つかる。同じファイルに、fileNotFound.titleも発見できる。これを検索し、netError.xhtmlに至り、そこのスクリプトのinitPage関数を読めばある程度仕組みがわかるだろう。簡単だ。ここまでは。
問題はここから。ドメインが見つかったけどそのページがない場合-例えば、http://slashdot.jp/lisper.htmlにアクセスした場合など-は、ドメインが見つからなかった場合のメッセージと違い、サイト自身が提供する404用のページが表示される。この挙動を示す場所をソースコードから探してこられるだろうか?
http://oshiete.goo.ne.jp/qa/7673199.html
ふーむ。たしかにそう書いてあるな>Firefox 14の話だから役に立たない。
とすると。何故質問者環境では再現できてないんだろ?14→15でもとに戻す修正でも実は入っていたりするのか?
http://oshiete.goo.ne.jp/qa/7661503.html
live.comからlive.comへ送信する際文字符号化方式をISO-2022-JPやShift_JISにした時再現。EUC-JPは面倒だったので未検証
でもなんでだろうね。
http://oshiete.goo.ne.jp/qa/7638578.html
以下、関係あるかは不明
- http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/shell_integration_win.cc?view=markup
- http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/custom_handlers/protocol_handler_registry.cc?view=markup