[svn] GPGol - r133 - in trunk: . po src
svn author wk
cvs at cvs.gnupg.org
Wed Dec 7 18:13:28 CET 2005
Author: wk
Date: 2005-12-07 18:13:27 +0100 (Wed, 07 Dec 2005)
New Revision: 133
Modified:
trunk/ChangeLog
trunk/NEWS
trunk/README
trunk/TODO
trunk/configure.ac
trunk/po/de.po
trunk/src/ChangeLog
trunk/src/config-dialog.c
trunk/src/gpgmsg.cpp
trunk/src/intern.h
trunk/src/main.c
trunk/src/olflange-dlgs.cpp
trunk/src/olflange.cpp
Log:
Fixes for using non-adnim accounts.
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/ChangeLog 2005-12-07 17:13:27 UTC (rev 133)
@@ -1,3 +1,7 @@
+2005-12-07 Werner Koch <wk at g10code.com>
+
+ Released 0.9.5.
+
2005-12-06 Werner Koch <wk at g10code.com>
Released 0.9.4.
Modified: trunk/NEWS
===================================================================
--- trunk/NEWS 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/NEWS 2005-12-07 17:13:27 UTC (rev 133)
@@ -1,3 +1,11 @@
+Noteworthy changes for version 0.9.5 (2005-12-07)
+=================================================
+
+* Fixed problems related to use on non-admin accounts.
+
+* Print a warning if used with OL prior to OL2003 SP2.
+
+
Noteworthy changes for version 0.9.4 (2005-12-06)
=================================================
Modified: trunk/README
===================================================================
--- trunk/README 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/README 2005-12-07 17:13:27 UTC (rev 133)
@@ -16,6 +16,9 @@
gpgol.dll" and start Outlook. You should then find a new tab named
"GnuPG" in Outlook's option menu.
+If you are missing icons in the toolbar, checkout the toolbar's
+customize button - you will find the new icons there.
+
Bug reporting: First click on the logo on the GnuPG options tab to
check whether a newer version has been released - try this first. If
this does not help, check out the mailing lists and also the bug
Modified: trunk/TODO
===================================================================
--- trunk/TODO 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/TODO 2005-12-07 17:13:27 UTC (rev 133)
@@ -2,9 +2,7 @@
For example 'No Secret Key' should contain the key-ID
and if possible the primary user-ID.
-* much better HTML support.
-
-* find out why sometimes the new body cannot set to a MAPI object. In
+* Find out why sometimes the new body cannot set to a MAPI object. In
this case the body is empty but the W32 API said it was correctly set.
This might be due to the length of the object. HrGetOneProp has
such limitations and thus it would be reasonable to assume that the
Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/configure.ac 2005-12-07 17:13:27 UTC (rev 133)
@@ -16,7 +16,7 @@
# Version number: Remember to change it immediately *after* a release.
# Make sure to run "svn up" before a "make dist".
# Add a "-cvs" prefix for non-released code.
-AC_INIT(gpgol, 0.9.4, bug-gpgol at g10code.com)
+AC_INIT(gpgol, 0.9.5, bug-gpgol at g10code.com)
NEED_GPGME_API=1
NEED_GPGME_VERSION=1.1.0
Modified: trunk/po/de.po
===================================================================
--- trunk/po/de.po 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/po/de.po 2005-12-07 17:13:27 UTC (rev 133)
@@ -7,15 +7,15 @@
msgstr ""
"Project-Id-Version: GPGol 0.9.4\n"
"Report-Msgid-Bugs-To: bug-gpgol at g10code.com\n"
-"POT-Creation-Date: 2005-12-06 11:07+0100\n"
-"PO-Revision-Date: 2005-12-06 11:09+0100\n"
+"POT-Creation-Date: 2005-12-07 17:27+0100\n"
+"PO-Revision-Date: 2005-12-07 17:31+0100\n"
"Last-Translator: Werner Koch <wk at gnupg.org>\n"
"Language-Team: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/config-dialog.c:298
+#: src/config-dialog.c:289
msgid "Select GPG Key Manager"
msgstr "Das Schlüsselverwaltungsprogramm festlegen"
@@ -234,8 +234,29 @@
msgid "Attachment Signing Failure"
msgstr "Unterschrifterstellungsfehler eines Anhangs"
-#: src/olflange.cpp:896
+#: src/olflange-dlgs.cpp:165
+msgid "The default key may not contain any spaces."
+msgstr "Der Standardschlüssel darf keine Leerzeichen enthalten."
+
+#: src/olflange.cpp:748
msgid ""
+"This version of Outlook is too old!\n"
+"\n"
+"At least versions of Outlook 2003 older than SP2 exhibit crashes when "
+"sending messages and messages might get stuck in the outgoing queue.\n"
+"\n"
+"Please update at least to SP2 before trying to send a message"
+msgstr ""
+"Diese Version von Outlook ist zu alt!\n"
+"\n"
+"Einige Versionen von Outlook 2003, älter als SP2, verursachen\n"
+"Programmabrüche beim Senden von Nachrichten und diese Nachrichten\n"
+"können dabei in der Ausgabewarteschlange stecken bleiben.\n"
+"\n"
+"Bitte updaten Sie auf SP2 bevor Sie versuchen eine Nachricht zu versenden."
+
+#: src/olflange.cpp:937
+msgid ""
"Sorry, we can only encrypt plain text messages and\n"
"no RTF messages. Please make sure that only the text\n"
"format has been selected."
@@ -245,51 +266,51 @@
"Sie sicher, daß lediglich das Text Format ausgewählt wurde.\n"
"(In der Menüleiste: \"Format\" => \"Nur Text\")"
-#: src/olflange.cpp:1286
+#: src/olflange.cpp:1327
msgid "&Decrypt and verify message"
msgstr "Entschlüsseln/Prüfen der Nachricht"
-#: src/olflange.cpp:1324
+#: src/olflange.cpp:1365
msgid "GPG &encrypt message"
msgstr "Mit GPG &verschlüsseln"
-#: src/olflange.cpp:1330
+#: src/olflange.cpp:1371
msgid "GPG &sign message"
msgstr "Mit GPG unter&schreiben"
-#: src/olflange.cpp:1376
+#: src/olflange.cpp:1417
msgid "GPG Key &Manager"
msgstr "GPG Schlüssel&verwaltung"
-#: src/olflange.cpp:1508
+#: src/olflange.cpp:1549
msgid "Could not start Key-Manager"
msgstr "Dei Schlüsselverwaltung konnte nicht aufgerufen werden"
-#: src/olflange.cpp:1554
+#: src/olflange.cpp:1595
msgid "Decrypt and verify the message."
msgstr "Entschlüsseln und Prüfen der Nachricht."
-#: src/olflange.cpp:1562
+#: src/olflange.cpp:1603
msgid "Select this option to encrypt the message."
msgstr "Wählen Sie diese Option zum Verschlüsseln der Nachricht."
-#: src/olflange.cpp:1568
+#: src/olflange.cpp:1609
msgid "Select this option to sign the message."
msgstr "Wählen Sie diese Option zum Unterschreiben der Nachricht."
-#: src/olflange.cpp:1577 src/olflange.cpp:1638 src/olflange.cpp:1720
+#: src/olflange.cpp:1618 src/olflange.cpp:1679 src/olflange.cpp:1761
msgid "Open GPG Key Manager"
msgstr "Die GPG Schlüsselverwaltung öffnen"
-#: src/olflange.cpp:1607 src/olflange.cpp:1671
+#: src/olflange.cpp:1648 src/olflange.cpp:1712
msgid "Decrypt message and verify signature"
msgstr "Nachricht entschlüsseln und Unterschrift prüfen"
-#: src/olflange.cpp:1618 src/olflange.cpp:1689
+#: src/olflange.cpp:1659 src/olflange.cpp:1730
msgid "Encrypt message with GPG"
msgstr "Nachricht mit GPG verschlüsseln"
-#: src/olflange.cpp:1627 src/olflange.cpp:1704
+#: src/olflange.cpp:1668 src/olflange.cpp:1745
msgid "Sign message with GPG"
msgstr "Nachricht mit GPG unterschreiben"
Modified: trunk/src/ChangeLog
===================================================================
--- trunk/src/ChangeLog 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/src/ChangeLog 2005-12-07 17:13:27 UTC (rev 133)
@@ -1,5 +1,21 @@
+2005-12-07 Werner Koch <wk at g10code.com>
+
+ * olflange.cpp (Install): Cehck the version and print a warning.
+
+ * olflange-dlgs.cpp (GPGOptionsDlgProc): Simplified the default
+ key code.
+
+ * config-dialog.c (store_config_value): Create key if it does not
+ exists.
+ (load_config_value_ext): Removed.
+
2005-12-06 Werner Koch <wk at g10code.com>
+ * config-dialog.c (start_key_manager): Don't pass the options to
+ access.
+
+2005-12-06 Werner Koch <wk at g10code.com>
+
* gpgmsg.cpp (getRecipients): Add the default key to the list of
recipients.
* recipient-dialog.c (recipient_dlg_proc): Add the already found
Modified: trunk/src/config-dialog.c
===================================================================
--- trunk/src/config-dialog.c 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/src/config-dialog.c 2005-12-07 17:13:27 UTC (rev 133)
@@ -99,24 +99,7 @@
}
#endif
-static int
-load_config_value_ext (char **val)
-{
- static char buf[MAX_PATH+64];
-
- /* MSDN: This buffer must be at least MAX_PATH characters in size. */
- memset (buf, 0, sizeof (buf));
- if (w32_shgetfolderpath (NULL, CSIDL_APPDATA/*|CSIDL_FLAG_CREATE*/,
- NULL, 0, buf) < 0)
- return -1;
- strcat (buf, "\\gnupg");
- if (GetFileAttributes (buf) == 0xFFFFFFFF)
- return -1;
- *val = buf;
- return 0;
-}
-
static char*
expand_path (const char *path)
{
@@ -145,11 +128,12 @@
DWORD size=0, type;
int ec;
+ *val = NULL;
if (hk == NULL)
hk = HKEY_CURRENT_USER;
ec = RegOpenKeyEx (hk, path, 0, KEY_READ, &h);
if (ec != ERROR_SUCCESS)
- return load_config_value_ext (val);
+ return -1;
ec = RegQueryValueEx(h, key, NULL, &type, NULL, &size);
if (ec != ERROR_SUCCESS) {
@@ -179,24 +163,29 @@
static int
store_config_value (HKEY hk, const char *path, const char *key, const char *val)
{
- HKEY h;
- int type = REG_SZ;
- int ec;
-
- if (hk == NULL)
- hk = HKEY_CURRENT_USER;
- ec = RegOpenKeyEx (hk, path, 0, KEY_ALL_ACCESS, &h);
- if (ec != ERROR_SUCCESS)
- return -1;
- if (strchr (val, '%'))
- type = REG_EXPAND_SZ;
- ec = RegSetValueEx (h, key, 0, type, (const BYTE*)val, strlen (val));
- if (ec != ERROR_SUCCESS) {
- RegCloseKey(h);
- return -1;
+ HKEY h;
+ int type;
+ int ec;
+
+ if (hk == NULL)
+ hk = HKEY_CURRENT_USER;
+ ec = RegCreateKeyEx (hk, path, 0, NULL, REG_OPTION_NON_VOLATILE,
+ KEY_ALL_ACCESS, NULL, &h, NULL);
+ if (ec != ERROR_SUCCESS)
+ {
+ log_debug_w32 (ec, "creating/opening registry key `%s' failed", path);
+ return -1;
}
- RegCloseKey(h);
- return 0;
+ type = strchr (val, '%')? REG_EXPAND_SZ : REG_SZ;
+ ec = RegSetValueEx (h, key, 0, type, (const BYTE*)val, strlen (val));
+ if (ec != ERROR_SUCCESS)
+ {
+ log_debug_w32 (ec, "saving registry key `%s'->`%s' failed", path, key);
+ RegCloseKey(h);
+ return -1;
+ }
+ RegCloseKey(h);
+ return 0;
}
@@ -288,8 +277,10 @@
xfree (buf);
buf=NULL;
}
+ else
+ SetDlgItemText (dlg, IDC_OPT_KEYMAN, "");
s = get_log_file ();
- SetDlgItemText (dlg, IDC_DEBUG_LOGFILE, s);
+ SetDlgItemText (dlg, IDC_DEBUG_LOGFILE, s? s:"");
break;
case WM_COMMAND:
@@ -309,9 +300,8 @@
error_box ("GPG Config");
}
n = GetDlgItemText (dlg, IDC_DEBUG_LOGFILE, name, MAX_PATH-1);
- if (n > 0) {
- set_log_file (name);
- }
+ set_log_file (n>0?name:NULL);
+
EndDialog (dlg, TRUE);
break;
}
@@ -355,7 +345,10 @@
gpgme_engine_info_t info;
if (gpgme_get_engine_info (&info))
- return -1;
+ {
+ log_debug ("%s:%s: get_engine_info failed\n", SRCNAME, __func__);
+ return -1;
+ }
while (info && info->protocol != GPGME_PROTOCOL_OpenPGP)
info = info->next;
@@ -372,12 +365,20 @@
xfree (keyman);
return -1;
}
- strcpy (p+1, "winpt.exe --keymanager");
- if (access (keyman, F_OK))
+ strcpy (p+1, "winpt.exe");
+ if (!access (keyman, F_OK))
+ strcat (keyman, " --keymanager");
+ else
{
- strcpy (p+1, "gpa.exe --keyring");
- if (access (keyman, F_OK))
+ log_debug ("%s:%s: accessing `%s' failed\n",
+ SRCNAME, __func__, keyman );
+ strcpy (p+1, "gpa.exe");
+ if (!access (keyman, F_OK))
+ strcat (keyman, " --keyring");
+ else
{
+ log_debug ("%s:%s: accessing `%s' failed\n",
+ SRCNAME, __func__, keyman );
xfree (keyman);
return -1;
}
@@ -391,6 +392,8 @@
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOW;
+ log_debug ("%s:%s: running `%s' ...\n",
+ SRCNAME, __func__, keyman );
if (CreateProcess (NULL, keyman,
NULL, NULL, TRUE, CREATE_DEFAULT_ERROR_MODE,
NULL, NULL, &si, &pi) == TRUE)
Modified: trunk/src/gpgmsg.cpp
===================================================================
--- trunk/src/gpgmsg.cpp 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/src/gpgmsg.cpp 2005-12-07 17:13:27 UTC (rev 133)
@@ -654,7 +654,7 @@
break;
}
}
- if (opt.default_key && *opt.default_key)
+ if (opt.enable_default_key && opt.default_key && *opt.default_key)
rset[j++] = xstrdup (opt.default_key);
rset[j] = NULL;
Modified: trunk/src/intern.h
===================================================================
--- trunk/src/intern.h 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/src/intern.h 2005-12-07 17:13:27 UTC (rev 133)
@@ -97,8 +97,8 @@
int save_decrypted_attach; /* Save decrypted attachments. */
int auto_sign_attach; /* Sign all outgoing attachments. */
int enc_format; /* Encryption format for attachments. */
- char *default_key; /* Malloced default key or NULL. */
- int add_default_key; /* Always also encrypt to the default key. */
+ char *default_key; /* The key we want to always encrypt to. */
+ int enable_default_key; /* Enable the use of DEFAULT_KEY. */
int preview_decrypt; /* Decrypt in preview window. */
/* The compatibility flags. */
Modified: trunk/src/main.c
===================================================================
--- trunk/src/main.c 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/src/main.c 2005-12-07 17:13:27 UTC (rev 133)
@@ -62,7 +62,6 @@
multiple prompts for attachment encryption
are issued. */
opt.enc_format = GPG_FMT_CLASSIC;
- opt.add_default_key = 1;
}
@@ -385,8 +384,8 @@
opt.preview_decrypt = val == NULL || *val != '1'? 0 : 1;
xfree (val); val = NULL;
- load_extension_value ("addDefaultKey", &val);
- opt.add_default_key = val == NULL || *val != '1' ? 0 : 1;
+ load_extension_value ("enableDefaultKey", &val);
+ opt.enable_default_key = val == NULL || *val != '1' ? 0 : 1;
xfree (val); val = NULL;
load_extension_value ("storePasswdTime", &val);
@@ -448,7 +447,6 @@
} table[] = {
{"encryptDefault", 0, opt.encrypt_default},
{"signDefault", 0, opt.sign_default},
- {"addDefaultKey", 0, opt.add_default_key},
{"saveDecryptedAttachments", 0, opt.save_decrypted_attach},
{"autoSignAttachments", 0, opt.auto_sign_attach},
{"previewDecrypt", 0, opt.preview_decrypt},
@@ -456,6 +454,7 @@
{"encodingFormat", 1, opt.enc_format},
{"logFile", 2, 0, logfile},
{"defaultKey", 2, 0, opt.default_key},
+ {"enableDefaultKey", 0, opt.enable_default_key},
{NULL, 0}
};
char buf[32];
Modified: trunk/src/olflange-dlgs.cpp
===================================================================
--- trunk/src/olflange-dlgs.cpp 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/src/olflange-dlgs.cpp 2005-12-07 17:13:27 UTC (rev 133)
@@ -44,7 +44,6 @@
BOOL bMsgResult = FALSE;
static LPNMHDR pnmhdr;
static HWND hWndPage;
- static int enable = 1;
switch (uMsg)
{
@@ -71,9 +70,9 @@
}
}
- enable = !!(opt.default_key && *opt.default_key);
- EnableWindow (GetDlgItem (hDlg, IDC_ENCRYPT_TO), enable? TRUE:FALSE);
- if (enable == 1)
+ EnableWindow (GetDlgItem (hDlg, IDC_ENCRYPT_TO),
+ !!opt.enable_default_key);
+ if (opt.enable_default_key)
CheckDlgButton (hDlg, IDC_ENCRYPT_WITH_STANDARD_KEY, BST_CHECKED);
SetDlgItemText (hDlg, IDC_VERSION_INFO,
"Version "VERSION " ("__DATE__")");
@@ -111,9 +110,9 @@
case WM_COMMAND:
if (HIWORD (wParam) == BN_CLICKED &&
LOWORD (wParam) == IDC_ENCRYPT_WITH_STANDARD_KEY) {
- enable ^= 1;
+ opt.enable_default_key = !opt.enable_default_key;
EnableWindow (GetDlgItem (hDlg, IDC_ENCRYPT_TO),
- enable==0? FALSE: TRUE);
+ !!opt.enable_default_key);
}
if (LOWORD(wParam) == IDC_GPG_OPTIONS)
config_dialog_box (hDlg);
@@ -129,8 +128,10 @@
case PSN_SETACTIVE: {
TCHAR s[30];
- if (opt.default_key)
+ if (opt.default_key && *opt.default_key)
SetDlgItemText (hDlg, IDC_ENCRYPT_TO, opt.default_key);
+ else
+ SetDlgItemText (hDlg, IDC_ENCRYPT_TO, "");
wsprintf(s, "%d", opt.passwd_ttl);
SendDlgItemMessage(hDlg, IDC_TIME_PHRASES, WM_SETTEXT,
0, (LPARAM) s);
@@ -140,8 +141,7 @@
SendDlgItemMessage (hDlg, IDC_SIGN_DEFAULT, BM_SETCHECK,
!!opt.sign_default, 0L);
SendDlgItemMessage (hDlg, IDC_ENCRYPT_WITH_STANDARD_KEY,
- BM_SETCHECK,
- (opt.add_default_key && enable), 0L);
+ BM_SETCHECK, opt.enable_default_key, 0L);
SendDlgItemMessage (hDlg, IDC_SAVE_DECRYPTED, BM_SETCHECK,
!!opt.save_decrypted_attach, 0L);
SendDlgItemMessage (hDlg, IDC_SIGN_ATTACHMENTS, BM_SETCHECK,
@@ -153,27 +153,27 @@
case PSN_APPLY: {
TCHAR s[201];
+
+ opt.enable_default_key = !!SendDlgItemMessage
+ (hDlg, IDC_ENCRYPT_WITH_STANDARD_KEY, BM_GETCHECK, 0, 0L);
- GetDlgItemText (hDlg, IDC_ENCRYPT_TO, s, 200);
- if (strlen (s) > 0 && strchr (s, ' ')) {
- MessageBox (hDlg,
- "The default key may not contain any spaces.",
- "Outlook GnuPG-Plugin", MB_ICONERROR|MB_OK);
- bMsgResult = PSNRET_INVALID_NOCHANGEPAGE ;
- break;
- }
- if (!*s)
- opt.add_default_key = 0;
- else
- opt.add_default_key = !!SendDlgItemMessage
- (hDlg, IDC_ENCRYPT_WITH_STANDARD_KEY, BM_GETCHECK, 0, 0L);
-
+ GetDlgItemText (hDlg, IDC_ENCRYPT_TO, s, 200);
+ if (strlen (s) > 0 && strchr (s, ' '))
+ {
+ if (opt.enable_default_key)
+ {
+ MessageBox (hDlg,_("The default key may not"
+ " contain any spaces."),
+ "GPGol", MB_ICONERROR|MB_OK);
+ bMsgResult = PSNRET_INVALID_NOCHANGEPAGE;
+ break;
+ }
+ }
+ set_default_key (s);
+
SendDlgItemMessage (hDlg, IDC_TIME_PHRASES, WM_GETTEXT,
20, (LPARAM)s);
opt.passwd_ttl = (int)atol (s);
- SendDlgItemMessage (hDlg, IDC_ENCRYPT_TO, WM_GETTEXT,
- 200, (LPARAM)s);
- set_default_key (s);
opt.encrypt_default = !!SendDlgItemMessage
(hDlg, IDC_ENCRYPT_DEFAULT, BM_GETCHECK, 0, 0L);
Modified: trunk/src/olflange.cpp
===================================================================
--- trunk/src/olflange.cpp 2005-12-06 10:49:01 UTC (rev 132)
+++ trunk/src/olflange.cpp 2005-12-07 17:13:27 UTC (rev 133)
@@ -681,6 +681,8 @@
CGPGExchExt::Install(LPEXCHEXTCALLBACK pEECB, ULONG lContext, ULONG lFlags)
{
ULONG lBuildVersion;
+ ULONG lActualVersion;
+ ULONG lVirtualVersion;
/* Save the context in an instance variable. */
m_lContext = lContext;
@@ -705,6 +707,25 @@
/* Check version. */
pEECB->GetVersion (&lBuildVersion, EECBGV_GETBUILDVERSION);
+ pEECB->GetVersion (&lActualVersion, EECBGV_GETACTUALVERSION);
+ pEECB->GetVersion (&lVirtualVersion, EECBGV_GETVIRTUALVERSION);
+ log_debug ("GPGol: detected Outlook build version 0x%lx (%lu.%lu)\n",
+ lBuildVersion,
+ (lBuildVersion & EECBGV_BUILDVERSION_MAJOR_MASK) >> 16,
+ (lBuildVersion & EECBGV_BUILDVERSION_MINOR_MASK));
+ log_debug ("GPGol: actual version 0x%lx (%u.%u.%u.%u)\n",
+ lActualVersion,
+ (unsigned int)((lActualVersion >> 24) & 0xff),
+ (unsigned int)((lActualVersion >> 16) & 0xff),
+ (unsigned int)((lActualVersion >> 8) & 0xff),
+ (unsigned int)(lActualVersion & 0xff));
+ log_debug ("GPGol: virtual version 0x%lx (%u.%u.%u.%u)\n",
+ lVirtualVersion,
+ (unsigned int)((lVirtualVersion >> 24) & 0xff),
+ (unsigned int)((lVirtualVersion >> 16) & 0xff),
+ (unsigned int)((lVirtualVersion >> 8) & 0xff),
+ (unsigned int)(lVirtualVersion & 0xff));
+
if (EECBGV_BUILDVERSION_MAJOR
!= (lBuildVersion & EECBGV_BUILDVERSION_MAJOR_MASK))
{
@@ -712,6 +733,27 @@
SRCNAME, __func__, lBuildVersion);
return S_FALSE;
}
+ if ((lBuildVersion & EECBGV_BUILDVERSION_MINOR_MASK) < 1573)
+ {
+ static int shown;
+ HWND hwnd;
+
+ if (!shown)
+ {
+ shown = 1;
+
+ if (FAILED(pEECB->GetWindow (&hwnd)))
+ hwnd = NULL;
+ MessageBox (hwnd,
+ _("This version of Outlook is too old!\n\n"
+ "At least versions of Outlook 2003 older than SP2 "
+ "exhibit crashes when sending messages and messages "
+ "might get stuck in the outgoing queue.\n\n"
+ "Please update at least to SP2 before trying to send "
+ "a message"),
+ "GPGol", MB_ICONSTOP|MB_OK);
+ }
+ }
/* Check context. */
@@ -793,7 +835,6 @@
log_debug ("%s:%s: received\n", SRCNAME, __func__);
if (opt.preview_decrypt)
{
- TRACEPOINT ();
HRESULT hr;
HWND hWnd = NULL;
LPMESSAGE pMessage = NULL;
More information about the Gnupg-commits
mailing list