我想從Firebreath插件使用NpapiBrowserHost.GetAuthenticationInfo方法獲取用戶/密碼。Firebreath中獲取用戶名/密碼與GetAuthenticationInfo問題
我需要爲基於npapi的瀏覽器(chrome/firefox/opera)執行此操作。所以這是我的代碼:
boost::shared_ptr<FB::Npapi::NpapiBrowserHost> npapihost =
FB::ptr_cast<FB::Npapi::NpapiBrowserHost>(m_host);
if(npapihost)
{
char * username = NULL; uint32_t ulen = 0;
char * password = NULL; uint32_t plen = 0;
NPError err = npapihost->GetAuthenticationInfo("http",
"xxx.yyy.com",
80,
"Basic",
"Knownnameofrealm",
&username, &ulen,
&password, &plen);
}
在Opera它的工作原理。在Chrome & Firefox中,它返回err = NPERR_GENERIC_ERROR, 和ulen = 0,plen = 0(用戶名,密碼 - 壞ptr)。
此代碼從MypluginamePlugin :: onPluginReady()執行。
如果您成功獲取憑證,請張貼代碼示例。
PS鉻根據鉻源還沒有實現NPN_GetAuthenticationInfo https://code.google.com/p/chromium/issues/detail?id=23928
值得注意的是,這是一個比firebreath更多的npapi問題,因爲該函數只是NPN_GetAuthenticationInfo的一個直通 – taxilian