/[winpt]/trunk/Src/ChangeLog
ViewVC logotype

Contents of /trunk/Src/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 73 - (show annotations)
Tue Nov 8 07:15:13 2005 UTC (19 years, 3 months ago) by twoaday
File size: 176644 byte(s)
2005-11-08  Timo Schulz  <ts@g10code.com>
 
        More minor changes to avoid GCC warnings.
         
        * wptGPG.cpp (check_homedir): Free memory in case of errors.
        (multi_gnupg_path): Add strict mode. If non-strict mode return
        the folder even if it does not exist.
        (check_for_gpgwin): New.
        * wptKeyserverDlg.cpp (hkp_recv_key): Make sure import_res is
        initialized.
        * wptRegistry.cpp (get_reg_entry_gpg4win): New.
        (get_reg_entry_mo): Support for gpg4win.
         
For complete changes see ChangeLogs.

1 2005-11-08 Timo Schulz <[email protected]>
2
3 More minor changes to avoid GCC warnings.
4
5 * wptGPG.cpp (check_homedir): Free memory in case of errors.
6 (multi_gnupg_path): Add strict mode. If non-strict mode return
7 the folder even if it does not exist.
8 (check_for_gpgwin): New.
9 * wptKeyserverDlg.cpp (hkp_recv_key): Make sure import_res is
10 initialized.
11 * wptRegistry.cpp (get_reg_entry_gpg4win): New.
12 (get_reg_entry_mo): Support for gpg4win.
13
14 2005-11-07 Timo Schulz <[email protected]>
15
16 * wptMainProc.cpp (winpt_main_proc): Disable
17 some menu items when no secret key is available.
18
19 2005-11-05 Timo Schulz <[email protected]>
20
21 More minor changes to avoid GCC warnings.
22
23 * wptErrors.cp (winpt_strerror): Return w32
24 formatted error and do not use 'break'.
25
26 2005-11-04 Werner Koch <[email protected]>
27
28 * WinPT-en.rc: Fixed locations of icons.
29
30 2005-11-03 Timo Schulz <[email protected]>
31
32 A lot of minor changes to avoid GCC warnings.
33
34 * wptGPG.cpp (get_gnupg_keyring): Only check size for
35 public keyring.
36 * wptKeyManager.cpp (km_update_default_key_str): Do
37 not issue a bug message when no secret key was found.
38 * wptGPGPrefsDlg.cpp: Replace "" with NULL in the name struct.
39
40 2005-11-02 Werner Koch <[email protected]>
41
42 * WinPT.cpp (WinMain): Disabled PTD version tests.
43 (check_crypto_engine): Fixed version check for scard.
44
45 * wptErrors.cpp (debug_end): Add dummy function.
46
47 * Makefile.am (code_files): Added wptCardEditCB.cpp and
48 wptKeyEditCB.cpp.
49
50 2005-10-31 Werner Koch <[email protected]>
51
52 * wptCurrWnd.cpp: Include wptVersion.h to get prototypes of PTD
53 functions.
54
55 * wptKeyEditDlgs.cpp: Include oleauto.h
56 * wptKeyEdit.cpp: Include time.h.
57 * wptRegistry.cpp (gpg_filetypes): New from ../Include/wptGPG.h.
58 * wptGPGUtil.cpp (gpg_manage_ownertrust): s/export/exportflag/.
59
60 * Makefile.am (code_files): Add wptGPGUtil.cpp, wptCardEdit.cpp,
61 wptKeyEdit.cpp and wptKeycache.cpp.
62
63 * wptPassphraseCB.cpp: Fixed spelling of wptKeylist.h
64 * wptImportList.cpp (implist_load): Use remove and not unlink.
65 * wptGPG.cpp: Fixed spelling of wptGpgCmds.h
66 * wptImportList.cpp (implist_load): Use remove and not unlink.
67 * wptKeyManager.cpp (km_http_import): Ditto
68 * wptMainProc.cpp: Include wptCrypto.h
69 * wptKeyManager.cpp: Ditto.
70 * wptFileManager.cpp: Ditto.
71 * wptImportList.cpp (parse_colon_key): Need to cast argument for
72 isdigit. Include ctype.h.
73 * wptGPG.cpp: Include shlobj.h.
74
75 Fixed double inclusion of windows.h.
76
77 * Makefile.am (bin_PROGRAMS): Don't build KeyManagerExe for now.
78 * wptKeylist.cpp (get_key_created): Broke up trigraph.
79 (get_key_status): Removed dangerous use of sprintf. Still other
80 flaws present, see comment.
81
82 * wptCardPCSC.c: Don't include winscard.h.
83 (pcsc_readerstate_t, pcsc_context_t): New. Changed call users to
84 use these types.
85 (PCSC_): Added a lot of constants, all taked from GnuPG 1.9.
86 (SCARD_S_SUCCESS): Changed all compares to test the value directly
87 against zero.
88
89 * WinPT.cpp: Include wptCrypto.h.
90 (WinMain): Don't shard S. Removed usunsed variable SIZE.
91 * Makefile.am (code_files): Actually add files by adding a first
92 backslash.
93 * wptMDSumDlg.cpp: Include wptCrypto.h.
94 * wptProxySettingsDlg.cpp: Included ctype.h.
95 * wptKeysigDlg.cpp: Fixed spelling of wptKeylist.h.
96 * wptKeysignDlg.cpp: Ditto
97 * wptKeyRevokersDlg.cpp: Ditto. Fixed spelling of wptW32API.h.
98 * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Replaced unlink by remove.
99 Removed unused variable.
100 * wptClipVerifyDlg.cpp (show_notation_data): s/not/nota/ due to
101 silly c++ operator synonyms.
102 * wptKeyEditDlgs.cpp: Include time.h.
103 * wptClipDecryptDlg.cpp: Include wptCrypto.h to define PGP_MESSAGE.
104 * wptFileManagerDlg.cpp: Ditto.
105 (space_wipefrees_dlg_proc): Replaced unlink by remove; it doesn't
106 matter if it does an rmdir for a directory.
107
108 Fixed include of resource.h which is not anymore in the top
109 directory.
110
111 2005-10-28 Werner Koch <[email protected]>
112
113 * wptProxySettingsDlg.cpp (check_number): Cast isdigit() arg to
114 unsigned. Never ever use a possible signed char as argument for
115 ctype tests. An alternative is to first test using isascii ().
116 (keyserver_proxy_dlg_proc): Removed unused variable.
117
118 2005-10-27 Timo Schulz <[email protected]>
119
120 * wptKeyPropsDlg.cpp (get_validity): Take care of disabled keys.
121 * wptKeylist.cpp (keylist_add_key): Check global key flag to
122 see if the key is disabled and not each subkey.
123 (seclist_init): Likewise.
124 * wptClipDecryptDlg.cpp (gpgme_op_clip_decrypt): Use
125 gpgme_op_decrypt_verify.
126 (clip_decrypt_dlg_proc): Fixed fingerprint
127 to keyid conversation. This also fixes a crash.
128 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Likewise.
129 * wptKeyEditDlgs.cpp (do_editkey_expire): Ask if the key
130 already expired if the user wants to change the date.
131 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Replace old
132 'v3 sig' option with the 'ask cert level' option. Sync
133 with global preferences.
134 * wptKeySignDlg.cpp (keysign_dlg_proc): Watch if the
135 gpg.conf contains 'ask-cert-level'. If not disable button.
136 * wptKeySigDlg.cpp (keysig_dlg_proc): Automatically disable
137 the button when the key is available.
138 Reload key directly, not the entire cache.
139
140 2005-10-26 Timo Schulz <[email protected]>
141
142 * wptFileManager.cpp (is_floppy_disc): Prevent very unlikely but
143 possible overflow.
144 (is_openpgp_ext): Compare case insentensive.
145 (add_single_file): New.
146 (fm_add_opened_files): Support multi file selection.
147 * wptKeyPropsDlg.cpp (do_change_ownertrust): Removed.
148 * wptKeyManager.cpp (km_enable_disable_key): Do not set cache
149 reload flag. Just update the single key.
150 * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Remove static var
151 and disable anonymize recipient for now.
152
153 Begin to port code to GCC. Fix all warning issued by the gcc
154 compiler.
155
156 2005-10-25 Timo Schulz <[email protected]>
157
158 * wptGPGUtil.cpp (create_process): Hide window.
159 * wptKeyPropsDlg.cpp (get_photo_tmpname): New.
160 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Remove
161 static var 'enable'.
162 * wptKeygenDlg.cpp (keygen_dlg_proc): Likewise.
163 (gpg_genkey_params): Make sure all primary keys are capable
164 for signing and certification.
165 * wptKeySigDlg.cpp (is_sig): If no item is selected, return 0.
166 * wptGPG.cpp (gnupg_access_keyring): Check return value for
167 NULL. Noted by Ralf.
168 (get_gnupg_prog): Simplified.
169 (check_homedir): Fixed. Return 0 when the dir is successfully created.
170 * wptKeyManagerDlg.cpp (km_file_import): Use the hourglass to
171 indicate a pending GPG process.
172 * wptFileManager.cpp (op_begin, op_end): New. Indicate an start
173 and and of an operation. For now just the cursor changes.
174 (fm_parse_command_line): Remove debug output. Thanks to Ralf again.
175 * WinPT.cpp (WinMain): Check if there is already an instance and
176 set a variable early as possible.
177 (load_gettext): If a previous instance was found, do not output
178 any errors. Kudos to Ralf.
179
180 2005-10-24 Timo Schulz <[email protected]>
181
182 * wptPassphraseCB.cpp (passphrase_callback_proc): Allow to use
183 pre-defined recipients.
184 (release_gpg_passphrase_cb): Release recipients.
185 * wptKeyPropsDlg.cpp (keyprops_load_photo): Set photo-id
186 validity if needed.
187 (keyprops_dlg_proc): Issue a warning if the photo is valid.
188
189 2005-10-23 Timo Schulz <[email protected]>
190
191 * wptFileManager.cpp (fm_get_file_type): Detect detached sigs.
192 * wptKeyList.cpp (keylist_cmp_cb): Take care of expired/revoked keys.
193 (get_ext_validity): New.
194 * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Several cleanups.
195 * wptClipEditDlg.cpp (load_clipboard): Factored out some code into
196 this function.
197 (load_clipboard_from_file): Likewise.
198 (save_clipboard_to_file): New.
199 * wptKeyManagerDlg.cpp (keyprops_dlg_proc): Fix stack overflow.
200
201 2005-10-22 Timo Schulz <[email protected]>
202
203 Localized a lot of more strings.
204
205 * wptMainProc.cpp (load_smartcard): New.
206 * wptFileManager.cpp (fm_parse_command_line): Simplify code.
207 (fm_check_armor_type): Add new arg. Change all callers.
208 (fm_get_file_type): Likewise.
209 * wptKeyPropsDlg.cpp (display_key_info): New.
210 (keyprops_show_photo): Factored out some code into..
211 (keyprops_load_photo): ..this function.
212
213 2005-10-21 Timo Schulz <[email protected]>
214
215 * wptFileManagerDlg.cpp (file_manager_dlg_proc): Use
216 WM_INITPOPUPMENU to localize popup menu texts.
217 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
218 * wptClipSignDlg.cpp (one_key_proc): Use wipememory instead of memset.
219
220 2005-10-20 Timo Schulz <[email protected]>
221
222 Now WinPT depends on GPG 1.4.3 and GPGME 1.2.0.
223
224 * wptPassphraseCB.cpp (passphrase_cb): Complete card support.
225 * wptCardEdit.cpp (genKey): Handle cancel case.
226 * keycache.c: Renamed into...
227 * wptKeyCache.cpp: ...this.
228 * wptW32API.cpp (set_menu_text): Removed unused code.
229 (set_menu_text_bypos): New.
230 * wptCrypto.h: New.
231 * wptMainProc.cpp (winpt_main_proc): Complete localize
232 menu texts.
233 * wptErrors.cpp (log_debug): Use a static var so the file
234 is only opened once.
235 (debug_end): Cleanup. Currently just close the log file.
236 * wptErrors.h (wipememory): New.
237 (sfree_if_alloc): Use it here.
238 * WinPT.cpp (WinMain): Display the min. GPGME version which
239 is needed in case of an error.
240
241 2005-10-17 Timo Schulz <[email protected]>
242
243 Free all memory returned by the GPGME dll with gpgme_free ().
244
245 s/GPG_ERR_CARD_REMOVED/GPG_ERR_CARD_NOT_PRESENT.
246
247 * wptKeyEdit.cpp (getCardStatus): Remove dummy key.
248 (list_handler): With user interaction to allow to insert
249 the card into the reader.
250 * wptKeyEditCB.cpp (gpg_edit_card): Likewise.
251 (common_card_handler): Fixed incorrect command string.
252 * wptKeyPropsDlg.cpp (get_card_type): New.
253 (keyprops_dlg_proc): Show card information if present.
254 * wptFileManager.cpp (secret_key_available): Make the code faster.
255
256
257 2005-10-16 Timo Schulz <[email protected]>
258
259 * wptPassphraseCB.cpp (passphrase_cb): Fix problem
260 with hanging GPG process on cancel.
261 * keycache.c (gpg_keycache_release): Release all objects.
262
263 2005-10-15 Timo Schulz <[email protected]>
264
265 * wptCardEdit.cpp (setResult, getResult): New.
266 (reset): New.
267 (getCardStatus): Check return codes and release all objects
268 in case of errors.
269 * wptCardEditCB.cpp (change_pin_handler): Call reset()
270 before quit.
271 (editcard_handler): Likewise.
272 (common_card_handler): New.
273 * wptCardDlg.cpp (card_changepin_dlg_proc): Also unmask
274 the old PIN when 'Hide Typing' is disabled.
275 * wptPassphraseCB.cpp (passphrase_cb): The card detection
276 works again. Support to re-enter passphrase.
277
278 2005-10-14 Timo Schulz <[email protected]>
279
280 * wptCardDlg.cpp (card_status): New fields for the
281 fingerprint creation time. Display card info as title.
282 (get_printable_version): New.
283 * wptCardEditCB.cpp (editcard_handler): Fix problem
284 with the counter comparison.
285
286 2005-10-11 Timo Schulz <[email protected]>
287
288 Port to GPGME basically finished.
289
290 2005-09-20 Timo Schulz <[email protected]>
291
292 * wptFileManagerDlg.cpp (file_secdel_confirm_dlg_proc):
293 Do not use gpgme_recipients_t but the listview directly
294 to add the selected files.
295
296 2005-09-07 Timo Schulz <[email protected]>
297
298 * Make sure all GetOpenFileName filters are terminated by \0\0.
299
300 2005-09-01 Timo Schulz <[email protected]>
301
302 * wptW32API.cpp (center_window): New argument for parent window.
303 Change all callers.
304 (center_window2): Likewise.
305 * GPGME now can read gpgProgram entries with 'REG_EXPAND_SZ'.
306 * wptGPG.cpp (gnupg_backup_options): Remove param. One backup
307 file is enough. Changed all callers.
308
309 2005-08-15 Timo Schulz <[email protected]>
310
311 * wptKeyEditDlgs.cpp (do_editkey_showpref): Take care of v3 keys.
312 * wptGPGOptDlg.cpp (gpgopt_dlg_proc): Fixed name of title.
313 * Make sure the passphrase is always overwritten before it is
314 freed (or the function returns).
315 * wptKeyPropDlg.cpp (get_pref_cipher): New.
316 (keyprops_dlg_proc): Use it here.
317
318 2005-08-06 Timo Schulz <[email protected]>
319
320 * wptGPGME.cpp (keycache_update): Reload OpenPGP parts
321 of the secret key.
322 (keycache_init): cache name of secret keyring.
323 * wptKeyList.cpp (keylist_upd_key): Do not add long keyid.
324 (get_key_type): Do not assume 'ultimate' means key pair.
325 * wptKeyEditDlgs.cpp (diff_time): New.
326 (keyedit_addsubkey_dlg_proc): Changed design and use
327 diff_time. Drop checks for invalid keylength (< 1024, > 4096)
328 because the combo box automatically handles this.
329 * wptKeyManager.cpp (km_set_implicit_trust): Return error code.
330 * wptGPG.cpp (get_backup_name): New.
331 (gnupg_backup_keyrings): Rotate backup names, from 0..3.
332 * wptClipImportDialog.cpp (clip_import_dlg_proc): Free memory.
333 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Use 0x short keyid and
334 not the long keyid.
335
336 2005-08-05 Timo Schulz <[email protected]>
337
338 * wptListView.cpp (listview_set_item2): New.
339 * wptKeyManager.cpp (km_check_if_protected): Directly
340 retrieve gpgme_key_t from the list.
341 (km_check_key_status): Likewise.
342 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Also use
343 a human-readable name for secret key export.
344 Reload just the keys which were affected by updates
345 (edit-key).
346 (update_key): New.
347 * wptKeyList.cpp ((keylist_upd_key): Stripped down
348 version of keylist_add_key.
349 * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Do not
350 reload the keycache here, just flag 'update'. Give the
351 control to the calling dialog.
352 * wptKeySignDlg.cpp (keysign_dlg_proc): Use winpt_key_t
353 as parameter. Changed all callers.
354 Add date of expiration to the key info.
355 (get_expire_date): New.
356 Use a checkbox to allow to ask for the cert level.
357 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Do no reload
358 the cache.
359
360 2005-08-04 Timo Schulz <[email protected]>
361
362 * wptListView.cpp (listview_scroll): New.
363 (listview_get_item2): New.
364 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): If the
365 item was found, make it visible with scrolling.
366 * wptKeyManager.cpp (km_find_key): New.
367 (keylist_subclass_proc): Support to handle some acceleators.
368 Strg+{C, P, F, A}.
369 (km_get_key_status): Get the gpgme_key_t object directly
370 from the list.
371 * wptGPGPRefsDlg.cpp (gpgprefs_dlg_proc): Also try to set
372 the config file (if it exists).
373 * wptKeySignDlg.cpp (keysign_dlg_proc): Use easier code
374 to handle the click->activate situation.
375 * wptPassphraseCB.cpp (passphrase_callback_proc): Likewise.
376 Support to check the passphrase quality.
377 * wptPassphraseDlg.cpp (passwd_dlg_proc): Likewise.
378 (request_passphrase): Rename 'init' to 'flags' to allow more
379 options.
380 * wptMAPI.cpp: Check all *alloc results.
381 * wptKeyGenDlg.cpp (keygen_dlg_proc): Use a rudimentary
382 passphrase quality check.
383 * wptMDSumDlg.cpp (mdsum_dlg_proc): Use md5/sha1sum file
384 format and allow to save the checksum in a file.
385 * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Issue a warning
386 when the PGP mode is disabled.
387 wptKeyEditDlgs.cpp (do_editkey_primary): Return if just
388 one user-ID exists.
389 (keyedit_dlg_proc): Fixed index problem.
390 * wptKeyPropsDlg.cpp (get_validity): New.
391 (keyprops_dlg_proc): Actually show extended validity if possible.
392 * wptKeyList.cpp (get_key_fpr): Support for old v3 format.
393 (do_addkey): Use listview_add_item2 to store key as opaque
394 param inside the list.
395 * wptFileStatDlg.cpp (get_digest_algo): Add SHAxxx.
396 (file_stat_dlg_proc): End dialog if no PGP data was found.
397 (do_list_packets): Return the number of valid PGP packets
398 of the file.
399
400 2005-08-02 Timo Schulz <[email protected]>
401
402 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Instead of
403 using 'Default Keyserver' add the real keyserver name to
404 the menu.
405 The rebuild command does not reload the cache any longer.
406 Use ATTR_NAME + .asc as the filename and not keyid + .asc.
407 * wptProxySettingsDlg.cpp (enable_proxy_auth): New.
408 (keyserver_proxy_dlg_proc): Changed the design a little
409 and add some additional sanity checks.
410 * wptGPGParser.cpp (commit_gpg_options): Use W32 line endings.
411 This fixes the problem that the GPG option dialog does not show
412 very nice lines.
413 * wptGPGOptDlg.cpp (gpgopt_dlg_proc): s/options/config.
414 * wptKeySigDlg.cpp (keysig_dlg_proc): If a single key is selected
415 check for 'NOKEY' before asking a keyserver.
416 * wptKeyManager.cpp (km_delete_keys): Do not set 'refresh' flag.
417 If a lot of keys were selected, ask if the user wants to confirm
418 each delete procedure or allow to cancel the operation.
419 * wptFileManagerDlg.cpp (file_import_dlg_proc): Display how much
420 keys the file contain.
421 * wptKeyList.cpp (get_key_algo): Beautified.
422 (get_key_status): Drop the "[XYZ] Unknown" format, it is too
423 confusing for users.
424 * wptKeyManager.cpp (km_check_key_status): Adjustments for the
425 new code.
426 (km_check_for_seckey): Reset utrust parameter. Return -1 for
427 invalid (exp+rev+dis) keys.
428
429 2005-08-01 Timo Schulz <[email protected]>
430
431 * wptKeyserver.cpp (kserver_urlencode): Use unsigned for all given
432 sizes.
433 (check_IP_or_hostname): New.
434 (kserver_load_conf): Correct finger URL parsing problem.
435 (port_from_proto): New.
436 (keyserver_load_conf): Guess the port.
437 (keyserver_set_default): Allocate new buffer.
438 (kserver_load_conf): Likewise.
439 * wptHTTP.c (parse_reqline, parse_request): Removed.
440 Use WinPT error code and remove all unused code.
441 * wptKeyserverDlg.cpp (keyserver_dlg_proc): Properly handle finger URLs.
442 * wptProxySettingsDlg.cpp (read_proxy): Simple check for
443 invalid host/IP addresses.
444 * wptGPG.cpp (multi_gnupg_path): Return allocated buffer.
445 Changed all callers.
446 * wptPreferencesDlg.cpp (prefs_dlg_proc): At the first start,
447 automatically set 'backup to homedir'.
448 * WinPT.cpp (WinMain): Use desktop window as the parent window
449 to load 'first-start' dialogs.
450 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Do not set 'refresh'
451 flag after deleting keys.
452 * wptFirstRunDlg.cpp (first_run_dlg_proc): Use a new structure
453 for passing the arguments.
454 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Do not store "" for
455 the OptFile. This was responsible for a lot of 'General Errors'
456 after the first start related to key caching.
457 Automatically set the gpg binary if possible.
458
459 2005-07-22 Timo Schulz <[email protected]>
460
461 * wptMainProc.cpp (winpt_main_proc): Take care for shutdown
462 messages and make sure WinPT make a keyring backup in this case.
463 * wptGPGME.cpp (keycache_reload): Do not rebuild the signature
464 cache each time. Just do it on startup.
465 * wptKeyManager.cpp (km_key_is_v3): Use new ATTR_VERSION.
466 * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Assume the v3 flag
467 was set by the calling function.
468 * wptKeyGenDlg.cpp (keygen_wizard_dlg_proc): Ask for backups.
469 (keygen_dlg_proc): Only add the generated key to the keycache
470 and do not reload the entire cache.
471 * wptKeyManager.cpp (km_delete_keys): Store the number of keys
472 because in each loop iteration it will be new calculated.
473 * wptListView.cpp (listview_del_items): Likewise.
474 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Directly add the
475 generated key to the list instead of reloading the entire cache.
476 * wptKeyEditDlgs.cpp (parse_preflist): Support fpr SHAnnn.
477
478 2005-05-09 Timo Schulz <[email protected]>
479
480 * wptCommonDlg.cpp (http_file_dlg_proc): Renamed to..
481 (http_dlg_proc): ..this.
482 (get_keyserver_URL_dlg): New.
483 (check_URL): New.
484 * wptKeyEditDlgs.cpp (keyedit_set_pref_keyserver): New.
485 (keyedit_main_dlg_proc): Avoid massive keycache reloads, just reload
486 the single key.
487 * wptKeyRevokersDlg.cpp (key_revokers_dlg_proc): Show the key
488 properties of the selected desig. revoker.
489 * wptVerifyList.cpp (verlist_build): Increase the column
490 size of 'keyid'.
491 * wptGPGME.cpp (keycache_update): New.
492 * wptKeySigDlg.cpp (keysig_dlg_proc): Update the key if a signature
493 was deleted.
494 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Zeroing the key struct
495 before we set any values.
496
497 2005-05-03 Timo Schulz <[email protected]>
498
499 * wptFileManager.cpp (fm_parse_command_line): Handle
500 'SYMKEYENC' files. Thanks to the user who reported it.
501 * wptKeyEditDlgs.cpp (do_find_userid): Optionally return the context.
502 (showpref_dlg_proc): New.
503 (keyedit_main_dlg_proc): Support SHOWPREF.
504 (userid_list_init): New field 'Email'. Split userID into 'Name' + 'Email'.
505 (do_add_new_userid): Adjust for new ListView.
506 (do_find_userid): Use email for searching.
507 (parse_preflist): New.
508
509 2005-04-19 Timo Schulz <[email protected]>
510
511 * wptKeyserver.cpp (kserver_update_proxyuser): Fixed
512 buffer overflow that occurred when the proxy password
513 is > 29 chars. Thanks to the friendly user who reported this.
514 (kserver_search): Handle the case the key is revoked. Thanks
515 to Ralf.
516 (kserver_connect): More logging.
517 (kserver_sendkey): Likewise.
518 * wptProxySettingsDlg.cpp (check_number): New.
519 (read_proxy): Check the entered port number.
520 * wptKeySignDlg.cpp (sig_class_dlg_proc): Check default button.
521 * wptW32API.cpp (get_folder_dlg): Free memory.
522
523 2005-04-11 Timo Schulz <[email protected]>
524
525 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Reset
526 'enable' flag always at the begin.
527 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Show correct
528 key trust. Noted by a friendly user.
529 * wptListView.cpp (listview_add_item_pos): New.
530 * wptKeyEditDlgs.cpp (get_subkey_fingerprint): Due to
531 the fact that GPG does not return the fingerprint of
532 the generated subkey any longer, we need to get it manually.
533 Thanks to Maxime Brandt.
534 (keyedit_addsubkey_dlg_proc): If key size too large, ask
535 if this was a mistake.
536 (keyedit_add_subkey): Use it here.
537 (do_add_new_subkey): Fix list contrl insertion.
538 * wptTypes.h (DEFAULT_KEYSIZE): Define new default keysize constant.
539
540 2005-04-04 Timo Schulz <[email protected]>
541
542 * WinPT.cpp (check_crypto_engine): Correct version
543 check. Noted by Werner.
544
545 2005-03-22 Timo Schulz <[email protected]>
546
547 * WinPT.cpp (WinMain): --debug as an alias for --enable-debug.
548 (enable_mobile_mode): New.
549 * wptKeyEditDlg.cpp (keyedit_addsubkey_dlg_proc): Use new
550 ID's for adding subkeys.
551
552 2005-03-06 Timo Schulz <[email protected]>
553
554 * wptKeySignDlg.cpp (do_fill_seckeylist): Skip secret keys without
555 a public key. Noted by Kurt Fitzner.
556
557 2005-03-04 Timo Schulz <[email protected]>
558
559 * GPG asks twice for the new PIN. Thanks to Achim.
560 * wptCardDlg.cpp (card_changepin_dlg_proc): Reset the 'safety' pin also.
561 Only check the passphrase if the backup flag is enabled. Again thanks to
562 Achim.
563
564 2005-03-03 Timo Schulz <[email protected]>
565
566 * wptCardDlg.cpp (card_changepin_dlg_proc): Add item to re-type the
567 new PIN. Suggested by Achim.
568 Support to show the unmasked PIN.
569 Modified TAB-order.
570 * wptPINDlg.cpp (pin_cb_dlg_proc): Show unmasked PIN.
571
572 * Fixed wrong GPG --command-fd strings. Thanks to Achim.
573
574 2005-02-23 Timo Schulz <[email protected]>
575
576 * wptKeyserver.cpp (check_hkp_response): Support for HTTP/1.1.
577 (kserver_search): Be more strict.
578 * WinPT.cpp (WinMain): Enable FM progress by default.
579 * wptFileManagerDlg.cpp (file_preferences_dlg_proc): New.
580 (fm_parse_files): Use progress dialog only if it is
581 enabled.
582
583 2005-02-07 Timo Schulz <[email protected]>
584
585 * wptFileManager.cpp (fm_parse_files): Do not use the progress dialog
586 for signing and verifying. But this does not fix the problem tha the
587 dialog sometimes stay and is not destroyed.
588
589 2005-02-04 Timo Schulz <[email protected]>
590
591 * wptProgressDlg.cpp (progress_cb_thread): Set root window if available.
592 If the progress window survives by accident, it will be closed when the
593 File Manager (root window) is closed.
594
595 2005-02-02 Timo Schulz <[email protected]>
596
597 * wptPassphraseDlg.cpp (passwd_dlg_proc): use center_window2, otherwise
598 it is invisible.
599 * wptPassphraseCB.cpp (passphrase_callback_proc): Do not cache symmetric
600 passphrases.
601 * Enable the progress dialog for symmetric encryption.
602 * wptFileManager.cpp (fm_check_file_type): Also check for 'SYMKEYENC' in
603 FM_ENCRYPT mode.
604 * WinPT.cpp (WinMain): SETUP_EXISTING implemented.
605 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Reset 'Locale directory' when
606 no value is entered.
607
608 2005-01-26 Timo Schulz <[email protected]>
609
610 * wptGPG.cpp (multi_gnupg_path): Zero buffer before use.
611 * wptKeyManagerDlg.cpp: Add 'Select All' feature.
612 Move 'Edit->Key' to 'Key->Edit'.
613 * wptFileManagerDlg.cpp: Likewise.
614 * wptKeyPropsDlg.cpp (keyprops_show_photo): Show the JPG photo directly.
615 * wptKeyManager.cpp (spawn_loadimage): Removed.
616 (km_show_photo): Removed.
617 * wptRevokersDlg.cpp (revokelist_init): Fixed index.
618 * wptErrors.cpp (winpt_strerror): Show system error for registry
619 related problems.
620
621 2005-01-25 Timo Schulz <[email protected]>
622
623 * wptCardDlg.cpp (card_keygen_dlg_proc): Make 'backup keys' default
624 and that all values are 7-bit ASCII.
625 Use '*' for the passphrase field.
626 * wptGPG.cpp (multi_gnupg_path): New.
627 (get_gnupg_path): Use it here.
628 (check_homedir): Likewise.
629 * wptKeyserverDlg.cpp (save_default_ks): Fix problem that the port
630 is actually set.
631 * wptFileManager.cpp (fm_clearsign_8bit): New.
632 (fm_parse_files): Check if the file to clearsign is really 7-bit.
633 Thanks to djek.
634 (fm_set_ftype): Factored out some code from...
635 (fm_add_dropped_files): ...here. Simplied the code.
636 (fm_add_dir_files): New.
637 * Removed MD5 from MyGPGME and the new default sym cipher is AES.
638 * wptProgressDlg.cpp (progress_dlg_proc): Use additional HAND var
639 to track the window handle.
640 (progress_cleanup): Try to close tracking handle first.
641
642 2005-01-21 Timo Schulz <[email protected]>
643
644 * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Allow to retrieve keys
645 which are not in the keyring. Suggested by djek.
646 * wptFileManagerDlg.cpp (filemanager_dlg_proc): Implement basic
647 'Always on Top'.
648 Allow to send encrypted files via MAPI.
649 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Only reload the keycache
650 if the HKP retrieval succeeded.
651 * wptFileStatDlg.cpp (do_list_packets): Make sure that the pkt pointer
652 is not NULL.
653 * wptKeyManager.cpp (km_clip_export): Prefix the clipboard text with
654 a header similar to 'gpg -k name'.
655 * wptErrors.cpp (log_box): Use msg_box to make sure the box is visible
656 with 'Always on Top' windows.
657 * wptFileManager.cpp (fm_parse_files): Set progress callback for
658 wiping files.
659 (fm_add_opened_files): Do not add the file in case of an error.
660 * wptKeyserverDlg.cpp (kserver_get_port): New.
661 (save_default_ks): Save port.
662 * wptKeyserver.cpp (set_default_kserver): Get port or use default.
663 (kserver_connect): Logging.
664 (kserver_send_request): Likewise. Thanks to Markus.
665 * wptError.cpp (w32_fmt_msg): New.
666 (winpt_strerror): Show the W32 API error if the hotkey could not
667 be registered.
668
669 2005-01-20 Timo Schulz <[email protected]>
670
671 * wptKeycacheDlg.cpp (keycache_dlg_proc): Be less strict with the
672 keyring check. If the file exists, it is enough.
673 * wptKeyring.cpp (kserver_load_conf): Use C++ new for proxy_host.
674 Several cleanups and allow to specify the port of the keyserver.
675 * wptMainProc.cpp (winpt_main_proc): Handle WM_CLOSE to make sure
676 the application terminates clearly when Windows shutdown.
677
678 2005-01-10 Timo Schulz <[email protected]>
679
680 * WinPT.cpp (load_gettext): New.
681 (WinMain): Use it here to load it before --keymanager. Thanks to Ralf.
682
683 2005-01-08 Timo Schulz <[email protected]>
684
685 * Applied the patches to make the source G++ compatible.
686 * wptKeyserver.cpp (kserver_load_conf): Use the stripped string.
687 * wptKeygenDlg.cpp (keygen_dlg_proc): Default key size is now 2048.
688 * wptFileManagerDlg.cpp (fill_drive_combobox): Do not add CD-Roms.
689
690 2005-01-07 Timo Schulz <[email protected]>
691
692 * wptKeyserver.cpp (skip_type_prefix): Support all URL schemes.
693 (finger_recvkey): Use skip_type_prefix and prevent buffer overflows.
694 (ldap_recvkey): Likewise.
695 (check_hkp_response): Be more liberal with error strings.
696 (kserver_connect): Prevent buffer overflow and use the right return
697 code for inet_addr().
698 (kserver_search_chkresp): New.
699 (kserver_search): Fixed. Now it works with modern keyservers.
700 * wptKeylist.cpp (seclist_init): Add new flags param.
701 * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Use short secret key
702 listing.
703 * wptClipboardSignEncDlg.cpp (clip_signenc_dlg_proc): Likewise.
704 * wptMainProc.cpp (winpt_main_proc): GPGME cleanup.
705 * WinPT.cpp (WinMain): call GPGME init.
706 Reword the 'you have no keyring' problem and revamp the first run dialog.
707 * wptGPG.cpp (gnupg_access_keyring): New.
708 (gnupg_check_keyring): Removed unused code.
709 * wptFirstRunDlg.cpp (first_run_dlg_proc): Adjust dialog for the
710 new texts and remove unused elements.
711 * wptKeyserverDlg.cpp (keyserver_dlg_proc): s/keyserver/kserver. The
712 last annoying typo.
713 * wptKeyserverSearchDlg.cpp (hkpsearch_dlg_proc): End dialog in case of
714 an error.
715
716 2004-12-30 Timo Schulz <[email protected]>
717
718 * wptKeyserverDlg.cpp (keyserver_list_build): Initialize pointer.
719 This fixes the problem that the dialog crashes when the user selects
720 anything. Thanks to my users.
721 (keyserver_dlg_proc): s/keyserver/kserver. Thanks to Ulf.
722
723 2004-12-20 Timo Schulz <[email protected]>
724
725 * wptGPG.cpp (check_gnupg_engine): Fixed version checking.
726 * wptFileManager.cpp (fm_encrypt): Delete the passphrase from the
727 cache if it is not valid.
728
729 Fix problem with a NULL pointer.
730
731 2004-12-15 Timo Schulz <[email protected]>
732
733 * wptFileManagerDlg.cpp (space_wipefrees_dlg_proc): Use the right
734 temp name.
735 * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Disable 'OK' button
736 when no secret key is available.
737
738 2004-12-11 Timo Schulz <[email protected]>
739
740 * wptFileManager.cpp (fm_add_opened_files): Fix broken code to detect
741 the file type.
742 (fm_parse_command_line): Likewise.
743
744 2004-12-02 Timo Schulz <[email protected]>
745
746 * wptKeySigDlg.cpp (do_load_keyprops): Only issue errors for non-main nodes.
747
748 2004-11-04 Timo Schulz <[email protected]>
749
750 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Support preferred
751 keyserver sub packets.
752
753 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Set a flag to
754 indicate we need to reload the cache. If a user deletes a key
755 and exits the manager and loads it again the deleted key is
756 still in cache and provoked an error.
757
758 * wptKeySigDlg.cpp (do_load_keyprops): Stricter key checks.
759
760 * wptW32API.cpp (center_window): Replaced with real code which calculates
761 the position relative to the desktop window.
762
763 2004-10-25 Timo Schulz <[email protected]>
764
765 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Issue an info box
766 if the PGP message is complete but broken during the transport.
767 Thanks to Werner and Achim.
768 * wptFileManager.cpp (fm_sym_encrypt): Do not force CAST5. Thanks
769 to the gnupg-users.
770 * Automatically add '\r\n' to the text before signing. This solves
771 the problem the last line is not included if no \r\n is present.
772 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Add a 'mail quote' mode
773 which prepends the text with '> '. This makes it easier to quote
774 decrypted text.
775 * wptKeyserverDlg.cpp (keyserver_list_build): Code which was factored
776 out from..
777 (keyserver_dlg_proc): ..here.
778
779 2004-10-15 Timo Schulz <[email protected]>
780
781 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Make sure that opt
782 is really initialized.
783
784 2004-10-07 Timo Schulz <[email protected]>
785
786 * wptErrors.cpp (winpt_errmsg): Use a generic header when no
787 filename is supplied.
788 * wptMainProc.cpp (cleanup_tmp_files): Do not use BUG but
789 an error message which is more clean. Thanks to Ralf.
790 * wptCardDlg.cpp (card_keygen_dlg_proc): Support new card
791 admin mode.
792 * wptKeySignDlg.cpp (do_check_protection): Also check for smart
793 card protection.
794 (get_keyinfo): Return if this is a smart card key.
795 * wptKeyEditDlgs.cpp (do_find_userid): Use UTF8 encoding before
796 comparing the names.
797 * winpt.cpp: Now depends on PTD 0.7.1.
798
799 2004-10-01 Timo Schulz <[email protected]>
800
801 * wptClipSignDlg.cpp: Really use the selected subkey with the
802 right '!' syntax. Thanks to Vedaal for pointing this out.
803 * wptGPG.cpp (gnupg_backup_keyrings): Check if the backup device
804 is accessable and writeable, otherwise inform the user. Kudos to
805 the one who reported this problem.
806
807 2004-09-20 Timo Schulz <[email protected]>
808
809 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Disable 'Sign' in
810 context menus when the key is flagged as revoked.
811 (update_ui_items): Likewise and set the 'ShowPhoto' flag only if
812 the key has such an item.
813
814 2004-09-08 Timo Schulz <[email protected]>
815
816 * wptKeyserverDlg.cpp (kserver_get_pos): If only one element is
817 in the list, return zero.
818
819 2004-09-07 Timo Schulz <[email protected]>
820
821 * wptAboutDlg.cpp (about_dlg_proc): Add 'Help' button. Suggested by Ralf.
822 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
823
824 2004-09-01 Timo Schulz <[email protected]>
825
826 * wptGPG.cpp (GPG_CONF): Define it. Use gpg.conf by default.
827 (default_key_from_cache): Use new key attribute 'usable'.
828 * WinPT.cpp (show_unprotected_keys): Removed.
829 * wptKeylist.cpp (check_key): Removed.
830 (seclist_init): Use new 'usable' key attribute.
831 (keylist_add_key): Likewise.
832 * wptKeyManagerDlg.cpp (keylist_subclass_proc): support to
833 add keys via 'INSERT'.
834 * wptListView.cpp (listview_select_one): New.
835 (listview_find): New.
836 * wptFileManager.cpp (fm_get_current_pos): If there is only
837 one item, return 0 but also select it. Thanks to Christian.
838
839 2004-08-28 Timo Schulz <[email protected]>
840
841 * WinPT.cpp (WinMain): Free gpg table in case of an error.
842 * wptFileManagerDlg.cpp (filelist_subclass_proc): New.
843 (filemanager_dlg_proc): Subclass the list control.
844 * Fix Alt+C for the winpt_prefs_dlg_proc.
845 * wptKeyserver.cpp (kserver_load_conf): Ignore lines with
846 just whitespaces. Thanks to the folks on winpt-users.
847
848 2004-08-27 Timo Schulz <[email protected]>
849
850 * wptKeyserver.cpp (skip_whitespace): New.
851 * Fix a problem with the key cache. The new hash item was
852 not initialized to zero and thus the free caused an illegal access.
853 Thanks to Ralf for pointing this out.
854 * wptTextInputDlg.cpp (text_input_dlg_proc): Finished with localisation.
855 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Likewise.
856 * wptFirstRunDlg.cpp (first_run_dlg_proc): Remove global variable and
857 use a context to store the value. Loalize all text strings.
858 * wptKeyList.cpp (key_check_validity): Cannot use gettext here.
859 (keylist_get_recipients): Increase buffer for gettext messages.
860
861 2004-08-26 Timo Schulz <[email protected]>
862
863 * WinPT.cpp (load_keyserver_conf): New. Factored out some code
864 from WinMain ().
865 (WinMain): Load keyserver config at the begin. Thanks to Bodo Aßner
866 * wptKeyserverDlg.cpp (keyserver_dlg_proc): If there is no keyserver
867 in the list control, add at least the internal default HKP server.
868 * wptKeygenDlg.cpp (keygen_wizard_dlg_proc): NLS support.
869 * wptKeySignDlg.cpp (sig_class_dlg_proc): Likewise.
870 (keysign_dlg_proc): Likewise.
871 * wptKeySigDlg.cpp (keysig_dlg_proc): Likewise.
872 * wptKeyserver.cpp (skip_type_prefix): New. Thanks to Marcus Junk.
873 (kserver_connect): use it here.
874 (kserver_send_request): Likewise.
875 (kserver_recvkey): Likewise.
876
877 2004-08-25 Timo Schulz <[email protected]>
878
879 * wptFileManager.cpp (fm_get_file_type): Skip files over 32 MB
880 and skip to read large files on floppy discs.
881 (fm_wipe): Display a 'wait' cursor until the wipe is complete.
882 (is_floppy_disc): New.
883 * wptFileManagerDlg.cpp (filelist_subclass_proc): New.
884 (file_manager_dlg_proc): Use subclassing to allow some hotkeys.
885
886 2004-08-24 Timo Schulz <[email protected]>
887
888 * wptKeyEditDlgs.cpp (userid_list_init): Add creation date for
889 the user-ids.
890 * wptKeygenDlg.cpp (key_wizard_dlg_proc): Allow to switch into
891 expert mode when the non-interactive mode is used.
892 * WinPT.cpp (WinMain): Start the keygen wizard instead of the
893 expert dialog and allow to switch to it.
894
895 2004-08-20 Timo Schulz <[email protected]>
896
897 * wptKeyManagerDlg.cpp (do_create_minpopup): In read-only
898 mode the menu is not available.
899 (popup_gpg_readonly): New.
900 (menu_gpg_readonly): New.
901 (keymanager_dlg_proc): Use it here. Do not check the permissions
902 any longer since this is now handle via the read-only code.
903 * wptMainProc.cpp (winpt_main_proc): Check if the keyrings
904 are in read-only mode.
905 * wptKeyGenDlg.cpp (keygen_wizard_dlg_proc): RSA support.
906 * wptKeySignDlg.cpp (keysign_dlg_proc): Allow non-revocably
907 signatures in expert mode.
908 * wptKEyEditDlgs.cpp (do_find_userid): Release context.
909 * wptGPG.cpp (gpg_check_permissions): Only print out a warning
910 in the interactive mode.
911 * wptTrayPopDlg.cpp (WndProc): Destroy the window when the left
912 mouse button is clicked.
913
914 2004-08-19 Timo Schulz <[email protected]>
915
916 * wptKeyEditDlg.cpp (keyedit_addsubkey_dlg_proc): Corrected
917 key numbers.
918
919 * wptKeysigDlg.cpp (do_delsig): New. Implement 'delsig' command.
920 (is_sig): Change code to allow to check pre-defined fields.
921
922 * WinPT.cpp (WinMain): Allow read-only support for keyrings.
923
924 2004-08-06 Timo Schulz <[email protected]>
925
926 * wptContext.h: Move subclass_s context to this file.
927
928 * wptKeysigDlg.cpp (subclass_dlg_proc): New.
929
930
931 2004-08-05 Timo Schulz <[email protected]>
932
933 * wptKeySigDlg.cpp (sigprops_dlg_proc): Set the 'expired' flag
934 when possible.
935 New dialog layout to enhance the readability of the text. Use
936 flat check boxes for the same reason.
937
938 * wptKeyEditDlgs.cpp (do_editkey_expire): Set new value to
939 the right column (3 not 4).
940
941 * wptFileManagerDlg.cpp: Make sure the wipe freespace tempfile
942 uses a unique name.
943
944
945 2004-08-04 Timo Schulz <[email protected]>
946
947 * wptClipEditdlg.cpp (clip_edit_dlg_proc): Removed the
948 edit-field to display the text. Now a RichEdit field is
949 used. This solves the XP problem that the viewer is empty
950 even if there is text in it.
951
952 * wptKeyManger.cpp (km_file_export): Add WinPT specific comment.
953
954 * wptKeySigDlg.cpp (sigprops_dlg_proc): New.
955 (keysig_dlg_proc): Add new 'Properties' button and implement
956 the code for it.
957
958 * wptSigList.cpp: Add support to show the expiration date.
959
960 * wptGPGME.cpp (keycache_init): Support to show the progress bar.
961 (keycache_release): Store the amount of keys in the registry for
962 the progress dialog.
963
964 * wptPreferenceDlg.cpp (prefs_dlg_proc): Add support to generate
965 default keyserver.conf.
966
967 * wptKeyserver.cpp (kserver_load_conf): Store the mod-time of the file.
968 Fix possible buffer overflow.
969 (wsock_end): Release stored keyserver list.
970
971 * wptEncryptDlg.cpp (clip_encrypt_dlg_proc): Allow to search for
972 a specific recipient and select it.
973
974 2004-08-02 Timo Schulz <[email protected]>
975
976 * wptKeysigDlg.cpp (do_create_popup): New.
977 (do_load_keyprops): New.
978
979 (keysig_dlg_proc): Factor out some common code and use
980 do_load_keyprops.
981
982 * wptKeyServer.cpp (kserver_check_inet_connection): New.
983
984 * wptKeyManger.cpp (km_refresh_from_keyserver): First check
985 for an active internet connection. It's annoying for the
986 user to confirm an connection error for each key (n>40).
987
988 2004-07-27 Timo Schulz <[email protected]>
989
990 * wptKeyManagerDlgProc.cpp (keymanager_dlg_proc): Set the new
991 value for the ownertrust.
992
993 * wptKeyManager.cpp (get_key_trust): Make it public.
994 (get_key_trust_str): New.
995 (km_refresh_from_keyserver): Allow to select random keys.
996 (km_refresh_one_key): New.
997
998 * wptKeyserver.cpp: Use default keyserver if possible.
999
1000 2004-07-13 Timo Schulz <[email protected]>
1001
1002 * wptFileManager.cpp (fm_assume_onepass_sig): New.
1003 Thanks to Vedaal who found out that armored one-pass sigs are not
1004 correctly recognized.
1005
1006 (ask_filename): New.
1007 Again thanks to Vedaal who suggested to ask for a new output name
1008 for the case the user does not want to overwrite the file.
1009
1010 (fm_encrypt): Use it here.
1011 (fm_decrypt): Likewise.
1012 (fm_sign): Likewise.
1013
1014 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): New context menu entry
1015 to set secret keys to ultimate trust.
1016
1017 * wptKeyManager.cpp (km_check_for_seckey): Optionally return if the
1018 key has ultimate trust.
1019 (km_set_implicit_trust): New.
1020
1021 2004-07-12 Timo Schulz <[email protected]>
1022
1023 * wptRegistry.cpp: Support for disable compression of multi-media files.
1024 (set_reg_winpt_single): New.
1025 (get_reg_winpt_single): New.
1026
1027 * wptFileManager.cpp (is_multi_media): New.
1028 (fm_encrypt): Disable compression of multi-media files.
1029 (fm_state_new): Set comment to indicate armored files were generated
1030 by WinPT. This is a replacement due to the fact the WinPT string is not
1031 added in the 'Version' for larger files.
1032
1033 * WinPT.cpp (WinMain): Extract the loadimage.exe from the DLL if not found.
1034
1035 2004-07-11 Timo Schulz <[email protected]>
1036
1037 * Bug fix for the validity revoked status. Now it is 'revoked'
1038 and not 'unknown' any longer.
1039
1040 * Feature to disable encryption. This might be useful for filetypes
1041 GPG does not recognize as compress (movies, ...).
1042
1043 * wptFileManager.cpp (fm_get_file_type): Skip packet detction if
1044 the file is large and it has no openpgp extension.
1045
1046 2004-06-19 Timo Schulz <[email protected]>
1047
1048 * wptInet.cpp: Renamed to ...
1049 * wptHttp.c: ... this.
1050 * wptKeyManager.cpp (km_http_import): Release 'p' not too early.
1051 * WinPT.cpp (WinMain): If there is a problem with the homedir,
1052 jump to the first start settings.
1053
1054 2004-06-12 Timo Schulz <[email protected]>
1055
1056 * wptInet.cpp: Updated.
1057 * wptKeyManager.cpp (km_http_import): Use http_send_request2() to
1058 parse the URL.
1059 * wptCommonDlg.cpp (http_file_dlg_proc): New.
1060 (get_http_file_dlg): New.
1061
1062 2004-06-08 Timo Schulz <[email protected]>
1063
1064 * wptInet.cpp: New.
1065 * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Support for http
1066 transfers.
1067 * wptKeyManager.cpp (km_http_import): New.
1068
1069
1070 2004-06-02 Timo Schulz <[email protected]>
1071
1072 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Do not issue an error
1073 if there is no clipboard data.
1074
1075 Release memory in case of an error.
1076
1077 * wptKeyManager.cpp (keylist_cmp_cb): Allow to sort by algorithm.
1078
1079 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
1080
1081
1082 2004-05-31 Timo Schulz <[email protected]>
1083
1084 * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Implement the
1085 'X' close button. Noted by a friendly user.
1086
1087 Disable 'Save' button.
1088
1089 * wptMainProc.cpp (cleanup_tmp_files): Delete all related temp files.
1090
1091 * wptFileManager.cpp (fm_set_status): Do not use the data file name
1092 for signatures but keep the original file name.
1093
1094 (fm_verify_pasted_detsig): Try to verify detached signatures from
1095 the clipboard.
1096
1097 2004-05-14 Timo Schulz <[email protected]>
1098
1099 * WinPT.cpp (check_crypto_engine): Due to some
1100 internal GPG changes the min. version for smart card
1101 support is now 1.3.6.
1102
1103 * wptProxySettingsDlg.cpp (read_proxy): Correct prefix
1104 handling. Thanks to the folks who reported this via SF.net.
1105
1106 * wptRegistry.cpp (get_reg_winpt_prefs): Corrected enum ids.
1107 Thanks to the folks on winpt-users who reported it.
1108
1109 * wptPreferencesDlg.cpp (prefs_dlg_proc): Fix code in case of
1110 the hotkeys are disabled.
1111
1112 * wptKeylist.cpp (do_addkey): Broken ElGamal dection, fixed.
1113
1114 * wptFileManager.cpp (fm_get_file_type): Do not parse the entire
1115 file if the size is >= 256MB.
1116
1117 2004-03-15 Timo Schulz <[email protected]>
1118
1119 * Decrypt list box has now a vertical scroll bar.
1120
1121 2004-03-11 Timo Schulz <[email protected]>
1122
1123 * The DLL is now complety C-source.
1124
1125 2004-03-08 Timo Schulz <[email protected]>
1126
1127 * wptGPG.cpp (gnupg_import_keyrings): cleanups.
1128
1129 * wptUTF8.c (utf8_to_wincp): New. Directly convert UTF-8 to Windows
1130 CP.
1131 (wincp_to_utf8): Likewise.
1132 (conv_charset): Now internal and static.
1133
1134 * wptUTF8.h: New prototypes and remove the old prototypes.
1135
1136 * WinPT.cpp (WinMain): Destroy the windows handle in case of an error.
1137
1138
1139 2004-03-07 Timo Schulz <[email protected]>
1140
1141 * wptGPG.cpp (get_gnupg_keyring): Special case because GPG creats
1142 dummy keyrings with a size of zero in the homedir.
1143
1144 (gpg_check_permissions): Check for read-only keyrings and add code
1145 for this case.
1146
1147 This problem fixes a lof of other problems related to the OpenPGP
1148 parsing stuff for the key cache.
1149
1150 * WinPT.cpp (check_crypto_engine): Store the GPG version for later use.
1151
1152 2004-03-04 Timo Schulz <[email protected]>
1153
1154 * wptKeyserver.cpp (finger_recvkey): Error if key was not found
1155 or garbled.
1156
1157 * wptGPG.cpp (gpg_check_permissions): Take care of the entries
1158 in gpg.conf.
1159
1160 * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Support to select
1161 the signer. Suggested by Sebastian.
1162
1163 * wptKeylist.cpp (seclist_init): Moved from the clip dialog file to
1164 this file.
1165 (seclist_free): Likewise.
1166 (seclist_select_key): Likewise.
1167
1168 * wptFileManager.cpp (fm_encrypt): Handle the case the signer was
1169 already set.
1170
1171 2004-03-02 Timo Schulz <[email protected]>
1172
1173 * wptGPG.cpp (check_keyring): Handle the case that the keyring
1174 is set in the gpg.conf file and the pubring.gpg file is zero bytes.
1175
1176 (gnupg_backup_keyrings): Support backup of keyrings which were set
1177 in gpg.conf. Thanks to the user who reminded me of this problem.
1178
1179 (gnupg_check_file_ext): Make check not case sentensive.
1180
1181 * (sfree_if_alloc): Overwrite the memory with zeros before freeing
1182 it. This only works with c-strings! Use it everywhere we handle
1183 sentensive information (passphrases).
1184
1185 * Try to improve the usability with better menu names and new
1186 ordering.
1187
1188 * wptKeyMangerDlg.cpp: Make the 'Trust' column sortable.
1189
1190 * wptMainProc.cpp (winpt_main_proc): Removed GPG about dialog. Now
1191 it is part of the WinPt about dialog. This way we can minimize the
1192 elements in the popup menu.
1193
1194 2004-02-29 Timo Schulz <[email protected]>
1195
1196 * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Support throw-keyid.
1197
1198 * wptKeySignDlg.cpp (do_fill_seckeylist): Make sure we skip key itself
1199 so we are not allowing to sign ourself.
1200
1201 * wptSigList.cpp (siglist_add_key): Support for the signature
1202 flags (local, non-revocably, ...).
1203
1204 * Key signing with GPG 1.2.x should work again. Hopefully.
1205
1206 2004-02-26 Timo Schulz <[email protected]>
1207
1208 * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Issue an error
1209 if no recipient was selected.
1210
1211 * wptFileManager.cpp (fm_parse_files): Make sure the progress dialog
1212 is destroyed. This fixes the bug that the dialog sometimes exist even
1213 after the procedure ended.
1214
1215 * wptProgressDlg.cpp (progress_callback): Change the if-then-else
1216 struct to prevent zombie dialogs.
1217
1218 * wptKeyserver.cpp: Removed unused prototypes.
1219
1220 2004-02-25 Timo Schulz <[email protected]>
1221
1222 * wptKeyManagerDlg.cpp: Use consequently 'List Signatures' and
1223 do not mix the names in the different menus.
1224
1225 * wptSigList.cpp: Support to show the signature class.
1226
1227 * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Disable the combo
1228 box when there is no secret key available.
1229
1230 (do_init_keylist): Do not allow to use the owners key as a desig
1231 revoker.
1232
1233 * wptKeylist.cpp (get_key_trust): New.
1234 (do_addkey): Use it here.
1235
1236 2004-02-24 Timo Schulz <[email protected]>
1237
1238 * WinPT.cpp (WinMain): Call a selftest check procedure to
1239 make sure all cryptographic code works as expected.
1240
1241 2004-02-22 Timo Schulz <[email protected]>
1242
1243 * PTD: Cryptdisk seems to have problems with locking. Use
1244 a forced flag to tell the code if it should bail out or
1245 ignore locking errors.
1246
1247 * wptCryptdisk.cpp (cryptdisk_umount_dlg_proc): Use new
1248 locking code.
1249 (cryptdisk_new_dlg_proc): Adjust size of the volume.
1250
1251 2004-02-21 Timo Schulz <[email protected]>
1252
1253 * wptCryptdisk.cpp (cryptdisk_cleanup): New.
1254 (is_nt4): Because my Platform-SDK is too old I need to load
1255 some prototypes dynamically.
1256 (init_drives): Return the first useable drive letter if
1257 called with appropriate parameters.
1258 * wptMainProc.cpp (winpt_main_proc): Use it here.
1259
1260 2004-02-18 Timo Schulz <[email protected]>
1261
1262 * Modify the cryptdisk code for crosscrypt 0.4.1.
1263 * wptCryptDisk.cpp (do_mount): Add key algorithm param.
1264
1265 2004-02-17 Timo Schulz <[email protected]>
1266
1267 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Also encrypt
1268 to the signers key. Suggested by Alexander.
1269 Use new keycache system, we use the public key part of the
1270 cache because it has all flags set.
1271 * wptGPG.cpp (default_key_from_cache): Use new cache system.
1272 * wptKeySignDlg.cpp (do_fill_seckeylist): Likewise.
1273
1274
1275 2004-02-12 Timo Schulz <[email protected]>
1276
1277 * wptErrors.cpp: New error codes for the cryptdisk feature.
1278 * wptCryptdisk.cpp (do_dispatch): Better error handling.
1279 (cryptdisk_mount_dlg_proc): Use it here.
1280 (cryptdisk_umount_dlg_proc): Likewise.
1281 (init_drives): Use system list.
1282
1283 Localized all strings.
1284
1285 2004-02-09 Timo Schulz <[email protected]>
1286
1287 * wptCryptdisk.cpp (cryptdisk_umount_dlg_proc): New.
1288 (do_reaping): New. Release the list if all items are 'expired'.
1289 (cryptdisk_mount_dlg_proc): New.
1290 (init_drives): New.
1291 * wptMainProc.cpp (cryptdisk_proc): Renamed from...
1292 (handle_cryptdisk): this. And filled with life.
1293
1294 2004-02-08 Timo Schulz <[email protected]>
1295
1296 * wptCryptdisk.{cpp,h}: New. Support for the extended
1297 filedisk application.
1298 * wptMainProc.cpp (winpt_main_proc): Likewise.
1299 * WinPT.cpp (WinMain): Make sure the new PTD lib is installed.
1300
1301 2004-02-05 Timo Schulz <[email protected]>
1302
1303 * wptRegistry.cpp (set_reg_winpt_prefs): Forget to handle
1304 CMD_DISHOTKEYS. Thanks to the user who reminded me.
1305 * wptMainProc.cpp (spawn_cryptdisk): New interface to
1306 the Cryptdisk application.
1307
1308 2004-02-04 Timo Schulz <[email protected]>
1309
1310 * wptRegistry.cpp (get_reg_winpt_prefs): Revamped the core.
1311
1312 2004-02-03 Timo Schulz <[email protected]>
1313
1314 * WinPT.cpp (check_crypto_engine): New. Factor out common code.
1315 (WinMain): Check the crypto engine after the first start.
1316
1317 * wptRegistry.cpp (set_reg_winpt_prefs): Make sure an error is
1318 issued if the values could not stored. Revamped the core.
1319
1320 * Removed the last appearance of the GPG agent support.
1321
1322 * wptGPG.cpp (init_gnupg_table): Do not use static buffers.
1323 (free_gnupg_table): Free memory.
1324
1325 * wptClipImportDlg.cpp (clip_import_dlg_proc): Make sure the
1326 ctx pointer get malloced and set the contents to zero.
1327
1328
1329 2004-02-02 Timo Schulz <[email protected]>
1330
1331 * wptCardDlg.cpp (card_keygen_dlg_proc): Make sure the name
1332 is long enough. The same check for the mail address.
1333
1334 Thanks to Achim.
1335
1336 2004-01-28 Timo Schulz <[email protected]>
1337
1338 * wptCardDlg.cpp (card_keygen_dlg_proc): A info is issued
1339 if keys on the card exist but the user does not said overwrite.
1340
1341 Make sure the expire date is not in the past.
1342
1343 * wptMainProc.cpp (winpt_main_proc): Avoid to release the file
1344 lock twice. Not sure if this fixes some other problems but it
1345 was definitely a bug.
1346
1347 * wptMapi.cpp (mapi_init): Make sure all function ptrs are
1348 initialized otherwise bail out.
1349 (mapi_send_message): New. Interface to allow to send an
1350 encrypted mail with zero ore more encrypted attachments.
1351 (secure_attachment): New.
1352 (parse_recipients): New.
1353
1354 2004-01-25 Timo Schulz <[email protected]>
1355
1356 * WinPT.cpp (WinMain): Silently die when an instance is already
1357 running. Do not confuse the user with a message. Suggested by
1358 Sebastian.
1359 * wptKeyManager.cpp (delete_keys_from_cache): New.
1360 (km_delete_keys): Use it here. Thanks to Achim.
1361
1362 2004-01-23 Timo Schulz <[email protected]>
1363
1364 * wptCardDlg.cpp (check_pin_len): New. Check if the
1365 PIN is long enough and give an appropriate error.
1366 (card_changepin_dlg_proc): Use the new check function.
1367
1368 2004-01-22 Timo Schulz <[email protected]>
1369
1370 * Remove all internal card reader config. It's up to the
1371 user to do this. It would be too error proune to offer it.
1372 * wptCard.h: Removed all card driver stuff.
1373 * wptPinDLG.cpp (pin_cb_dlg): Use better names to differ
1374 between the admin and the user (normal) PIN.
1375
1376 2004-01-04 Timo Schulz <[email protected]>
1377
1378 * wptImageList.{cpp,h}: New. Contributed by Andreas Jobs.
1379 * wptKeylist.cpp (keylist_cmp_cb): More patches from Andreas
1380 and minor changes.
1381 * wptListView.cpp (listview_sort_items): Likewise.
1382 * wptKeyManager.cpp (key_manager_dlg_proc): Likewise.
1383 (regist_sep_wnd): Factored out some code.
1384
1385 2004-01-03 Timo Schulz <[email protected]>
1386
1387 * wptClipImportDlg.cpp (clip_import_dlg_proc): automatically allow
1388 to import secret keys.
1389
1390 2003-12-31 Timo Schulz <[email protected]>
1391
1392 * wptKeyEditDlgs.cpp (keyedit_addsubkey_dlg_proc): Do not sort
1393 the list otherwise the index is wrong.
1394 * wptKeySignDlg.cpp (keysign_dlg_proc): Add the ability to set
1395 a signature expire date.
1396
1397 2003-12-30 Timo Schulz <[email protected]>
1398
1399 * fixed the GPG edit-key commands sign and addrevoker.
1400
1401 2003-12-23 Timo Schulz <[email protected]>
1402
1403 * wptKeyEditAddKEyDlg.cpp (keyedit_addsubkey_dlg_proc): Remove
1404 ElGamal s+e support. Oops, this should be already done.
1405 * wptGPGME.cpp (keycache_init): Sync both key caches. In other
1406 words transfer some flags from the sec-cache to the pub-cache.
1407 * wptKeySignDlg.cpp (key_sign_dlg_proc): A workaround for the
1408 key sign procedure. If it is already signed, the process
1409 sometimes hangs.
1410
1411 2003-12-14 Timo Schulz <[email protected]>
1412
1413 * wptKeyeditSetPrefDlg.cpp (get_userid_preflist): New.
1414 * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Support for updpref.
1415 (do_editkey_setpref): Implement updpref command.
1416
1417
1418 2003-12-10 Timo Schulz <[email protected]>
1419
1420 * GPGME support to change key preferences.
1421 * wptKeyeditSetPrefDlg.cpp (keyedit_setpref_dlg_proc): New.
1422 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Use the new feature here.
1423
1424
1425 2003-11-29 Timo Schulz <[email protected]>
1426
1427 * wptMAPI.cpp (mapi_init): New.
1428 (mapi_deinit): New.
1429 (mapi_send_pubkey): New.
1430 * wptKeyManager.cpp (km_send_to_mail_recipient): New.
1431 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Support
1432 to send the public key via MAPI to a recipient.
1433 * wptKeySignDlg.cpp (do_fill_seckeylist): Make sure we rewind
1434 the secret key cache so it's not at the end.
1435 (keysign_dlg_proc): Issue a warning when no secret key was
1436 found which could be used for signing the key.
1437 * wptKeylist.cpp (do_addkey): Never add an Elgamal sign+encrypt key.
1438 * wptKeySignDlg.cpp (do_fill_seckeylist): Likewise.
1439
1440 2003-11-28 Timo Schulz <[email protected]>
1441
1442 * Remove all support for ElGamal sign+encrypt keys.
1443
1444 There is a flaw in GPG which makes all such keys useable and
1445 they are comprised even if one signature they made is accessable.
1446 And due to the fact the key is self signed, such a sig is always
1447 available for the public.
1448
1449 We warn the user at startup if such keys were found!
1450
1451 * wptMainProc.cpp (elgamal_warn_dlg_proc): New.
1452 * wptGPGME.cpp (count_insecure_elgkeys): New.
1453 * WinPT (WinMain): Use it here.
1454
1455 2003-11-14 Timo Schulz <[email protected]>
1456
1457 * wptCardDlg.cpp (card_edit_dlg_proc): Release the second PIN.
1458
1459 2003-11-13 Timo Schulz <[email protected]>
1460
1461 * Clarify pin names. Now all PIN's are labeled 'Admin' or 'User'.
1462 * wptPINDlg.cpp (pin_cb_dlg_proc): Length check for the PINs.
1463 Thanks to Achim.
1464 * Change PIN interface. Now it is easier when an operation requires
1465 both PINs.
1466 * wptCardDlg.cpp (do_proc_card_cmds): Now GPG requires both PINs
1467 to change card attributes. Do not ask me why, but now the user
1468 needs to enter 2 PINs.
1469
1470 Name parts were swapped, now they have the right order again.
1471
1472 2003-10-02 Timo Schulz <[email protected]>
1473
1474 * Prepare test release.
1475 * wptGPGCmds.h: New from GPG 1.3.4-cvs.
1476
1477 2003-10-29 Timo Schulz <[email protected]>
1478
1479 * wptKeyEditDlgs.cpp: New logging scheme. Changed all callers.
1480
1481 * Create a new interface for an interactive card callback. GPG
1482 provides card control status messages if the wrong card is inserted.
1483
1484 * wptCardManager.cpp (card_cb_dlg_proc): New.
1485 (card_callback): New.
1486
1487 * wptCardPCSC.cpp (pcsc_loadlib): Use some 'A' to declare we use
1488 the ASCII functions and not the Unicode function names. Thanks to
1489 Werner for pointing this out.
1490
1491 * wptPassphraseCB.cpp (passphrase_cb): Better card interface. Now the
1492 serial card number is shown to help the user to find the right card.
1493
1494 * wptClipSignDlg.cpp (clip_sign_dlg_proc): New logging scheme.
1495
1496 2003-10-26 Timo Schulz <[email protected]>
1497
1498 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Implement new logging.
1499
1500 * Changed the code at several other places to support the new logging
1501 scheme.
1502
1503
1504 2003-10-24 Timo Schulz <[email protected]>
1505
1506 * Implemented a better logging system. If the return code
1507 of GPG is != 0 and the error is not known, display the errors
1508 from stderr.
1509
1510 * wptGPGME.cpp (logging_cb): New.
1511
1512 2003-10-23 Timo Schulz <[email protected]>
1513
1514 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Show GPG output
1515 if the error is unknown.
1516 (clip_sign_dlg_proc): Likewise.
1517 (clip_signenc_dlg_proc): Likewise.
1518 (clip_import_dlg_proc): Likewise.
1519
1520 2003-10-21 Timo Schulz <[email protected]>
1521
1522 * wptClipDecryptDlg.cpp (list_recipients): New.
1523 (algo_from_list): New.
1524 (clip_decrypt_dlg): New concept to list all recipients.
1525 * wptFileManager.cpp (fm_list_keys): New.
1526 (fm_decrypt): Same changes as for the clipboard decryption.
1527
1528 2003-10-21 Timo Schulz <[email protected]>
1529
1530 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): If the passphrase
1531 was wrong, delete the cache item (if available).
1532 * wptClipSignDlg.cpp (clip_sign_dlg): Likewise.
1533 * wptClipSignEncDlg.cpp (clip_signenc_dlg): Likewise.
1534 * wptPassphraseCB.cpp (set_gpg_passphrase_cb): Set 'is_card'
1535 flag to zero.
1536
1537
1538 2003-10-19 Timo Schulz <[email protected]>
1539
1540 * wptPINDlg.cpp (pin_cb_dlg_proc): Support to store the admin and
1541 the working PIN.
1542 wptCardDlg.cpp (free_pincb): New.
1543 (card_keygen_dlg_proc): Pin callback implemented.
1544 Simple check for the e-mail address.
1545 (card_edit_dlg_proc): End the dialog if no changes were made.
1546
1547 * Expanded GPGME passphrase interface to work both with PINs
1548 and passphrases.
1549
1550 2003-10-18 Timo Schulz <[email protected]>
1551
1552 * wptCardDlg.cpp (card_keygen_dlg_proc): New.
1553 (do_askpin): Handle the case there is no card.
1554 (card_edit_dlg_proc): Add 'New Keys' feature.
1555 (card_changepin_dlg_proc): Implemented.
1556 * WinPT.cpp (WinMain): Ability to start the card manager directly.
1557 * wptMainProc.cpp (smartcard_init): Global stuff to init the reader
1558 driver and the inserted card.
1559
1560 2003-10-17 Timo Schulz <[email protected]>
1561
1562 * wptGPGME.cpp (keycache_init): Do not use secring the first time.
1563 * wptKeySignDlg.cpp (keysign_dlg_proc): Make sure only the short
1564 keyid will be displayed.
1565
1566 2003-10-16 Timo Schulz <[email protected]>
1567
1568 * Changed GPGME interface for edit card. Now one context is
1569 used for all edit card operations.
1570 * wptCardDlg.cpp (card_edit_dlg_proc): Support for working
1571 and admin PIN. Changed gpgme interface.
1572 (ask_pin): Renamed to..
1573 (do_askpin): this. Provide more information about the card
1574 and its holder.
1575 (do_proc_card_cmds): If no error, reset modify flags for
1576 all controls. Show a short message that the operation ended.
1577 * wptCardPCSC.c (pcsc_free_readers): New.
1578 (pcsc_scan_readers): New.
1579 (pcsc_get_reader): New.
1580 (pcsc_get_card_status): New.
1581
1582
1583 2003-10-14 Timo Schulz <[email protected]>
1584
1585 * wptKeyList.cpp (do_addkey): Add the case the secret key
1586 is stored on a smart card.
1587 (km_check_for_seckey): Take care of the new code.
1588 * wptKeyManager.cpp (km_delete_keys): Extra warning when
1589 the secret key is stored on a card.
1590 * wptKeyEditDlgs.cpp (subkey_list_init): Add the key cabilities
1591 to the list view. Now the user can see if the key is useable
1592 for: signing, certifying or encrypting.
1593
1594 2003-10-13 Timo Schulz <[email protected]>
1595
1596 * Extended the GPGME API that it is possible to retrieve
1597 the key data. This is for the planned card login but it
1598 might be also useful for other purposes.
1599
1600 * wptCardPCSC.c: New. General code for PC/SC card readers.
1601
1602
1603 2003-10-12 Timo Schulz <[email protected]>
1604
1605 * wptCardDlg.cpp (guess_libname): New.
1606 (card_status): Simplified the code with an attribute
1607 table. Now it is a loop and not hard coded.
1608 * The card interface has changed. Now the surname and
1609 the given name are two fields and not one field.
1610 * wptMainProc.cpp (winpt_main_proc): Check if the card
1611 reader is configured where appropriate.
1612
1613 2003-10-09 Timo Schulz <[email protected]>
1614
1615 * wptCardDlg.cpp (get_card_status): New.
1616 (show_card_status): New. Retrieve the card status and show an
1617 error if approprioate.
1618 * Make sure that WinPT does not try to use non-OpenPGP cards.
1619 * Add GPGME support for the forthcoming AUTH flag for keys.
1620 * Implemented the detection of keys where the secret key components
1621 are stored on a smart card.
1622
1623
1624 2003-10-08 Timo Schulz <[email protected]>
1625
1626 * wptCardDlg.cpp (do_proc_card_cmds): Check that only US-ASCII
1627 is used. Otherwise reject the value.
1628 (ask_pin): New. Enable PIN caching for the 'dialog session' so
1629 the user does not need to re-enter it again and again.
1630
1631 2003-10-07 Timo Schulz <[email protected]>
1632
1633 * wptPINDlg.cpp (pin_cb_dlg_proc): New.
1634 * wptCardDlg.cpp (do_proc_card_cmds): New.
1635 (card_edit_dlg_proc): Use it here.
1636
1637 2003-10-06 Timo Schulz <[email protected]>
1638
1639 * wptFileManager.cpp (fm_encrypt): Wipe files in both modes.
1640 * wptGPG.cpp (gnupg_display_error): Display general error
1641 when the file does not exit.
1642 * wptW32API.cpp (get_folder_dlg): New.
1643 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Ability to select
1644 the folder for the home directory.
1645 * wptKeyManager.cpp (km_update_default_key_str): Return length
1646 of the string.
1647 (km_complete_status_bar): Use the offset of the default
1648 key string so it is not appened twice.
1649 * wptRegistry.cpp (regist_inst_winpt): Create 'Card' subkey.
1650 * wptCard.h: New.
1651 * wptCardDlg.cpp (new_card_driver): New.
1652 (load_card_driver): New.
1653 (free_card_driver): New.
1654 (card_config_dlg_proc): If the reader is configured, load the
1655 values. This is needful to change the driver later.
1656 (gpg_load_scard): Use driver as a parameter.
1657 * wptMainProc.cpp (winpt_main_proc): Load card driver and
1658 unload it after use.
1659
1660 2003-09-28 Timo Schulz <[email protected]>
1661
1662 * wptCardDlg.cpp (card_edit_dlg_proc): New.
1663 (gpg_load_scard): New. Try to use GPG load the card info.
1664 (print_fpr): New. Print beautified fingerprint.
1665 (card_status): New. Set all dialog fields with the values from
1666 the card.
1667 (prepare_dialog): New. Load combo boxes with pre-defined strings.
1668
1669
1670 2003-09-25 Timo Schulz <[email protected]>
1671
1672 * wptProgressDlg.cpp (progress_cb_thread): New.
1673 (progress_callback): Use asynchron code.
1674 * wptFileManager.cpp (fm_parse_files): Implement progress callback.
1675
1676
1677 2003-09-25 Timo Schulz <[email protected]>
1678
1679 * wptClipSignEncDlg.cpp (seclist_dlg_proc): The dialog was broken.
1680 (check_key): New.
1681 Removed the old Secret Key List dialog. Now the key can be directly
1682 chose in the dialog.
1683 (seclist_init): New.
1684 (seclist_destroy): New.
1685 (seclist_select_key): New.
1686 * wptFileManager.cpp (fm_sign): Ask for output file if needed.
1687
1688 * Client side implementation of the --enable-progress-filter feature.
1689
1690 * wptProgressDlg.cpp: Server side implementation.
1691 (progress_dlg_proc): New. The actual dialog procedure.
1692 (progress_callback): The GPGME wrapper callback.
1693
1694 2003-09-24 Timo Schulz <[email protected]>
1695
1696 * wptKeygenDlg.cpp (keygen_dlg_proc): Implement 'Hide Typing' feature.
1697 * wptFileManager.cpp (fm_encrypt): Ask for output file if needed.
1698 * wptFileManagerDlg.cpp (fm_dlg_proc): Removed im- and export from
1699 the menu. We use import internally, but export was not useful and
1700 thus the code were removed.
1701 * wptPreferenceDlg.cpp (prefs_dlg_proc): Disable some controle at
1702 startup when they are not allowed.
1703 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Removed PGP2 option.
1704 Make the parsing code much shorter (read).
1705
1706
1707 2003-09-22 Timo Schulz <[email protected]>
1708
1709 * wptSigList.cpp (extract_filename): Make sure there is a '\',
1710 otherwise just dup the string and return.
1711 * wptVerifyList.cpp (verlist_add_sig): Use a variable for the key
1712 to make the code more readable.
1713 * Implemented the GPGME part of the new smartcard interface.
1714 The WinPT interface will be open until the scard stuff is back
1715 ported to GPG 1.3.x.
1716 * wptKeyEditDlgs.cpp (do_editkey_revuid): Need a secret key to do it.
1717 Several code cleanups.
1718
1719 2003-09-08 Timo Schulz <[email protected]>
1720
1721 * wptRegistry.cpp: Remove some hotkeys to correct index calculation.
1722 (get_reg_winpt_flag): Check buffer first.
1723 (get_reg_winpt_prefs): Support for the new backup system.
1724 (set_reg_winpt_prefs): Likewise.
1725 * wptHotkey.h: Removed import and export hotkey. Re-ordered elements.
1726 * wptRegistry.h: Cleaned up the hotkey interface.
1727 * wptPreferenceDlg.cpp (enable_backup_items): New.
1728 (prefs_dlg_proc): Simplified hotkey handling. Use new code.
1729 * wptMainProc.cpp (clip_gpg_dlg): Remove hotkey handling for
1730 im- and export. Use the code directly.
1731 (currwnd_gpg_dlg): Likewise.
1732 * wptGPG.cpp (gnupg_backup_keyrings): New.
1733 (backup_one_file): New.
1734
1735 2003-09-04 Timo Schulz <[email protected]>
1736
1737 * wptFileManager.cpp (fm_get_file_type): Due to an unknown reason,
1738 the packet parsing return value check was wrong again. Now it does
1739 not recognize Word documents as SECKEY or ENCRYPTED any longer.
1740
1741 2003-09-03 Timo Schulz <[email protected]>
1742
1743 * The secret key listing does not contain any 'validity' or
1744 'status' flags any longer. Thus we only can use the cache to
1745 make sure we have a secret key. All attributes need to be retrieved
1746 from the public key listing.
1747
1748 * wptGPG.cpp (default_key_from_cache): New.
1749 (get_gnupg_default_key): Use new function to make sure we try
1750 to get the key from cache if there is a problem with the config
1751 file.
1752
1753 2003-08-30 Timo Schulz <[email protected]>
1754
1755 * wptGPG.h: Support for the GPG status messages REVKEYSIG and
1756 EXPKEYSIG. With this new feature, GPG 1.2.3 is required.
1757 * Make sure that the signature status does not cause an
1758 segfault.
1759 * WinPT.cpp: Use new check to detect the GPG version and make sure
1760 it is the minimum.
1761 * wptGPG.cpp (parse_version_nr): New.
1762 (check_gnupg_engine): Improved. Now it returns the actual version.
1763
1764 2003-08-24 Timo Schulz <[email protected]>
1765
1766 * wptPreferencesDlg.cpp (prefs_dlg_proc): Use better code to disable
1767 dialog controls.
1768
1769 2003-08-17 Timo Schulz <[email protected]>
1770
1771 * wptKeyManagerDlg.cpp (keymanager_dlg_proc):
1772 #ID_KEYMISC_EXPORT_PRIVKEY: Retrieve the current list view index. The
1773 value was malformed.
1774 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Free global memory.
1775 * wptKeyserver.cpp (kserver_load_conf): If the file does not exist,
1776 don't bother the user with an error message. Closes #782751.
1777 * wptKeyEditDlgs.cpp (do_editkey_primary): New. Implement the
1778 "primary" edit key command.
1779 * wptKeyserverDlg.cpp (hkp_recv_key): New flag parameter. Now it is
1780 possible to supress the status message. This is useful when the whole
1781 keyring will be refreshed.
1782 * wptFileManager.cpp (fm_parse_command_line): Unquote file if needed.
1783 (quote_file): Avoid double quotes.
1784 * GPGME support for quoted file names.
1785 (fm_sym_encrypt): Double check password and to additional 8-bit checks.
1786 * WinPT.cpp (my_acces): Moved to this file..
1787 * wptGPG.cpp: ..here.
1788 (gpg_check_permissions): Renamed from check_permissions and make it global.
1789 * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Check to make sure we
1790 have write access to the keyring for some commands.
1791
1792 2003-07-22 Timo Schulz <[email protected]>
1793
1794 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Figure out the size of
1795 the text instead of allocating the maximum.
1796
1797 2003-07-13 Timo Schulz <[email protected]>
1798
1799 * wptKeygenDlg.cpp (check_passphrase): Check if the passphrase contains
1800 characters >= 127. Due to the fact that we use CP-1250 and GPG uses CP-850
1801 it would be a bad idea to use such passphrases. And thus we disallow it.
1802 * wptKeyEditDlgs.cpp (keyedit_change_passwd): Likewise.
1803 * wptSymEnc.cpp (gpgme_encrypt_symmetric): Likewise.
1804 * wptHotkey.cpp (hotkeys_strerror): Use capital letters.
1805
1806 2003-07-12 Timo Schulz <[email protected]>
1807
1808 * wptFileManager.cpp (fm_verify): Support for multiple signatures.
1809 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Likewise.
1810 * wptProxySettingsDlg.cpp (read_proxy): Skip http:// prefix.
1811 * wptKeyserver.cpp (check_URL): Support for hkp://. Closes #755156.
1812 (kserver_connect): Likewise.
1813 (kserver_read_config): Likewise.
1814 * wptSymEnc.cpp (gpgme_encrypt_symmetric): Free memory if the passphrases
1815 are not equal.
1816 * wptKeyGenDlg.cpp (keygen_wizard_dlg_proc): New. An easy to use wizard to
1817 generate a key pair.
1818
1819 2003-06-24 Timo Schulz <[email protected]>
1820
1821 * Fixed filter code in Get{Open,Save}FileName. Changed all callers.
1822 Thanks to Alex.
1823 * wptKeyManager.cpp (km_delete_keys): Quote the user-id.
1824
1825
1826 2003-06-13 Timo Schulz <[email protected]>
1827
1828 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Quote the user-id name.
1829 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Fix the code due to
1830 the fact the signer is now dymanic and not static.
1831 * wptGPG.cpp (check_gnupg_engine): Check if IDEA is available and
1832 change all code that it only shows an error if no plug-in was loaded.
1833 * wptKeyEditDlgs.cpp (is_cmd_openpgp): Remove REVKEY since you
1834 can revoke v3 keys.
1835 (do_editkey_revoke): Clarify command because it can be only used
1836 for secondary keys.
1837 * wptKeyManagerDlg.cpp (file_sign_dlg_proc): Make sure an error
1838 is issued when no key was selected. Thanks to vedaal.
1839
1840 2003-06-11 Timo Schulz <[email protected]>
1841
1842 * wptKeylist.cpp (keylist_add_key): Now the user-ids are in the
1843 right order and we do not use the last user-id but the first
1844 because this is always the primary user-id or the newest user-id.
1845 * wptGPGME.cpp (get_default_keyid): Removed. Some better code
1846 were added to get_gnupg_default_key.
1847
1848 2003-06-10 Timo Schulz <[email protected]>
1849
1850 * wptKeysignDlg.cpp (do_fill_seckeylist): Make sure disabled keys
1851 are skipped.
1852 (keysign_dlg_proc): Removed some redundant code.
1853 * wptKeyEditDlgs.cpp (is_idea_protect_algo): New. Find out if
1854 it is possible to change the passphrase.
1855
1856 2003-06-06 Timo Schulz <[email protected]>
1857
1858 * wptKeylist.cpp (keylist_get_recipients): Use a stronger warning
1859 message and include the user-id.
1860 * Encryption: use force overwrite (--yes) to make sure there are
1861 no complications with GPG.
1862 * Import: skip all record types we do not understand.
1863
1864
1865 2003-06-05 Timo Schulz <[email protected]>
1866
1867 * wptPassphraseCB.cpp (passphrase_callback_proc): Now the dialog
1868 shows all involved recipients and also the public key algorithm.
1869 * wptRegistry.cpp (reg_inst_winpt): If the user does not want
1870 the extensions, set the entry to "1" so the message is not shown
1871 again.
1872
1873 2003-06-04 Timo Schulz <[email protected]>
1874
1875 * wptKeylist.cpp (get_key_algo, get_key_size): Due to the fact
1876 that GPG uses the newest subkey by default, we always return
1877 the info of this subkey and not the first.
1878 * wptKeyImportStatusDlg.cpp (import_status_dlg_proc): Fixed off-by-one
1879 bug. Now the indicies are correctly.
1880 * wptGPG.cpp (gnupg_check_keyring): Do not free the value before
1881 get_file_size is called.
1882 * WinPT.cpp (WinMain): Only check the GPG engine version if there
1883 were no problems with the GPG config. And differ between a problem
1884 to get the version and if a wrong version were detected.
1885
1886
1887 2003-06-01 Timo Schulz <[email protected]>
1888
1889 * wptCurrWnd.cpp (rel_key, hit_key): Replaced with macros...
1890 (KEYDOWN, KEYUP): macros for the functions above.
1891
1892 2003-05-31 Timo Schulz <[email protected]>
1893
1894 * wptKeyManager.cpp (km_key_is_v3): Return if the selected
1895 key is an old PGP 2 (v3) key.
1896 * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Only allow
1897 (#ID_KEYMISC_EDITKEY): Bail out if no key was selected.
1898 to add extented items if the key is NOT version 3.
1899 * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Check if the
1900 key is v3 and forbid most commands.
1901 (is_cmd_openpgp): New.
1902
1903 2003-05-28 Timo Schulz <[email protected]>
1904
1905 * wptKeyManager.cpp (km_set_clip_info): New.
1906 * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Use it here.
1907 * wptImportList.cpp (implist_build): Some column changes for
1908 the listview control.
1909 (implist_load): Return if secret keys were found.
1910 * wptClipImportDlg.cpp (data_cb_dlg_proc): Store if secret keys
1911 were found.
1912 (clip_import_dlg_proc): New message if secret keys were found.
1913
1914
1915 2003-05-25 Timo Schulz <[email protected]>
1916
1917 * wptImportList.cpp (implist_add_key): Address charset problem.
1918 * wptVerifyList.cpp (verlist_add_sig_log): Use UTF8 decoding.
1919 * wptKeyserver.cpp (set_default_kserver): New.
1920 (wsock_init): Call the new function.
1921 (kserver_load_conf): If the FP is invalid, skip to read the file.
1922 * WinPT.cpp (WinMain): Call set_default_kserver to make sure the
1923 item has a value.
1924
1925 2003-05-24 Timo Schulz <[email protected]>
1926
1927 * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Subclass the two lists
1928 to allow to use virtual keys (DEL, INS).
1929 Release the uid control context when the dialog will be destroyed.
1930
1931
1932 2003-05-22 Timo Schulz <[email protected]>
1933
1934 * wptMainProc.cpp (winpt_main_proc): Set use_hotkey for current
1935 window mode sign+encrypt. This fixes a couple of other problems.
1936 * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Get new values of the
1937 key when the cache was reloaded.
1938
1939
1940 2003-05-21 Timo Schulz <[email protected]>
1941
1942 * wptSiglist.cpp (siglist_add_key): Only list signatures which are
1943 user-id certificates (0x10-0x13) and ignore key and subkey sigs.
1944 c-strings are now handle correctly and decoded into GPGME.
1945
1946 2003-05-20 Timo Schulz <[email protected]>
1947
1948 * wptKeyPropsDlg.cpp (key_props_dlg_proc): Factor out code to change
1949 the passphrase from here to...
1950 * wptKeyEditDlgs.cpp (keyedit_change_passwd): ...this place.
1951
1952 2003-05-19 Timo Schulz <[email protected]>
1953
1954 * wptPasswdDlg.cpp (create_passwd_dlg): Removed.
1955 (request_passphrase): New.
1956 The passphrase_s context is now internal, all externl function use now
1957 request_passphrase. Changed all callers.
1958 * wptKeygenDlg.cpp (keygen_dlg_proc): Reworded the passphrase
1959 warning and a check for the comment field was added.
1960 * wptKeyEditDlgs.cpp: New. This file now combines the dialogs which
1961 has shown the subkeys and the userids.
1962 * wptKeySubkeyDlg.cpp: Deleted and stuff merged into wptKeyEditDlgs.cpp.
1963
1964 2003-05-17 Timo Schulz <[email protected]>
1965
1966 * wptFileManager.cpp: Moved gpgme_file_get_extension to this file
1967 and renamed it to...
1968 (file_get_extension): this. gpgme_control now also returns the
1969 (get_file_name): Corrected the calculation of the basename.
1970 state of the command if you use -1 as the value.
1971 * wptImportList.cpp (implist_load): Make sure we really have the key ID.
1972 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Some small changes all over
1973 the place.
1974
1975 2003-05-14 Timo Schulz <[email protected]>
1976
1977 * wptKeyManager.cpp (km_enable_disable_key): New.
1978
1979 2003-05-13 Timo Schulz <[email protected]>
1980
1981 * wptKeyList.cpp (keylist_add_key): Add 'DISABLED' flag for keys.
1982 (key_check_validity): Moved from GPGME to this file.
1983 * wptKeyManager.cpp (km_get_key_status): New.
1984
1985 2003-05-09 Timo Schulz <[email protected]>
1986
1987 * wptMDSumDlg.cpp (mdsum_dlg_proc): New.
1988 * wptFileManager.cpp (fm_print_md): New.
1989 * wptFileManagerDlg.cpp (file_manager_dlg_proc): Support for the Print MD
1990 command.
1991
1992 2003-05-08 Timo Schulz <[email protected]>
1993
1994 * wptMainProc.cpp (winpt_main_proc): Symmetric encryption for the current
1995 window mode.
1996 (currwnd_gpg_dlg): Likewise.
1997 * wptCurrWnd.cpp (wnd_msg_em_set_pos): Fix an off-by-one bug.
1998 * WinPT.cpp (WinMain): If the default key was not found, show the string
1999 in the error message to make it easier for the user to fix the problem.
2000 * wptImportStatusDlg.cpp (import_status_dlg_proc): Take care of secret
2001 keys.
2002 * wptfileManager.cpp (fm_get_file_type): Fix packet type detection error.
2003 This makes the priority of the rc2 update more urgent.
2004
2005 2003-05-07 Timo Schulz <[email protected]>
2006
2007 * Clean up the outer GPGME interface. Internal functions should be
2008 invisible in gpgme.h.
2009 Merge the photo-id, formerly attribute id stuff with gpgme_key_get_xxx_attr.
2010 * wptKeyserver.cpp: Some cleanups.
2011 (finger_recvkey): Skip URL postfix if there.
2012
2013 2003-05-06 Timo Schulz <[email protected]>
2014
2015 * wptKeySigDlg.cpp (keysig_dlg_proc): Disable the button when all keys
2016 are available. Removed old [unused] code.
2017 Make sure we really have the key in the cache.
2018
2019 2003-05-04 Timo Schulz <[email protected]>
2020
2021 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): If invalid recipients
2022 were found, output a more precise error message. Now the GPGME code
2023 first tests for special cases and if no one hit the nail on the head,
2024 a general error is used.
2025
2026 2003-05-03 Timo Schulz <[email protected]>
2027
2028 * wptParser.cpp: Renamed to...
2029 * wptGPGParser.cpp: this.
2030 (release_option): Renamed to...
2031 (release_gpg_options): this.
2032 (commit_option): Renamed to...
2033 (commit_gpg_options): this.
2034 (parse_option): Renamed to...
2035 (parse_gpg_options): this.
2036 * wptGPG.cpp: Use new parser function names.
2037 (set_gnupg_default_key): Free memory.
2038 * wptKeylist.cpp (keylist_add_groups): New group code.
2039 * wptGroups.{c,h}: Removed. Now we use the GPG group command.
2040 * wptKeySigListDlg.cpp (keysig_dlg_proc): Change column from
2041 2 to 4.
2042 (recv_missing_keys): Likewise. Now it is possible to retrieve
2043 missing keys. Thanks to Klaus.
2044 * wptKeyserverDlg.cpp (hkp_recv_key): Use a dymanic buffer rather
2045 than a static buffer to avoid garbled keys. There are some very
2046 large keys and these cause some trouble with a 16k buffer.
2047 (keyserver_dlg_proc): Localized some strings.
2048 * wptKeyserverSearchDlg.cpp (hkpsearch_dlg_proc): Use new column
2049 names which are equal to the names we use in the Key Manager.
2050 * wptKeySignDlg.cpp (keysign_dlg_proc): Fix a silly '=' but
2051 should be "==" bug.
2052 * wptKeygenDlg.cpp (mbox): Removed. Too much overhead.
2053 * Add --expert option for the GPG procedure call if needed.
2054
2055 2003-05-02 Timo Schulz <[email protected]>
2056
2057 * wptW32API.cpp (set_foreground_wnd): Removed. Changed all callers.
2058
2059 2003-04-30 Timo Schulz <[email protected]>
2060
2061 * wptKeyManagerdlg.cpp (keymanager_dlg_proc): Support for the
2062 next context menu ("Add"). Make sure the entries are disabled
2063 when the key has no secret key.
2064 * wptKeyEditAddPhotoDlg.cpp (keyedit_addphoto_dlg_proc): New.
2065 * wptFileManager.cpp (fm_decrypt): Set sig to NULL so it won't
2066 cause a segfault when the pointer free tries to deallocate the
2067 pointer.
2068
2069 2003-04-27 Timo Schulz <[email protected]>
2070
2071 * wptKeysigDlg.cpp (keysig_dlg_proc): A double click now allows
2072 to show the properties of the signers keys.
2073 * wptKeyEditAddRevokerDlg.cpp (keyedit_addrevocer_dlg_proc): New.
2074
2075 2003-04-26 Timo Schulz <[email protected]>
2076
2077 * wptParser.cpp: A lot of structural changes. Always add items
2078 at the end of the list so we don't need to make a copy of the list
2079 to restore the original order. Fix the group problem.
2080 * wptKeylist.cpp (keylist_build): Use OR to get the flags and
2081 not ==.
2082 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): The export command
2083 (file) does not use the keyid as the file name when more than one
2084 keys were selected.
2085 Allow allow to set default keys which are not revoked or expired.
2086 * wptFileEncryptDlg.cpp (file_encrypt_dlg_proc): Allow to sort
2087 the columns.
2088 Set the force trust flag in GPGME if there are some recipients
2089 with no validity.
2090
2091 2003-04-25 Timo Schulz <[email protected]>
2092
2093 * wptVerList.cpp (verlist_build): Change the name of some columns.
2094 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Instead of just the
2095 notation (if present!) present the user a general message box
2096 with extended signature information. This means the notation
2097 data and a possible policy URL.
2098
2099
2100 2003-04-24 Timo Schulz <[email protected]>
2101
2102 * wptKeyEditAddSubKeyDlg.cpp (keyedit_addsubkey_dlg_proc): Init
2103 default values to make it easier for newbies.
2104 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Use a better error
2105 when no secret key was found. Also mention the public key algo.
2106 * wptFileManager.cpp (fm_decrypt): Likewise.
2107
2108 2003-04-23 Timo Schulz <[email protected]>
2109
2110 * wptKeyPropsDlg.cpp (ownertrust_to_string): Moved the function
2111 from GPGME#gpgme_ownertrust_to_string into WinPT.
2112
2113 2003-04-20 Timo Schulz <[email protected]>
2114
2115 * wptClipboard.cpp: Removed. All these functions and constants
2116 are now available in MyGPGME/clip.c and thus part of GPGME.
2117 * wptKeylist.cpp (keylist_add_to_recipients): Renamed to...
2118 (keylist_get_recipients): this. Return the context instead of
2119 an argument.
2120 (get_key_size): Add key index.
2121 (get_key_algo): Likewise.
2122 (keylist_build): Use a special mode when signing is used.
2123 (keylist_enum_recipients): Return a malloced pointer to the
2124 recipients.
2125 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Add primary fingerprint
2126 when we have a signature result and we do not trust the key.
2127
2128 2003-04-20 Timo Schulz <[email protected]>
2129
2130 * wptFindWnd.h: Removed. We don't use it any longer.
2131 * wptGPG.h: Merged GPGERR_xxx constants with WPTERR_xxx.
2132 (gpg_strerror): Removed. Now it is handled in winpt_strerror.
2133 * wptFileManager.cpp (fm_get_file_name): move this to
2134 * wptVerifyList.cpp (get_file_name): ..this place and declare
2135 it as static because no other file need this function.
2136
2137 2003-04-15 Timo Schulz <[email protected]>
2138
2139 * wptClipImportDlg.cpp (data_cb_dlg_proc): New.
2140 (data_cb_thread): New.
2141 (data_cb_dlg_create): New.
2142 (data_cb_dlg_destroy): New.
2143 (data_cb_new): New.
2144 (clip_import_dlg_proc): Use a callback dialog to
2145 show the user the data decoding procedure is in
2146 progress. This dialog is destroyed in the key
2147 import statistics dialog.
2148
2149
2150 2003-04-13 Timo Schulz <[email protected]>
2151
2152 * wptSubkeyDlgProc.cpp (key_subkey_dlg_proc): Use a callback
2153 context.
2154 * wptUidDlgProc.cpp (keyuid_dlg_proc): Likewise.
2155 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Set the protect
2156 flag inside the KEY contect if needed.
2157 * wptKeySubkeyDlg.cpp (key_subkey_dlg_proc): Only ask for a
2158 passphrase if the protect flag is set.
2159 Display the callback dialog to show the progress.
2160 Implemented the "revkey" feature.
2161 * wptKeyUidDlg.cpp (key_uid_dlg_proc): Likewise.
2162 (do_add_new_userid): New. Add an entry to the list box
2163 after the GPG process finished.
2164 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Initialize sig
2165 to zero to avoid segfaults.
2166
2167 2003-04-12 Timo Schulz <[email protected]>
2168
2169 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Use the new
2170 GPGME code.
2171 * wptVerifyList.cpp (verlist_add_sig_log): Likewise.
2172 * wptClipDecryptDlg.cpp (clip_decrypt_dlg_proc): Likewise.
2173 * wptFileManager.cpp (fm_decrypt): Likewise.
2174 * WinPT.cpp (check_default_key): Check if the keys in gpg.conf
2175 are valid and in the keyring.
2176 * wptKeySignDlg.cpp (do_check_protection): Disable the passphrase
2177 item if the key is not protected.
2178
2179
2180 2003-04-09 Timo Schulz <[email protected]>
2181
2182 * wptFirstRunDlg.cpp (first_run_dlg_proc): Mark selection as
2183 invalid for cancel.
2184
2185 2003-03-20 Timo Schulz <[email protected]>
2186
2187 * wptFindWnd.cpp: Removed.
2188 * wptW32API.c (dialog_box_param): Use FindWindowEx() instead of
2189 find_window.
2190 * Whenever it's possible, use case insentensive searches to avoid
2191 problems.
2192
2193 2003-03-19 Timo Schulz <[email protected]>
2194
2195 * wptMainProc.cpp (winpt_main_proc): Put the init_dtp code here.
2196 * wptPassphraseCB.cpp (hide_typing): Removed. Use short code directly
2197 in the code.
2198 * wptPasswdDlg.cpp: Likewise.
2199 (passphrase_cb_init): Declare as static.
2200 (passphrase_cb_gpgme): Modified to use the static function and rename
2201 it to...
2202 (passphrase_gpgme_set_cb): ..this. New.
2203 * wptSecListDlg.cpp: Complete new appraoch. Now we use CB_SETITEMDATA
2204 and friends to assign data to each item.
2205 Move dialog code to...
2206 * wptClipSignEncDlg.cpp: ..here.
2207 * MyGPGME/keycache.c: We first look for directly key signatures and
2208 then we skip all other signatures if we've already seen the key. This
2209 is needed to gather the designated revoker keys.
2210
2211 2003-03-18 Timo Schulz <[email protected]>
2212
2213 * wptKeyImportStatDlg.cpp (import_status_dlg_proc): Fix index
2214 of revocation from 9 to 8.
2215 Set the text that no key was updated only if no new sig, subkey,
2216 userid and no public were added.
2217 Add more information: new {subkeys, signatures, userid}.
2218 * wptKeyManager.cpp (km_delete_keys): Fixme lame, '=' instead of '==' bug.
2219 * wptDlgs.cpp: Removed.
2220 * wptDlgs.h: (dlg_fatal_error): New. Macro.
2221
2222 2002-03-16 Timo Schulz <[email protected]>
2223
2224 * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Encode the
2225 optional text in UTF-8 to avoid charset problems.
2226 * wptKeyManager.cpp (km_quote_uid): Use dynamic memory instead
2227 of a static buffer. Changed all callers.
2228 * wptKeylist.cpp (keylist_cmp_cb): Implemented sort functions
2229 for the rest of the columns.
2230 (keylist_handle_column_click): New.
2231 * wptKeyEditOwnertrustdlg.cpp (keyedit_ownertrust_dlg_proc):
2232 Removed the 'Advanced' button because it only confuses users
2233 and it is not often used.
2234 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Support to ex-
2235 and import the trustdb values (ownertrust).
2236 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Ability to
2237 sort columns.
2238
2239 2002-03-09 Timo Schulz <[email protected]>
2240
2241 * 64-bit support for wipe operations.
2242
2243 2002-03-08 Timo Schulz <[email protected]>
2244
2245 * wptFileManager.cpp (fm_parse_command_line): Ignore lines with '--'
2246 because they are options rather than files.
2247 * WinPT.cpp (WinMain): Allow to start the key manager directly
2248 via --keymanager.
2249 * wptFileManagerDlg.cpp (file_secdel_confirm_dlg_proc): New.
2250 (wipe_cb): New. Wipe callback function.
2251 (fill_drive_combobox): New. Fill in all logical drives into
2252 the given combo box.
2253 (wipe_thread): New. Worker thread.
2254 (update_disc_stats): New. Set the disc statistics for the
2255 given drive entry.
2256 (space_wipefrees_dlg_proc): New.
2257
2258 2002-03-01 Timo Schulz <[email protected]>
2259
2260 * wptFileManager.cpp (fm_check_file_type): Fix bug in the detection
2261 logic. Now we can decrypt symmetrically encrypted files again.
2262 Be stricter on memory alloaction checks.
2263 (fm_get_file_type): Be more strict with the return code of
2264 parse_packet. This avoids bogus file types for MS-Word files and
2265 other non-PGP data.
2266 (fm_wipe): Use the wipe mode from the registry and not a fixed value.
2267 * WptRegistry.cpp (set_reg_winpt_prefs): Support wipe mode.
2268 (get_reg_winpt_prefs): Likewise.
2269 * wptFilePrefsDlg.cpp: Removed. We don't use it any longer.
2270 * wptDlgs.h: Corrected all dialog protypes to BOOL.
2271 LRESULT was not correct.
2272
2273 2002-02-08 Timo Schulz <[email protected]>
2274
2275 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Only export
2276 the secret key when a file was chosen.
2277
2278 2002-02-01 Timo Schulz <[email protected]>
2279
2280 * wptKeyserver.cpp (kserver_search): Fix <KEYID bug.
2281
2282 2002-01-25 Timo Schulz <[email protected]>
2283
2284 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Support to copy the key id
2285 and the fingerprint to the clipboard. Closes #674455.
2286 Automatically reload the keycache when a command is chosen and the cache
2287 state is set to 'reload requested'. Closes #671218.
2288 * wptKeySignDlg.cpp (do_fill_seckeylist): Make sure the public key parts
2289 are not invalid.
2290 * WinPT.cpp (check_permissions): Make sure we have the permission to
2291 write the keyring. Stop if not because it's expected at many other places.
2292 * wptSigList.cpp (siglist_add_key): Indent signatures under the root entry.
2293 (siglist_build): Use a placeholder sig to avoid the position chaos.
2294 * wptKeyUidDlg.cpp: Unified text for 'user-ID'.
2295 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): If a key is not found,
2296 display more information and use a GPG like output.
2297 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Force trust if there is
2298 an invalid key in the list of recipients. Closes #674965.
2299
2300
2301 2002-01-21 Timo Schulz <[email protected]>
2302
2303 * wptSymEnc.cpp (gpgme_encrypt_symmetric): Ask the passphrase twice to
2304 avoid typing mistakes.
2305
2306 2003-01-19 Timo Schulz <[email protected]>
2307
2308 * winpt.cpp (WinMain): Fixed spelling mistake. Closes #669321.
2309 * wptKeyManagerDlg.cpp (do_resize_window): New.
2310 (do_create_minpopup): New. Closes #669730.
2311 * wptVerifyList.cpp (get_sig_date): Renamed to...
2312 (longdate_to_strdate): New. Changed all callers.
2313 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): If the ciphertext contains
2314 a signature, also display the time of it. Closes #669780.
2315 * wptKeyImportStatusDlg.cpp (import_status_dlg_proc): Localize 2 strings.
2316 * wptEditKeyOwnertrust.cpp (keyedit_ownertrust_dlg_proc): Fixed a typo.
2317 * wptKeySignDlg.cpp (do_add_local_user): New. Now the dialog has the ability
2318 to choose the signer.
2319 (keysign_dlg_proc): Implemented a feature request. See above.
2320
2321 2003-01-08 Timo Schulz <[email protected]>
2322
2323 * wptKeyEditAddUidDlg.cpp (keyedit_adduid_dlg_proc): Output a warning
2324 if the user tries to add the email address in the name field.
2325 * wptKeyserver.cpp: Add support for protocols.
2326 (finger_readline): New.
2327 (finger_recvkey): New.
2328 * wptKeyUidDlg.cpp (keyuid_dlg_proc): Add a warning icon to the revoke
2329 message box to show it's a serious decision.
2330 * wptPasswdDlg.cpp (passwd_dlg_proc): Center dialog window.
2331 * wptRegistry.cpp (regist_single_filetype): Now internal and we use
2332 an easier way to get the location of the binary.
2333 (regist_inst_winpt): Implemented the 'with_ext' part and add a registry
2334 entry to avoid double file registering.
2335
2336 2003-01-07 Timo Schulz <[email protected]>
2337
2338 * wptKeyManagerDlg.cpp (do_center_window): New. Try to set the window
2339 pos from the coordinates from the registry.
2340 (keymanager_dlg_proc): Store the window pos in the registry.
2341 * wptKeyRevokeDlg.cpp (key_revoke_dlg): Check box for PGP compatible certs.
2342 * wptKeyImportStatusDlg.cpp (import_status_dlg_proc): Print out a hint when
2343 a revcert was found.
2344 * wptKeyserverDlg.cpp (hkp_recv_key): Print an error if the LDAP import does
2345 not succeed.
2346 (keyserver_dlg_proc): Corrected some listview index values.
2347 * wptKeylist.cpp (keylist_add_key): Use primary user-id when possible.
2348
2349 2002-12-23 Timo Schulz <[email protected]>
2350
2351 * wptRegistry.cpp (regist_inst_winpt): Try to create \Keyserver
2352 directory if does not exist.
2353 * wptKeyserver.cpp: Simpliefied config file.
2354 (kserver_change_proxy): Write config to the registry. Remove
2355 code for the config file.
2356 * wptProxySettingsDlg.cpp (read_proxy): More robust code.
2357 * wptKeyserverDlg.cpp (keyserver_dlg_proc): Removed the feature
2358 to send keys. The Key Manager is better for this.
2359
2360
2361 2002-12-21 Timo Schulz <[email protected]>
2362
2363 * Fixed some language mistakes.
2364 * wptMainproc.cpp: Use the desktop window as the parent window
2365 for the main dialogs so they are visible in the taskbar.
2366 * wptKeyManagerDlg.cpp: Enable minimize.
2367 * wptFileManager.cpp (fm_parse_command_line): Support for detached
2368 signatures.
2369 (fm_encrypt_directory): New.
2370 * wptKeylist.cpp (keylist_add_key): Check the current key if it
2371 is not expired, not the primary (idx=0).
2372
2373 2002-12-18 Timo Schulz <[email protected]>
2374
2375 * wptGPG.cpp (get_gnupg_optfile): Support for gpg.conf instead
2376 of the old name "options".
2377 * WinPT.cpp (WinMain): Try to repair broken home directories
2378 in the registry. Thanks to Gustavo who reminded me of it.
2379 * wptKeyserver.cpp (check_hkp_response): Only copy the text
2380 between <p> and </p> when possible.
2381 * wptAgent.cpp: Re-activated the old code. Now the passphrase
2382 timer can be used.
2383
2384 2002-12-14 Timo Schulz <[email protected]>
2385
2386 * wptKeyManager.cpp (km_check_for_seckey): Ultimate doesn't mean
2387 any longer there is also a secret key.
2388 (km_check_photo): New.
2389 (km_complete_status_bar): New.
2390 * wptFileManager.cpp (fm_verify): Support for bad signatures.
2391 Set the sigmode if not set.
2392 * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Output a warning when
2393 the ownertrust of a non-valid (not signed) key is changed.
2394 * wptRegistry.cpp (expand_path): New. Use this code because it's
2395 much shorter.
2396
2397 2002-10-14 Timo Schulz <[email protected]>
2398
2399 * wptKeyserver.c: Replaced all strdup's with m_strdup and free
2400 with free_if_alloc.
2401 (ldap_recvkey): Fill with life. We use the GPG plugin to avoid
2402 all the LDAP overhead.
2403
2404 2002-10-13 Timo Schulz <[email protected]>
2405
2406 * wptKeyManager.cpp (km_file_import): Alloc buffer, it's not static
2407 any longer.
2408
2409 2002-10-31 Timo Schulz <[email protected]>
2410
2411 * wptKeyManager.cpp (km_update_default_key_str): Fixed '0x' handling.
2412 Thanks to Gustavo.
2413 * wptKeylist.cpp (add_key): Now we only use find_secret_key to detect
2414 whether it's a key pair or not.
2415 * Callback struct into KEY so we can modify the values in the background.
2416 * wptKeyPropsDlg.cpp (change_ownertrust): New.
2417
2418 2002-10-30 Timo Schulz <[email protected]>
2419
2420 * wptLDAP.cpp, wptLDAP.h: Removed. The plan is to use the gpgkey_xxx.exe
2421 LDAP plugin for this purpose.
2422 * wptMainproc.cpp (winpt_main_proc): Removed all LDAP stubs.
2423 * wldap32.lib is now not longer needed.
2424 * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Copy userid to clipboard.
2425 * Updated the resource file.
2426 * wptFileManager.cpp (fm_parse_command_line): Implemented the stuff
2427 for 'Decrypt', 'Verify', 'Import'.
2428
2429 2002-10-15 Timo Schulz <[email protected]>
2430
2431 * Changed all s(n)printf -> msg_box constructs to log_box.
2432
2433 2002-10-13 Timo Schulz <[email protected]>
2434
2435 * wptKeylist.cpp (get_key_expire_date): New.
2436 * wptKeyPropsDlg.cpp (key_props_dlg_proc): Use it here.
2437
2438 * Removed global keycache from GPGME. It's a bad style to mix
2439 general and specific interfaces.
2440
2441 * wptGPGME.cpp (get_pubkey): New. Used to hide keycache implementation
2442 details. Useful to replace it later.
2443 (get_seckey): Ditto.
2444 (keycache_reload): Moved from the GPGME library.
2445 (keycache_release): New.
2446 (keycache_init): New.
2447 (keycache_set_reload): New.
2448 (keycache_get_reload): New.
2449 (keycache_get_ctx): New.
2450
2451 * wptSigList.cpp (siglist_add_key): Use the new code.
2452 (siglist_build): Ditto.
2453
2454
2455 2002-10-10 Timo Schulz <[email protected]>
2456
2457 * wptW32API.cpp (get_filename_dlg): Added default filename parameter.
2458 Changed all callers.
2459 * wptKeyManagerDlg.cpp (keymisc_dlg_proc): Adjusted the code for the
2460 new get_filename_dlg.
2461 * wptFileManager.cpp (fm_export): Likewise.
2462 * wptClipDecryptDlg (clip_decrypt_dlg): Modified the verify message box.
2463 * wptKeySignDlg.cpp (keysign_dlg_proc): Changed the code for edit-key.
2464 Use signature class dialog.
2465 * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Use the new code and the
2466 keyid instead of the userid to avoid charset problems.
2467 (err_message): New.
2468
2469 * Moved all wipe specific code (random, rmd160) to the DLL so we can
2470 save some memory for the tray section.
2471
2472 * wptKeyRevokersDlg.cpp (revokelist_build): New.
2473 (revokelist_init): New.
2474 (key_revokers_dlg_proc): New.
2475
2476 * wptKeyPropsDlg.cpp (key_props_dlg_proc): Use the designated revoker
2477 code here when available.
2478
2479 2002-09-25 Timo Schulz <[email protected]>
2480
2481 * wptClipboard.cpp (clip_parse_pgp_id): Add a flag when the text
2482 is dash escaped. This is useful for keys to avoid errors.
2483 * wptKeyManager.cpp (extract_dash_escaped_key): New. Extract an
2484 OpenPGP key from the clipboard which is dash escaped.
2485 (km_clip_import): Use the new code here.
2486
2487 2002-09-23 Timo Schulz <[email protected]>
2488
2489 * wptParser.cpp (add_multi_option): Support for values with more ' 's
2490 and skip the ' ' after the name.
2491 (modify_entry): New.
2492 * wptGPG.cpp (gnupg_save_options): Removed.
2493 (gnupg_load_options): Removed.
2494 (gnupg_release_options): Removed.
2495 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Use the new code.
2496
2497 2002-09-17 Timo Schulz <[email protected]>
2498
2499 * winpt.cpp (WinMain): Use make_filename and no static buffer.
2500 Modified for the new gnupg interface.
2501 * wptFile.cpp (make_filename): New.
2502 * wptGpgCmds.h: New from GPG 1.1.92
2503 * wptGPG.cpp (gnupg_import_keyrings): Use dynamic buffers
2504 and make_filename.
2505 * wptKeygenDlg.cpp (ask_for_backup): Use new gpg code and
2506 make_filename instead of static buffers.
2507 * wptKeyCacheDlg.cpp (keycache_dlg_proc): Likewise.
2508 * wptParser.cpp: Changed to new allocation instead of malloc.
2509 * wptGPGOptSkel.h: Updated from GPG 1.1.92
2510 * wptRegistry.cpp (get_reg_entry): Expand %s like registry strings.
2511
2512 2002-09-13 Timo Schulz <[email protected]>
2513
2514 * wptKeyManager.cpp (km_show_photo): Use a const buffer for the
2515 image and do NOT free it.
2516 * wptKeyUidDlg.cpp (keyuid_dlg_proc): Implement "revoke" function.
2517 (find_user_id): Use keyid to find the key. Changed all callers.
2518
2519 * Removed global gpg_version variable. Now we also support GPG 1.1.9x
2520 so we don't need to check this after the start again.
2521
2522 2002-09-12 Timo Schulz <[email protected]>
2523
2524 * wptPasswdDlg.cpp (passwd_dlg_proc): Implement the "Hide Typing" fature.
2525 * wptKeyManagerDlg.cpp (keymisc_dlg_proc): Off by one bug for secret
2526 key export.
2527 * wptKeyManager.cpp (fm_encrypt): Use the new GPG status messages to
2528 check if the encryption failed.
2529 (km_show_photo): Fixed offset calculation.
2530 Use keyid as filename and delete the tempfile after use.
2531 * wptFile.cpp (init_file_lock): Use dynamic buffer.
2532 (release_file_lock): Free this buffer.
2533 * wptFileManager.cpp (quote_filename): Removed.
2534 (quote_file): New. Use dynamic buffers.
2535 (fm_import, fm_decrypt, fm_encrypt, fm_sym_encrypt, fm_export):
2536 Use it here.
2537 * wptFileStatDlg.cpp (do_list_packets): Do not cache FD.
2538 Initalize packet at the begin and during the loop.
2539 * wptFileManager.cpp: Replaced all static memory handling with
2540 dynamic routines.
2541 * wptKeyCacheDlg.cpp (key_cache_dlg): Remove obsolete ownertrust
2542 functions.
2543 * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Ditto.
2544
2545 2002-09-10 Timo Schulz <[email protected]>
2546
2547 * wptFileManager.cpp (fm_get_file_type): Disable FD cache.
2548 (fm_decrypt): Only cut off the extension if it belong to GPG.
2549 Added user ID to the box if the file was signed.
2550 Ask for the filename if the name has no valid GPG extension.
2551
2552 2002-09-09 Timo Schulz <[email protected]>
2553
2554 * wptKeyManagerDlg.cpp (keymisc_dlg_proc): Improved code for
2555 the privat key (export).
2556
2557 2002-09-08 Timo Schulz <[email protected]>
2558
2559 * wptKeygenDlg.cpp (ask_for_backup): Check if the copy process
2560 really succeeded.
2561 (mbox): Alias for msg_box with fixed title to avoid long lines.
2562 * wptKeyEditAddSubkeyDlg.cpp (keyedit_addsubkey_dlg_proc): Allow
2563 to generate keys with a length til 4096 bits.
2564 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Check for
2565 invalid recipients and print out the reasons.
2566 * wptKeylist.cpp (keylist_add_to_recipients): Improved error message
2567 and corrected the validity checking.
2568
2569 2002-09-07 Timo Schulz <[email protected]>
2570
2571 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc):
2572 Print notation data when available.
2573 Show if the signature is expired or not.
2574
2575 * wptKeyManagerDlg.cpp (keymisc_dlg_proc): Added the show photo
2576 command to the context menu.
2577
2578 * wptKeygenDlg.cpp (keygen_dlg_proc): New default keysize is 1792.
2579 This is 256 bits more than the old size. Hopefully it's enough
2580 security to protect against the most enemies ;-).
2581
2582 2002-09-04 Timo Schulz <[email protected]>
2583
2584 * wptKeyManager.cpp (km_check_key_status): Parse new fields.
2585
2586 2002-09-03 Timo Schulz <[email protected]>
2587
2588 Removed all OpenCDK code from PTD. The code is not tested very
2589 well and it might contain some errors. Now we used a stripped down
2590 version of GnuPG code. This has two advantages. First the code is
2591 stable and second we can easier port other parts to native GPG code.
2592
2593 * wptFileManager.cpp (fm_get_file_type): Use native GPG code.
2594 * wptKeyCacheDlg.cpp (keycache_dlg_proc): Add photos from the
2595 keyring when present to the keycache.
2596 * wptKeyManager.cpp (km_show_photo): Fixes to work again with the
2597 modified code.
2598 (km_check_for_seckey): Check substrings of the value because we
2599 don't use '**' values any longer.
2600 * wptFileStat.cpp (do_list_packets): New. Adapted from the old code.
2601 (file_stat_dlg_proc): Uses the new code.
2602
2603 2002-09-02 Timo Schulz <[email protected]>
2604
2605 * wptKeyManager.cpp (km_privkey_export): Check return codes and
2606 some types has been changed.
2607 (km_file_export): Likewise.
2608
2609 2002-09-01 Timo Schulz <[email protected]>
2610
2611 * wptFirstRunDlg.cpp (get_setup_choice): New. Returns the choice
2612 of the dialog.
2613 * WinPT.cpp (WinMain): Use it here. Reworded the error message.
2614 * wptGPG.cpp (gpg_import_keyrings): New.
2615 Let the user chose the keyrings and then they are copied to the
2616 homedir. After the procedure, the key cache will be reloaded.
2617 * wptKeyManager.cpp (km_delete_keys): New delete confirmation messages.
2618 * wptSigClassDlg.cpp (sig_class_dlg_proc): New.
2619 (get_sig_class_choice): New.
2620 * wptKeySignDlg.cpp (get_printable_fpr): New. More human readable
2621 fingerprint.
2622 (keysign_dlg_proc): Added new value for the GPG callback to handle
2623 the signature class.
2624 * wptKeyUIDDlg.cpp (find_user_id): New. Find the index of the
2625 userID by calling edit-key with colons.
2626 (keyuid_dlg_proc): Use it here.
2627
2628 2002-08-31 Timo Schulz <[email protected]>
2629
2630 * wptGPG.cpp (gpg_check_homedir): Some fixes for the return codes.
2631 (check_homedir): Ask the user whether to create the directory.
2632 * wptKeysigDlg.cpp (keysig_dlg_proc): Fixed keyid. Now it works
2633 to retrieve missing keys from a HKP server.
2634 (recv_missing_keys): Likewise.
2635 * wptPassphraseCB.cpp (passphrase_callback_proc):
2636 Implemented the "Hide Typing" feature.
2637 (hide_typing): New.
2638 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Improved error messages.
2639 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Improved MDC handling.
2640 Due to some attacks a MDC error is treated as a fatal error and a
2641 possible security risk.
2642 * wptClipImportDlg.cpp (print_import_status): Use a dialog instead
2643 of a silly message box. Furthermore the user gets more information
2644 about the import procedure.
2645 * wptKeyImportStatusDlg.cpp (import_status_dlg_proc): New.
2646 * wptFileManager.cpp (fm_import): Report invalid user ID's.
2647 (fm_verify): Try to guess the data name for detached signatures
2648 before we bother the user. When it's found, use it.
2649 * wptKeyManager.cpp (km_file_import): Ditto.
2650
2651 2002-08-28 Timo Schulz <[email protected]>
2652
2653 * wptClipboard.cpp (clip_parse_pgp_id): Support for PGP 2.6.x types.
2654 * wptFileMananger.cpp (fm_check_armor_type): Ditto.
2655
2656
2657 2002-08-26 Timo Schulz <[email protected]>
2658
2659 * wptTypes.h (free_if_alloc, CHECK_BOUND): New.
2660 * wptClipEditDlg.cpp (gpgopt_dlg_proc): Use free_if_alloc to make sure
2661 the memory is really released. Some strict checks for return values.
2662 Ident file.
2663
2664 * wptAboutDlg.cpp: Ditto. (ident)
2665 * wptGPGAboutDlg.cpp: Ditto.
2666 * wptClipDecryptDlg.cpp: Ditto.
2667 (clip_decrypt_dlg): Stricter return value checkings.
2668 Avoid one indent level.
2669
2670 * wptImportList.cpp (implist_add_key): More strict return value
2671 checking.
2672 * wptKeylist.cpp (keylist_cmp_cb): Fixed a typo.
2673 (add_key): New key status system.
2674 (keylist_get_keyflags): New.
2675 (keylist_enum_recipients): Simplified and use the new key flags.
2676
2677 * wptSiglist.cpp (siglist_add_key): Fix possible overflows.
2678 (verlist_add_sig_log): More stricter checks.
2679
2680 * wptRegistry.cpp (get_reg_winpt_prefs): Fixed possible bug.
2681
2682 2002-06-16 Timo Schulz <[email protected]>
2683
2684 Don't put the questions in the message box title bar.
2685
2686 * wptGPGPrefsDlg.cpp (gpg_prefs_dlg_proc): Only close FP if it
2687 is really opened. Thanks to Nelson.
2688
2689 * wptKeyProps.cpp (keyprops_dlg_proc): Use a more informative title
2690 for chaning the passphrase. Suggested by Ed.
2691
2692 2002-06-07 Timo Schulz <[email protected]>
2693
2694 * wptMainProc.cpp (winpt_main_proc): Support for sign & encrypt hotkeys.
2695 * wptKeyManagerDlg.cpp: Refresh keys was added in the menu.
2696 * wptListView.cpp (listview_select_all): New.
2697 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Fixed the return code.
2698
2699 2002-05-31 Timo Schulz <[email protected]>
2700
2701 * wptTrayPop.cpp: Revamped some parts of the code.
2702
2703 Changed all status_box functions to show_msg. The advantage
2704 is that we only wait a fixed time and the user doesn't need
2705 to hit the OK key. We should add the time delay in the preferences.
2706
2707 * wptKeyManager.cpp (km_show_photo): New.
2708
2709 2002-05-30 Timo Schulz <[email protected]>
2710
2711 * wptFileManager.cpp (fm_verify): Corrected the handling
2712 for detached RSA signatures.
2713 (fm_add_sig_stat): Added support for short fingerprints.
2714
2715 2002-05-08 Timo Schulz <[email protected]>
2716
2717 * wptKeyserver.cpp (kserver_change_proxy): Check the values.
2718 Thanks to njek for reporting it.
2719
2720 2002-05-07 Timo Schulz <[email protected]>
2721
2722 * wptGPG.cpp (check_gpg_engine): New.
2723
2724 * wptKeyCacheDlg.cpp (keycache_dlg_proc): Add GPG 1.0.6 compatible
2725 routines.
2726
2727 * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Ditto.
2728
2729 * wptKeyEditOwnertrustDlg.cpp (keyedit_owerntrust_dlg_proc): Ditto.
2730
2731 2002-05-06 Timo Schulz <[email protected]>
2732
2733 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Change the wording of
2734 the buttons.
2735
2736 2002-05-05 Timo Schulz <[email protected]>
2737
2738 * Fixed problem with rev certs for imports stats.
2739
2740 * Cosmetical changes for the GPGME libraray.
2741
2742 2002-05-01 Timo Schulz <[email protected]>
2743
2744 * wptKeygenDlg.cpp (fill_keytype_box): New.
2745 (keygen_dlg_proc): Use a combo box for various key types. With GPG 1.0.7
2746 there is full RSA support.
2747
2748 Now we use the new status code by GPG (INV_RECP, NO_RECP) to figure out
2749 what the problem was when no encryption was done.
2750
2751 * wptKeysignDlg.cpp (keysign_dlg_proc): Before we sign a key, we make
2752 sure it was not already signed (ALREADY_SIGNED).
2753
2754 * wptKeyManagerDlg.cpp (keymisc_dlg_proc): Due to the new trust system,
2755 now we also support to sign ultimate trusted keys.
2756
2757 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Try to check if the button
2758 is checked and do not check it.
2759
2760 * wptClipDecryptDlg.cpp (clip_decrypt_dlg_proc): New format for the verify
2761 box and now we also support the date of the signature.
2762
2763 Applied Rich's spelling and grammer mistakes.
2764 Fixed a lot of minor spelling mistakes and capital letters for dialogs.
2765
2766 2002-04-30 Timo Schulz <[email protected]>
2767
2768 Merge ownertrust handling into the keycache. Now GPG outputs the
2769 ownertrust in the key listing which means we can get the ownertrust
2770 value from the keycache.
2771
2772 (keymisc_dlg_proc): Add a button to rebuild the sig database cache.
2773 Please not that this is not the same as the key cache! The key cache
2774 will be updated when a new key was imported or a subkey was added/changed.
2775 The signature cache only affects the validity of the keys.
2776
2777 Removed the MyGPGME trustlist code. Now we can use the field in the key
2778 listing to determine the ownertrust (which makes things a lot of easier).
2779
2780 2002-04-29 Timo Schulz <[email protected]>
2781
2782 Adjustments for GPG 1.0.7
2783
2784 * wptKeyEditDlg.cpp (keyedit_ownertrust_dlg_proc): Support ultimate trust
2785 and ask the user if he knows what he's doing.
2786 * wptKeyManager.cpp
2787 (keylist_subclass_proc): Use double click to open the props.
2788 * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Allow the user even to modify a
2789 ultimate ownertrust value.
2790 * wptKeyEditAddSubkeyDlg.cpp (keyedit_addsubkey_dlg_proc): Support for
2791 new RSA keys.
2792
2793 2002-04-28 Timo Schulz <[email protected]>
2794
2795 * wptRegistry.cpp (get_reg_winpt_prefs): New option for keylist mode.
2796 (set_reg_winpt_prefs): Ditto.
2797 * wptPreferencesDlg.cpp (prefs_dlg_proc): Support for keylist mode option.
2798 (set_keylist_mode): New.
2799
2800 Implement minimal keylist mode. Suggested by Fabian.
2801
2802 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Implement it here.
2803 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Ditto.
2804 * wptKeylist.cpp (keylist_add_key): Ditto.
2805 (keylist_load): Ditto.
2806 (keylist_build): Ditto.
2807
2808 2002-04-27 Timo Schulz <[email protected]>
2809
2810 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Support for the new dialog.
2811 * wptFileSaveDlg.cpp (file_save_dlg_proc): New.
2812 * wptClipboard.cpp (clip_parse_pgp_id): use logical OR to concat the values.
2813 * wptMainProc.cpp (clip_gpg_dlg): Use the new PGP id's.
2814 (currwnd_gpg_dlg): Ditto.
2815
2816 Now it's possible to parse cleartext signatures which contains an
2817 encrypted message inside the body.
2818
2819 * wptTextInputDlg.cpp (load_file_contents): New.
2820 (text_input_dlg_proc): Support for choosing the data file.
2821
2822 * wptFileManager.cpp (fm_verify): Support for detached signatures.
2823 (fm_parse_files): Ditto.
2824
2825
2826 2002-04-26 Timo Schulz <[email protected]>
2827
2828 * wptKeyUidDlg.cpp: Fixed a typo. Kudos to Dugan Chen.
2829 * wptKeyUidDlg.cpp: Ditto.
2830
2831 2002-04-25 Timo Schulz <[email protected]>
2832
2833 * wptImplist.cpp (implist_add_key): Catch possible segfault.
2834 * wptVerifyList.cpp (verlist_add_sig): Ditto.
2835 * wptKeyManager.cpp (km_check_for_seckey): Modified for GPG 1.0.7.
2836 * wptKeylist.cpp (find_secret_key): New.
2837 (add_key): Use it here.
2838 (keylist_add_key): And here.
2839
2840 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Fixed a bug that prevent
2841 to fetch the key.
2842
2843 2002-04-24 Timo Schulz <[email protected]>
2844
2845 * wptKeyManagerDlg.cpp (key_misc_dlg_proc): Support to maximize windows.
2846
2847 Changed the way to modify the "Version:" string.
2848
2849 * wptKeyserver.cpp (add_node): New.
2850 (kserver_change_proxy): New.
2851 (kserver_read_config): New.
2852 (kserver_write_config): New.
2853 (kserver_cfgfile_release): New.
2854 (proxy_release): New.
2855
2856 * wptProxySettingsDlg.cpp (read_proxy): New.
2857 * wptFileStatDlg.cpp (file_stat_dlg_proc): New.
2858 * wptFileManager.cpp (fm_list): New.
2859 (fm_parse_files): Support the new list command.
2860
2861 2002-04-23 Timo Schulz <[email protected]>
2862
2863 * wptRFC2440.cpp: Removed. We now use the OpenCDK package.
2864 * wptFileManager.cpp (fm_get_file_type): Removed the old RFC2440 code.
2865 (fm_encrypt): Modified code to allow sign & encrypt.
2866 (fm_parse_file): Ditto.
2867 (fm_decrypt): Support for checking signatures.
2868 * wptFileManagerDlg.cpp (file_manager_dlg_proc): Ditto.
2869
2870 2002-04-19 Timo Schulz <[email protected]>
2871
2872 * wptImplist.cpp (implist_load): Support for the advanced PGP parser code.
2873
2874 2002-04-05 Timo Schulz <[email protected]>
2875
2876 * wptSigList.cpp (siglist_add_key): Added UTF8 support. Thanks to Scire.
2877 * wptKeyUidDlg.cpp (keyuid_dlg_proc): Ditto.
2878 * wptKeySignDlg.cpp (keysign_dlg_proc): Ditto.
2879 * wptKeyAddUidDlg.cpp (keyedit_adduid_dlg_proc): Ditto.
2880
2881 2002-03-31 Timo Schulz <[email protected]>
2882
2883 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Ask if the user wants to
2884 select the key used for signing.
2885 * wptSeclistDlg.cpp (seclist_dlg_proc): New. Dialog for secret selecting.
2886 * wptFilePrefsDlg.cpp (file_prefs_dlg): Fixes for the combo box ;-).
2887 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Reload the keycache after
2888 fetching keys via HKP and try to update the Gpgmekey inside.
2889 * wptVerifyList.cpp (verlist_add_sig): Check if the key context was
2890 set inside the signature. Fixes some segfaults related to the HKP key
2891 fetching during verification. Thanks to Julian. And force to use UTF8
2892 for user ID's.
2893 * wptClipSignDlg.cpp (one_key_proc): If only one secret exists,
2894 prevent that the dialog is loaded and ask for the passphrase directly.
2895
2896
2897 2002-03-29 Timo Schulz <[email protected]>
2898
2899 * wptGPG.cpp (create_groupdb): Only close the file handling if it
2900 really exists. Thanks to Mark.
2901 (gpg_check_homedir): Applied the patch. Now we're a little stricter
2902 about the homedir checks.
2903 (check_homedir): Fixed a possible memory leak.
2904 * WinPT.cpp (WinMain): Check the homedir functions to exit the program
2905 if we've found some problems.
2906 * wptErrors.cpp (winpt_strerror): New value if a directory could not
2907 created.
2908 * wptMainProc (winpt_main_proc): Use new code for the current window mode.
2909 * wptCurrWnd.cpp (get_curr_wnd): Ditto.
2910 (get_window_contents): Always set focus to the current window.
2911
2912 2002-03-22 Timo Schulz <[email protected]>
2913
2914 * wptMainProc.cpp (currwnd_gpg_dlg): If the viewer is used, doesn't
2915 set window contents for some commands.
2916 (winpt_main_proc): Use the code here.
2917 * wptKeygenDlg.cpp (keygen_dlg_proc): Allow to generate keys > 2048 bits.
2918 * wptProxySettingsDlg.cpp: (keyserver_proxy_dlg_proc): New.
2919 * wptKeyserverDlg.cpp (keyserver_dlg_proc): Use the proxy dialog here.
2920 * wptKeyserver.cpp (kserver_load_conf): Fixed malformed strings.
2921
2922 2002-03-02 Timo Schulz <[email protected]>
2923
2924 * Use capital letters in the main menus and applied Patricks spelling
2925 corrections.
2926
2927 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): keyID is a string
2928 not an integer. Thanks to scrumpy.
2929 * wptWipeFile.cpp (rename_unlink): Use '\' instead of '/'.
2930 (overwrite): Some bugfixes to set the pointer to the begin of the file.
2931 * wptVerlist.cpp (verlist_build): New keyID column.
2932 (verlist_add_sig): Use it here.
2933
2934 2002-03-01 Timo Schulz <[email protected]>
2935
2936 * wptWipeFile: Replaced all low level I/O functions with W32 API
2937 functions. And support for more wiping modes. I don't know to
2938 support all, but those makes sense for me:
2939 1. Simple (2 random passes)
2940 2. DoD (as described in the standard)
2941 3. Peter Gutmanns method (from the paper)
2942
2943
2944 2002-02-28 Timo Schulz <[email protected]>
2945
2946 * wptImplist.cpp (implist_add_key): UTF8 support.
2947 Handle invalid userID's.
2948 * wptPassphraseCB.cpp (parse_gpg_description): UTF8 support.
2949 (passphrase_callback_proc): Ditto.
2950
2951
2952 2002-02-23 Timo Schulz <[email protected]>
2953
2954 * wptListview.cpp (listview_del_items): New.
2955 * wptKeyManager.cpp (km_delete_keys): Use it here.
2956 * wptKeygenDlg.cpp (keygen_dlg_proc): UTF8 support.
2957 * wptKeylist.cpp (add_key): UTF8 support.
2958
2959 2002-02-08 Timo Schulz <[email protected]>
2960
2961 * wptNLS.c: Now it's C-source because GPGME needs gettext too.
2962 (stpcpy): Makes it static.
2963 * errors.c: localize all error strings.
2964 * WinPT.cpp (get_gettext_lang): Move the code in this file because
2965 we can't use it in plain C.
2966
2967 2002-02-05 Timo Schulz <[email protected]>
2968
2969 * wptGPG.cpp (gpg_save_options): Catch the case when the options file
2970 exist but it has a length of zero.
2971 (gpg_display_error): Print out the data from the GPG stderr
2972 (when available).
2973 * w32-util.c (_gpgme_get_gpg_optfile): Check if the file exists and if
2974 not, return NULL.
2975 * wptKeyManagerDlg.cpp (keymisc_dlg_proc): Add support to export secret
2976 keys.
2977
2978 * Fixed a lot of memory allocation all over the place.
2979
2980 2002-02-05 Timo Schulz <[email protected]>
2981
2982 wptGPG.cpp (gpg_save_options): Fixed the code for the case the
2983 values don't exist in the options file. Thanks to Lutz who found this out.
2984 (get_gpg_default): First search for "default-key" then for "encrypt-to".
2985
2986 2002-02-04 Timo Schulz <[email protected]>
2987
2988 * WinPT.rc: Set LVS_SHOWSELALWAYS for all listview elements
2989 which need it. Thanks to Timo who find this out.
2990 * WinPT.cpp (WinMain): We don't quit in the case the user changed
2991 the preferences.
2992 (update_keycache): New. Handy function to update the keycache.
2993
2994 * Use quotation for the options file in any case.
2995
2996 * clipboard.c (gpgme_clipboard_verify): When the NO_PUBKEY status
2997 is set, we don' try to get the sig key.
2998
2999 * wptGPG.cpp (get_gpg_default_key): Revamped.
3000
3001 2002-01-26 Timo Schulz <[email protected]>
3002
3003 * wptKeylist.cpp (keylist_add_key): Use flags for the file manager
3004 to avoid to show all userid's. Thanks to Frank.
3005 * wptDateDlg.cpp (date_dlg_proc): New context to use different
3006 window texts and some other features.
3007 * wptKeygenDlg.cpp (keygen_dlg_proc): Use it here.
3008 * wptKeySubkeyDlg.cpp (subkey_dlg_proc): Ditto.
3009 * wptGPG.cpp (gpg_create_groupdb): Create the groupdb.gpg file if
3010 it doesn't exist.
3011 * WinPT.cpp (WinMain): Use the new code here.
3012
3013 2002-01-23 Timo Schulz <[email protected]>
3014
3015 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Release the buffer for
3016 loading a file.
3017 Add new code to save file with clipboard contents.
3018
3019 2002-01-20 Timo Schulz <[email protected]>
3020
3021 * wptMainProc.cpp (winpt_main_proc): Fix the error, that the user
3022 have to click twice before the menu appears. Richard told me this.
3023
3024
3025 2002-01-18 Timo Schulz <[email protected]>
3026
3027 * wptMainProc.cpp (winpt_main_proc): NLS support for new menu style.
3028 * wptPassphraseCB.cpp (parse_gpg_description): Support when no
3029 description was given. One example is when symmetric was used.
3030
3031 2002-01-13 Timo Schulz <[email protected]>
3032
3033 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Fixed some boolesche
3034 settings.
3035 * wptGPG.cpp (gpg_backup_options): New.
3036 (gpg_load_options): Ignore comment lines.
3037 (gpg_save_options): Rewritten.
3038
3039 2002-01-06 Timo Schulz <[email protected]>
3040
3041 * wptPreferencesDlg.cpp (prefs_dlg_proc): Support for the sign+encrypt
3042 hotkey.
3043 * wptRegistry.cpp: Ditto.
3044 * wptRegistry.h: Ditto.
3045 * wptHotkey.h: Ditto.
3046 * wptGPG.cpp (gpg_load_options): New.
3047 (gpg_save_options): New.
3048
3049 2002-01-01 Timo Schulz <[email protected]>
3050
3051 * wptFileManager.cpp (fm_verify): Support for the case there is
3052 no public key to verify the signature.
3053
3054 2001-12-30 Timo Schulz <[email protected]>
3055
3056 * wptFileManager.cpp (fm_sign): Always use callbacks for the
3057 passphrase.
3058 (fm_decrypt): Ditto.
3059 (fm_parse_files): Cache the passphrase for the session and check
3060 if the file still exists.
3061 * wptRFC2240.cpp (parse_ske_sesskey): Removed. We no longer use
3062 low level stuff here.
3063 * wptFile.cpp (get_keyid_from_file): Ditto.
3064
3065 2001-12-21 Timo Schulz <[email protected]>
3066
3067 * wptTextInputDlg.cpp (text_input_dlg_proc): New.
3068 * wptMainProc (clip_gpg_dlg): Support for deached signatures.
3069 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Ditto.
3070
3071 2001-12-19 Timo Schulz <[email protected]>
3072
3073 * Completed work on the temporary file support for GPG.
3074 * wptRegistry.cpp (set_reg_winpt_prefs): Add mode for the
3075 plaintext viewer option. Suggested by Markus Winkler.
3076 (get_reg_winpt_prefs): Ditto.
3077 * wptPreferencesDlg.cpp (prefs_dlg_proc): Ditto.
3078 * wptMainProc.cpp (winpt_main_proc): Ditto.
3079
3080 2001-12-15 Timo Schulz <[email protected]>
3081
3082 * wptKeyManagerDlg.cpp (keymisc_dlg_proc): New menu items for
3083 copy and paste.
3084
3085 2001-12-02 Timo Schulz <[email protected]>
3086
3087 * wptGroups.c: Revamped from the base. Arggg.
3088
3089 2001-11-29 Timo Schulz <[email protected]>
3090
3091 * wptKeyManager.cpp (km_groupdb_expand_recipients): New.
3092 * wptMainProc.cpp (clip_gpg_dlg): New.
3093 Modify the whole event loop so we don't need all the same code
3094 for each command. And we use the new foreground code.
3095 * wptW32API.cpp (check_date): Fixed.
3096
3097 2001-11-27 Timo Schulz <[email protected]>
3098
3099 * wptKeyserver.cpp (base64_encode): New. Marco provided HTTP
3100 proxy authentifcation support for each command.
3101 (kserver_update_proxyuser): New. Ditto.
3102 (kserver_send_request): Ditto.
3103 (kserver_recv_request): Ditto.
3104 (kserver_search_init): Ditto.
3105
3106 2001-11-24 Timo Schulz <[email protected]>
3107
3108 * wptKeyManager.cpp (km_groups_new): New.
3109 (km_groups_release): New.
3110 (km_groups_load): Rewritten.
3111 (km_groups_add): New.
3112 (km_groups_del): New.
3113 (km_groupdb_open): New.
3114 * wptKeyManagerDlg.cpp (keymisc_dlg_proc): Added group support.
3115 * wptGroups.c (groupdb_enum_read): Store the record before increment it.
3116
3117 2001-11-23 Timo Schulz <[email protected]>
3118
3119 * wptW32API.cpp (set_active_window): New.
3120 (reset_active_window): New.
3121 (window_reminder): New. This is a delayed thread procedure to
3122 force the focus (foreground) to the dialogs for the current
3123 window mode.
3124 * wptMainProc.cpp (winpt_main_proc): Use it here.
3125 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Ditto.
3126 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Ditto.
3127 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Ditto.
3128 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Ditto.
3129
3130 2001-11-22 Timo Schulz <[email protected]>
3131
3132 * wptW32API.cpp (set_foreground_wnd): New.
3133
3134 Fixed the return value of all EndDialogs.
3135
3136 * wptMainProc.cpp: Remove all code parts which did the same for the
3137 current window support. Now the code uses a dialog switch which is
3138 much smaller.
3139
3140 2001-11-18 Timo Schulz <[email protected]>
3141
3142 * wptKeyManager.cpp: New. Contains all handy functions from the
3143 wptKeyManagerDlg.cpp. This should help to cleanup the dialog code.
3144 (km_quote_uid): New.
3145 (km_check_for_seckey): New.
3146 (km_check_key_status): New.
3147 (km_clip_export): New.
3148 (km_clip_import): New.
3149 (km_file_export): New.
3150 (km_file_import): New.
3151 (km_delete_keys): New.
3152 (km_send_to_keyserver): New.
3153 (km_refersh_from_keyserver): New.
3154 (km_update_default_key_str): New.
3155 * wptKeygenDlg.cpp (ask_for_backup): New.
3156 (keygen_dlg_proc): Use new function to give the chance to the
3157 user for a complete backup.
3158
3159 2001-11-13 Timo Schulz <[email protected]>
3160
3161 * wptGPG.cpp (get_gpg_optfile): Check for the case the OptFile entry
3162 is set but to "". Then use default gpg directory.
3163 * wptKeyManagerDlg.cpp (send_to): New. Context entry for sending keys.
3164 (refresh_from_keyserver): New. Context entry for update keys.
3165 (keymisc_dlg_proc): Modify the way the popup is shown.
3166
3167 2001-11-07 Timo Schulz <[email protected]>
3168
3169 * wptGPG.cpp (set_gpg_default_key): Rewrote the part of changing
3170 the key id.
3171 * wptKeyManagerDlg.cpp (file_import): Use force trust to allow secret
3172 key imports.
3173 * wptGPGOptDlg.cpp (gpgopt_dlg_proc): If the options file exists and
3174 the user doesn't set the field, try to do this automatically.
3175
3176 2001-11-03 Timo Schulz <[email protected]>
3177
3178 (fm_remove_crit_file_attrs): First check if the file exists.
3179 Thanks to Peter.
3180
3181 2001-11-02 Timo Schulz <[email protected]>
3182
3183 * WinPT.cpp (WinMain): Add the chance to start the preferences dialog
3184 in the case a GPG error was detected.
3185 * wptKeyManagerDlg.cpp (delete_keys): Interface to delete all selected
3186 keys.
3187
3188 2001-10-30 Timo Schulz <[email protected]>
3189
3190 * wptHotkey.h: Fixed typo. Thanks to Timo.
3191 * wptGPG.cpp: (gpg_check_homedir): Fixed memory leak. By Timo.
3192 (get_gpg_default_key): Skip comment lines immediately.
3193 * wptRegisty.cpp (get_reg_winpt_prefs): Ditto.
3194 * wptKeyManagerDlg.cpp (keylist_subclass_proc): New. Procedure
3195 for subclassing.
3196
3197 Remove all unsafe WM_NOTIFY stuff because this was propably the
3198 reason for the crashes. And add as a sanity check if the control
3199 sent the message.
3200
3201 2001-10-28 Timo Schulz <[email protected]>
3202
3203 * wptKeyMiscDlg.cpp (key_misc_dlg_proc): New virtual key support
3204 for ENTER/SPACE and DELETE. Suggested by Graham.
3205 * wptKeyList.cpp (add_key): New code to figure out how trustworthy
3206 a expired/revoked secret key is.
3207 (keylist_enum_recipients): Show the key ID of the key when it's
3208 revoked.
3209 * wptFileManager.cpp (fm_decrypt): Parse all PKE packets and not
3210 only the first to figure out if a secret is available. Thanks to
3211 Graham.
3212 * wptFile.cpp (get_keyid_from_file): Ditto.
3213
3214 2001-10-27 Timo Schulz <[email protected]>
3215
3216 * wptKeylist.cpp (keylist_enum_recipients): Add a type to make
3217 the code more flexible.
3218 * wptKeyMiscDlg.cpp (file_import): New.
3219 (file_export): New.
3220 * wptKeySigDlg.cpp (recv_missing_keys): Fixed a typo.
3221
3222 Removed all OE code snippets.
3223
3224 2001-10-26 Timo Schulz <[email protected]>
3225
3226 * wptExtensions.cpp: Removed.
3227 * wptLDAPExt.cpp: Removed.
3228 * wptLDAP.cpp: New. This code now contains a direct interface to
3229 the WLDAP library so we don't need extra DLL's to handle LDAP keyservers.
3230 (wldap_init): New.
3231 (wldap_end): New.
3232 (ldap_set_verbose): New.
3233 (ldap_get_key_info): New.
3234 (ldap_recvkey): New.
3235 (init_ldap): New. Internal use only.
3236 (get_key): New. Ditto.
3237 (send_key): New. Ditto.
3238 * wptMainProc.cpp (wpt_main_proc): Init and de-init the LDAP dll.
3239
3240 2001-10-25 Timo Schulz <[email protected]>
3241
3242 * wptGPG.cpp (get_gpg_default_key): Support for the users options file.
3243 (check_gpg_path): Ditto.
3244 (get_gpg_options): Ditto.
3245 (set_gpg_default_key): Ditto.
3246 (set_gpg_options): Ditto.
3247 (gpg_check_keyring): Ditto.
3248 (set_gpg_default_keyid): Fix a typo.
3249 * wptGPGME.cpp (get_default_keyid): Rewrote most of the code.
3250
3251 2001-10-23 Timo Schulz <[email protected]>
3252
3253 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Replace for with while
3254 because it's shorter.
3255 * wptFileSignDlg.cpp (file_sign_dlg_proc): Use keylist instead of
3256 the default keyid.
3257 * wptFileManager.cpp (fm_sign): Remove the default key ID code. Now
3258 we use the signer from the keylist.
3259 * wptGPGME.cpp (get_default_keyid): Revamp most of the code and fix
3260 some silly bugs.
3261 * WinPT.cpp (WinMain): if there is no valid keyring after the new
3262 preferences, start the key generation dialog.
3263
3264 2001-10-22 Timo Schulz <[email protected]>
3265
3266 Remove all MyGPGME code from the main project. Now we use the
3267 libmygpgme.dll to provide all cryptographic functions and interfaces.
3268
3269 * wptKeylist.cpp (key_array_new): New.
3270 (key_array_release): New.
3271 (key_array_search): New.
3272 * wptKeylist.cpp (keylist_add_to_recipients): Check if an untrusted key was
3273 already checked and don't bother the user if all userid's were selected.
3274 * wptPassphraseCB.cpp (passphrase_cb_init): Now void.
3275 (passphrase_cb_gpgme): Ditto.
3276 (passphrase_callback_proc): Support for a list of recipients.
3277 * wptImportList.cpp (implist_add_key): Support for secret keys.
3278
3279 2001-10-19 Timo Schulz <[email protected]>
3280
3281 * wptGPGPrefsDlg.cpp (gpg_prefs_dlg_proc): Support for various
3282 option files.
3283 * wptMainProc.cpp (wpt_main_proc): Remove the preferences menu and
3284 use a popup menu.
3285 * wptExtensions.cpp (gpgoe_load_plugin): New. Try to load the GPGOE
3286 plug-in.
3287 (gpgoe_unload_plugin): New.
3288
3289 2001-10-17 Timo Schulz <[email protected]>
3290
3291 * wptCurrWnd.cpp (get_window_contents): Only minimize the window
3292 when the clipboard contains text.
3293 * wptKeylist.cpp (keylist_add_key): Check only for invalid keys
3294 in the mainloop. The other flags are checked in the various cases.
3295 (add_key): Use the ** foo ** notation for invalid flags instead of
3296 skipping the key.
3297 * wptKeyMiscDlg.cpp (clip_export): Check for revoked keys and print
3298 out a warning.
3299 Change all error messages to one header.
3300 (check_key_status): Check if the key is valid in the sense of
3301 revocation and expire dates. If not, print out a warning.
3302 (keymisc_dlg_proc): Use the new code.
3303
3304 2001-10-16 Timo Schulz <[email protected]>
3305
3306 * wptW32API.cpp (check_date): New.
3307 (get_open_filename): New.
3308 * wptDlgs.cpp (init_dtp): New. Initialize a special common control.
3309 * wptKeygenDlg.cpp (keygen_dlg_proc): Add support for exipre dates.
3310
3311 2001-10-15 Timo Schulz <[email protected]>
3312
3313 * wptFileManager.cpp (fm_wipe): New.
3314 (fm_set_status): Add temporary wipe status and handle default values.
3315 (fm_parse_files): Use fm_wipe instead of sunlink. Delete all wiped
3316 files with a successful opeation.
3317 * wptKeygenCbDlg.cpp (keygen_cb_dlg_proc): New. Static dialog procedure.
3318 (keygen_cb_thread): New. Static dialog thread.
3319 (keygen_cb_dlg_create): New. Interface.
3320 (keygen_cb_dlg_destroy): New. Destroy the dialog.
3321 (keygen_cb): GPGME interface.
3322
3323 2001-10-13 Timo Schulz <[email protected]>
3324
3325 Set all ListviewControls to 'NULL' in all dialogs to be more crash
3326 resistent.
3327
3328 * wptFileEncryptDlg.cpp (file_encrypt_dlg_proc): Rebuild interface.
3329 * wptFileExportDlg.cpp (file_export_dlg_proc): Ditto.
3330 * wptFileImportDlg.cpp (file_import_dlg_proc): Ditto.
3331 * wptFileSignDlg.cpp (file_sign_dlg_proc): Ditto.
3332 * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Ditto.
3333 * wptStringUtil.cpp: Removed.
3334 * wptFileManager.cpp: Rewrote the complete interface code for
3335 the file manager.
3336 * wptFileManagerDlg.cpp: Rewrote the whole file manager dialog.
3337
3338 2001-10-10 Timo Schulz <[email protected]>
3339
3340 * wptGPG.cpp (set_gpg_default_key): Use spaces if the entry in the
3341 file is longer then the keyid.
3342 (get_gpg_default_key): Replaced get_gpg_default_keyid. Check if the
3343 entry is an userid.
3344 * wptFileManager.cpp (fm_check_for_entry): New. Avoid to add a file
3345 more then one time.
3346 (fm_add_dropped_files): Use it here.
3347 * wptFileManagerDlg.cpp (file_manager_dlg_proc): Support for common
3348 keys.
3349
3350 2001-10-09 Timo Schulz <[email protected]>
3351
3352 * wptFileManagerDlg.cpp (file_manager_dlg_proc): Check the return
3353 code of sunlink.
3354 * wptGPG.cpp (get_keyring_from_optfile): New.
3355 Renamed gpg_errstr to gpg_strerror.
3356 (set_default_key): New.
3357 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Support for default key setting.
3358
3359 2001-10-08 Timo Schulz <[email protected]>
3360
3361 * wptKeyserver (kserver_connect): If the proxy settings are valid,
3362 use the proxy port instead of the HKP port.
3363 (kserver_recvkey): Proxy support.
3364 (kserver_search_init): Ditto.
3365
3366 2001-10-06 Timo Schulz <[email protected]>
3367
3368 * wptPassphraseCB.cpp (parse_gpg_description): Fixed a memory leak.
3369
3370 2001-10-05 Timo Schulz <[email protected]>
3371
3372 * wptKeylist.cpp: (addkey): Check if the used userID is not revoked.
3373 In the case it is, use the first userID.
3374 * wptKeySubkeyDlg.cpp (key_subkey_dlg_proc): Change the listbox.
3375 Remove the Pos column and add a status column instead.
3376 Add expire stuff for subkeys.
3377 (init_dtp): Initialize the common control.
3378 * wptClipEditDlg.cpp (clip_edit_dlg_proc): New code to load a file
3379 into the clipboard.
3380 * wptKeyPropsDlg.cpp (ot_id_to_string): New. Returns a long description
3381 of the ownertrust value.
3382 (keyprops_dlg_proc): Fixed ownertrust handling.
3383
3384 2001-10-04 Timo Schulz <[email protected]>
3385
3386 * wptPassphraseCB.cpp (parse_gpg_describtion): Free buffer.
3387 * wptKeyserver.cpp (kserver_search_init): Set buffer to NULL.
3388 Both were pointed out my Timo (not me ;-)).
3389 * wptKeylist.cpp (add_key): Fix a typo and now the code is more
3390 strict with returned attributes.
3391 * wptKeysignDlg.cpp (keysign_dlg_proc): Modify GPGME interface
3392 for local signatures.
3393
3394 2001-09-28 Timo Schulz <[email protected]>
3395
3396 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): WM_NOTIFY to handle
3397 the double click messages.
3398 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Ditto.
3399 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Ditto.
3400 * wptFileManager.cpp (overwrite_file): Check if the file exists and
3401 then let the user decide.
3402 (fm_encrypt): Use the code here.
3403 (fm_sign): And here.
3404 (fm_sym_encrypt): And here. Now we use the passphrase dialog.
3405 (fm_decrypt): And here.
3406 * wptFile.cpp (unlink_file): Removed. We can use sunlink if we need
3407 a secure wipe.
3408
3409 Make the memory checking more strict.
3410
3411 2001-09-27 Timo Schulz <[email protected]>
3412
3413 * wptMainProc.cpp (wpt_main_proc): Fixed typo. Thanks to Andy who
3414 discovered this.
3415 * wptPasswdDlg.cpp (passwd_dlg_proc): New. Handy dialog to get the
3416 passphrase.
3417 * wptEditKeyDlg.cpp: Removed. The edit-key code is now moved to
3418 the various other dialogs to make the use more easier.
3419 * wptKeyUIDDlg.cpp: (keyuid_dlg_proc): ADDUID code, use it here.
3420 * wptSubkeyDlg.cpp: (subkey_dlg_proc): ADDKEY code. Ditto.
3421
3422
3423 2001-09-26 Timo Schulz <[email protected]>
3424
3425 * wptW32API.cpp (listbox_add_string): New. Shortcut to avoid long casts.
3426 (listbox_get_cursel): Ditto.
3427
3428
3429 2001-09-23 Timo Schulz <[email protected]>
3430
3431 * wptSubkeyDlg.cpp (key_subkey_dlg_proc): New. Lists the subkeys.
3432 The same as the userid dialog.
3433 * wptWndSwitchDlg.cpp: Removed.
3434 * wptWipeExt.cpp: Removed. Code is now included.
3435 * wptGPGME.cpp (get_default_keyid): If the keyid from the options
3436 file is in the keycache.
3437 * wptKeylist.cpp (keylist_reload): New. Reload a keylist.
3438
3439 2001-09-17 Timo Schulz <[email protected]>
3440
3441 * wptClipboard.cpp (clip_isalready_secured): Fixed two silly bugs
3442 who prevent the correct return value in the case of an clipboard error.
3443 (clip_parse_pgp_id): New. Returns the PGP message type.
3444 * wptHotkey.cpp (hotkeys_strerror): Fixed bug in the indexes.
3445 (hotkey_single_register): Return correct error value.
3446 (hotkey_single_unregister): Ditto.
3447 * wptW32API.cpp (get_thread_id): Removed.
3448 (attach_thread_input): Ditto.
3449 (detach_thread_input): Ditto.
3450 * wptCurrWnd.cpp (get_window_contents): Store main and focused window
3451 for later use.
3452 (set_window_contents): Use the new code.
3453
3454 2001-09-16 Timo Schulz <[email protected]>
3455
3456 * wptExtensions.h: New. This file is now used for the extenion
3457 declarations.
3458 * wptExtensions.new: (register_extensions): New. Enumerate and
3459 load all possible extensions.
3460 (unregister_extentions): New. Release all loaded extensions.
3461 * wptKeyserver.cpp (kserver_load_conf): Added support for different
3462 keyservers. Currently only HTTP/LDAP.
3463 * wptKeyserverDlg.cpp (keyserver_dlg_proc): Added LDAP support.
3464 (hkp_recv_key): Ditto.
3465 * wptMailPlugin.cpp (oe_set_focus): Fixed silly bug that prevents
3466 to set the focus.
3467 * (oe_check_recipient): New. Checks if the key is able to encrypt
3468 and valid in the sense of revocation.
3469
3470 2001-09-14 Timo Schulz <[email protected]>
3471
3472 * wptWAB.cpp: (wab_read): New. Interface to read all address book
3473 entries.
3474 (wab_open): New. Internal function to load the WAB.
3475 (wab_release): New. Release the WAB contexts.
3476 (wab_load): New. Load the contents of the WAB into a linked list.
3477 (addr_list_new): New. Linked address list.
3478 (addr_list_add): New.
3479 (addr_list_release): New.
3480
3481 2001-09-13 Timo Schulz <[email protected]>
3482
3483 * Revamped the whole plugin code for OE5.
3484 * wptMailPlugin.cpp (oe_plugin_new): New. Allocates new structure.
3485 (oe_plugin_releae): New.
3486 (oe_plugin_init): New. Searches for the OE main window and select
3487 all the recipients from the fields.
3488 (oe_get_msg): This code now uses the menu command id's to
3489 execute the commands.
3490 (oe_set_msg): Ditto.
3491 (oe_encrypt): Changed for the new code.
3492 * wptMainProc.cpp (wpt_main_proc): Re-activate the code.
3493 * wptHotkeys.cpp: Ditto.
3494 * Removed the hook project.
3495
3496 2001-09-12 Timo Schulz <[email protected]>
3497
3498 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Fixed a format error.
3499 Thanks to Rich who pointed this out.
3500
3501 2001-09-07 Timo Schulz <[email protected]>
3502
3503 * wptFileManagerDlg.cpp (file_manager_dlg_proc): Fix memory leaks.
3504
3505 2001-09-05 Timo Schulz <[email protected]>
3506
3507 * wptKeyMiscDlg.cpp (clip_export): New. Handy function to export keys.
3508 (clip_import): New. Handy function to import keys.
3509 * wptKeygenDlg.cpp (keygen_dlg_proc): Added a warning when the passphrase
3510 is too short.
3511
3512 2001-09-04 Timo Schulz <[email protected]>
3513
3514 * Rewrote most parts of the keymanager.
3515 * Ditto for the filemanager.
3516
3517 2001-09-01 Timo Schulz <[email protected]>
3518
3519 * wptMainProc.cpp (wpt_main_proc): Remove the im- and export operations.
3520 These code is now part of the key manager.
3521 * wptKeyPropsDlg.cpp (key_props_dlg): Removed the get_key_xxx functions.
3522 * wptKeylist.cpp (get_key_algo): New.
3523 (get_key_created): New.
3524 (get_key_type): New.
3525 (get_key_size): New.
3526 (get_key_fpr): New.
3527 * wptClipExportDlg.cpp (clip_export_dlg_proc): Removed. This is now
3528 a part of the keymanager.
3529
3530 2001-08-31 Timo Schulz <[email protected]>
3531
3532 * wptFileManager.cpp (fm_add_opened_files): New. Use a standard
3533 file open dialog instead of drag & drop.
3534 * wptHotkeys.cpp (hotkey_strerror): More detailed information which
3535 hotkey couldn't set up.
3536 (hotkey_register_single): Ditto.
3537
3538 2001-08-30 Timo Schulz <[email protected]>
3539
3540 * wptFilemanager.cpp (fm_encrypt): Add minor changes.
3541 (fm_decrypt): Ditto.
3542 (fm_sign): Ditto.
3543 (fm_verify): Make the code more modular.
3544 (fm_add_sig_stat): New. For new fm_verify code.
3545
3546 2001-08-28 Timo Schulz <[email protected]>
3547
3548 * wptKeylist.cpp (strlist_add_recipients): Fixed the listview handling.
3549 * wptKeyserver.cpp (kserver_load_conf): Proxy support
3550 (kserver_connect): Ditto.
3551
3552 2001-08-26 Timo Schulz <[email protected]>
3553
3554 * wptFileManager.cpp (fm_entry_new): New.
3555 (fm_entry_release): New.
3556 (fm_state_new): New.
3557 (fm_state_release). New.
3558 (fm_get_current_file): New.
3559 * wptKeylist.cpp (strlist_add_recipients): New.
3560
3561 2001-08-25 Timo Schulz <[email protected]>
3562
3563 * wptStringUtil.cpp (strlist_new): New. Linked list to hold strings.
3564 (strlist_release): New. Release the linked list.
3565 (strlist_add): New.
3566
3567 2001-08-21 Timo Schulz <[email protected]>
3568
3569 * wptGPG.cpp (get_gpg_default_keyid): Modify the code and now it
3570 also supports "encrypt-to" entries as default keys.
3571 * wptWipeExt.cpp (wipe_init_ext): New. Load the DLL to provide
3572 secure wiping.
3573 (wipe_deinit_ext): New. Unload the DLL and free all pointer.
3574 (wipe_loaded_ext): New. Checks wether the DLL was loaded.
3575 * wptW32API.cpp (set_menu_state): New.
3576
3577 2001-08-20 Timo Schulz <[email protected]>
3578
3579 * wptGPG.cpp (create_gpg_options): Fixed nul byte bug. Thanks to Thomas.
3580 * wptPreferencesDlg.cpp (prefs_dlg_proc): Fixed the code to disable
3581 the hotkeys. Automatically enable or disable the hotkey field depend
3582 on the switch.
3583
3584 2001-08-17 Timo Schulz <[email protected]>
3585
3586 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Choose key if there is only
3587 one by default.
3588 * wptKeyList.cpp (keylist_add_to_recipients): Ditto.
3589 * wptGPG.cpp (gpg_check_homedir): Creates the GPGME specific gpgProgram
3590 entry in the registry in the case it's missing (whenever it's possible!).
3591 (check_gpg_path): Rewrite parts of the code.
3592
3593 2001-08-11 Timo Schulz <[email protected]>
3594
3595 * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Beautify the dialog and
3596 separate the fingerprint from the othr information.
3597 * wptGPG.cpp (check_opt_keyring): New. Do a sanity check if the
3598 file, specified in the options line, does exist.
3599
3600 2001-08-08 Timo Schulz <[email protected]>
3601
3602 * wptGPG.cpp (check_gpg_path): Sanity check for size of the options file.
3603 Support for more configurations.
3604 * wptFileSignDlg.cpp (file_sign_dlg_proc): Fixed error in signature mode.
3605 Add all strings to the translation suite.
3606 * Updated all NLS dialog strings.
3607 * wptRFC2440.cpp (get_pkttype): Fixed error to check the CTB.
3608 * wptFileManager.cpp (fm_decrypt): Support to decrypt armored file,
3609 with a dynamic callback for the passphrase.
3610
3611 2001-08-06 Timo Schulz <[email protected]>
3612
3613 * wptFilemanager.cpp (fm_sign): Set the keyid length to 16.
3614
3615 2001-08-05 Timo Schulz <[email protected]>
3616
3617 * wptKeylist.cpp (keylist_add_key): Change the schematics to support
3618 all keyids.
3619 * wptSigList.cpp (siglist_build): New. Interface code to load the
3620 signature list.
3621 * wptKeysigDlg.cpp (keysig_dlg_proc): Uses siglist_build.
3622
3623 2001-08-03 Timo Schulz <[email protected]>
3624
3625 * wptMainProc.cpp (wpt_main_proc): The GPG menu was removed, now
3626 we support this code in the key manager.
3627 * wptKeyMisc.cpp (key_misc_dlg_proc): Supports new GPG commands.
3628 * wptKeyserver.cpp (kserver_index_request), (kserver_recv_request):
3629 Removed. The code moved into the main functions.
3630 (kserver_send), (kserver_recv): Ditto.
3631 (sock_write): Improved code.
3632 (sock_read): Ditto and some additional timeout.
3633 (sock_select): New. Figure out the socket state.
3634 (kserver_search_init): New. Make connection to the server.
3635 * wptHKPSearchDlg.cpp (hkp_search_dlg_proc): Now it uses the new
3636 keyserver code.
3637 * wptFile.cpp (get_keyid_from_file): Add support for the PGP marker
3638 packet. Thanks to Alan.
3639 (check_for_symenc_data): Ditto.
3640 * wptFileManager.cpp (fm_get_file_type): Ditto.
3641 (fm_decrypt): Move the keycache in the if loop and fix the keycache
3642 type.
3643
3644 2001-08-02 Timo Schulz <[email protected]>
3645
3646 * wptGPG.cpp (check_gpg_path): Check the size of both keyrings too.
3647 Useful in the case the file was generated but it's empty.
3648 * wptKeyEditDlg.cpp (key_edit_dlg_proc): Fixed some typos.
3649
3650
3651 2001-08-01 Timo Schulz <[email protected]>
3652
3653 * wptKeyserver.cpp (kserver_urlencode): Create a HTTP compatible
3654 request for uploading a key.
3655 (kserver_send_request): Use the urlencode to send the key.
3656 (sock_read): New. Improved read function to replace recv.
3657 (sock_write): New. Improved write function to replace send.
3658 * wptFileManager.cpp (fm_get_file_type): If the data is armored,
3659 call fm_check_armor_type().
3660 (fm_check_armor_type): New. Figure out the armor type of the data.
3661 * wptKeyMisc.cpp (key_misc_dlg_proc): Use a menu instead of the
3662 buttons. Optimized the code.
3663
3664 2001-07-30 Timo Schulz <[email protected]>
3665
3666 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Added the interface code
3667 for the agent.
3668 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Ditto.
3669
3670 2001-07-29 Timo Schulz <[email protected]>
3671
3672 * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): New. Dialog for creating
3673 a key revocation certificate. Add a hint to show how sentensive this
3674 data is.
3675 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Added the code to handle the
3676 revocation.
3677 * wptAgent.cpp: Source for the server interface removed.
3678 (agent_is_avail): New. Checks if the agent is available.
3679 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Added the interface code
3680 for the agent.
3681
3682 2001-07-26 Timo Schulz <[email protected]>
3683
3684 * wptGPG.cpp (check_gpg_keyring): New. Check if a gpg keyring
3685 exists. Useful if the keyring was moved during some commands.
3686 * wptMainProc.cpp (wpt_main_proc): Use the new code. Thanks to
3687 Rich to discover this.
3688
3689 2001-07-25 Timo Schulz <[email protected]>
3690
3691 * WinPT.cpp (WinMain): Add a sanity check for the keycache to detect
3692 serious GPG errors.
3693 * wptFileManager.cpp (fm_sym_encrypt): New. Symmetric encryption.
3694 Suggested by Graham.
3695 (fm_decrypt): Change code to support symmetric decryption.
3696 (fm_get_file_type): Fixed some typos.
3697
3698 2001-07-24 Timo Schulz <[email protected]>
3699
3700 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Get new cache context after
3701 reloading the keycache. Fixed the memory leaks. Thanks to Andreas.
3702 * wptKeyEditDlg.cpp (keyedit_dlg_proc): Better GPGME callback to inform
3703 the user about errors.
3704 * wptKeyTrustPathDlg.cpp (copy_trust_item): New. Copy the GPGME structure
3705 in our own context.
3706 (treeview_insert_item): New. Handy function to insert an entry.
3707 (treeview_create_child_item): New. Insert a trustlist node.
3708 (treeview_add_trustpath): New. Add recursively the whole trust path
3709 int the tree view.
3710 * wptKeysigDlg.cpp (check_for_missing_keys): New. Checks if the
3711 signature list contains entries with a NOKEY status.
3712 (recv_missing_keys): New. Receive all keys with a NOKEY as the signature
3713 status.
3714 * wptImportList.cpp (implist_load): New. Initialize the listview item
3715 with an import overview.
3716 * wptClipImportDlg.cpp (clip_import_dlg_proc): Use implist_load instead
3717 of the code.
3718 (print_import_status): Summarize the results. We need this because file
3719 import needs the same function.
3720 * wptFileImportDlg.cpp (file_import_dlg_proc): New. Interface for the
3721 file manager.
3722 * wptFileManagerDlg.cpp (file_manager_dlg_proc): New code for the key
3723 import from file.
3724 * wptFileManager.cpp (fm_import): New. Ditto.
3725 * wptKeyserver.cpp (kserver_connect): Take care for some return values
3726 and set the socket to non blocking mode.
3727 Moved the Winsock2 init code to wptMainProc.cpp
3728 * wptMainProc.cpp (wpt_main_proc): Wsock2 code.
3729 * wptHKPSearchDlg.cpp (hkpsearch_dlg_prog): Remove Wsock2 init code.
3730
3731 2001-07-22 Timo Schulz <[email protected]>
3732
3733 * wptKeyPrefsDlg.cpp (keyprefs_dlg_proc): New.
3734 (get_key_created): New. Transform ulong timestamp to ascii.
3735 (get_key_algo): New. Returns a formatted algorithm (depend on subkeys).
3736 (get_key_size): New. Returns a formatted size depend (depend on subkeys).
3737 * wptSigList.cpp (siglist_add_key): Fix the timestamp.
3738 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Removed "list sigs" and replace
3739 this with list trust path.
3740 * wptKeySigDlg.cpp (keysig_dlg_proc): Remove the set_check_mode function
3741 because we always check the signatures.
3742 * wptKeyTrustPathDlg.cpp (keytrust_dlg_proc): New.
3743
3744 2001-07-21 Timo Schulz <[email protected]>
3745
3746 * wptFileEncryptDlg.cpp (file_encrypt_dlg_proc): Set cancel mode in
3747 the case of IDCANCEL.
3748 * wptFileSignDlg.cpp (file_sign_dlg_proc): Ditto.
3749 * wptKeyEditDlg.cpp (keyedit_dlg_proc): Check if the key is a key pair
3750 pair and only if activate the passphrase dlg items.
3751 Do sanity checks for all buttons that require key pairs.
3752 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Support the new code.
3753
3754 2001-07-20 Timo Schulz <[email protected]>
3755
3756 * wptKeyserver.cpp: (kserver_send_request): Correct the octect length
3757 of the request.
3758 (check_hkp_response): If an error ocurred, copy the error message into
3759 the static buffer.
3760 (kserver_strerror): Interface for the static error buffer.
3761 * wptKeyserverDlg.cpp (hkp_err_box): Generates a HKP specific message
3762 box.
3763 (hkp_send_key): Add more verbose messages at the end.
3764 (hkp_recv_key): Ditto.
3765 (check_pattern): Rewrote the entire code to be more bug proof.
3766 * wptKeylist.cpp (keylist_add_to_recipients): Add a flag to indicate
3767 that the recipient list contains untrusted entries.
3768 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Use the new flag to
3769 force GPG to add the need options.
3770 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Ditto.
3771
3772 2001-07-19 Timo Schulz <[email protected]>
3773
3774 * wptClipDecryptDlg.cpp (clip_decrypt_dlg_proc): Support for more
3775 detailed error messages in the case for a missing key or an included
3776 signature.
3777
3778 2001-07-17 Timo Schulz <[email protected]>
3779
3780 * wptKeylist.cpp (keylist_build_small): Support for a minimal keybox
3781 and increment the 'cols' variable inside the structure for further use.
3782 (add_key): Watch for the 'cols' variable to figure out how much columns
3783 are used.
3784 * wptListView.cpp (listview_set_ext_style): Set an extended style for
3785 the given listview.
3786 * wptKeyserverDlg.cpp (keyserver_dlg_proc): Use WM_NOTIFY to save the
3787 selected server.
3788 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Ditto.
3789 * wptKeyserver.cpp (kserver_connect): IP address support. This is faster
3790 and no DNS lookup is needed.
3791
3792 2001-07-14 Timo Schulz <[email protected]>
3793
3794 * wptKeylist.cpp (keylist_add_key): Check for secret keys before adding
3795 it to the signing keylist.
3796 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Add newline if the passphrase
3797 is empty.
3798 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Ditto.
3799
3800
3801 2001-07-13 Timo Schulz <[email protected]>
3802
3803 * wptKeyserver.cpp (kserver_send_request): Add the "keytext" string to
3804 the request. Arggg!
3805 (check_hkp_response): Add flag to differ between 'send' and 'recv' mode.
3806
3807
3808 2001-07-12 Timo Schulz <[email protected]>
3809
3810 * wptClipDecryptDlg.cpp (clip_decrypt_dlg): If the dialog was canceled,
3811 just quit without any messages. Suggested by Rich.
3812
3813
3814 2001-07-11 Timo Schulz <[email protected]>
3815
3816 * wptKeyserver.cpp (wsock_strerror): If it's an unknown error, add
3817 the integer.
3818 (keyserver_create_conf): Create a config file instead of the error.
3819 * wptGPG.cpp (create_gpg_options): If the file doesn't exist create
3820 a default file. This prevents confusing error messages.
3821 (get_gpg_options): Use new code.
3822 * wptErrors.cpp (winpt_debug_msg): Improved debug message that tells
3823 the user how to find the files.
3824
3825 2001-07-05 Timo Schulz <[email protected]>
3826
3827 * wptHotkey.cpp (mod_hotkeys): Fix a small typo.
3828
3829 2001-07-04 Timo Schulz <[email protected]>
3830
3831 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Auto retrieve key
3832 if the user agree.
3833 * wptKeylist.cpp (keyload_load): Use the mode from the param, not
3834 the hardcoded.
3835 * wptGPGOptDlg.cpp (gpgopt_dlg_proc): Load options file on startup.
3836 Rename 'load' to 'reload' to make sense with the new code.
3837 * wptHotkeys.cpp (mod_hotkeys): Rewrite the entire code for the
3838 registry stuff.
3839 * wptRegistry.cpp (set_reg_winpt_prefs): Ditto.
3840 (get_reg_winpt_prefs): Ditto.
3841 (regist_inst_winpt): Remove the old code.
3842 (register_single_filetype): Replacement for the old code.
3843
3844 2001-07-01 Timo Schulz <[email protected]>
3845
3846 * wptFileManager.cpp (fm_verify): New.
3847 (fm_decrypt): New.
3848 * wptFileEncryptDlg.cpp (file_encrypt_dlg_proc): New.
3849
3850
3851 2001-06-30 Timo Schulz <[email protected]>
3852
3853 * wptFilemanagerDlg.cpp (file_manager_dlg_proc): Uses the new passphrase
3854 code.
3855 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Ditto.
3856 * wptClipSignEncDlg.cpp (clip_sign_dlg_proc): Ditto.
3857 * wptFileManager.cpp: New. (fm_build): New. Initialize the filemanager.
3858 (fm_delete): New.
3859 (fm_encrypt): New.
3860 (fm_get_current_pos): New.
3861 (fm_get_file_type): New.
3862 (fm_add_dropped_files): New.
3863
3864 2001-06-29 Timo Schulz <[email protected]>
3865
3866 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Fix a small bug that prevent
3867 to send data to the clipboard.
3868 * wptMainProc.cpp (wpt_main_proc): Change the SetForegroundWindow to
3869 destroy the window immediately.
3870 * wptKeyserver.cpp (kserver_getip): Removed.
3871 (kserver_get_langname): Removed.
3872 (kserver_load_conf): New. Load the keyserver.conf file and set the
3873 included keyserver addresses into the global context.
3874 * WinPT.cpp (WinMain): Add the kserver_load_conf to intialize the
3875 keyserver context.
3876 * wptImplist.cpp (get_key_date): New. Transform integer timestamp
3877 to ISO date.
3878 (implist_add_key): Now it uses the context instead of all single
3879 variables.
3880
3881 2001-06-28 Timo Schulz <[email protected]>
3882
3883 * wptRFC2440.cpp (get_pkttype): Renamed from get_pkt_type and all new
3884 flag variables to support RFC1991.
3885 (get_rfc2440_pktlen): Renamed from get_pkt_len to support RFC1991.
3886 (get_rfc1991_pktlen): Ditto.
3887
3888 2001-06-27 Timo Schulz <[email protected]>
3889
3890 * wptRFC2440.cpp (get_pkt_type): New. Extract the OpenPGP packet type.
3891 (get_pkt_len): New. Extract the OpenPGP packet length.
3892 (parse_pke_sesskey): Read a public key encrypted session key
3893 but without data.
3894 * wptFilemanagerDlg.cpp (quote_filename): Do some quotings if the
3895 filename contains spaces. Just to make GPG happy.
3896 (file_manager_dlg_proc): Check if the file exist after encryption.
3897 * wptFile.cpp (get_keyid_from_file): Checks the file for an valid
3898 packet and then extract the keyid.
3899
3900 2001-06-25 Timo Schulz <[email protected]>
3901
3902 * wptKeylist.cpp (keylist_load): New. Initialize a keylist item with
3903 the contents from the given cache context.
3904 (keylist_add_to_recipients): New. Add the selected keys to the
3905 recipient set.
3906 * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Use the new keylist
3907 function to load the listview.
3908 * wptClipExportDlg.cpp (clip_export_dlg_proc): Ditto.
3909 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Ditto.
3910 * wptClipDecryptDlg.cpp (parse_gpg_describtion): Beautify the userid
3911 and the keyid hint.
3912
3913 2001-06-24 Timo Schulz <[email protected]>
3914
3915 * wptGPG.cpp (get_gpg_path): Add null termination to the string.
3916 Thanks to Jonathan who pointed this out.
3917 (get_gpg_prog): Ditto.
3918 (gpg_check_file_ext): Check the file extension for the given GPG
3919 type.
3920 (get_gpg_default_keyid): Return null if there isn't an entry in the
3921 options file.
3922 * wptKeylist.cpp (add_key): Fixed the wrong return codes of listview_xxx
3923 style functions.
3924 * wptImpList.cpp (implist_add_key): Ditto.
3925 * wptSigList.cpp (siglist_add_key): Ditto.
3926 * wptVerifyList.cpp (verlist_add_key): Ditto.
3927
3928 2001-06-23 Timo Schulz <[email protected]>
3929
3930 * wptGPG.cpp (get_gpg_default_keyid): Determine the keyid with the
3931 options file.
3932
3933 2001-06-22 Timo Schulz <[email protected]>
3934
3935 * wptHKPSearchDlg.cpp (hkpsearch_dlg_proc): New. Dialog to perform
3936 keyserver seraching. As an additional feature it's also posible to
3937 import the keys directly.
3938
3939 2001-06-18 Timo Schulz <[email protected]>
3940
3941 * wptKeyserver.cpp (check_hkp_response): More detailed error check
3942 of the http response.
3943 (kserver_send_request): Debug mode now uses logfile.
3944 (kserver_recv_request): Ditto.
3945 (kserver_index_request): New. Create a request for a key index.
3946 (kserver_send): Now uses check_hkp_response.
3947 (kserver_recv): Ditto.
3948 (kserver_search): New. Start the key index loop.
3949 * wptKeyserverDlg.cpp (recv_key): Check if the key was really
3950 imported and received.
3951
3952 2001-06-17 Timo Schulz <[email protected]>
3953
3954 * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Force to use the
3955 default key for signing.
3956
3957 2001-06-16 Timo Schulz <[email protected]>
3958
3959 * wptKeyEditDlg.cpp (keyedit_dlg_proc): Added missing return.
3960 Corrected return values.
3961 * wptErrors.cpp (winpt_strerror): Removed all unused error strings.
3962 * wptGPG.cpp (get_gpg_path): Change to default path and prevent
3963 buffer overflows.
3964 (get_gpg_prog): Ditto.
3965
3966
3967 2001-06-15 Timo Schulz <[email protected]>
3968
3969 * wptKeylist.cpp (keylist_add_key): Change encrypt param to mode.
3970 Differ between the new keylist styles.
3971 * wptGPGME.cpp (keycache_xxx): Move the caching interface to this
3972 file. For an easier handling between dialogs and code.
3973 (keycache_rewind): New. Rewind a global keycache context.
3974 (keycache_next_key): New. Retrieve the next key from the keycache.
3975 (get_default_key): New. Return the default key, this is the secret
3976 key with the index 0.
3977 * wptClipSignDlg.cpp (clip_sign_dlg_proc): Modify the default key
3978 handling. Now the signer is set in any case. Prevent hanging GPG
3979 processes.
3980 * wptSecmem.cpp (vm_safe_init): New. Initialize the safe memory.
3981 (vm_safe_init_noswap): New. Initialize safe memory with tail data.
3982 See source for more information.
3983 (vm_safe_free): New. Free all used pointer and burn all buffers.
3984 (vm_safe_get): New. Get the begin of the alloced buffer.
3985 (vm_safe_set_swapfile): New. Set global swapfile name.
3986 (vm_safe_create_swapfile): New. Creats a swapfile and set its
3987 contents to zero.
3988
3989 2001-06-12 Timo Schulz <[email protected]>
3990
3991 * wptPreferencesDlg.cpp (check_hotkey): Check if the hotkey key is
3992 a big letter, otherwise convert.
3993 (preferences_dlg_proc): Check hotkeys.
3994 * wptKeylist.cpp (add_keys): Static functions to add a single key.
3995 (keylist_add_key): Now it adds all subkeys to the dialog.
3996 (keylist_alloc): Remove because it's not needed any longer.
3997 * wptImportList.cpp (implist_alloc): Ditto.
3998 * wptSigList.cpp (siglist_alloc): Ditto.
3999 * wptVerifyList.cpp (verlist_alloc): Ditto.
4000
4001 2001-06-10 Timo Schulz <[email protected]>
4002
4003 * wptHotkey.cpp (enable_hotkey): New. Set enable flag for a single
4004 hotkey.
4005 (mod_hotkeys): Take care of the enable flags.
4006 (register_hotkeys): Ditto.
4007 (unregister_hotkeys): Ditto.
4008 * WinPT.cpp (WinMain): If the registry entry of WinPT doesn't exist,
4009 don't try to modify hotkeys.
4010 * WptMainProc.cpp (wpt_main_proc): All message boxes are forced to
4011 the foreground.
4012
4013 2001-06-08 Timo Schulz <[email protected]>
4014
4015 * wptHotkey.cpp (mod_hotkeys): Change code to support the new
4016 registry style.
4017 * wptRegistry.cpp (get_reg_winpt_prefs): Support to disable
4018 single hotkeys. Suggested by Jonathan.
4019 * wptPreferencesDlg.cpp (preferences_dlg_proc): Support to disable
4020 single hotkeys.
4021 * wptKeyserver.cpp (kserver_connect): Reset winsock error var.
4022 (keyserver_recv): Ditto.
4023 (keyserver_send): Ditto.
4024 (wsock_strerror): Returns a description of the winsock problem.
4025 * wptClipboard.cpp (clip_get_pgp_type): Check if the returned buffer
4026 is valid.
4027
4028 2001-06-07 Timo Schulz <[email protected]>
4029
4030 * wptOwnertrustDlg.cpp (ownertrust_dlg_proc): Set to foreground,
4031 add windows title.
4032
4033 2001-06-05 Timo Schulz <[email protected]>
4034
4035 * wptAboutGPGDlg.cpp (about_gpg_dlg_proc): Check if the returned
4036 buffer is valid. Remove the fixme, because it's possible that there
4037 were new cipher modules loaded.
4038 * wptClipDecryptDlg.cpp (passphrase_callback_proc): Check if the
4039 context is valid.
4040 * wptClipEditDlg.cpp (clip_edit_dlg_proc): Check if the context is valid.
4041 * wptW32API.cpp (status_box): New. Message box that is always forced
4042 to the foreground.
4043
4044 2001-06-04 Timo Schulz <[email protected]>
4045
4046 * wptClipImportDlg.cpp (clip_import_dlg_proc): Added the code for
4047 the improved import status.
4048
4049
4050 2001-06-01 Timo Schulz <[email protected]>
4051
4052 * wptKeyEditDlg.cpp (keyedit_dlg_proc): IDC_KEYEDIT_OWNERTRUST:
4053 Release context in the case of an error.
4054 * wptMainProc.cpp (wpt_main_proc): Fix typo.
4055 * wptGPG.cpp: (init_gpg_table): Remove the case code. Now we use
4056 a static gpg object array that contains all filenames.
4057
4058
4059 2001-05-27 Timo Schulz <[email protected]>
4060
4061 * wptRegistry.cpp (set_reg_winpt_prefs): Add word wrapping.
4062 (get_reg_winpt_prefs): Ditto.
4063 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Set focus after the
4064 gpg process finished.
4065 * wptSigList.cpp (siglist_add_key): Parse the numeric timestamp to
4066 a humand readable date.
4067
4068
4069 2001-05-25 Timo Schulz <[email protected]>
4070
4071 * wptKeyUidDlg.cpp (keyuid_dlg_proc): Add button to delete a choosen
4072 user id. End the dialog if there was an error during the Gpgme operations.
4073 * wptClipboard.cpp (clip_istext_avail): First check if the pointer is
4074 valid and then look at the length. Avoid crashes for some texts.
4075
4076 2001-05-21 Timo Schulz <[email protected]>
4077
4078 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Add new button for userid
4079 management.
4080 * wptKeyUidDlg.cpp (keyuid_dlg_proc): Finished code to show all userids
4081 from a special key.
4082
4083 2001-05-20 Timo Schulz <[email protected]>
4084
4085 * wptGPG.cpp (check_gpg_optfile): Count each of the keyring entries
4086 to figure out if both parts are available.
4087
4088 2001-05-19 Timo Schulz <[email protected]>
4089
4090 * wptPreferencesDlg.cpp (preferences_dlg_proc): If the disable hotkey
4091 flag is set, also disable all input items.
4092 (disable_dlg_item): New. Disable dialog items (windows).
4093 * wptMainProc.cpp (wpt_main_proc): Only set hotkeys if the no_hotkeys
4094 flag isn't set.
4095 * wptKeyserverDlg.cpp (send_key): Forget to set the armor flag, as
4096 a result the code only sended parts of the key.
4097 * wptConfig.cpp: Removed. Not used any longer.
4098
4099 2001-05-18 Timo Schulz <[email protected]>
4100
4101 * wptKeyEditDlg.cpp (keyedit_dlg_proc): Check the state of the various
4102 edit key commands. In the case the dialog was canceled, return without
4103 modifying anything.
4104 * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Check the state of the
4105 signature. If it doesn't contain a valid key, do nothing.
4106 * wptMainProc: (wpt_main_proc): If the hotkey setup doesn't work, don't
4107 quit the program. In some cases the hotkeys are possible locked.
4108 * WinPT.cpp (WinMain): If there is an error with the gpg program/path,
4109 give the user the chance to start the GPG preference dialog.
4110 * wptPreferencesDlg.cpp (preferences_dlg_proc): Added the CWS hotkey
4111 support. Flag to disable all hotkeys. Reload new hotkeys (in the case
4112 they changed). Load the registry entry on startup.
4113 * wptHotkey.cpp (mod_hotkeys): Overwrite the default hotkeys with the
4114 stored registry entries.
4115
4116 2001-05-13 Timo Schulz <[email protected]>
4117
4118 * wptRegistry.cpp (set_reg_key): Open a subkey, if it doesn't exist
4119 the function create it.
4120 (set_reg_winpt_prefs): Use the new function to set the subkey values.
4121 All functions now return WPTERR_REGISTRY instead of 1.
4122 Add some error handling to prevent errors in the registry.
4123 * wptPreferencesDlg.cpp (preferences_dlg): Add the code for the Clipboard
4124 hotkeys and the caching time.
4125
4126
4127 2001-05-12 Timo Schulz <[email protected]>
4128
4129 * wptMainProc.cpp (wpt_main_proc): Start the agent before the decryption
4130 call.
4131
4132 2001-05-11 Timo Schulz <[email protected]>
4133
4134 * wptMainProc (wpt_main_proc): Change all related menu entries from
4135 Encrypt & sign to Sign & Encrypt. Added the command to the current
4136 window menu and the handling of the window messages.
4137 * wptSignEncDlg.cpp (clip_signenc_dlg_proc): Changed the window text.
4138 * wptRegistry.cpp (set_reg_winpt_prefs): New. Stores all WinPT
4139 preferences in the registry.
4140 (get_reg_winpt_prefs): Read all preferences from the registry into
4141 the options context.
4142 * WinPT.cpp (WinMain): Read in the registry preferences at the begin
4143 and store it.
4144 * wptAgent.cpp (agent_init): Check if the environment variable
4145 GPG_AGENT_INFO is set, otherwise set it.
4146 (agent_is_running): Check wether the agent is running.
4147 (agent_start): Automated function that read all needed information
4148 from global variables.
4149
4150 2001-05-10 Timo Schulz <[email protected]>
4151
4152 * wptFindWnd.cpp (find_window_hwnd): New. Function to retrieve
4153 the handle of the specified window.
4154 * wptAgent.cpp (agent_timer_proc): Changed the agent interface
4155 to window messages instead of socket connections.
4156 * wptMainProc.cpp (wpt_main_proc): Added the new preference dialog
4157 and menu entry.
4158 * wptPreferencesDlg.cpp: New.
4159
4160 2001-05-09 Timo Schulz <[email protected]>
4161
4162 * wptAgent.cpp (gpga_writen): Write 'n' bytes into a socket.
4163 (gpga_readn): Read 'n' bytes from a socket.
4164 (gpga_open): Open the interface to the GPG-Agent.
4165 (gpga_close): Close the GPG-Agent socket.
4166 (gpga_clear_passphrase): Clear a passphrase from the GPG-Agent.
4167 (agent_add_fpr): Add a fingerprint to the cache. If WinPT quits,
4168 this keys will be remove from the GPG-Agent cache.
4169 (agent_delete_fpr): Remove a fingerprint from the cache.
4170 (agent_init): Clear the cache.
4171 (agent_timer_proc): Remove all stored passphrases which were
4172 requested through the chache.
4173
4174 2001-05-08 Timo Schulz <[email protected]>
4175
4176 * wptKeyserver.cpp (wsock_init): Replace the kserver init
4177 code which initialized the Wsock2 interface.
4178 (wsock_end): Ditto.
4179 * wptAgent.cpp: Remove the passphrase caching code and add
4180 the GPG agent code.
4181
4182 2001-05-05 Timo Schulz <[email protected]>
4183
4184 * wptCurrWnd.cpp (get_curr_wnd): Alternative code to retrieve
4185 the current window handle. This code doesn't use the hook DLL.
4186 Thanks to Oliver Nittka for his patch.
4187 * wptErrors.cpp (winpt_strerror): Fixed a small typo.
4188 * wptGPG.cpp (check_last_gpg_access): Remove debug code.
4189 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Change the keycache reloading
4190 scheme to prevent reloading the cache twice.
4191
4192 2001-05-04 Timo Schulz <[email protected]>
4193
4194 * wptKeyTrustDlg.cpp: Renamed to wptKeyEditOwnertrustDlg.cpp.
4195 * wptKeyEditOwnertrustDlg.cpp (keyedit_ownertrust_dlg):
4196 Move all the GPGME specific code to the main dialog. Now only
4197 the context values are set.
4198 * wptKeyEditDlg.cpp (keyedit_dlg_proc): Include the changed ownertrust
4199 code.
4200
4201 2001-05-02 Timo Schulz <[email protected]>
4202
4203 * wptKeyEditAddSubkeyDlg.cpp: New. Dialog to create additional
4204 subkeys for the mainkeys.
4205 * wptKeyEditAddUidDlg.cpp: (keyedit_adduid_dlg_proc): Set foreground
4206 window flag.
4207 * wptKeyEditDlg.cpp: (keyedit_dlg_proc): Added the code for the
4208 addkey feature.
4209
4210 2001-05-01 Timo Schulz <[email protected]>
4211
4212 * wptCurrWnd.cpp (wnd_msg_markall): New. Send the CTRL+a key sequence
4213 to a window.
4214 (wnd_msg_copy): New. Send the CTRL+c key sequence to a window.
4215 (wnd_msg_paste): New. Send the CTRL+v key sequence to a window.
4216 (wnd_msg_em_set_pos): Manipulate an edit multiline control text pos.
4217 * wptMainProc.cpp (wpt_main_proc): Fix some message string for
4218 the hotkey handling. Quit the program if a registration procedure
4219 failed.
4220 * wptErrors.cpp (log_box): Improved log handling to dump states
4221 of variables during regression tests.
4222
4223 2001-04-30 Timo Schulz <[email protected]>
4224
4225 * wptClipEditDlg.cpp: Now the dialog uses the Courier font to
4226 enhance the format of keys and other GPG data.
4227 * wptKeyserverDlg.cpp (keyserver_dlg_proc): Set the cache realod
4228 flag after receiving a key.
4229 * wptKeyTrustDlg.cpp (keytrust_dlg_proc): Add error message when
4230 no listbox entry was choosen.
4231 * wptKeySignDlg.cpp (keysign_dlg_proc): Add Check button text to
4232 the NLS suite.
4233 * wptKeygenDlg.cpp (keygen_dlg_proc): Set the cache reload flag
4234 instead of refresh the keycache.
4235
4236 2001-04-29 Timo Schulz <[email protected]>
4237
4238 * wptKeyEditDlg.cpp (clear_dlg_fields): Clear all passphrase items.
4239 (keyedit_dlg_proc): Free gpgme context. Add the passphrase for the
4240 adduid command.
4241 * wptKeyEditAddUidDlg.cpp (keyedit_adduid_dlg_proc): Initialize
4242 the dialog with a KEY structure that holds the keyid and the userid.
4243 * wptWndHook.cpp: Remove the global context and use instead of it
4244 static variables. Put all static variables into the SHARED data
4245 segment in the DLL.
4246
4247 2001-04-28 Timo Schulz <[email protected]>
4248
4249 * wptGPGME.cpp: New. Move some additional GPGME code into WinPT.
4250 So it's easier to update GPGME and we can use NLS to translate
4251 error strings.
4252 * wptVerifyList.cpp (get_sig_date): New. Removed from the GPGME code
4253 because we only use it here.
4254 * wptKeyEditDlg.cpp (keyedit_dlg_proc): Add the 'change passphrase'
4255 feature to the edit-key interface.
4256
4257 2001-04-27 Timo Schulz <[email protected]>
4258
4259 * wptCurrWnd.cpp (get_window_contents): Change the code for the last
4260 window concept. Thanks to Oliver.
4261 (set_window_contents): Add some stuff to set the position if the
4262 current window is an edit control.
4263 * wptKeyEditDlg.cpp (keyedit_dlg_proc): Add code for the 'adduid'
4264 stuff.
4265 * wptKeyEditAddUidDlg.cpp: New. (keyedit_adduid_dlg_proc): Code to
4266 create a new user id for a GPG key.
4267
4268 2001-04-26 Timo Schulz <[email protected]>
4269
4270 * wptKeyEditDlg.cpp (keyedit_dlg_proc): New. Dialog for the various
4271 edit-key commands.
4272 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Add the button for the edit
4273 key code.
4274
4275 2001-04-25 Timo Schulz <[email protected]>
4276
4277 * wptKeySignDlg.cpp (keysign_dlg_proc): Now we use a new GPGME
4278 callback system to pass the keyedit information to GPG.
4279 * wptKeyTrustDlg.cpp (keytrust_dlg_proc): Ditto.
4280
4281 2001-04-24 Timo Schulz <[email protected]>
4282
4283 * wptEncryptDlg.cpp (encrypt_dlg_proc): Release the static listview
4284 item and set it to zero.
4285 * wptSignDlg.cpp (sign_dlg_proc): Ditto.
4286 * wptSignEncDlg.cpp (sign_encrypt_dlg_proc): Ditto.
4287 * wptVerifyDlg.cpp (verify_dlg_proc): Ditto.
4288 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Ditto.
4289 (keymisc_dlg_proc): Provide the functionality to delete key pairs
4290 secret+public.
4291 * wptWndHook.cpp (is_winpt_wnd): Remove this function and put
4292 all code into (check_wnd).
4293 (check_wnd): Check if the window doesn't is a application related
4294 window.
4295
4296 2001-04-23 Timo Schulz <[email protected]>
4297
4298 * wptFindWnd.cpp (find_child_wnd_proc): Removed. This functionality
4299 is not needed because all dialog windows are top level windows.
4300
4301 2001-04-22 Timo Schulz <[email protected]>
4302
4303 * wptGPG.cpp (check_last_gpg_access): Reset switch before testing
4304 the condition.
4305 * wptFindWnd.cpp (find_child_wnd_proc): New. Callback to enumerate
4306 all children windows.
4307 (find_parent_wnd_proc): New. Callback to enumerate all parent windows.
4308 (find_window): New. Return if the specified windows as found.
4309 * wptW32API.cpp: (dialog_box_param): New. Alias with the additional
4310 feature to check if the dialog already exist (and then preventing
4311 the creation).
4312 * wptMainProc.cpp (wpt_main_proc): Replace all DialogBoxParam with
4313 then new dialog_box_param function. Thanks to Martin who told me
4314 about this dialog problem.
4315 * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Ditto.
4316 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Ditto. Add translation for the
4317 new signature buttons.
4318
4319 2001-04-21 Timo Schulz <[email protected]>
4320
4321 * wptWndHook.cpp (install_cbt_hook): Remove the thread because the
4322 system already is into a DLL.
4323 * wptKeyMiscDlg.cpp (keymisc_dlg_proc): Remove checkbutton and use
4324 instead of it a button to check the key signatures.
4325 * wptGPG.cpp (get_last_gpg_access): New. Retrieve the file timestamp
4326 from the given gpg object.
4327 (check_last_gpg_access): New. Compare the last file timestamp with the
4328 new timestamp.
4329 (init_gpg_table): New. Initialize the table with gpg objects who shall
4330 be watched.
4331 (keyring_check_last_access): Use the new code.
4332 * wptCurrWnd.cpp (set_window_contents): Restore the window if it is
4333 now iconic.
4334 * wptMainProc.cpp (wpt_main_proc): Add decrypt/verify for the
4335 current window stuff.
4336
4337 2001-04-17 Timo Schulz <[email protected]>
4338
4339 * wptWndHook.cpp (is_taskbar_wnd): New. Alias to check if the window
4340 belongs to the taskbar area.
4341 (is_winpt_wnd): New. Alias to check if the window belongs to WinPT.
4342 (cbt_proc): Change code to include both functions.
4343 * wptCurrWnd.cpp (get_window_contents): Add switch if we use the
4344 foreground or the CBT window.
4345 * wptMainProc.cpp (wpt_main_proc): All hotkey operations for the
4346 current window mode set the no_cbt variable.
4347 * wptGPG.cpp (keyring_check_last_access): New. Check if the keyring
4348 was modified by an external program.
4349 * wptKeyMiscDlg.cpp: (keymisc_dlg_proc): Now check for external
4350 keyring changes.
4351
4352 2001-04-16 Timo Schulz <[email protected]>
4353
4354 * wptWndHook,cpp (cbt_proc): Compare process ids to differ between
4355 WinPT and normal windows.
4356 (install_cbt_hook): Add pid to the context.
4357
4358 2001-04-14 Timo Schulz <[email protected]>
4359
4360 * wptCurrWnd.cpp: (get_window_contents): Add an event to switch
4361 the windows. This is needed by the current code.
4362 (set_window_contents): Ditto.
4363 * wptWndSwitchDlg.cpp: (wndswitch_dlg_proc): Create a hidden dialog
4364 and force it to the foreground. This is the event needed by the code
4365 above.
4366 (create_wndswitch_event): Execute the dialog.
4367 * wptMainProc.cpp: (wpt_main_proc): Add new links in the hotkey
4368 section. Add message entries for the code.
4369 * wptW32API.cpp: (copy_window_to_clip): Moved to the into the OE
4370 mailer code.
4371 (insert_window_from_clip): Ditto.
4372 * wptMailPlugin.cpp: (oe_set_message): Insert the new code and add
4373 the event to switch the windows.
4374 (oe_get_message): Ditto.
4375
4376 2001-04-13 Timo Schulz <[email protected]>
4377
4378 * wptMailPlugin.cpp: (oe_set_message): Change the id's for
4379 the attach_thread_input.
4380 (oe_get_message): Ditto.
4381 * wptCurrWnd.cpp: (get_window_contents): Ditto.
4382 (set_window_contents): Ditto.
4383
4384 2001-04-12 Timo Schulz <[email protected]>
4385
4386 * wptHotkeys.cpp: (register_single_hotkey): Add code for the current
4387 window stuff.
4388 * wptMainProc.cpp: (wpt_main_proc): WM_HOTKEY. Add the current window
4389 hotkeys.
4390 * wptW32API.cpp: (attach_thread_input): Split up the functions into
4391 two parts. The attach flags is always set.
4392 (detach_thread_input): See above. The attach flags is never set.
4393 * wptCurrWnd.cpp: New. Code for the current window stuff.
4394 (get_window_contents): Extract the text from the given window to
4395 the clipboard.
4396 (set_window_contents): Insert clipboard into the given window.
4397
4398 2001-04-09 Timo Schulz <[email protected]>
4399
4400 * wptGPG.cpp: (check_line): Ignore empty lines.
4401 (check_gpg_options): Ditto.
4402
4403 2001-04-09 Timo Schulz <[email protected]>
4404
4405 * wptClipboard.cpp: (clip_get_pgp_type): New. Return the PGP packet
4406 type. Kludge for decrypt/verify.
4407 * wptMainProc.cpp: (wpt_main_proc): Remove verify and put the
4408 code into the decrypt routine.
4409 * wptClipImportDlg.cpp: (clip_import_dlg_proc): New button to start
4410 the key management after import.
4411
4412 2001-04-07 Timo Schulz <[email protected]>
4413
4414 * wptAgent.cpp: (agent_new): Rename to agent_init and modify source.
4415 (agent_destroy): Ditto.
4416 (agent_passphrase_cache): Ditto.
4417 (agent_passphrase_remove): Ditto.
4418 (agent_passphrase_get): Ditto.
4419
4420 2001-04-06 Timo Schulz <[email protected]>
4421
4422 * wptGPG.cpp: (check_gpg_path): Fix a small error.
4423 * WinPT.cpp: (WinMain): Add a dialog for the possibity that it's the
4424 first time a user started WinPT.
4425 * wptClipboard.cpp: (clip_isalready_secured): Check the begin and
4426 end PGP header.
4427
4428 2001-04-06 Timo Schulz <[email protected]>
4429
4430 * wptOwnertrustDlg.cpp: New. (ownertrust_dlg_proc): New.
4431 * wptKeyTrustDlg.cpp: (key_trust_dlg_proc): Add new button for the
4432 ownertrust dialog.
4433
4434 2001-04-04 Timo Schulz <[email protected]>
4435
4436 * wptClipDecryptDlg.cpp (passphrase_callback_proc): Remove the static
4437 passphrase. Now a callback context is used.
4438 (passphrase_cb): Ditto.
4439 (clip_decrypt_dlg): Ditto.
4440 * wptWndHook.cpp (cbt_thread): New. Thread to enable CBT hook.
4441 (install_cbt_hook): Modify for the new thread model.
4442 (remove_cbt_hook): Ditto.
4443 * wptW32API.cpp: (init_crtical_section): New. Make the code MT safe.
4444 (delete_critical_section): Ditto.
4445 (lock): Ditto.
4446 (unlock): Ditto.
4447
4448 2001-04-02 Timo Schulz <[email protected]>
4449
4450 * WinPT.cpp: (set_gpgme_debug_env): New: Set the environment variable.
4451 * wptClipSignDlg.cpp: (clip_sign_dlg_proc): Now the keylist widget only
4452 contains valid keys.
4453 * wptClipEncryptDlg.cpp: (clip_encrypt_dlg_proc): Ditto.
4454
4455 2001-03-31 Timo Schulz <[email protected]>
4456
4457 * wptClipSignDlg.cpp: (clip_sign_dlg_proc): If no key was choosen,
4458 the GPG default key will be used.
4459
4460 2001-03-30 Timo Schulz <[email protected]>
4461
4462 * wptW32API.cpp: (new_strdup): Remove.
4463 * wptW32API.h: Ditto.
4464 * wptWndHook.cpp: (get_cbt_curr_wnd): Return the current window.
4465 * wptKeygenDlg.cpp: (clear_dlg_fields): New: Clear all text fields.
4466
4467 2001-03-28 Timo Schulz <[email protected]>
4468
4469 * wptClipEncryptDlg.cpp: (clip_encrypt_dlg_proc):
4470 Added the keyid to the "no trust" message.
4471 * wptKeyserverDlg.cpp: (check_pattern): New:
4472 Do some sanity checks of the search pattern.
4473 * wptMainProc.cpp: (wpt_main_proc): Add agent support.
4474 * wptHotkey.cpp: Add agent support.
4475
4476 2001-03-21 Timo Schulz <[email protected]>
4477
4478 * WinPT.cpp: (WinMain): Re-activate the enable debug switch.
4479 * wptKeylist.cpp: (keylist_add_key): Ignore invalid keys.
4480
4481 2001-03-20 Timo Schulz <[email protected]>
4482
4483 * wptClipDecryptDlg.cpp: Rewrote
4484
4485 2001-03-19 Timo Schulz <[email protected]>
4486
4487 * wptVerifyList.cpp: New control for the verify dialog.
4488 * wptClipVerifyDlg.cpp: Rewrote
4489
4490 2001-03-18 Timo Schulz <[email protected]>
4491
4492 * wptClipVerifyDlg.cpp: New: stub for further verify dialogs.
4493 * wptAgent.cpp: New: Experimental passphrase caching.
4494
4495 2001-03-16 Timo Schulz <[email protected]>
4496
4497 * wptDlgs.h: Add new dialog callback function.
4498 * wptKeysigDlg.cpp: New. Key signature listing dialog.
4499
4500 2001-03-15 Timo Schulz <[email protected]>
4501
4502 * wptClipEncryptDlg.cpp: Fix translation.
4503 * wptKeygenDlg.cpp: Fix the names of the button (avoid confused users).
4504 * wptKeymiscDlg.cpp: Fix the key deleting stuff.
4505
4506 2001-02-27 Timo Schulz <[email protected]>
4507
4508 * wptKeylistWidget.cpp: New. Implementation of a W32 keylist control.
4509 * wptClipKeytrustDlg.cpp: Index was counted from 0 (should be from 1):
4510 Fixed.
4511
4512 2001-02-25 Timo Schulz <[email protected]>
4513
4514 * wptGPGPrefsDlg.cpp: Add some new translation strings.
4515 * wptKeyGenDlg.cpp: Add all dialog text to the NLS suite.
4516 * wptMainProc.cpp, wptClipDecryptDlg.cpp: Change to new packet parser.
4517 * wptClipImportDlg.cpp: Finished basic interface.
4518
4519 2001-02-24 Timo Schulz <[email protected]>
4520
4521 * wptGPG.cpp: (check_gpg_path): Fix a bug.
4522 (check_gpg_options): Fix some bugs.
4523
4524 2001-02-22 Timo Schulz <[email protected]>
4525
4526 * wptGPG.cpp: (check_line): New. Check if the line contains a valid
4527 gpg argument.
4528 (check_gpg_options): New. Parses each buffer line to check_line().
4529
4530 2001-02-21 Timo Schulz <[email protected]>
4531
4532 * wptGPG.cpp: Fix the check_gpg_optfile() code.
4533 (gpg_errstr): Define some error constants to be more verbose.
4534 (set_gpg_options): New. Manipulate the options file.
4535 (get_gpg_options): New. Read in the options file.
4536 * wptFile.cpp: (get_file_size): New.
4537 * wptGPGOptDlg.cpp: New. Dialog for editing the options file
4538
4539 2001-02-20 Timo Schulz <[email protected]>
4540
4541 * wptGPGPrefsDlg.cpp: Add some sanity checks for the value.
4542 * wptClipImportDlg.cpp: Add some new code.
4543
4544 2001-02-19 Timo Schulz <[email protected]>
4545
4546 * wptRegistry.cpp: (is_installed): Remove.
4547 (regist_inst_winpt): Add selfcheck.
4548 (regist_inst_gpg): New. Add gpg releated registry entries.
4549 (regist_inst_mo): New. Add nls related path.
4550 (get_reg_entry), set_reg_entry(): Modify to be more flexible.
4551 (set_reg_entry_gpg): Handy functions for get_reg_entry.
4552 (set_reg_entry_mo): Ditto.
4553 (get_reg_entry_gpg): Ditto.
4554 (get_reg_entry_mo(): Ditto.
4555 * wptGPGPrefsDlg.cpp, wptNLS.cpp: Add support for the locale environment.
4556 * wptGPG.cpp: (check_gpg_optfile): Figure out if the option file.
4557 include keyring entries (2x)
4558 (check_gpg_path): Include the check_gpg_optfile() check.
4559
4560 2001-02-17 Timo Schulz <[email protected]>
4561
4562 * wptRegistry.cpp: (get_reg_entry): Return the GnuPG homedir from
4563 the registry.
4564 (set_reg_entry): Set a gnupg registry key.
4565 * wptGPG.cpp: Modify all function for the use with get_reg_entry().
4566 * WinPT.cpp: Change the way for the gpg searching mechanism.
4567 * wptGPGPrefsDlg.cpp: New dialog for dynamic GPG configuration.
4568 * wptClipImportDlg.cpp: (key import dialog): New.
4569 * wptKeylistElement.cpp:
4570 (wpt_lv_implist_build): Build up the key import list.
4571 (wpt_lv_implist_add_key): Insert a key into the import list.
4572 (wpt_lv_implist_dummy): Dummy to build up a box with a fixed size.
4573
4574 2001-02-10 Timo Schulz <[email protected]>
4575
4576 * wptMainProc.cpp: Move ctb_proc and hotkey inits to this file.
4577 * wptKeylistElement.cpp: New.
4578 * wptListElement.cpp: Remove.
4579 * wptW32API.cpp: Insert all lv_*** functions.
4580 * wptKeylistElement.cpp: (wpt_lv_keylist_release_key): New.
4581 (wpt_lv_keylist_release_keys): Ditto.
4582 * wptW32API.cpp: (w32_get_thread_id): New.
4583 (w32_attach_thread_input): New.
4584 * wptMailPlugin.cpp: (oe_get_message): Add thread attach mechanism.
4585 (oe_get_message): Add thread attach mechanism.
4586 (oe_encrypt): Modify for the attach treach mechanism.
4587 Add sanity check for recipients.
4588
4589 2001-02-07 Timo Schulz <[email protected]>
4590
4591 * wptClipEditDlg.cpp: (clip_edit_dlg_proc): Add some sanity checks.
4592 * wptExportDlg.cpp: (clip_export_dlg_proc): Ditto.
4593
4594 2001-02-04 Timo Schulz <[email protected]>
4595
4596 * wptSignDlg.cpp: (wpt_sign_proc): Add secret key listing.
4597 * wptMainProc.cpp: (wpt_main_proc):
4598 Remove ciphertext checks for signing and encrypting.
4599 (allow double encryption).
4600
4601 2001-02-03 Timo Schulz <[email protected]>
4602
4603 * wptMailPlugin.cpp: (oe_find_msg_window): Fix window handles.
4604 (oe_find_addr_window): Ditto.
4605 (oe_find_main_window): Ditto.
4606
4607 2001-02-02 Timo Schulz <[email protected]>
4608
4609 * wptW32API.cpp: (w32_hit_key): New.
4610 (w32_rel_key): New.
4611 (w32_copy_to_clip): New.
4612 (w32_insert_from_clip): New.
4613 (w32_get_clip_text): New.
4614 (w32_set_clip_text: New.
4615 (w32_show_if_icon): New.
4616
4617 2001-02-01 Timo Schulz <[email protected]>
4618
4619 * wptW32API.cpp: (w32_get_edit_text): New.
4620 (w32_set_menu_text): New.
4621 (w32_strdup): New.
4622 * wptMailPlugin.cpp: (oe_***): New. Basic OE interface.
4623 * Create all dialogs windows in the foreground.
4624
4625 2001-01-31 Timo Schulz <[email protected]>
4626
4627 * wptKeygenDlg.cpp: (wpt_keygen_proc): Passphrase sanity check.
4628 * wptW32API.cpp: New.
4629 * WinPT.cpp: (WinMain): Change the keyring checking code.
4630
4631 2001-01-29 Timo Schulz <[email protected]>
4632
4633 * wptClipboard.cpp: (clip_is_already_secure):
4634 Modify the pgp data detection.
4635
4636 2001-01-28 Timo Schulz <[email protected]>
4637
4638 * wptHotkey.cpp: (register_hotkey): Hotkey registration.
4639 (unregister_hotkey): Hotkey removing.
4640 * wptHokey.h: New.
4641 * wptWndHook.cpp:
4642 (wpt_cpt_proc): Window hook to save the current windows.
4643 * wptWndHoo.h: New.
4644 * wptMainProc.cpp: (wpt_main_proc): Add hotkey messages.
4645 * WinPT.cpp: (WinMain): Add hotkey registration.
4646
4647 2001-01-21 Timo Schulz <[email protected]>
4648
4649 * wptNLS.cpp: ported to C++.
4650 (gettext): Remove CP850 to ISO88591 conversation.
4651

Properties

Name Value
svn:eol-style native

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26