Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Password issues with 3.2.2 and hosted Exchange, no problems with 3.1.3 #42

Closed
gorpong opened this issue Nov 6, 2014 · 79 comments
Closed
Assignees

Comments

@gorpong
Copy link

gorpong commented Nov 6, 2014

I have a hosted Exchange account on Intermedia and it doesn't seem to honor or validate my password. The process I've used to install is:

  1. Deactivate all Exchange calendars (have two Calendars and a Task)
  2. Installed 3.2.2 (overwrites 3.1.3)
  3. Stop Thunderbird
  4. Move ~/AppData/Roaming/Thunderbird/Profiles//exchange-data to exchange-data-313
  5. Restart Thunderbird
  6. Attempt to add new calendar
  • I enter https://owa3.intermedia.net/EWS/Exchange.asmx as location (auto-discover doesn't work)
  • I enter my login that I use when logging in over the Web OWA site
  • It doesn't let me enter a domain, it skips right over that box
  • I leave the "Share folder Id" blank
  • I enter "Check" and it pops-up asking me for a password
  • I enter the password, the pop-up comes right back

I've checked my Saved Passwords and the site is right and the password is right. I've validated the password is right by logging in directly via the web.

When I roll-back to 3.1.3 and put the exchange-data folder back in place, everything is just fine. So, 3.1.3 can do the right password stuff, but 3.2.2 cannot.

Any ideas?

@jemcmahon
Copy link

I'm experiencing the very same issue with another hosted provider, https://owa.postoffice.net/EWS/Exchange.asmx. I experienced this behavior back in 3.2.0-Beta66 and my workaround at the time was to downgrade to 3.1.3.

Today I upgraded to thunderbird 31.2, lightning 3.3.1, and exchangecalendar 3.2.2. I immediately experienced the exchange calendar password prompt loop. I downgraded to exchangecalendar 3.1.3 and all is well.

@randybb
Copy link

randybb commented Nov 19, 2014

Yup. The same problem here. My domain account has ben locked again for a sixth time, so my manager will kill me.

@awilkins
Copy link

I'm putting my username in as

corporatedomain.com\username@corporatedomain.com

And it works fine for the calendar plugin and the email.

(and we do have separate AD auth)

It doesn't work for the contacts though - I get the same loop of prompting
for passwords.

@bavincen
Copy link

bavincen commented Dec 9, 2014

can you try our latest version and update?

@NikMel
Copy link

NikMel commented Dec 9, 2014

Since about two weeks (sorry, I can't be more specific) things has improved. The problem is now intermittent (it bears hallmarks of a race condition). Perhaps once in 3-5 times I start Thunderbird, it repeatedly asks for the exchange calendar password. If I then quit TB and wait until the process dies (and theen another few seconds) and restart TB, it works just fine!

I'm now using the latest commit (9b7840b) since about 15 minutes, and I've quit and started TB a couple of times. I have gotten the password problem once, thus it does not seem to be fixed...

If I can provide you with any logs that might help, just instruct me how to....

All the best,
Niklas

@bavincen
Copy link

bavincen commented Dec 9, 2014

It will be great if you could check the things in new setup,..may be a new tuhnderbird profile? Thanks.
Usualy password prompt two times when click 'perform autodiscovery' after selecting url before fetching calendar details.

@bavincen
Copy link

bavincen commented Dec 9, 2014

Any update??

@NikMel
Copy link

NikMel commented Dec 9, 2014

Thanks for being eager to fix it, it's highly appreciated. I'll test it as soon as I can...

@randybb
Copy link

randybb commented Dec 9, 2014

It doesn't work for me - my domain account has been locked again, so I have moved back to 3.2.0-Beta77.

@bavincen
Copy link

bavincen commented Dec 9, 2014

Okay. so no trouble right

@muthusuba
Copy link

@randybb one quick question, please? Does 3.2.1 work fine for you?
https://github.com/Ericsson/exchangecalendar/releases/tag/3.2.1-Beta1

@bavincen
Copy link

to get autodiscovery error log:

before doing perform autodiscovey
*open 'error consoe' in tools

  • clear existign log
    *click 'perform autodiscovery'

filter by ecAutodiscoveryError
or paste everything in all tab in error console window

use latest version which is troubling

@NikMel
Copy link

NikMel commented Dec 11, 2014

I have now:

  • Created a new clean profile
  • Set up my email account using the Exquilla addon version 31.0.1136
  • Installed exchangecalendar plugin (updated from git as of Dec 11)

When I use the autodiscovery function, it hangs for a long while and then I get a message box saying

It was not possible to find settings through autodiscovery using the domain name part of the mailbox (XXX.YYY@domain.se).
Usually this means there is not an autodiscovery server defined with the domain name part as hostname.

However, I see no entries in the log when filtering on ecAutodiscoveryError.

Skipping the autodiscovery function and configuring the calendar manually, successfully adds the calendar and I can see all my calendar entries!
When restarting TB with the newly configured profile I immediately get the login prompt again, and (as before) no matter how many times I enter my password it wont accept it (eventually I get an "Unauthorized"-message).
The difference now is that, no matter how many times I restart TB it won't work (with my other profile, I can restart TB and I most often get access to the calendar)....

@bavincen
Copy link

I done the same setup Exquilla and configured calendar while doing it wasnt prompting me password for autodiscover :)

then i restarted tb created one more calendar it didnt ask me password this time too..

@bavincen
Copy link

you can just clear the log when password prompts and post the log Thanks

@NikMel
Copy link

NikMel commented Dec 11, 2014

First, as stated above, autodiscover does NOT work. It hangs for quite a while and then returns with a message about the feature not being available. The same happens to all using the exchangecalendar extension for Thunderbird at my workplace.

When I add my email account using the Exquilla extension, autodiscovery does work just fine (perhaps irrelevant).

Then, a few clarifications regarding adding calendar. When I create the calendar (using manual configuration, as the autodiscovery does not work), I am NOT asked for a password but the calendar gets added just fine; I can see all my entries, as well as add and delete entries.

When I close TB and restart it, the password prompt starts popping up... Every third time I enter the password, the following entry pops up in my error console:

Timestamp: 2014-12-11 18:45:03
Error: no element found
Source File: https://[myEmailAddress]:[myPassword]@[theDomainOfOurServiceProvider]/EWS/Exchange.asmx
Line: 1

Please note that [theDomainOfOurServiceProvider] is NOT the same as the domain in my email address. Also note that [theDomainOfOurServiceProvider]/EWS/Exchange.asmx is the Server URL I enter in the manual configuration.

The link (referenced from the Source File-line in the error message) contains what the screenshot shows...

selection_097

@NikMel
Copy link

NikMel commented Jan 31, 2015

Hi again,

I'm wondering how I can get the log output from the extension. I've been fiddling with the code a bit to see if I can't isolate where the authentication goes wrong (and what happens when it doesn't). I see in many places calls to various logInfo-methods, but none of these seem to output anything, either to the terminal (from where I run Thnuderbird) or the built-in error console.

I went into a few of the _logInfo methods and added a 'dump', and then I get the debug output (but this does not seem right)... Am I missing something obvious? I'd love to help, but I'd need a little assistance.

All the best,
Niklas

@NikMel
Copy link

NikMel commented Jan 31, 2015

Anyway, I hacked a few of, what I suspected being, the most relevant logInfo-methods and used dump to get the messages to the console. Attaching two logs (see below), one that fails authenticating (keeps asking for password), and one that works.

A strange observation (I've reproduced it a few times). When it keeps asking for the password, If I enter the wrong pass a few times it eventually stops asking for the password (but it won't get access to the calendar, ofcourse). But, if I then restart Thunderbird, it successfully authenticates (and I get access to the calendar)!

Hopefully, this might be of some help.

Best,
Niklas

@NikMel
Copy link

NikMel commented Jan 31, 2015

This log is from running Thunderbird with the exchangeCalendar extention FAILING to authenticate. It will keep asking for a password as long as I enter the correct pass. If I enter the wrong pass (a couple of times), it'll stop asking (but will fail to access the calendar).

Notes:
I have replaced some sensitive information in the log, as pe the following:
[MY_USER_NAME] in the log below denotes my user name, and is correct in all places where it occurs. It is on the form firstName.LastName

[MY_SERVICE_PROVIDER] is our service provider (which is different from the domain in my email address). The URL in the log is correct (i.e. it is the correct URL to our service provider). It is on the form https://outlook.domain.com/EWS/Exchange.asmx

[SHORT_URL_OF SERVICE_PROVIDER] Is the same as [MY_SERVICE_PROVIDER], but only the 'outlook.domain.com' part

[MY_PASSWORD] Where a password is found I dump it to the console, and it is also correct (i.e. it seems to find my password just fine)

* LOG START **************
(process:24943): GLib-CRITICAL : g_slice_set_config: assertion 'sys_page_size == 0' failed
System JS : WARNING resource://gre/modules/Preferences.jsm:378 - mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
System JS : WARNING resource://gre/components/steelApplication.js:783 - mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
(II) About to call myAuthPrompt2.getPassword from ecExchangeRequest.sendRequest
(II) in mivExchangeAuthPrompt2.getPassword: Username: MY_USER_NAME in mivExchangeAuthPrompt2.getPassword: aUrl: MY_SERVICE_PROVIDER getPassword: There is no password in the passwordCache[MY_USER_NAME]|[MY_SERVICE_PROVIDER]|Exchange Web Service getPassword: password(1)=
(II) getPassword: There is no password in the cache. Going to see if there is one in the passwordManager.
(II) getPassword: password(2)=
*****
(II) Received a password in ecExchangeRequest.sendRequest (password: [MY_PASSWORD])!
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIApplicationCacheContainer
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsISecureBrowserUI
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIProgressEventSink
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of [SHORT_URL_OF SERVICE_PROVIDER]
JavaScript strict warning: chrome://messenger/content/tabmail.xml, line 352: reference to undefined property aTabType.panelId
JavaScript warning: file:///home/XXXX/.thunderbird/YYYY.default/extensions/exquilla@mesquilla.com/components/nativeComponents.js, line 25: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
(II) exchangeAbFunctions: init.
(II) exchangeAbRootDirectory. init.
(II) exchangeAbRootDirectory: NSGetFactory for exchangeAbRootDirectory 1
(II) exchangeAbRootDirectory: NSGetFactory for exchangeAbRootDirectory 1a
(II) exchangeAbRootDirectory: NSGetFactory for exchangeAbRootDirectory 2
(II) new exchangeAbRootDirectory
(II) exchangeAbRootDirectory: init. aURI:exchWebService-contactRoot-directory://
(II) exchangeAbRootDirectory: this is a root:exchWebService-contactRoot-directory://
(II) exchangeAbRootDirectory: get isQuery
(II) no Exchange accounts found.
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIAuthPromptProvider
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIAuthPrompt2
JavaScript warning: resource://exquilla/ewsAbDirectory.jsm, line 1715: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
JavaScript warning: resource://exquilla/ewsAbDirectory.jsm, line 1715: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
(II) exchangeAbDirFactory: init.
(II) NSGetFactory for exchangeAbDirFactory 1
(II) NSGetFactory for exchangeAbDirFactory 1a
(II) NSGetFactory for exchangeAbDirFactory 2
(II) getDirectories aDirName:Exchange Contacts, aUri:exchWebService-contactRoot-directory://, aPrefName:ldap_2.servers.exchangecontacts
(II) no Exchange accounts found.
JavaScript strict warning: chrome://calendar/content/calendar-unifinder.js, line 621: reference to undefined property this.tree.view
JavaScript error: chrome://calendar/content/calendar-unifinder.js, line 621: this.tree.view is undefined
(II) in mivExchangeAuthPrompt2.getPassword: Username: MY_USER_NAME in mivExchangeAuthPrompt2.getPassword: aUrl: [MY_SERVICE_PROVIDER]x
(II) getPassword: There is no password in the passwordCache[MY_USER_NAME]|[MY_SERVICE_PROVIDER]x|Exchange Web Service getPassword: password(1)=********
(II) getPassword: There is no password in the cache. Going to see if there is one in the passwordManager.
(II) getPassword: password(2)=********
(II) getPassword: There was a password in cache or passwordManager and one on the channel. Going to see if they are the same.
(II) getPassword: There was a password in cache or passwordManager and one on the channel. And useCached specified.
(II) getPassword: cached/store='***', on channel='**'.
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of SHORT_URL_OF SERVICE_PROVIDER ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of SHORT_URL_OF SERVICE_PROVIDER ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIAuthPromptProvider
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIAuthPrompt2
JavaScript strict warning: resource://gre/modules/addons/XPIProvider.jsm, line 6365: reference to undefined property this.icons32 in mivExchangeAuthPrompt2.getPassword: Username: MY_USER_NAME in mivExchangeAuthPrompt2.getPassword: aUrl: MY_SERVICE_PROVIDER getPassword: There is no password in the passwordCache[MY_USER_NAME]|[MY_SERVICE_PROVIDER]|Exchange Web Service getPassword: password(1)=**
*****
(II) getPassword: There is no password in the cache. Going to see if there is one in the passwordManager.
(II) getPassword: password(2)=********
(II) getPassword: There was a password in cache or passwordManager and one on the channel. Going to see if they are the same.
(II) getPassword: There was a password in cache or passwordManager and one on the channel. And they are the same. Going to ask user to provide a new password.
(II) getPassword: There was a password in cache or passwordManager and one on the channel. And they are the same. But it is a first pass on an NTLM authentication. Using stored password and going to see if it can be used.
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of SHORT_URL_OF SERVICE_PROVIDER ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of SHORT_URL_OF SERVICE_PROVIDER ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIAuthPromptProvider
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIAuthPrompt2
(II) in mivExchangeAuthPrompt2.getPassword: Username: MY_USER_NAME in mivExchangeAuthPrompt2.getPassword: aUrl: MY_SERVICE_PROVIDER getPassword: There is no password in the passwordCache[MY_USER_NAME]|[MY_SERVICE_PROVIDER]|Exchange Web Service getPassword: password(1)=********
(II) getPassword: There is no password in the cache. Going to see if there is one in the passwordManager.
(II) getPassword: password(2)=********
(II) getPassword: There was a password in cache or passwordManager and one on the channel. Going to see if they are the same.
(II) getPassword: There was a password in cache or passwordManager and one on the channel. And they are the same. Going to ask user to provide a new password.
(II) getPassword: There was a password in cache or passwordManager and one on the channel. And they are the same. Going to ask user to provide a new password.
(II) getPassword: Going to ask user to provide a new password.

*************** LOG END ***************

@NikMel
Copy link

NikMel commented Jan 31, 2015

This log is from running Thunderbird with the exchangeCalendar extention SUCCEEDING to authenticate (and which is thus working fine).

Notes:
I have replaced some sensitive information in the log, as pe the following:
[MY_USER_NAME] in the log below denotes my user name, and is correct in all places where it occurs. It is on the form firstName.LastName

[MY_SERVICE_PROVIDER] is our service provider (which is different from the domain in my email address). The URL in the log is correct (i.e. it is the correct URL to our service provider). It is on the form https://outlook.domain.com/EWS/Exchange.asmx

[SHORT_URL_OF SERVICE_PROVIDER] Is the same as [MY_SERVICE_PROVIDER], but only the 'outlook.domain.com' part

[MY_PASSWORD] Where a password is found I dump it to the console, and it is also correct (i.e. it seems to find my password just fine)

********** LOG START **************

(process:25410): GLib-CRITICAL : g_slice_set_config: assertion 'sys_page_size == 0' failed
System JS : WARNING resource://gre/modules/Preferences.jsm:378 - mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
System JS : WARNING resource://gre/components/steelApplication.js:783 - mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
(II) About to call myAuthPrompt2.getPassword from ecExchangeRequest.sendRequest
(II) in mivExchangeAuthPrompt2.getPassword: Username: MY_USER_NAME in mivExchangeAuthPrompt2.getPassword: aUrl: MY_SERVICE_PROVIDER getPassword: There is no password in the passwordCache[MY_USER_NAME]|[MY_SERVICE_PROVIDER]|Exchange Web Service getPassword: password(1)=
******
(II) getPassword: There is no password in the cache. Going to see if there is one in the passwordManager.
(II) getPassword: password(2)=********
(II) Received a password in ecExchangeRequest.sendRequest (password: [MY_PASSWORD])!
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIApplicationCacheContainer
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsISecureBrowserUI
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIProgressEventSink
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of [SHORT_URL_OF SERVICE_PROVIDER]
JavaScript strict warning: chrome://messenger/content/tabmail.xml, line 352: reference to undefined property aTabType.panelId
JavaScript warning: file:///home/XXXXX/.thunderbird/YYYYY.default/extensions/exquilla@mesquilla.com/components/nativeComponents.js, line 25: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
(II) exchangeAbFunctions: init.
(II) exchangeAbRootDirectory. init.
(II) exchangeAbRootDirectory: NSGetFactory for exchangeAbRootDirectory 1
(II) exchangeAbRootDirectory: NSGetFactory for exchangeAbRootDirectory 1a
(II) exchangeAbRootDirectory: NSGetFactory for exchangeAbRootDirectory 2
(II) new exchangeAbRootDirectory
(II) exchangeAbRootDirectory: init. aURI:exchWebService-contactRoot-directory://
(II) exchangeAbRootDirectory: this is a root:exchWebService-contactRoot-directory://
(II) exchangeAbRootDirectory: get isQuery
(II) no Exchange accounts found.
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIAuthPromptProvider
(II) ecnsIAuthPrompt2.getInterface: Ci.nsIAuthPrompt2
JavaScript warning: resource://exquilla/ewsAbDirectory.jsm, line 1715: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
JavaScript warning: resource://exquilla/ewsAbDirectory.jsm, line 1715: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
(II) exchangeAbDirFactory: init.
(II) NSGetFactory for exchangeAbDirFactory 1
(II) NSGetFactory for exchangeAbDirFactory 1a
(II) NSGetFactory for exchangeAbDirFactory 2
(II) getDirectories aDirName:Exchange Contacts, aUri:exchWebService-contactRoot-directory://, aPrefName:ldap_2.servers.exchangecontacts
(II) no Exchange accounts found.
JavaScript strict warning: chrome://calendar/content/calendar-unifinder.js, line 621: reference to undefined property this.tree.view
JavaScript error: chrome://calendar/content/calendar-unifinder.js, line 621: this.tree.view is undefined
(II) in mivExchangeAuthPrompt2.getPassword: Username: MY_USER_NAME in mivExchangeAuthPrompt2.getPassword: aUrl: MY_SERVICE_PROVIDER getPassword: There is no password in the passwordCache[MY_USER_NAME]|[MY_SERVICE_PROVIDER]|Exchange Web Service getPassword: password(1)=********
(II) getPassword: There is no password in the cache. Going to see if there is one in the passwordManager.
(II) getPassword: password(2)=********
(II) getPassword: There was a password in cache or passwordManager and one on the channel. Going to see if they are the same.
(II) getPassword: There was a password in cache or passwordManager and one on the channel. And useCached specified.
(II) getPassword: cached/store='*******', on channel='*******'.
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of SHORT_URL_OF SERVICE_PROVIDER ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of SHORT_URL_OF SERVICE_PROVIDER ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of [SHORT_URL_OF SERVICE_PROVIDER]
JavaScript strict warning: resource://gre/modules/addons/XPIProvider.jsm, line 6365: reference to undefined property this.icons32 ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_WAITING_FOR of SHORT_URL_OF SERVICE_PROVIDER ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) ecnsIAuthPrompt2.getInterface: Ci.nsILoadContext
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_RECEIVING_FROM of SHORT_URL_OF SERVICE_PROVIDER --- ecnsIAuthPrompt2.onProgress: this is a nsIChannel
(II) --- ecnsIAuthPrompt2.onProgress:1156 of 18446744073709552000
(II) --- ecnsIAuthPrompt2.onStatus: STATUS_RECEIVING_FROM of SHORT_URL_OF SERVICE_PROVIDER --- ecnsIAuthPrompt2.onProgress: this is a nsIChannel
(II) --- ecnsIAuthPrompt2.onProgress:1168 of 18446744073709552000
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c
(II) exchangeAbRootDirectory: get dirPrefId: d3e92bb6-97c2-4da6-8e32-a15b2f40687c

********** LOG END **************

@vMeijin
Copy link

vMeijin commented Feb 4, 2015

I have the same problem. After an update of the Exchange Server the Plugin did not work anymore and always ask me for the password. After creating a complete new profile and cleared the password manager, I got it working again, but it always asked for the password when starting Thunderbird. And now it does not work again anymore and it is stuck in the endless password loop again.

@NikMel
Copy link

NikMel commented Feb 5, 2015

Just a quick note regarding the update 3.3.1-RC1 which came yesterday (Feb 4).

With this update my collegue is now able to access his calendar (for the full day yesterday, he did not get a single password prompt). He previously hasn't been able to access his calendar at all, but consistently got the password-loop (whereas for me it has been intermittent). He also cannot get autodiscovery to work, but needs to enter the configuration manually.

Please, if there are more logs I can capture, just tell me which and I'll be happy to give it a shot.

All the best,
Niklas

@NikMel
Copy link

NikMel commented Feb 19, 2015

No help required?

@bavincen
Copy link

Hi NikMel,
Sorry for the delay in responding. ahh, you are not facing the old bug now, but autodiscovery is not working for you?..

@NikMel
Copy link

NikMel commented Feb 19, 2015

Nope, autodiscovery does not work. Clicking the 'Perform Autodiscovery' hangs Thunderbird for a long while (in the order of minutes) and then returns with the message (this is a message I've not seen in earlier versions):

'It was not possible to find settings through autodiscovery using the domain name part of the mailbox (MY_EMAIL_ADDRESS).
Usually this means there is not an autodiscovery server defined with the domain name part as hostname.'

This message makes sense, as the domain of our service provider (i.e. the server URL I enter in the manual confiuration) is NOT the same as the domain name in my e-mail address.

A collegue is experiencing precisely the same problem (same Thunderbird version, exchangecalendar 3.3.1-rc1 but on Ubuntu 14.04). Prior to version 3.3.1-rc1, my collegue was not able to get the extension working at all, whereas I have (although frequently getting the password loop).

I have a feeling that I get the password loop less frequenly using more recent versions of the extension (running 3.3.1-rc3 now).

Finally, how do I get the logs without having to hack the appropriate logInfo-functions in Javascript?

All the best,
Niklas

UPDATE: Corrected a mistake in the extension version number (it said 3.1.1-rcX when it should've been 3.3.1-rcX)

@gorpong
Copy link
Author

gorpong commented Feb 19, 2015

I'd like to try the latest build, but I don't see an .xpi to download, but I'm probably not looking in the right place. How can I manually add this add-on to existing Thunderbird?

@bavincen
Copy link

Please check our wiki pages 😊

-----Original Message-----
From: "gorpong" notifications@github.com
Sent: ‎19-‎02-‎2015 22:03
To: "Ericsson/exchangecalendar" exchangecalendar@noreply.github.com
Cc: "bavincen" bavincen.in@gmail.com
Subject: Re: [exchangecalendar] Password issues with 3.2.2 and hostedExchange, no problems with 3.1.3 (#42)

I'd like to try the latest build, but I don't see an .xpi to download, but I'm probably not looking in the right place. How can I manually add this add-on to existing Thunderbird?

Reply to this email directly or view it on GitHub.

@gorpong
Copy link
Author

gorpong commented Feb 19, 2015

Thanks!

Downloaded and installed, but am still having problems with the authentication. Now, at least, it doesn't keep asking me without doing anything, it asks me three times and then gives me a 401 unauthorized error (screen shot). I KNOW my password is right and that I'm entering it right, I've done it one character touching the keyboard at a time, but it's still not working in 3.3.1~rc3.

image

If there's a particular log or something, I'd be happy to gather it for you. For now, though, I've downgraded back to 3.1.3 and am working again.

Also, I should clarify that with Intermedia there is no autodiscover possible, I'm entering the URL to use myself.

@NikMel
Copy link

NikMel commented Mar 27, 2015

Do you need more logs from me? What's the status on this issue?

Just FYI @bavincen, while we are still getting the password loop now and again, it's way better that it was. Previousely, this bug made the extension unusable but now it's acceptable (once every 5-or-so times I start TB, I get the loop, but quitting TB and starting it again usually does the trick).

This goes for both me and the collegues who are using Ubuntu with the extension.

@bavincen
Copy link

@NikMel Sorry for that, as i told you i saw your log and calendar was trying different method to authenticate which is not even written in our code.

FYI, We didn't make any recent code change related to authentication.

Can you please try some network proxy change suggested by user @pdunbar-methods

@NikMel
Copy link

NikMel commented Mar 30, 2015

@bavincen I'm not using any proxy applications, thus @pdunbar-methods post does not apply.

@NikMel
Copy link

NikMel commented May 1, 2015

@bavincen What does it mean "trying authentication method not in your code"?
Where is that method? From what code module is that authentication method invoked?
Where should I report the bug? Lightning? Thunderbird? Somewhere else? Can you provide any details on what you found other that "not my problem"?
It clearly causes a problem for people wanting to use thunderbird, lightning and your (in most other respects) great exchange extension...

All the best

@NikMel
Copy link

NikMel commented May 11, 2015

@bavincen Any news?

I may have found a workaround to get out of the password loop.

  1. Start thunderbird and cancel authentication for the calendar
  2. Right-click the calendar, choose Properties
  3. Switch the calendar off
  4. Restart TB
  5. Right click the calendar and switch it on

@bavincen
Copy link

Great!

We are using Ci.nsIAuthPrompt2 as intrface for authentication.
"Ci.nsIAuthPrompt2"

in case of you calendar it is calling nsILoadContext to get authenticated which we dont support right now.
"Ci.nsILoadContext"
Here you need to notice one thing what i could find from your logs, whenever your calendar successfully authenticated it used nsIAuthPrompt2 interface.

I need to figure out what caused it,,

Your information may helpful. thanks

@NikMel
Copy link

NikMel commented May 13, 2015

It seems step 3 and 4 in the workaround are unnecessary! Simply inactivate the calendar and activate it again. When activating it, also make sure to untick the "Read-only"-checkbox.

@aomader
Copy link

aomader commented May 28, 2015

I'm also unable to add my Exchange calendar due to this annoying password loop. I just uploaded the log for you guys to invest, I hope it helps. Thanks for all the effort, I'm really looking forward to this!

@aomader
Copy link

aomader commented May 29, 2015

Ok, I did a little fiddling with the code and got it working. If I remove the domain from the authInfo part, although NEED_DOMAIN is set, and use my whole email as username I'm able to properly authenticate and use my calendar properly.

That means, the password loop is a symptom of improperly supplied authentication credentials.

Update: I just created the pull-request #203 for you to review what I've changed. Beware, this is just a result of fiddling around, it is not backed by any knowledge or experience with Exchange servers and the NTLM authentication stuff in general.

@bavincen
Copy link

please test the code https://github.com/Ericsson/exchangecalendar/tree/passwd .. we will merge yours @b52

@bavincen
Copy link

bavincen commented Jun 3, 2015

is this issue resolving using https://github.com/Ericsson/exchangecalendar/tree/passwd branch

@bavincen bavincen closed this as completed Jun 3, 2015
@NikMel
Copy link

NikMel commented Jun 3, 2015

Nope, not resolved. I'm still getting the password loop.

The 5-step workaround I posted above still works, though.

@bavincen
Copy link

bavincen commented Jun 3, 2015

just confirm are you using passwd branch? :)

@NikMel
Copy link

NikMel commented Jun 3, 2015

selection_158

Yup.

bavincen added a commit that referenced this issue Jul 22, 2015
@NikMel
Copy link

NikMel commented Jul 29, 2015

Still unable to access my calendar due to password loop. Now running 3.4.0-beta5.

Is there anything I can do?

@randybb
Copy link

randybb commented Jul 29, 2015

I don't have any issues with this plugin (3.4.0~beta2). As I have figured out later, my previous "password issue" was a global problem with periodical locking of my account caused by wrong credentials in synchronization script that I forgot to change.

@bavincen
Copy link

@NikMel please checkout master Thanks
Please set your proxy settings to No pRoxy..

@NikMel
Copy link

NikMel commented Jul 29, 2015

@randybb this is not related to this issue report. The issue in this report relates to when domain of the provider is not the same as the domain of the email address, the exchangecalendar-plugin intermittently fails to authenticate.

@NikMel
Copy link

NikMel commented Jul 29, 2015

@bavincen will do.

@NikMel
Copy link

NikMel commented Jul 29, 2015

@bavincen Using current master (commit 0009bb1) and has set TB to use "No proxy".

No change, still getting password loop when starting TB. The 5-step workaround still seems to work though.

Update: Spoke too soon. Workaround is not working anymore. Now completely unable to use the calendar.

Update 2: In 3.4.0-beta5 (from downloads), the 5-step workaround works fine.

@bavincen
Copy link

R u using proxy to connect to internet?

You can set them

Sent from my Sprint phone.

----- Reply message -----
From: "Niklas Mellegård" notifications@github.com
To: "Ericsson/exchangecalendar" exchangecalendar@noreply.github.com
Cc: "bavincen" bavincen.in@gmail.com
Subject: [exchangecalendar] Password issues with 3.2.2 and hosted Exchange, no problems with 3.1.3 (#42)
Date: Wed, Jul 29, 2015 13:50

@bavincen Using current master (commit 0009bb1) and has set TB to use "No proxy".

No change, still getting password loop when starting TB. The 5-step workaround still seems to work though.


Reply to this email directly or view it on GitHub.

@NikMel
Copy link

NikMel commented Jul 29, 2015

@bavincen Nope, no proxy is used in the OS. Just to be sure, I also set "No Proxy" in TB configuration (was set to "use system proxy")

@bavincen
Copy link

@NikMel When password prompts Try entering right password for first time. If it prompts for 2nd time just press esc key.(observe)

p.s please check saved passwords are getting removed when you not selecting 'remember password' in prompt

@NikMel
Copy link

NikMel commented Aug 3, 2015

@bavincen I removed and readded my calendar. Version 3.4.0-beta5 (from your downloads section) has now worked flawlessly for a couple of days! Really happy about that :)

I'll continue testing a couple of days, and will then give 3.5.0 a shot.

@bavincen
Copy link

bavincen commented Aug 4, 2015

ty

@gorpong
Copy link
Author

gorpong commented Sep 21, 2015

Based on the feedback from folks on this chain, I re-installed the RC1 version and it's working for me without lots and lots of login prompts.

Thank you!

@rucoder
Copy link

rucoder commented Dec 17, 2015

I'm running 3.5.0-beta. My account was blocked again. I did not get "password loop popup" thou but had to entered my password only once after I changed it in a web interface. I will try to reinstall the pluging as suggested, but even if it help there is some issues to resolve

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests