Closed Bug 667896 Opened 13 years ago Closed 13 years ago

[autoconfig] assertion failed when creating account

Categories

(Thunderbird :: Account Manager, defect)

All
Other
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: gregory.rocher, Unassigned)

Details

(Keywords: regression)

User Agent: Mozilla/5.0 (X11; Linux i686; rv:5.0) Gecko/20100101 Firefox/5.0
Build ID: 20110615151330

Steps to reproduce:

With thunderbird 5.0 beta 2
enable debug in mail.wizard.logging.console
File > New... > Mail account



Actual results:

When creating config with autoconfig in thunderbird 5.0 beta 2 error appear :
Programming bug : assertion failed, see log

in console log

2011-06-28 14:18:08	mail.wizard	ERROR	Error creating account.  ex=Programming bug. Assertion failed, see log., stack=Exception("Programming bug. Assertion failed, see log.")@chrome://messenger/content/accountcreation/util.js:189
NotReached("Programming bug. Assertion failed, see log.")@chrome://messenger/content/accountcreation/util.js:208
assert(false)@chrome://messenger/content/accountcreation/util.js:64
([object Object],[object Object])@chrome://messenger/content/accountcreation/emailWizard.js:1657
([object Object],[object Object],true,(function () {self.validateAndFinish(configFilledIn);}),(function () {}))@chrome://messenger/content/accountcreation/emailWizard.js:1705
()@chrome://messenger/content/accountcreation/emailWizard.js:1501
oncommand([object XULCommandEvent])@chrome://messenger/content/accountcreation/emailWizard.xul:1

Click manual configuration, change nothing, and the account creation finshes normally


Expected results:

The account should be created without clicking manual creation. Same procedure works with thunderbird 3.1.11 on the same autoconfig server
What domain are you trying to configure ?
Keywords: regression
I'm trying configure domain ifremer.fr
Not in the ISPDB https://live.mozillamessaging.com/autoconfig/...
but served internally by http://autoconfig.ifremer.fr/mail/config-v1.1.xml?emailaddress=....
Hum so to me from ziggo/casema/nl http://autoconfig.ifremer.fr/mail/config-v1.1.xml?emailaddress=ludovic@ifremer.fr is unreachable so says http://www.downforeveryoneorjustme.com/autoconfig.ifremer.fr . Can you check that the server is effectively up ?
(In reply to comment #3)
> Can you check
> that the server is effectively up ?

It's up but it's only accessible from our intranet here's a copy paste of the xml served for the response :

<clientConfig version="1.1">
  <emailProvider id="ifremer.fr">
    <domain>ifremer.fr</domain>
    <displayName>Mail Ifremer</displayName>
    <displayShortName>ifremer</displayShortName>
    <incomingServer type="imap">
        <hostname>homedir1</hostname>

        <port>143</port>
        <socketType>plain</socketType>
        <authentication>password-cleartext</authentication>
        <username>grocher</username>
    </incomingServer>

    <outgoingServer type="smtp">

      <hostname>brehat</hostname>
      <port>25</port>
      <authentication>client-IP-address</authentication>
      <socketType>plain</socketType>
    </outgoingServer>

    <!-- <instruction url="http://w3z.ifremer.fr/intraric">
        <descr lang="en">Modifiez les dossiers de copies</descr>
        <descr lang="fr">Modifiez les dossiers de copies</descr>
    </instruction> -->

  </emailProvider>
</clientConfig>
(In reply to comment #3)
> Can you check
> that the server is effectively up ?

And here's the corresponding config.incoming object provided by error console

2011-07-01 15:22:27	mail.wizard	INFO	config.incoming=[object]
config.incoming.type=imap
config.incoming.hostname=homedir1
config.incoming.port=143
config.incoming.username=grocher
config.incoming.password=[object]
config.incoming.password is empty
config.incoming.socketType=1
config.incoming.badCert=false
config.incoming.auth=3
config.incoming.authAlternatives=[object]
config.incoming.authAlternatives is empty
config.incoming.checkInterval=10
config.incoming.loginAtStartup=true
config.incoming.useGlobalInbox=false
config.incoming.leaveMessagesOnServer=true
config.incoming.daysToLeaveMessagesOnServer=14
config.incoming.deleteByAgeFromServer=true
config.incoming.deleteOnServerWhenLocalDelete=true
config.incoming.downloadOnBiff=true
config.incomingAlternatives=[probably array, length 0]
config.incomingAlternatives is empty
config.outgoing=[object]
config.outgoing.type=smtp
config.outgoing.hostname=brehat
config.outgoing.port=25
config.outgoing.username=[object]
config.outgoing.username is empty
config.outgoing.password=[object]
config.outgoing.password is empty
config.outgoing.socketType=1
config.outgoing.badCert=false
config.outgoing.auth=1
config.outgoing.authAlternatives=[object]
config.outgoing.authAlternatives is empty
config.outgoing.addThisServer=true
config.outgoing.useGlobalPreferredServer=false
config.outgoing.existingServerKey=[object]
config.outgoing.existingServerKey is empty
config.outgoing.existingServerLabel=[object]
config.outgoing.existingServerLabel is empty
config.outgoingAlternatives=[probably array, length 0]
config.outgoingAlternatives is empty
config.identity=[object]
config.identity.realname=%REALNAME%
config.identity.emailAddress=%EMAILADDRESS%
config.inputFields=[probably array, length 0]
config.inputFields is empty
config.domains=[probably array, length 1]
config.domains.0=ifremer.fr
config.source=2
config.id=ifremer.fr
config.displayName=Mail Ifremer
config.createNewIncoming=[function]
config.createNewOutgoing=[function]
config.copy=[function]
config.isComplete=[function]

Do you need something else ?
Double check for white spaces in the xml document.
Status: UNCONFIRMED → NEW
Ever confirmed: true
(In reply to comment #6)
> Double check for white spaces in the xml document.

no more white spaces in the xml document (i think)

<clientConfig version="1.1">
  <emailProvider id="ifremer.fr">
    <domain>ifremer.fr</domain>
    <displayName>Mail Ifremer</displayName>
    <displayShortName>ifremer</displayShortName>
    <incomingServer type="imap">
        <hostname>homedir1</hostname>
        <port>143</port>
        <socketType>plain</socketType>
        <authentication>password-cleartext</authentication>
        <username>grocher</username>
    </incomingServer>
    <outgoingServer type="smtp">
      <hostname>brehat</hostname>
      <port>25</port>
      <authentication>client-IP-address</authentication>
      <socketType>plain</socketType>
    </outgoingServer>
  </emailProvider>
</clientConfig>

but assertion failed still present
1657     assert(configSchema.isComplete());
config.outgoing.username is empty
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → INVALID
(Yes, you must give a username. Even if the server doesn't need one.
Any SMTP server should use username+password, so that it also works outside the network. Authentication via IP address is officially deprecated, see RFC 4409.)
(In reply to comment #10)
> (Yes, you must give a username.

Ok, works now with a username for the smtp server.
Lack of message specifying that it was missing has confuse me.
You need to log in before you can comment on or make changes to this bug.