GNOME Bugzilla – Bug 562154
MAPI profile creation fails to create Key
Last modified: 2009-02-11 04:20:40 UTC
Steps to reproduce: 1. Gentoo amd64 - Latest Openchange/Samba4 - Evolution 2.25.1 - evolution-mapi r15) 2. Remove evolution profile folder from $HOME, kill all running evolution processes 3. Start Evolution with Debug enabled and create profile when prompted 4. The process completes successfully, but does not create the ldb account Stack trace: ** (evolution:19253): DEBUG: Loading Exchange MAPI Plugin ** (evolution:19253): DEBUG: MAPI listener is constructed with 1 listed MAPI accounts ** (evolution:19253): DEBUG: mailto URL command: evolution %s ** (evolution:19253): DEBUG: mailto URL program: evolution e-data-server-ui-Message: Key file does not have key 'mapi:__jsingleton@mail.airdefense.net_' libexchangemapi-Message: exchange-mapi-connection.c(126): exchange_mapi_connection_new: lock(connect_lock) exchange-mapi-connection.c(71): Entering mapi_profile_load GetDefaultProfile : MAPI_E_NOT_FOUND (0x8004010F) exchange-mapi-connection.c(112): Leaving mapi_profile_load libexchangemapi-Message: exchange-mapi-connection.c(129): exchange_mapi_connection_new: unlock(connect_lock) (evolution:19253): libexchangemapi-WARNING **: exchange-mapi-connection.c(132): exchange_mapi_connection_new: Login failed e-data-server-ui-Message: Key file does not have key 'mapi:__jsingleton@mail.airdefense.net_' libexchangemapi-Message: exchange-mapi-connection.c(142): exchange_mapi_connection_close: lock(connect_lock) libexchangemapi-Message: exchange-mapi-connection.c(145): exchange_mapi_connection_close: unlock(connect_lock) Other information: It has worked before - seems to happen only in latest svn for evolution-mapi with latest svn for Openchange/Samba4
Additionally, when I try to view the profile database with ldbedit, I only see the following inside of the file: # editing 1 records # record 1 dn: @BASEINFO So it is obviously creating the files, but it is not inserting the account information.
(In reply to comment #0) > 2. Remove evolution profile folder from $HOME, kill all running evolution > processes This is bad. You shouldn't be deleting $HOME/.evolution/mapi-profiles.ldb _IF_ you have already configured a MAPI account (irrespective of whether it is enabled or not) > Stack trace: > ** (evolution:19253): DEBUG: MAPI listener is constructed with 1 listed MAPI > accounts After you deleted the profile database, the MAPI account in the EAccount list does not get removed. So, it still thinks everything is fine and lists the account. > e-data-server-ui-Message: Key file does not have key > 'mapi:__jsingleton@mail.airdefense.net_' > libexchangemapi-Message: exchange-mapi-connection.c(126): > exchange_mapi_connection_new: lock(connect_lock) > > exchange-mapi-connection.c(71): Entering mapi_profile_load > GetDefaultProfile : MAPI_E_NOT_FOUND (0x8004010F) > > exchange-mapi-connection.c(112): Leaving mapi_profile_load Now that you had deleted the profile database, this is bound to happen. The real problem with deleting the mapi-profiles.ldb manually, like you did is that it is (at the moment) not possible for a backend (the mailer/calendar) to re-create it. Only the account-setup-plugin can do that job. The plugin creates a profile when you create an account and deletes the profile when you delete the account (although the profile-database may lurk around with 0 profiles in it). I would probably close this as INVALID. Before that, I'd like to know what jony thinks about this one.
OK I thank-you for your reply. But you completely missed the fact that after I deleted the ldb profile db, and killed all of the Evolution processes - I recreated the account in Evolution using the Account Setup Plugin. I did not just delete the database and expect it to be recreated - I deleted everything, the ldb profile, and the account from Evolution. No matter what I tried the information from the Stack Trace is what I got. Please do not close this as Invalid - because it is perfectly valid.
(In reply to comment #3) > I did not just delete the database and expect it to be recreated - I deleted > everything, the ldb profile, and the account from Evolution. No matter what I > tried the information from the Stack Trace is what I got. If you did remove the _account_ from evolution, then > Stack trace: > ** (evolution:19253): DEBUG: MAPI listener is constructed with 1 listed MAPI > accounts would never happen even on restarting evolution. Can you please try to reproduce your own scenario? I'll try it myself when I get back to office later this week.
Suman That happens immediately after recreating the account. Believe me, I took every precaution to make sure all account information, ldb profile information, and running processes were killed. So when I start up Evolution it acts like it is the first time I have run it. During or directly after the Account Setup completes - I repeatedly get access denied messages from my Exchange server because there is no profile in the mapi-profile.ldb. I removed everything, so it would recreate from scratch - but it does not insert my account information into the mapi-profile.ldb as it should. So I cannot authenticate to get my mail.
Hi Jeff.. (In reply to comment #5) > So when I start up Evolution it acts like it is the first time I have run it. okay.. this is good enough :-) Assuming you installed samba in the prefix /usr/local/samba , can you paste the output of: $ ls -l /usr/local/samba/share/setup LibMAPI should have installed a few specific files (which begin with oc_profile_* IIRC) at this location. If not, I'll provide you with a patch for LibMAPI. Until then, when you're configuring the account -> hit Authenticate -> enter Password -> click OK -> hit Authenticate again -> then continue as usual.
So those profile files that are created in /usr/local/samba/share/setup actually hold the profile information? Because once I deleted those and recreated my account, it works. So I guess this was Invalid. I assumed that all the info needed was stored in mapi-profile.ldb under ~/.evolution/ You can close this one. I am gathering information on a new one.
(In reply to comment #7) > So those profile files that are created in /usr/local/samba/share/setup > actually hold the profile information? No.. the oc_profile_* files only provide the format of the profile. Your actual evolution profiles are still stored under ~/.evolution/
Closing as per reporter's comment #7