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

Diff of /trunk/Src/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 22 by twoaday, Wed Aug 10 11:33:35 2005 UTC revision 231 by twoaday, Tue Jun 20 09:18:44 2006 UTC
# Line 1  Line 1 
1  2005-08-06  Timo Schulz  <[email protected]>  2006-06-19  Timo Schulz  <[email protected]>
2    
3          * wptGPGME.cpp (keycache_update): Reload OpenPGP parts          * wptClipDecryptDlg.cpp (verify_get_clip_info): Improved
4          of the secret key.          format of the sig info text.
5          (keycache_init): cache name of secret keyring.          * wptKeyserver.cpp (check_hkp_response): Invert error logic.
6          * wptKeyList.cpp (keylist_upd_key): Do not add long keyid.          * wptKeyserverDlg.cpp (keyserver_recv_key): Corrected error
7          (get_key_type): Do not assume 'ultimate' means key pair.          handling.
8          * wptKeyEditDlgs.cpp (diff_time): New.          
9          (keyedit_addsubkey_dlg_proc): Changed design and use  2006-06-18  Timo Schulz  <[email protected]>
10          diff_time. Drop checks for invalid keylength (< 1024, > 4096)  
11          because the combo box automatically handles this.          * wptKeygenDlg.cpp (keygen_dlg_proc): Fix typo.
12          * wptKeyManager.cpp (km_set_implicit_trust): Return error code.          * wptClipDecryptDlg.cpp (verify_get_clip_info): New.
13          * wptGPG.cpp (get_backup_name): New.          (verify_get_key_ownertrust): New.
14          (gnupg_backup_keyrings): Rotate backup names, from 0..3.          (clip_decrypt_dlg_proc): New argument. Change all callers.
15          * wptClipImportDialog.cpp (clip_import_dlg_proc): Free memory.          * wptClipEditDlg.cpp (clip_edit_dlg_proc): Handle the case
16          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Use 0x short keyid and          that the dialog was called with a param.
17          not the long keyid.          * wptMainProc.cpp (winpt_main_proc): Wait for thread in
18            case of dbl-click.
19  2005-08-05  Timo Schulz  <[email protected]>          
20    2006-06-16  Timo Schulz  <[email protected]>
21          * wptListView.cpp (listview_set_item2): New.  
22          * wptKeyManager.cpp (km_check_if_protected): Directly          * wptProgressDlg.cpp (wait_for_progress_cb): New.
23          retrieve gpgme_key_t from the list.          * wptMainProc.cpp (winpt_main_proc): Use this function
24          (km_check_key_status): Likewise.                  to disallow to access the cache during synchronisation.
25          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Also use          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
26          a human-readable name for secret key export.          * wptKeyserver.cpp (check_hkp_response): Improved text
27          Reload just the keys which were affected by updates          extraction.
28          (edit-key).          (parse_keyserver_error): New.
29          (update_key): New.          * wptPassphraseDlg.cpp (request_passphrase): Support utf8
30          * wptKeyList.cpp ((keylist_upd_key): Stripped down          encoding.
31          version of keylist_add_key.          * wptKeyEditDlgs.cpp (keyedit_change_passwd): Warn if passhrase
32          * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Do not          needs to be utf8 encoded but still allow it.
33          reload the keycache here, just flag 'update'. Give the          * wptPassphraseCBDlg.cpp (passphrase_callback_proc): Utf8 support.
34          control to the calling dialog.          * wptKeygenDlg.cpp (keygen_dlg_proc): Likewise.
35          * wptKeySignDlg.cpp (keysign_dlg_proc): Use winpt_key_t          * wptKeyRevokeDlg.cpp (keyrevoke_dlg_proc): Likewise.
36          as parameter. Changed all callers.          
37          Add date of expiration to the key info.  2006-06-15  Timo Schulz  <[email protected]>
38          (get_expire_date): New.  
39          Use a checkbox to allow to ask for the cert level.          * wptVerList.cpp (verlist_build): Use icons.
40          * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Do no reload          (verlist_add_sig): Set image number according to sig state.
41          the cache.          
42    2006-06-14  Timo Schulz  <[email protected]>
43  2005-08-04  Timo Schulz  <[email protected]>  
44            * wptAboutDlgs.cpp (about_winpt_dlg_proc): Translate
45          * wptListView.cpp (listview_scroll): New.          authors string here. Noted by Eduardo.
46          (listview_get_item2): New.          * wptSymEnc.cpp (gpg_clip_sym_encrypt): Check all return codes.
47          * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): If the          
48          item was found, make it visible with scrolling.  2006-06-09  Timo Schulz  <[email protected]>
49          * wptKeyManager.cpp (km_find_key): New.  
50          (keylist_subclass_proc): Support to handle some acceleators.          * wptKeyEditDlgs.cpp (do_add_new_subkey): Properly handle
51          Strg+{C, P, F, A}.          RSA_E and RSA_S.
52          (km_get_key_status): Get the gpgme_key_t object directly          * wptFileManager.cpp (fm_sym_encrypt): Better dialog title.
53          from the list.          
54          * wptGPGPRefsDlg.cpp (gpgprefs_dlg_proc): Also try to set  2006-06-08  Timo Schulz  <[email protected]>
55          the config file (if it exists).  
56          * wptKeySignDlg.cpp (keysign_dlg_proc): Use easier code          * wptKeyserver.cpp (parse_keyserver_url): Handle special case.
57          to handle the click->activate situation.          * wptKeySignDlg.cpp (keysign_dlg_proc): Show photo if possible.
58          * wptPassphraseCB.cpp (passphrase_callback_proc): Likewise.          (showphoto_dlg_proc): New.
59          Support to check the passphrase quality.          * wptKeyManagerDlg.cpp (restore_window_size): New.
60          * wptPassphraseDlg.cpp (passwd_dlg_proc): Likewise.          (keymanager_dlg_proc): Restore original window size on startup.
61          (request_passphrase): Rename 'init' to 'flags' to allow more          (copy_key_info): Allow to copy multiple key items.
62          options.          
63          * wptMAPI.cpp: Check all *alloc results.  2006-06-06  Timo Schulz  <[email protected]>
64          * wptKeyGenDlg.cpp (keygen_dlg_proc): Use a rudimentary  
65          passphrase quality check.          * wptKeyEditCB.cpp (cmd_sign_handler): Return 0 by default
66          * wptMDSumDlg.cpp (mdsum_dlg_proc): Use md5/sha1sum file          if no expire date were given.
67          format and allow to save the checksum in a file.          
68          * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Issue a warning  2006-06-05  Timo Schulz  <[email protected]>
69          when the PGP mode is disabled.  
70          wptKeyEditDlgs.cpp (do_editkey_primary): Return if just          * wptPassphraseDlg.cpp (request_passphrase): Release mem
71          one user-ID exists.          in case of errors.
72          (keyedit_dlg_proc): Fixed index problem.          (request_key_passphrase): New.
73          * wptKeyPropsDlg.cpp (get_validity): New.          (set_passphrase_hint): New.
74          (keyprops_dlg_proc): Actually show extended validity if possible.          * wptKeyEditDlgs.cpp (do_editkey_sign_userid): Show passphrase
75          * wptKeyList.cpp (get_key_fpr): Support for old v3 format.          hint. Suggested by vedaal.
76          (do_addkey): Use listview_add_item2 to store key as opaque          
77          param inside the list.  2006-06-03  Timo Schulz  <[email protected]>
78          * wptFileStatDlg.cpp (get_digest_algo): Add SHAxxx.  
79          (file_stat_dlg_proc): End dialog if no PGP data was found.          * wptPINDlg.cpp (pin_dlg_proc): Remove static var.
80          (do_list_packets): Return the number of valid PGP packets          * wptClipEncryptDlg.cpp (show_invalid_recipients): Handle
81          of the file.          the case that 'encrypt-to' points to a non-existing item.
82            * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Do not close
83  2005-08-02  Timo Schulz  <[email protected]>          the dialog if an error occurred.
84            * wptKeygenDlg.cpp (keygn_dlg_proc): Check expirate date.
85          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Instead of          * wptKeyEditDlgs.cpp (keyedit_adduid_dlg_proc): Release mem
86          using 'Default Keyserver' add the real keyserver name to          in case of errors.
87          the menu.          * wptKeyserverDlg.cpp (check_pattern): Improved code.
88          The rebuild command does not reload the cache any longer.          (keyserver_dlg_proc): All comparisons are case insentensive.
89          Use ATTR_NAME + .asc as the filename and not keyid + .asc.          * wptKeyserver.cpp (parse_uid_record): utf8 decode user id.
90          * wptProxySettingsDlg.cpp (enable_proxy_auth): New.          
91          (keyserver_proxy_dlg_proc): Changed the design a little  2006-06-02  Timo Schulz  <[email protected]>
92          and add some additional sanity checks.  
93          * wptGPGParser.cpp (commit_gpg_options): Use W32 line endings.          * wptKeygenDlg.cpp (keygen_dlg_proc): Forgot to apply patch.
94          This fixes the problem that the GPG option dialog does not show          
95          very nice lines.  2006-06-01  Timo Schulz  <[email protected]>
96          * wptGPGOptDlg.cpp (gpgopt_dlg_proc): s/options/config.  
97          * wptKeySigDlg.cpp (keysig_dlg_proc): If a single key is selected          * wptKeyserver.cpp (check_URL): change semantic.
98          check for 'NOKEY' before asking a keyserver.          (skip_type_prefix): Use check_URL().
99          * wptKeyManager.cpp (km_delete_keys): Do not set 'refresh' flag.          * wptGPG.cpp (gnupg_backup_keyrings): New argument to
100          If a lot of keys were selected, ask if the user wants to confirm          include secret keyring backups. Change all callers.
101          each delete procedure or allow to cancel the operation.          * wptRegistry.cpp (get_reg_winpt_prefs): Support new option.
102          * wptFileManagerDlg.cpp (file_import_dlg_proc): Display how much          (set_reg_winpt_prefs): Likewise.
103          keys the file contain.          * wptPreferencesDlg.cpp (on_init_dialog): Adjust the code.
104          * wptKeyList.cpp (get_key_algo): Beautified.          
105          (get_key_status): Drop the "[XYZ] Unknown" format, it is too  2006-05-29  Timo Schulz  <[email protected]>
106          confusing for users.  
107          * wptKeyManager.cpp (km_check_key_status): Adjustments for the          * wptKeyserver.cpp (keyserver_set_default): Also set default port.
108          new code.  
109          (km_check_for_seckey): Reset utrust parameter. Return -1 for  2006-05-27  Timo Schulz  <[email protected]>
110          invalid (exp+rev+dis) keys.  
111            * wptKeyEditDlgs.cpp (keyedit_change_passwd): Handle empty
112  2005-08-01  Timo Schulz  <[email protected]>          passphrase requests.
113            * wptClipDecryptDlg.cpp (verify_show_signature_state): Modified
114          * wptKeyserver.cpp (kserver_urlencode): Use unsigned for all given          for global use.
115          sizes.          * wptFileManager.cpp (fm_decrypt): Use it here.
116          (check_IP_or_hostname): New.          * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Simplified.
117          (kserver_load_conf): Correct finger URL parsing problem.          
118          (port_from_proto): New.  2006-05-25  Timo Schulz  <[email protected]>
119          (keyserver_load_conf): Guess the port.  
120          (keyserver_set_default): Allocate new buffer.          * wptGPGUtil.cpp (gpg_rebuild_cache): Return error code.
121          (kserver_load_conf): Likewise.          * wptGPGME.cpp (winpt_get_seckey): Fix off-by-one bug.
122          * wptHTTP.c (parse_reqline, parse_request): Removed.          * wptVerifyList.cpp (verlist_build): New argument type.
123          Use WinPT error code and remove all unused code.          Change all callers.
124          * wptKeyserverDlg.cpp (keyserver_dlg_proc): Properly handle finger URLs.          (verlist_set_info_control): New.
125          * wptProxySettingsDlg.cpp (read_proxy): Simple check for          (verlist_set_additional_info): New.
126          invalid host/IP addresses.          * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Adjust code.
127          * wptGPG.cpp (multi_gnupg_path): Return allocated buffer.          * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Likewise.
128          Changed all callers.          * wptFileCBS.cpp (read_cb, write_cb): Add logging.
129          * wptPreferencesDlg.cpp (prefs_dlg_proc): At the first start,          
130          automatically set 'backup to homedir'.  2006-05-23  Timo Schulz  <[email protected]>
131          * WinPT.cpp (WinMain): Use desktop window as the parent window  
132          to load 'first-start' dialogs.          * wptKeyEditDlgs.cpp (do_add_new_userid): Fix re-introduced
133          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Do not set 'refresh'          problem.
134          flag after deleting keys.          (keyedit_main_dlg_proc): Popup menu for the user ID list
135          * wptFirstRunDlg.cpp (first_run_dlg_proc): Use a new structure          with common commands.
136          for passing the arguments.          * wptKeyserverDlg.cpp (keyserver_dlg_proc): Automatically
137          * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Do not store "" for          disable search for ldap servers.
138          the OptFile. This was responsible for a lot of 'General Errors'          Use subkeys.pgp.net by default when no server was selected.
139          after the first start related to key caching.  
140          Automatically set the gpg binary if possible.  2006-05-22  Timo Schulz  <[email protected]>
141    
142  2005-07-22  Timo Schulz  <[email protected]>          * wptRegistry.cpp (set_reg_winpt_prefs, get_reg_winpt_prefs):
143            Support for the new 'default ext' value.
144          * wptMainProc.cpp (winpt_main_proc): Take care for shutdown          * wptPreferencesDlg.cpp (on_init_dialog): Likewise.
145          messages and make sure WinPT make a keyring backup in this case.          (prefs_dlg_proc): Likewise.
146          * wptGPGME.cpp (keycache_reload): Do not rebuild the signature          * wptFileManager.cpp (file_get_extension): Likewise.
147          cache each time. Just do it on startup.          (get_output_file): Likewise.
148          * wptKeyManager.cpp (km_key_is_v3): Use new ATTR_VERSION.          (fm_export): Likewise.
149          * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Assume the v3 flag          
150          was set by the calling function.  2006-05-20  Timo Schulz  <[email protected]>
151          * wptKeyGenDlg.cpp (keygen_wizard_dlg_proc): Ask for backups.  
152          (keygen_dlg_proc): Only add the generated key to the keycache          * wptKeyPropsDlg.cpp (keyprops_load_photo): avoid expensive
153          and do not reload the entire cache.          process call when no photo is available.
154          * wptKeyManager.cpp (km_delete_keys): Store the number of keys          (keyprops_dlg_proc): avoid static data.
155          because in each loop iteration it will be new calculated.          * wptFileManager.cpp (fm_add_sig_stat): Free memory in case
156          * wptListView.cpp (listview_del_items): Likewise.          of on demand key requests.
157          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Directly add the          (show_verify_result): Likewise.
158          generated key to the list instead of reloading the entire cache.          (secret_key_available): Likewise.
159          * wptKeyEditDlgs.cpp (parse_preflist): Support fpr SHAnnn.          (fm_decrypt, fm_sign): Handle the new on demand key request
160            mode and free all memory.
161            
162    2006-05-15  Timo Schulz  <[email protected]>
163    
164            * wptKeyEditDlgs.cpp (userid_list_init): Forgot to
165            apply patch. Thanks to vedaal.
166            
167    2006-05-14  Timo Schulz  <[email protected]>
168    
169            * wptKeyCache.cpp (gpg_keycache_update_attr): Parse
170            preferred keyserver URL.
171            * wptHTTP.cpp (extractHostInfo): Fix segv.
172            * wptGPGUtil.cpp (gpg_find_key_subpacket): Ignore default
173            gpg.conf.
174            * wptKeyserverSearchDlg.cpp (search_hkp_keys): Do not
175            assume an existing user id.
176            * wptPassphraseCB.cpp (passphrase_cb): Automatic cancel
177            if no passphrase is available.
178    
179    2006-05-13  Timo Schulz  <[email protected]>
180    
181            * wpMainProc.cpp (secret_key_available): Move it...
182            * wptGPGME.cpp: ..to this file.
183            (check_ultimate_trusted_key): Handle the case there
184            is no secret key available.
185            * wptFileManagerDlg.cpp (update_ui_items): Improved.
186            * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Deactive
187            some functions when no secret key is available.
188            * wptKeyserverSearchDlg.cpp (search_hkp_keys): Adjust
189            code and also display pubkey algorithm.
190            * wptKeyserver.cpp (safe_alloc): New.
191            (count_keys_in_response): New.
192            (parse_pub_record): New.
193            (parse_uid_record): New.
194            (kserver_release_key): New.
195            (kserver_search_begin, kserver_search_next_key):
196            Adjust for the machine readable output. Removed old code.
197            (parse_keyserver_url): New.
198            * wptUtil.cpp (substr): New.
199            * wptKeyManager.cpp (km_refresh_one_key): Properly
200            parse the keyserver URL.
201            
202    2006-05-11  Timo Schulz  <[email protected]>
203    
204            * wptPassphraseCB.cpp (release_gpg_recipients): New.
205            (release_gpg_recipients): Use it here.
206            * wptFileManager.cpp (fm_decrypt): List all recipients.
207            Thanks to vedaal.
208            * wptGPG.cpp (extract_keyid): New.
209            (get_gnupg_default_key): Use it here.
210            * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Allow to verify
211            one-pass-sigs again.
212            
213    2006-05-09  Timo Schulz  <[email protected]>
214    
215            * wptKeyRevokersDlg.cpp (revokelist_build): Store key ptr.
216            * wptClipSignDlg.cpp (gpg_clip_sign): Improve error handling.
217            * wptKeysigDlg.cpp (sigprops_dlg_proc): Correct expire date.
218            
219    2006-05-07  Timo Schulz  <[email protected]>
220    
221            * wptKeyserverDlg.cpp (hkp_err_box): Improved.
222            * wptKeyserver.cpp (wsock_strerror): Likewise.
223            * wptKeygenCBDlg.cpp (keygen_cb_dlg_destroy): New param.
224            Change all callers.
225            * wptKeysigDlg.cpp (do_load_keyprops): Correct key update
226            problem.
227            
228    2006-05-06  Timo Schulz  <[email protected]>
229    
230            * wptKeyManagerDlg.cpp (reload_keycache): Use pre-defined
231            sorting order if available.
232            * wptKeyPropsDlg.cpp (key_props_dlg_proc): Use 0x prefix
233            for the key ID.
234            (get_pref_cipher): Differ between the AES algorithm IDs.
235            (key_is_valid): New.
236            * wptKeyserverDlg.cpp (check_pattern): Simplified.
237            
238    2006-05-03  Timo Schulz  <[email protected]>
239    
240            * wptKeyCache.cpp (keycache_prepare2): Fix possible segv.
241            Thanks to Mathias.
242            
243    2006-05-02  Timo Schulz  <[email protected]>
244    
245            * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Use a
246            caption for the radio button group.
247            * wptKeyserverDlg.cpp (keyserver_recv_key): Use new code.
248            * wptKeyserver.cpp (kserver_recvkey, finger_recvkey,
249            ldap_recvkey): Avoid fixed buffers.
250            (do_spawn_ldap_helper): New.
251            (ldap_recvkey): Factor out code into helper function.
252            * wptPassphraseCBDlg.cpp (passphrase_callback_proc):
253            Increase width of the list box to make sure even large
254            user IDs will be completly displayed.
255            
256    2006-05-01  Timo Schulz  <[email protected]>
257    
258            * WinPT.cpp (WinMain): Check if the user has admin privileges.
259            * wptW32API.cpp (user_is_admin): New.
260            * wptKeysigDlg.cpp (sigprops_dlg_proc): Cosmetical changes.
261            * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Use timer
262            to re-activate the window again.
263            * wptKeylist.cpp (get_key_trust2): Differ between "full"
264            and "ultimate".
265            * wptKeyCache.cpp (keycache_prepare2): Primary user-id
266            has now highest priority.
267            * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Use new utf8
268            system.
269            
270    2006-04-30  Timo Schulz  <[email protected]>
271    
272            * wptKeyCache.cpp (gpg_keycache_release): Release revoker
273            list if needed.
274            * wptKeyRevokersDlg.cpp (key_get_revokers): New.
275            (key_revokers_dlg_proc): Expect winpt_key_t. Change all callers.
276            * wptKeyEditDlgs.cpp (check_desig_rev): New.
277            (do_editkey_minimize): New.
278            * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Support to
279            generate a revoc cert as a desig revoker.
280            
281    2006-04-29  Timo Schulz  <[email protected]>
282    
283            * wptVerifyList.cpp (verlist_build): Adjusted code for new
284            list view interface.
285            * wptSigList.cpp (siglist_build): Likewise.
286            * wptKeyEditDlgs.cpp (showpref_dlg_proc): Correct code
287            to display the preferences of the selected UID. Thanks to Mathias.
288            * wptKeyCacheDlg.cpp (keycache_dlg_proc): Return 1 in case
289            of an error.
290            * wptKeyCache.cpp (gpg_keycache_update_key): Always update
291            the utf8 decoded uid list.
292            * wptImportList.cpp (decode_userid): Do utf8 decoding here.
293            * wptListView.cpp (listview_new): New param for HWND handle.
294            Change all callers.
295            * wptFileManager.cpp (fm_add_sig_stat): Use utf8 decoding.
296            * wptGPGUtil.cpp (gpg_revoke_cert): Support --desig-revoker.
297            * wptClipVerifyDlg.cpp (wptClipVerifyDlg.cpp): Correct
298            keyid extraction.
299            
300    2006-04-28  Timo Schulz  <[email protected]>
301    
302            * wptMAPI.cpp (mapi_send_pubkey): Use new key struct.
303            * wptKeysigDlg.cpp (sigprops_dlg_proc): Prepare dialog
304            for handling policy URLs.
305            * wptKeyManagerDlg.cpp (save_column_info, restore_column_info):
306            New option KMSortBy.
307            * wptKeylist.cpp (get_key_algo): Lower priority for revoked keys.
308            * wptKeyEdit.cpp (minimizeKey): New.
309            * wptKeyCache.cpp (gpg_keycache_update_key): Reload utf8 uid list.
310            
311    2006-04-27  Timo Schulz  <[email protected]>
312    
313            * wptKeyManager.cpp (km_get_key_ptr): New.
314            * wptListview.cpp (listview_get_item_text): Drop utf8 support.
315            * wptKeyCache.cpp (keycache_decode_uids): New.
316            (free_native_uids): New.
317            * wptKeyEdit.cpp (uid_inf_colon_handler): Do utf8 decodig here.
318            
319    2006-04-26  Timo Schulz  <[email protected]>
320    
321            * wptKeylist.cpp (get_keyid_from_fpr): New.
322            * wptDecryptClipDlg.cpp (clip_decrypt_dlg): Use it here.
323            * wptVerifyList.cpp (verlist_add_sig): Likewise.
324            
325    2006-04-25  Timo Schulz  <[email protected]>
326    
327            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Handle IDCANCEL.
328            * wptMDSumDlg.cpp (hash_selected_files): New.
329            (mdsum_dlg_proc): Cleanups.
330            * wptKeysignDlg.cpp (keysign_dlg_proc): Fix segv.
331            
332    2006-04-23  Timo Schulz  <[email protected]>
333    
334            * wptW32API.cpp (SetDlgItemText_utf8): New.
335            (SetWindowText_utf8): New.
336            (GetDlgItemText_utf8): New.
337            * wptListView.cpp (listview_add_sub_item): Internal
338            utf8 support.
339            
340    2006-04-22  Timo Schulz  <[email protected]>
341    
342            * wptKeyEditDlgs.cpp (addrevoker_dlg_proc): Encode
343            revoker name in UTF8.
344            * wptKeysigDlg.cpp (keysig_dlg_proc): Fix utf8 problem
345            with the window title.
346            
347    2006-04-20  Timo Schulz  <[email protected]>
348    
349            * wptUTF8.cpp (native_to_utf8): Use c++ alloc.
350            * wptKeygenDlg.cpp (keygen_dlg_proc): Do not mix c and
351            c++ memory allocation.
352            * wptFileManager.cpp (show_verify_result): Show PKA status
353            if possible.
354            * wptClipVerifyDlg.cpp (get_pka_status): New.
355            (clip_verify_dlg_proc): Show PKA status if possible.
356            * wptClipEditDlg.cpp (clip_edit_dlg_proc): Handle IDCANCEL
357            to use ESC to quit the dialog.
358            * wptKeyEditDlgs.cpp (keyedit_adduid_dlg_proc): Also
359            encode the comment in UTF8. Thanks to Werner and Jan.
360            
361    2006-04-16  Timo Schulz  <[email protected]>
362    
363            * wptHTTP.cpp (getErrorCode): New.
364            (connect): Store winsock error code.
365            * wptGPGMEData.cpp (is_armor_header): New.
366            * wptGPG.cpp (check_gnupg_engine): Free context.
367            (gnupg_backup_keyrings): Do not use global vars.
368            * wptGPGUtil.cpp (gpg_export_seckey): Export in ascii format.
369            
370    2006-04-15  Timo Schulz  <[email protected]>
371    
372            * wptKeyManager.cpp (km_get_key): New.
373            (km_key_show_revoc_info): New.
374            * wptKeyRevokeDlg.cpp (key_revoke_dlg): Cleanups.
375            (on_init_dialog): New.
376            * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Factour
377            out some common code and use km_get_key() instead.
378            * wptKeyEditDlgs.cpp (do_init_keylist): Change second
379            param type. Change all callers.
380            * wptKeyEdit.cpp (addNotation): New.
381            * wptKeyEditCB.cpp (editkey_command_handler): Remove 'step'
382            param everywhere. Change all callers.
383            
384    2006-04-09  Timo Schulz  <[email protected]>
385    
386            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Only return true
387            if the homedir value was changed.
388            * wptGPG.cpp (default_key_from_cache): Only return secret key
389            if public part is available.
390            (set_gnupg_default_key): Fix NULL problem.
391            * wptKeyEditDlgs.cpp (do_editkey_clean): Set update flag.
392            * wptFileCBS.cpp (write_cb, read_cb): Better error handling.
393            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Handle
394            'always-on-top' correctly.
395            * wptKeylist.cpp (keylist_get_recipients): Allocate enough
396            mem to hold all possible keys.
397            (keylist_enum_keys): Likewise.
398            
399    2006-04-08  Timo Schulz  <[email protected]>
400    
401            * wptKeylist.cpp (keylist_get_recipients): Always use utf8 output.
402            * wptKeyserver.cpp (kserver_connect): Fixed proxy support.
403            * wptKeyserverSearchDlg.cpp (fetch_keys): New.
404            * WinPT.cpp (WinMain): if the default key was not found, reset
405            the gpg.conf entry.
406            * wptFileManager.cpp (fm_encrypt_into_zip): Use correct output
407            file name.
408            (show_verify_result): Always use utf8 output.
409            (get_output_file): Case in-sentensive comparison.
410            (fm_assume_onepass_sig): Fixed temp file handling.
411            * wptClipEncryptDlg.cpp (show_invalid_recipients): Fix utf8
412            output.
413            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Fix possible segv.
414            
415    2006-04-07  Timo Schulz  <[email protected]>
416    
417            * wptW32API.cpp (set_clip_text): Change code so it also
418            works again with non-XP systems.
419            
420    2006-04-02  Timo Schulz  <[email protected]>
421    
422            * wptKeyserver.cpp: decrease general threshold for timeout.
423            * wptKeyEditDlgs.cpp (do_editkey_clean): New.
424            
425    2006-04-01  Timo Schulz  <[email protected]>
426    
427            * wptFileVerifyDlg.cpp (file_verify_use_event): Removed.
428            * wptFileManager.cpp (restore_original_name): New.
429            (fm_decrypt): Restore original file name from literal
430            packet if possible.
431            
432    2006-03-31  Timo Schulz  <[email protected]>
433    
434            * wptCommonDlg.cpp (nls_load_langlist): New.
435            (nsl_set_language): New.
436            (nls_dlg_proc): New.
437            (select_language): New. Allow user to select the language.
438            * wptNLS.c (get_gettext_langid): Updated available languages.
439            * WinPT.cpp (WinMain): Allow to select the languag on first
440            start in non-installer environments.
441            * wptVerifyList.cpp (verlist_build): Simplified.
442            (verlist_add_sig_log): Likewise.
443            * wptListview.cpp (listview_set_column_width,
444            listview_get_selected_item): New.
445            * wptKeyManager.cpp (gpg_clip_export): Merged into..
446            (km_clip_export): ..this function.
447            
448    2006-03-30  Timo Schulz  <[email protected]>
449    
450            * wptW32API.cpp (insert_menu_item): New.
451            * wptSigTreeDlg.cpp (create_popup): Use it.
452            (sigtree_dlg_proc): Only show the name of the owner in the title.
453            * wptMainProc.cpp (init_common_controls): Initialize all
454            common controls here.
455            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Drop static
456            keyserver menu concept. Add all keyservers dynamically.
457            
458    2006-03-29  Timo Schulz  <[email protected]>
459    
460            * wptKeyManager.cpp (km_refresh_one_key): Fix problem
461            with preferred keyserver.
462            * wptCommonDlg.cpp (check_URL): Allow non-http URL.
463            * wptKeyEditDlgs.cpp (subkey_subclass_proc,
464            uid_subclass_proc): Disable shortcuts for non keypairs.
465            * wptMainProc.cpp (winpt_main_proc): No user interaction
466            on automatic shutdown. Thanks to Werner.
467            * wptGPGUtil.cpp (xcalloc): New.
468            (gpg_rebuild_cache): Use --batch.
469            
470    2006-03-26  Timo Schulz  <[email protected]>
471    
472            * wptSigTreeDlg.cpp (sigtree_load): Always use UTF8.
473            * wptMainProc.cpp (winpt_main_proc): Reload key cache
474            when the GPG settings were changed.
475            * wptKeygenDlg.cpp (keygen_wizard_dlg_proc,
476            keygen_dlg_proc): Improved check for the email address.
477            * wptKeyEditDlgs.cpp (keyedit_adduid_dlg_proc): Likewise.
478            * wptKeyserverDlg.cpp (keyserver_dlg_proc): Modified design.
479            
480    2006-03-22  Timo Schulz  <[email protected]>
481    
482            * wptClipSignDlg.cpp (on_init_dialog): New.
483            Check that there is at least one useable signing key.
484            * wptSigTreeDlg.cpp (sigtree_load): Correct UTF8 handling.
485            * wptKeyEditDlgs.cpp (keyedit_set_pref_keyserver): Show error
486            if needed.
487            
488    2006-03-21  Timo Schulz  <[email protected]>
489    
490            * wptUTF8.cpp (native_to_utf8): Use directly W32 API.
491            (utf8_to_native): Likewise. Remove cp850 conversion.
492            * wptKeyEditDlgs.cpp (do_find_userid): Correct UTF8 handling.
493            * wptKeyManager.cpp (km_delete_keys): Do not reset 'with_seckey'
494            flag.
495            
496    2006-03-20  Timo Schulz  <[email protected]>
497    
498            * wptUTF8.cpp (get_native_charset): Removed.
499            (utf8_to_native): Rewritten.
500            * wptKeyEditDlgs.cpp (do_add_new_userid): Correct charset
501            handling.
502            * wptKeygenCBDlg.cpp (keygen_cb): Do proper reset if needed.
503            
504    2006-03-16  Timo Schulz  <[email protected]>
505    
506            * wptMainProc.cpp (winpt_main_proc): Disable all CryptDisk code.
507            * wptCryptDisk.cpp: Disable code.
508            * wptProxySettingsDlg.cpp (proxy_settings_dlg_proc): Support for
509            NONE proxy protocol.
510            (init_proxy_procotol): Likewise.
511            (read_proxy): Likewise.
512            * wptKeyserverSearchDlg.cpp (on_init_dialog): New.
513            (keyserver_search_dlg_proc): Use it here.
514            * wptKeyserverDlg.cpp (hkp_send_key): Use GPGME wrapper.
515            * wptKeyserver.cpp (kserver_search_end): New.
516            (kserver_search_begin): Be more strict on mem allocation.
517            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Fix 'redraw'
518            problem.
519            * wptAboutDlgs.cpp (about_dlg_proc): Hide 'Help' button.
520            
521    2006-03-12  Timo Schulz  <[email protected]>
522    
523            * wptGPG.cpp (gnupg_load_config): Search for 'ask-cert-expire'.
524            * wptKeyPropsDlg.cpp (display_key_info): Automatically update
525            sym algorithm preferences if needed.
526            * wptKeysignDlg.cpp (date_is_today): New.
527            (keysign_dlg_proc): Only allow to set cert expire date if
528            the option was found.
529            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Allow to set
530            'ask-cert-expire'.
531            
532    2006-03-10  Timo Schulz  <[email protected]>
533    
534            * wptHTTP.c: deleted.
535            * wptHTTP.cpp (wHTTP): Transformed old code into an object.
536            * wptKeyManager.cpp (km_http_import): Use new code.
537            (km_refresh_one_key): Use preferred keyserver if possible.
538            * wptComonDlg.cpp (check_URL): Better conformance checking.
539            * wptKeyEditCB.cpp (cmd_keyserver_handler): By default
540            set keyserver for all userids.
541            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Enable code
542            to set preferred keyserver.
543            * wptKeyCache.cpp (decode_subpacket): New.
544            (gpg_keycache_update_attr): New.
545            * wptGPGUtil.cpp (gpg_find_key_subpacket): New.
546            * wptKeyEditDlgs.cpp (keyedit_set_pref_keyserver): Use
547            -1 as an index for all userids.
548            
549    2006-03-07  Timo Schulz  <[email protected]>
550    
551            * WinPT.cpp (set_default_keyserver): New.
552            * wptKeyserver.cpp (kserver_set_socket_timeout): New.
553            (kserver_set_default_keyserver): Initialize default settings
554            if needed.
555            * wptSymEnc.cpp (gpg_encrypt_symmetric): Disallow empty passwords.
556            * wptPassphraseDlg.cpp (request_passphrase): Handle new flag.
557            (passphrase_dlg_proc): Support new safe edit window procedure.
558            * wptPassphraseCB.cpp (passphrase_callback_proc): Likewise.
559            * wptPreferencesDlg.cpp (prefs_dlg_proc): Flush passphrase cache
560            if user disable it.
561            * wptKeylist.cpp (keylist_build): Do not scale images but use
562            original size.
563            * wptListView.cpp (listview_set_image_list): New size params.
564            Change all callers.
565            
566    2006-03-01  Timo Schulz  <[email protected]>
567    
568            * wptW32API.cpp (set_clip_text): Free all memory.
569            
570    2006-02-27  Timo Schulz  <[email protected]>
571    
572            * wptSOCKS.cpp (socks_handshake): New.
573            * wptMainProc.cpp (winpt_main_proc): A dbl-click forces
574            the key manager in teh foreground if possible.
575            * wptHotkey.cpp (hotkey_unregister): Unregister all hotkeys.
576            * wptRegistry.cpp (get_reg_proxy_prefs,
577            set_reg_proxy_prefs): Use directly the proxy context.
578            Changed all callers.
579            * wptProxySettingsDlg.cpp (init_proxy_protocols): New.
580            (keyserver_proxy_dlg_proc): Use directly the proxy context.
581            * wptKeyserver.cpp (kserver_connect): Better proxy support.
582            (kserver_send_request, kserver_recvkey_request): Likewise.
583            * wptKeyserverDlg.cpp (name_from_proto): New.
584            (set_proxy): Adjusted for the new code.
585            
586    2006-02-26  Timo Schulz  <[email protected]>
587    
588            * WinPT.cpp (WinMain): Removed hotkey_modify() code.
589            * wptKeyEditDlgs.cpp (is_idea_protect_algo): Better support
590            v4 keys.
591            * wptKeyserver.cpp (sock_getline): Skip '\r'.
592            (base64_encode): Remove @maxlen param. Changed all callers.
593            (finger_readline): Removed.
594            (finger_recvkey): Use internal functions.
595            * wptSigTreeDlg.cpp (sigtree_dlg_proc): Support a context menu.
596            (show_sigprops): New.
597            (create_popup): New.
598            * wptPreferenceDlg.cpp (prefs_dlg_proc): Cache amount is
599            now in minutes.
600            * wptRegistry.cpp (get_winpt_reg_prefs, set_winpt_reg_prefs):
601            Change code to use hotkeys directly.
602            * wptHotkeys.cpp (hotkeys_enable, hotkey_disable): Likewise.
603            
604    2006-02-24  Timo Schulz  <[email protected]>
605    
606            * wptGPG.cpp (set_gnupg_default_key): Allow to remove entry
607            when parameter is NULL.
608            * wptKeyManager.cpp (check_exist_default_key): New.
609            (km_delete_keys): Check if the default key is still valid,
610            if not delete entry.
611            * wptSigTreeDlg.cpp (sigtree_dlg_proc): Forgot to localize
612            button.
613            
614    2006-02-21  Timo Schulz  <[email protected]>
615    
616            * wptClipDecryptDlg.cpp (clip_decrypt_dlg_proc): Minor
617            cleanups.
618            * wptGPGUtil.cpp (file_extract_recipients): New.
619            (clip_extract_recipients): New.
620            (gpg_get_recipients): New.
621            * wptPassphraseCB.cpp (passphrase_callback_proc): Support
622            external recipient listings.
623            
624    2006-02-15  Timo Schulz  <[email protected]>
625    
626            * wptKeysignDlg.cpp (keysign_dlg_proc): Localize new checkbox.
627            * wptFileStatDlg.cpp (get_s2k_algo): New.
628            * wptFileManagerDlg.cpp (update_status_bar): Use human readable
629            formats.
630            
631    2006-02-14  Timo Schulz  <[email protected]>
632    
633            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Localize 'Cancel'.
634            * wptKeysignDlg.cpp (keysign_dlg_proc): Implement 'Hide Typing'.
635            * wptFileManager.cpp (fm_sym_encrypt): Set cancel.
636            (fm_parse_files): Handle cancel.
637            
638    2006-02-10  Timo Schulz  <[email protected]>
639    
640            * wptKeyPropsDlg.cpp (props_dlg_proc): Removed unused vars.
641            * wptKeyEditDlgs.cpp (do_editkey_check): Use winpt_key_t
642            for the dialog param.
643            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Use new list
644            signature dialog by default.
645            * wptKeysigDlg.cpp (sigprops_dlg_proc): Use directly
646            gpgme_key_sig_t as param.
647            (keysig_dlg_proc): Change param for property dialog.
648            * wptSigTreeDlg.cpp (sigtree_load): Skip revoked user-ids
649            and use icons.
650            (sigtree_dlg_proc): Allow to execute old list dialog to
651            edit the signatures.
652            
653    2006-02-09  Timo Schulz  <[email protected]>
654    
655            * wptRegistry.cpp (set_winpt_reg_prefs): Removed keylist mode.
656            * wptNLS.c (gettext_localize_dialog): New.
657            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Add 'Cancel' button
658            to avoid to reload the key cache.
659            * wptClipEncryptDlg.cpp (clipenc_dlg_proc): Drop old 'normal'
660            list mode.
661            * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Likewise.
662            * wptPreferencesDlg.cpp (on_init_dialog): New. Move dialog
663            initiation code to this function.
664            (prefs_dlg_proc): Use it here.
665            
666    2006-02-07  Timo Schulz  <[email protected]>
667    
668            * wptKeyEdit.cpp (setNoPassphrase): New.
669            (getValidDays): New.
670            * wptKeysignDlg.cpp (keysign_dlg_proc): Check on init
671            if the key is protected.
672            * wptKeyEditDlgs.cpp (keyedit_addphoto_dlg_proc): Handle
673            keys without a passphrase.
674            (keyedit_addrevoker_dlg_proc): Likewise.
675            
676    2006-02-04  Timo Schulz  <[email protected]>
677    
678            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Check for
679            at least one ultimately trusted key.
680            * wptKeyManager.cpp (km_refresh_key_from_keyserver):
681            Only check inet connection if we refresh all keys.
682            * wptGPGUtil.cpp (gpg_extract_keys): New.
683            * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Use textmode.
684            * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Likewise.
685            * wptClipSignDlg.cpp (get_selected_key): New.
686            (one_key_proc): Use it here.
687            (count_useable_seckeys): New.
688            * wptSigTreeDlg.cpp (sigtree_dlg_proc): New.
689            * wptKeyEditDlgs.cpp (diff_time): Removed.
690            (w32_mktime): New.
691            (keyedit_addsubkey_dlg_proc): Use it here.
692            
693    2006-02-02  Timo Schulz  <[email protected]>
694    
695            * wptW32API.cpp (get_temp_name): New.
696            * wptKeyserver.cpp (ldap_recvkey): Use it here.
697            * wptKeyPropsDlg.cpp (get_photo_tmpname): Likewise.
698            * wptGPGUtil.cpp (create_tempfile): Likewise.
699            * wptImportList.cpp (implist_load): Likewise.
700            * wptKeyCache.cpp (parse_attr_data): Likewise.
701            (w32_tempfile): Removed.
702            * wptGPGME.cpp (check_ultimate_trusted_key): New.
703            
704    2006-01-31  Timo Schulz  <[email protected]>
705    
706            * wptMainProc.cpp (winpt_main_proc): Fix usage of the
707            help system.
708            * wptListView.cpp (listview_set_chkbox_style): New.
709            (listview_get_item_state): Support new checkbox style.
710            (listview_new): Reset flag var.
711            * wptKeylist.cpp (keylist_build): Support new checkbox style.
712            
713    2006-01-30  Timo Schulz  <[email protected]>
714    
715            * WinPT.cpp (check_readonly_attr): New.
716            (load_gpg_env): Use it here.
717            (WinPT): Make the the default key is searched in the
718            secret key cache.
719            Change error message.
720            * wptRegistry.cpp (regist_int_winpt): Make sure
721            the register extension is only offered once to the user.
722            * wptKeyPropsDlg.cpp (get_photo_tmpname): Always use
723            temp directory. Fixed a privilege problem.
724            
725    2006-01-29  Timo Schulz  <[email protected]>
726    
727            * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Allow to use ESC
728            to quit dialog.
729            * wptKeysignDlg.cpp (sig_class_dlg_proc): More space for
730            translations. Directly return sig class.
731            (keysign_dlg_proc): Change msgbox title.
732            * wptKeyEdit.cpp (signUserid): New.
733            (getUseridIndex): New.
734            (getKeyIndex): New.
735            (getSigIndex): New.
736            (clear): New.
737            * wptKeyEditCB.cpp (cmd_sign_handler): Allow to select
738            user-id first.
739            * wptKeyEditDlgs.cpp (lookup_cmd): New.
740            (do_editkey_sign_userid): New.
741            (do_init_cmdlist): Differ between key pairs and public keys
742            and allowed actions.
743            (keyedit_change_ownertrust): Show msgbox on success.
744            (get_default_key): New.
745            * wptPassphraseDlg.cpp (request_passphrase): Reset @cancel.
746            
747    2006-01-27  Timo Schulz  <[email protected]>
748    
749            * WinPT.cpp (WinMain): Set minimal list mode as default.
750            * wptKeyCache.cpp (gpg_keycache_sync): Handle special v3 keys.
751            
752    2006-01-25  Timo Schulz  <[email protected]>
753    
754            * wptRegistry.cpp (get_reg_entry_gpg): Return NULL if
755            the key exist with no value.
756            * wptMDSumDlg.cpp (mdsum_dlg_proc): Translate string.
757            * wptKeysignDlg.cpp (do_fill_seclist): Select the
758            default key if possible.
759            * wptFirstRunDlg.cpp (firstrun_dlg_proc): Directly
760            return the choice.
761            * wptKeylist.cpp (get_key_desc): New.
762            (keylist_upd_key): Free memory.
763            * wptKeyCache.cpp (gpg_keycache_get_default_key): New.
764            (gpg_keycache_set_default_key): New.
765            * WinPT.cpp (gpg_prefs_ok): New.
766            (WinMain): Only start gpg prefs if needed.
767            
768    2006-01-24  Timo Schulz  <[email protected]>
769    
770            * wptKeyManager.cpp (km_dropped_file_import): New.
771            * wptKeyManagerDlg.cpp (keylist_subclass_proc): Allow
772            to drop files and try to import them.
773            (keymanager_dlg_proc): Pass kmi as opaque to the subclass
774            proc.
775            
776    2006-01-23  Timo Schulz  <[email protected]>
777    
778            * wptMDSumDlg.cpp (mdsum_dlg_proc): Allow to send output
779            to the clipboard.
780            * wptKeyEditDlgs.cpp (keyedit_change_ownertrust): New.
781            (do_editkey_enable_disable): New.
782            * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Usability fix. Do not
783            close the dialog if the user cancelled the ownertrust dialog.
784            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Return TRUE to indicate
785            an update of any value.
786            
787    2006-01-21  Timo Schulz  <[email protected]>
788    
789            * wptKeyCache.cpp (keycache_next_key): Handle the case
790            that there is a secret key without a public part.
791            * wptKeyserver.cpp (kserver_save_conf): Save ports.
792            * wptKeyserverDlg.cpp (keyserver_modify_dlg_proc):
793            Reset keyserver name.
794            * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Just indicate
795            an update, do not update the cache.
796            * wptFileManagerDlg.cpp (file_import_dlg_proc): Use one
797            dialog for both clipboard and file imports.
798            * wptKeyManager.cpp (km_file_import, km_clip_import):
799            Changes to support new update system.
800            (gpg_clip_import): New.
801            * wptKeyManagerDlg.cpp (km_gui_import): New.
802            (find_keypos): Rewritten.
803            (refresh_keylist): Improved error checking.
804            
805    2006-01-20  Timo Schulz  <[email protected]>
806    
807            * wptKeyCache.cpp (w32_tmpfile): New.
808            (parse_attr_data): Use it here.
809            * wptGPGUtil.cpp (gpg_get_photoid_data): Reset @ndata var.
810            
811    2006-01-19  Timo Schulz  <[email protected]>
812    
813            * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Do not
814            reload the entire cache, just update the key.
815            * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Likewise.
816            * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Set update flag.
817            * wptKeyRevokersDlg.cpp (key_revokers_dlg_proc): Likewise.
818            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Update key
819            if need after showing the properties.
820            * wptGPGMEData.cpp (gpg_data_putc): Fix off-by-one bug.
821            * wptKeyManager.cpp (km_import_file): New param. Changed
822            all callers.
823            (km_import_clip): Likewise.
824            (delete_keys_from_cache): Delete secret part if available.
825            * wptClipImportDlg.cpp (print_import_status): If there
826            are too many new keys, use reload code.
827            
828    2006-01-18  Timo Schulz  <[email protected]>
829    
830            * wptKeyEditCB.cpp (cmd_delsig_handler): Do not assume
831            the self sig is always index 0. Noted by Kurt.
832            * wptPassphraseCB.cpp (passphrase_dlg_proc): Do not assume
833            the key user-ID contains an email address.
834            * wptKeyEditDlgs.cpp (do_find_userid): Likewise.
835            (do_editkey_deluid): Likewise.
836            (do_editkey_revuid): Likewise.
837            
838    2006-01-18  Timo Schulz  <[email protected]>
839    
840            * wptListview.cpp (listview_del_sel_items): Fixed index
841            calculation. This fixed a lot of problems with the KM listview
842            update.
843            (listview_del_all): Renamed to...
844            (listview_del_all_items): ..this. Changed all callers.
845            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Just refresh
846            list when file import contained new/updated keys.
847            * wptKeyManager.cpp (km_file_import): Indicate if the
848            import contained any new/update keys.
849            * wptClipImportDlg.cpp (print_import_status): Just mark
850            keys which actually changed.
851            
852    2006-01-17  Timo Schulz  <[email protected]>
853    
854            * wptMAPI.cpp (mapi_send_pubkey_ext): New.
855            * wptKeysigDlg.cpp (do_delsig): Just flag the key, do not
856            update it.
857            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Be more
858            careful about const pointers.
859            * wptKeyEditDlgs.cpp (get_subkey_fingerprint): Renamed to..
860            (get_subkey_keyid): ..this. Fix problem that key was updated
861            twice and this corrupted.
862            (keyedit_add_subkey): Set @lv item in the callback context.
863            
864    2006-01-16  Timo Schulz  <[email protected]>
865    
866            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Restore
867            window if it lost focus during the operation. Thanks to Kurt.
868            Update keylist when the window is enabled.
869            (find_keypos): New.
870            * wptKeyCache.cpp (keycache_next_key): Reset update status.
871            (gpg_keycache_next_updated_key): New arg @r_status. Change all
872            callers.
873            (gpg_keycache_update_key): Different status for new and updated.
874            Include key signatures.
875            * wptClipImportDlg.cpp (print_import_status): Mark all
876            imported keys.
877            * wptMainProc.cpp (clip_gpg_dlg): On import refresh KM keylist.
878            Thanks to Kurt.
879            * wptKeysigDlg.cpp (recv_missing_keys): Mark all received keys.
880            (do_delsig): Directly reload key. Thanks to Kurt.
881            * wptGPGME.cpp (keycache_set_reload, keycache_get_reload):
882            Removed.
883            * wptKeygenDlg.cpp (keygen_dlg_proc): Use new update system.
884            * wptClipImportDlg.cpp (clip_import_dlg_proc): Return
885            FALSE if no keys were updated or operation was cancelled.
886            * wptCommonDlg.cpp (http_dlg_proc): Fix title selection code.
887            * wptKeylist.cpp (get_ext_validity): Handle disabled keys.
888            * wptKeyPropsDlg.cpp (keyprops_dlg_proc):
889            Do not allow to change ownertrust of invalid keys.
890            Changed translation.
891            Slightly different user interface.
892            
893    2006-11-14  Timo Schulz  <[email protected]>
894    
895            * wptW32API.cpp (make_special_filename): New.
896            * wptRegistry.cpp (set_winpt_reg_prefs, get_winpt_reg_prefs):
897            Removed 'KeyServer' item.
898            * wptPreferencesDlg.cpp (prefs_dlg_proc): Remove keyserver
899            config item.
900            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Disable group
901            window until we really use it.
902            * wptKeyserver.cpp (kserver_save_conf): New.
903            (wsock_end): Save keyserver config file.
904            * wptKeyserverDlg.cpp (keyserver_edit): New.
905            (keyserver_remove): New.
906            (keyserver_add): New.
907            (fill_keyserv_types): New.
908            (keyserver_modify_dlg_proc): New.
909            (keyserver_dlg_proc): Provide context menu to modify the
910            keyserver list.
911            (keyserver_build_list): Remove 'proto' column because it is
912            not really useful.
913            * WinPT.cpp (load_keyserver_conf): Store keyserver.conf at
914            $APPDATA\winpt. If keyserver.conf exists in the current folder
915            move it to the new destination.
916            
917    2006-11-13  Timo Schulz  <[email protected]>
918    
919            * wptPreferencesDlg.cpp (prefs_dlg_proc): Changed translation.
920            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Likewise.
921            * wptAboutDlgs.cpp (about_dlg_proc): Make sure GPG about
922            dialog isn't shown twice.
923            * wptKeyCache.cpp (gpg_keycache_next_updated_key): New.
924            (gpg_keycache_update_key): Set update flag.
925            * wptKeyManagerDlg.cpp (refresh_keylist): New.
926            (keymanager_dlg_proc): Use new refresh system for keyservers.
927            * wptKeyserverSearchDlg.cpp (kserver_search_dlg_proc):
928            Update keycache.
929            * wptKeyserverDlg.cpp (hkp_dlg_proc): Likewise.
930            * wptKeyserver.cpp (socket_read_ext): New.
931            (kserver_recv_key_ext): New.
932            (kserver_read_config, kserver_write_config): Removed.
933            
934    2006-01-12  Timo Schulz  <[email protected]>
935    
936            * wptListView.cpp (listview_set_image_list): Make icons
937            always transparent.
938            * wptImageList.cpp (imagelist_load): New icons.
939            * wptGPGMEData.cpp (gpg_data_putc): New.
940            * wptKeyManagerDlg.cpp (load_toolbar): Include new icons.
941            (keymanager_dlg_proc): Add tooltips.
942            * wptKeyserverDlg.cpp (keyserver_list_build): Use icons.
943            * wptKeyserver.cpp (URL_encode): New.
944            (URL_must_encode): New.
945            (kserver_search_init): Properly encode pattern.
946            (parse_iso_date): New.
947            (keyserver_search): Be more strict to prevent buffer overflows.
948            
949    2006-01-11  Timo Schulz  <[email protected]>
950    
951            * wptKeyManagerDlg.cpp (load_toolbar): 2 new icons.
952            (keymanager_dlg_proc): Adjust tooltips.
953            (update_ui_items): Handle new icons.
954            * wptImageList.cpp (imagelist_load): New icons.
955            
956    2006-01-10  Timo Schulz  <[email protected]>
957    
958            * wptMainProc.cpp (winpt_main_proc): Restore iconic
959            File/Key Manager windows if needed.
960            * wptGPGPrefsDlg.cpp (gpg_prefs_dlg_proc): Disable button.
961            * wptSiglist.cpp (init_cmp): New.
962            (siglist_sort): New.
963            (siglist_cmp_cb): New.
964            (siglist_add_key): Force NOKEY status when key was not found.
965            * wptKeysigDlg.cpp (recv_single_key): New.
966            (recv_missing_keys): Reload entire key when more than one key
967            was fetched.
968            (keysig_dlg_proc): Support sorting the listview items.
969            
970    2006-01-09  Timo Schulz  <[email protected]>
971    
972            * WinPT.cpp (load_gettext): Remove file locking.
973            (WinMain): Use pre-defined autoconf constants.
974            * wptW32API.cpp (init_file_lock, release_file_lock): Deleted.
975            * wptGPG.cpp (check_gnupg_engine): Add param @need_gpg_ver.
976            Change all callers.
977            
978    2006-01-07  Timo Schulz  <[email protected]>
979    
980            * wptKeyManager.cpp (km_refresh_from_keyserver): Summarize
981            import status if just one key was selected.
982    
983    2006-01-04  Timo Schulz  <[email protected]>
984    
985            * wptGPGMEWrapper.c (setChangeVersion): New.
986            (exportToBuffer, exportToFile, exportToClipboard): New.
987            (setArmor, getArmor): New.
988            * wptKeylist.cpp (get_key_expire_date): Return locale specific
989            date.
990            (keylist_get_recipients): Do not fetch the key again.
991            (keylist_enum_recipients): Likewise.
992            * wptGPG.cpp (create_empty_keyring): New.
993            (get_gnupg_keyring): Fixed 'strict' logic.
994            * wptKeyManagerDlg.cpp (update_ui_items): Disable some buttons
995            when no secret keys are available.
996            * wptKeyManager.cpp (km_send_to_mail_recipient): Release key data
997            before the MAPI call is made.
998            * WinPT.cpp (check_for_empty_keyrings): New.
999            
1000    2006-01-03  Timo Schulz  <[email protected]>
1001    
1002            * pubkey.ico, keypair.ico: New.
1003            * wptListview.cpp (listview_add_item_image): New.
1004            (listview_set_image_list): New.
1005            * wptSigList.cpp (siglist_add_key): Correct order of the sigs.
1006            * wptKeyProps.cpp (keyprops_load_photo): Adjusted for new
1007            JPEG data.
1008            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Do not allow to
1009            add items to revoked keys.
1010            * wptKeyManager.cpp (km_delete_keys): Do not use uninitialized
1011            keyid buffer. This fixes a segv.
1012            * wptKeyserver.cpp (spawn_application): New.
1013            (ldap_recv_key): Support recent protocols and several cleanups.
1014            * wptKeylist.cpp (do_addkey): Set image which depends on the
1015            key type.
1016            (keylist_enum_recipients): Cleanups.
1017            (keylist_get_keyflags): Rewritten.
1018            * wptKeyCache.cpp (free_attr_list): New.
1019            (parse_attr_list): New.
1020            (parse_attr_data): New.
1021            (keycache_update_photo): New.
1022            (keycache_update_photos): New.
1023            (gpg_keycache_update_key): Automatically reload photos if needed.
1024            * wptGPGUtil.cpp (create_process): New param @err. Change all
1025            callers.
1026            (map_tmpfile): New param @nread. Change all callers.
1027            (gpg_get_photoid_data): New.
1028            * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Do not allow to
1029            add items to revoked keys.
1030            (subkey_init_list): Store gpgme key object.
1031            
1032    2005-12-29  Timo Schulz  <[email protected]>
1033    
1034            * wptKeygenDlg.cpp (keygen_dlg_proc): Request passphrase dynamically.
1035            (gpg_genkey_params): Simplified.
1036            * wptPreferencesDlg.cpp (prefs_dlg_proc): Fix problem with mutal
1037            exclusion of the dialog items.
1038            * wptAboutDlgs.cpp (about_winpt_dlg_proc): Allow to use ESC to
1039            quit the dialog.
1040            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
1041            * wptMDSumDlg.cpp (mdsum_dlg_proc): Handle WM_SYSCOMMAND.
1042            (id2algo): New.
1043    
1044    2005-12-28  Timo Schulz  <[email protected]>
1045    
1046            * wptKeyserverDlg.cpp (show_imported_keys): Decode user IDs.
1047            * wptKeyRevokersDlg.cpp (key_revokers_dlg_proc): Likewise.
1048            * wptKeylist.cpp (keylist_udp_key): Likewise.
1049            * wptKeyManager.cpp (key_get_clip_info, key_get_info): Likewise.
1050            * wptClipDecryptDlg.cpp (clip_decrypt_dlg_proc): Fix problem
1051            when no signing key was found.
1052            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Properly decode
1053            user IDs.
1054            (translate_popup_strings): s/Revoke/Revoke Cert.
1055            * wptKeyEditDlgs.cpp (do_init_keylist): Do not assume a
1056            0x prefixed keyid.
1057            * wptKeyEditCB.cpp (editkey_command_handler): Also reset
1058            step in case of a bad passphrase.
1059            
1060    2005-12-27  Timo Schulz  <[email protected]>
1061    
1062            * wptListView.cpp (listview_set_view): New.
1063            (listview_del_column): New.
1064            * wptW32API.cpp (get_locale_date): New.
1065            (get_menu_state): New.
1066            (force_foreground_window): New.
1067            * wptVerifyList.cpp (strtimestamp): Support for
1068            locale date formats.
1069            * wptGPGUtil.cpp (gpg_revoke_cert): Handle bad
1070            passphrases.
1071            * wptKeyEditCB.cpp (editkey_command_handler): Immediately
1072            return when a bad passphrase was submitted.
1073            * wptKeyRevokersDlg.cpp (keyrevokers_dlg_proc): Change
1074            column order.
1075            * wptKeylist.cpp (keylist_upd_col): New.
1076            * wptKeyManagerDlg.cpp (update_ui_items): Deactivate
1077            'Revocation' for public keys.
1078            (translate_menu_strings): s/Revoke/Revoke Cert.
1079            (modify_listview_columns): New.
1080            
1081    2005-12-18  Timo Schulz  <[email protected]>
1082    
1083            * wptKeyManagerDlg.cpp (save_column_size): New.
1084            (restore_column_size): New.
1085            (keymanager_dlg_proc): Save and restore column sizes for
1086            the listview control.
1087            * wptKeyManager.cpp (key_get_info): New.
1088            (km_delete_keys): Use it here to have a consistent message.
1089            Use stored key context and not the column data.
1090            (km_enable_disable_key): Likewise.
1091            (km_send_to_keyserver): Likewise.
1092            (km_set_implicit_trust): Likewise.
1093            * wptKeylist.cpp (get_key_pubalgo2): New.
1094            
1095    2005-12-17  Timo Schulz  <[email protected]>
1096    
1097            * wptUTF8.cpp: Removed unused charset array.
1098            * wptSigList.cpp (siglist_build): Increase size for 'class'
1099            column.
1100            * wptGPG.cpp (get_gnupg_path): Simplified.
1101            * WinPT.cpp (load_gpg_env): New.
1102            (check_crypto_engine): Return type is now bool.
1103            * wptRegistry.cpp (is_gpg4win_installed): New.
1104            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): More consistent
1105            dialog design.
1106            * wptKeyManagerDlg.cpp (translate_menu_strings): New.
1107            (translate_popupmenu_strings): New.
1108            * wptKeyEditDlgs.cpp (is_jpg_file): New.
1109            
1110    2005-12-13  Timo Schulz  <[email protected]>
1111    
1112            * wptCommonDlg.cpp (http_dlg_proc): Localized missing elements.
1113            * wptKeyManagerDlg.cpp (change_edit_menu): New.
1114            (change_key_menu): Renamed from...
1115            (menu_gpg_readonly): ..this.
1116            (clip_contains_pgpkey): New.
1117            (update_ui_items): Do not allow to sign expired keys.
1118            (keymanager_dlg_proc): Same for popup menu.
1119            * wptKeyPropsDlg.cpp (parse_preflist): Fixed string handling.
1120            * wptKeyCache.cpp (copy_uid_prefs):
1121            (gpg_keycache_sync): Copy uid prefs so the key property
1122            dialog show the correct values. Thanks to Shane.
1123            
1124    2005-12-11  Timo Schulz  <[email protected]>
1125    
1126            * wptW32API.cpp (get_file_version): New.
1127            * wptGPGUtil.cpp (create_process): Always hide window.
1128            * wptClipEditDlg.cpp (clipedit_dlg_proc): Use 'Close'
1129            instead of 'Exit'.
1130            * wptKeyManager.cpp (km_http_import): New filename
1131            generation code.
1132            (km_send_to_mail_recipient): Cleanups.
1133            * wptKeyEditDlg.cpp (showpref_dlg_proc): Localize dialog.
1134            * wptKeyManagerDlg.cpp (update_ui_items): Handle the case
1135            when multiple keys are selected.
1136            (popup_multiple): New.
1137            * WinPT.cpp (WinMain): Check that the PTD.dll and WinPT.exe
1138            file versions are equal. Rewrote --keymanager code.
1139            
1140    2005-12-08  Timo Schulz  <[email protected]>
1141    
1142            * wptKeyserverDlg.cpp (show_imported_keys): Enhanced.
1143            (hkp_recv_key2): Show user-id of the imported key instead
1144            of just the pattern.
1145            * wptFileCBS.cpp (read_cb): Changed to W32 API.
1146            (write_cb): Likewise. Create output file on demand.
1147            (gpg_file_data_new): Adjusted code for new API.
1148            * wptKeyEdit.cpp (cleanKey): New.
1149            * wptKeyEditCB.cpp (cmd_clean_handler): New.
1150            (editkey_command_handler): Call clean handler.
1151            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Sort
1152            keylist after inserting items.
1153            * wptFileManager.cpp (fm_set_status): Take care of
1154            cleartext sigs.
1155            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Make
1156            sure can be closed.
1157            
1158    2005-12-07  Timo Schulz  <[email protected]>
1159    
1160            * wptOwnertrustDlg.cpp (ownertrust_dlg_proc):
1161            Use 'Close' instead of 'Exit'.
1162            * wptKeyEditDlgs.cpp (keyedit_dlg_proc): Likewise.
1163            * wptGPG.cpp (gnupg_backup_keyrings): Use $APPDATA
1164            as the destination dir. Thanks to Werner.
1165            * wptRegistry.cpp (is_gpgee_installed): New.
1166            (regist_inst_winpt): Do not register file extensions
1167            if GPGee is available.
1168            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Limit
1169            use of local vars.
1170            * wptPreferencesDlg.cpp (prefs_dlg_proc): Make sure
1171            no illegal backup mode is saved.
1172            * wptKeyserverDlg.cpp (show_imported_key): New.
1173            (hkp_recv_key2): Show imported keys if the blob
1174            contained more than one.
1175            
1176    2005-12-06  Timo Schulz  <[email protected]>
1177    
1178            * WinPT.cpp (WinMain): Load the gettext environment soon
1179            as possible so all 'first start' messages are localized.
1180            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): If a single key is
1181            received via the keyserver, return the gpgme key context on
1182            success and add it directly to the list.
1183            * wptKeyserverDlg.cpp (keyserver_dlg_proc): Support a param
1184            to store the key.
1185            (hkp_recv_key2): Add extra param for the fingerprint.
1186            (hkp_recv_key): Call hkp_recv_key2 without fingerprint.
1187            
1188    2005-12-02  Werner Koch  <[email protected]>
1189    
1190            * wptKeyEditDlgs.cpp (subkey_list_init): Avoid trigraphs.
1191    
1192    2005-12-01  Timo Schulz  <[email protected]>
1193    
1194            * wptClipVerifyDlg.cpp (clipverify_dlg_proc): Use new semantic
1195            for get_gpg_sigstat().
1196            * wptGPGME.cpp (get_gpg_sigstat): New. It is now a function.
1197            As a macro strings will not be translated at runtime.
1198            * wptKeyserverDlg.cpp (hkp_recv_key): Properly detect if we
1199            need to update the cache. Thanks to Jan-Oliver.
1200            * wptKeyImportStatusDlg.cpp (import_status_dlg_proc): Localized.
1201            
1202    2005-11-30  Timo Schulz  <[email protected]>
1203    
1204            * wptW32API.cpp (dialog_box_param): Removed LANG_DE code.
1205            * WinPT-en.rc: Removed string list.
1206            * wptFileSaveDlg.cpp (file_save_dlg_proc): Localized
1207            * wptKeylist.cpp (keylist_build): Cannot use global
1208            arrays for the columns due to gettext.
1209            
1210    2005-11-29  Timo Schulz  <[email protected]>
1211    
1212            * WinPT.cpp (WinMain): Modify --keymanager. If an instance
1213            is running, just send the command to open the manager.
1214            
1215    2005-11-25  Timo Schulz  <[email protected]>
1216    
1217            * wptKeyEditCB.cpp (addrev_cmd_handler): Avoid hanging
1218            process when the revoker is already there.
1219            
1220    2005-11-24  Timo Schulz  <[email protected]>
1221    
1222            * wptPassphraseCB.cpp (passphrase_callback_proc): Localize
1223            signing dialog items.
1224            * wptMainProc.cpp (confirm_delclip_dlg): Localize dialog items.
1225            * wptAboutDlgs.cpp (about_winpt_dlg_proc): Disable help for now.
1226            * wptMDSumDlg.cpp (mdsum_dlg_proc): Localize missing items.
1227            * wptKeylist.cpp (key_check_validity): Likewise.
1228            * wptKeyEditDlgs.cpp (keyedit_addsubkey_dlg_proc): Likewise.
1229            
1230    2005-11-22  Timo Schulz  <[email protected]>
1231    
1232            * wptCardEditCB.cpp (gpg_write): Due to removed _DEBUG
1233            macro debug output will be generated in release version.
1234            
1235    2005-11-21  Timo Schulz  <[email protected]>
1236    
1237            * WinPT.cpp (WinMain): Implement --stop switch.
1238            * wptClipEditDlg.cpp (clip_edit_dlg_proc): Localize
1239            missing string.
1240            * wptPreferencesDlg.cpp (prefs_dlg_proc): Likewise.
1241            * wptKeygenDlg.cpp (keygen_dlg_proc): Verify valid context
1242            first. Thanks to Ralf.
1243            * wptFileManagerDlg.cpp (update_ui_items): New.
1244            * wptFileManager.cpp (fm_set_status): New sigmode param.
1245            Changed all callers.
1246            
1247    2005-11-17  Timo Schulz  <[email protected]>
1248    
1249            * wptGPG.cpp (check_last_gnupg_access): Kludge to avoid that
1250            the cache will be loaded twice.
1251            * wptRegistry.cpp (regist_inst_winpt): More comments.
1252            * wptKeyManagerDlg.cpp (do_center_window): Make sure that
1253            neg. coordinates are never used.
1254            * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Localize all
1255            strings.
1256            * wptPassphraseCB.cpp (passphrase_callback_proc): Likewise.
1257            * wptFileManagerDlg.cpp (filemanager_dlg_proc): Localize menu
1258            and save 'AlwaysOnTop' in the registry.
1259            
1260    2005-11-16  Timo Schulz  <[email protected]>
1261    
1262            * WinPT.cpp (check_crypto_engine): Min is now GPG 1.4.2.
1263            * wptKeylist.cpp (keylist_add_key): Add disabled keys in list
1264            mode.
1265            * wptPreferencesDlg.cpp (prefs_dlg_proc): Localize all strings.
1266            * wptRegistry.cpp (regist_inst_winpt): Set install directory.
1267            Useful for other programs to figure out the path to the EXE.
1268            
1269    2005-11-14  Timo Schulz  <[email protected]>
1270    
1271            * wptGPG.cpp (check_gnupg_engine): Fix version check.
1272            * wptMainProc.cpp (winpt_main_proc): Check keyring
1273            file permissions always and do not use interative output
1274            when the windows session ends.
1275            * wptProxySettingsDlg.cpp (proxy_settings_dlg_proc):
1276            Localize all strings.
1277            * wptPassphraseDlg.cpp (passwd_dlg_proc): Likewise.
1278            * wptGPGPrefsDlg.cpp (gpg_prefs_dlg): Likewise.
1279            * wptKeyEditDlgs.cpp (do_init_keylist): Skip all
1280            non-valid keys.
1281            
1282    2005-11-12  Timo Schulz  <[email protected]>
1283    
1284            Fix more GCC warnings.
1285    
1286    2005-11-10  Timo Schulz  <[email protected]>
1287    
1288            * wptClipSignDlg.cpp (one_key_proc): Use
1289            release_gpg_passphrase_cb() to free the context.
1290            * wptListView.cpp (listview_deselect_all): New.
1291            * wptMAPI.cpp (mapi_send_pubkey): Works again.
1292            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Support encrypt &
1293            zip.    
1294            * wptPassphraseCB.cpp (passphrase_callback_proc): Fix passphrase
1295            caching for signing operations.
1296            * wptKeyManager.cpp (km_send_to_mail_recipient): Works again.
1297            * wptFileManager.cpp (fm_send_file): Likewise.
1298            (fm_encrypt_into_zip): New.      
1299            
1300    2005-11-09  Timo Schulz  <[email protected]>
1301    
1302            * wptNLS.c (get_gettext_langid): Map user language id to
1303            printable gettext language strings.
1304            * wptRegistry.cpp (get_reg_entry_mo): Support for the
1305            gettext environment.
1306            * wptFileManager.cpp (fm_encrypt): Close all files before
1307            the wipe procedure is called.
1308            * wptVerlist.cpp (verlist_add_sig): Handle the case the
1309            issuer is not valid but the signature is.
1310            (verlist_add_sig_log): Likewise. Thanks to the folks on
1311            winpt-users.
1312            
1313    2005-11-08  Werner Koch  <[email protected]>
1314    
1315            * SAFE.ICO, SIGN.ICO: Fixed capitalization.
1316            * WinPT-en.rc: Ditto.
1317            * winpt_km.ico:  Moved from ../.
1318    
1319            * Makefile.am (resource_files): Add missing backslash.
1320    
1321    2005-11-08  Timo Schulz  <[email protected]>
1322    
1323            More minor changes to avoid GCC warnings.
1324            
1325            * wptGPG.cpp (check_homedir): Free memory in case of errors.
1326            (multi_gnupg_path): Add strict mode. If non-strict mode return
1327            the folder even if it does not exist.
1328            (check_for_gpgwin): New.
1329            * wptKeyserverDlg.cpp (hkp_recv_key): Make sure import_res is
1330            initialized.
1331            * wptRegistry.cpp (get_reg_entry_gpg4win): New.
1332            (get_reg_entry_mo): Support for gpg4win.
1333            
1334    2005-11-07  Timo Schulz  <[email protected]>
1335    
1336            * wptMainProc.cpp (winpt_main_proc): Disable
1337            some menu items when no secret key is available.
1338            
1339    2005-11-05  Timo Schulz  <[email protected]>
1340    
1341            More minor changes to avoid GCC warnings.
1342            
1343            * wptErrors.cp (winpt_strerror): Return w32
1344            formatted error and do not use 'break'.
1345            
1346    2005-11-04  Werner Koch  <[email protected]>
1347    
1348            * WinPT-en.rc: Fixed locations of icons.
1349    
1350    2005-11-03  Timo Schulz  <[email protected]>
1351    
1352            A lot of minor changes to avoid GCC warnings.
1353    
1354            * wptGPG.cpp (get_gnupg_keyring): Only check size for
1355            public keyring.
1356            * wptKeyManager.cpp (km_update_default_key_str): Do
1357            not issue a bug message when no secret key was found.
1358            * wptGPGPrefsDlg.cpp: Replace "" with NULL in the name struct.
1359            
1360    2005-11-02  Werner Koch  <[email protected]>
1361    
1362            * WinPT.cpp (WinMain): Disabled PTD version tests.
1363            (check_crypto_engine): Fixed version check for scard.
1364    
1365            * wptErrors.cpp (debug_end): Add dummy function.
1366    
1367            * Makefile.am (code_files): Added wptCardEditCB.cpp and
1368            wptKeyEditCB.cpp.
1369    
1370    2005-10-31  Werner Koch  <[email protected]>
1371    
1372            * wptCurrWnd.cpp: Include wptVersion.h to get prototypes of PTD
1373            functions.
1374    
1375            * wptKeyEditDlgs.cpp: Include oleauto.h
1376            * wptKeyEdit.cpp: Include time.h.
1377            * wptRegistry.cpp (gpg_filetypes): New from ../Include/wptGPG.h.
1378            * wptGPGUtil.cpp (gpg_manage_ownertrust): s/export/exportflag/.
1379    
1380            * Makefile.am (code_files): Add wptGPGUtil.cpp, wptCardEdit.cpp,
1381            wptKeyEdit.cpp and wptKeycache.cpp.
1382    
1383            * wptPassphraseCB.cpp: Fixed spelling of wptKeylist.h
1384            * wptImportList.cpp (implist_load): Use remove and not unlink.
1385            * wptGPG.cpp: Fixed spelling of wptGpgCmds.h
1386            * wptImportList.cpp (implist_load): Use remove and not unlink.
1387            * wptKeyManager.cpp (km_http_import): Ditto
1388            * wptMainProc.cpp: Include wptCrypto.h
1389            * wptKeyManager.cpp: Ditto.
1390            * wptFileManager.cpp: Ditto.
1391            * wptImportList.cpp (parse_colon_key): Need to cast argument for
1392            isdigit.  Include ctype.h.
1393            * wptGPG.cpp: Include shlobj.h.
1394    
1395            Fixed double inclusion of windows.h.
1396            
1397            * Makefile.am (bin_PROGRAMS): Don't build KeyManagerExe for now.
1398            * wptKeylist.cpp (get_key_created): Broke up trigraph.
1399            (get_key_status): Removed dangerous use of sprintf.  Still other
1400            flaws present, see comment.
1401    
1402            * wptCardPCSC.c: Don't include winscard.h.
1403            (pcsc_readerstate_t, pcsc_context_t): New.  Changed call users to
1404            use these types.
1405            (PCSC_): Added a lot of constants, all taked from GnuPG 1.9.
1406            (SCARD_S_SUCCESS): Changed all compares to test the value directly
1407            against zero.
1408    
1409            * WinPT.cpp: Include wptCrypto.h.
1410            (WinMain): Don't shard S. Removed usunsed variable SIZE.
1411            * Makefile.am (code_files): Actually add files by adding a first
1412            backslash.
1413            * wptMDSumDlg.cpp: Include wptCrypto.h.
1414            * wptProxySettingsDlg.cpp: Included ctype.h.
1415            * wptKeysigDlg.cpp: Fixed spelling of wptKeylist.h.
1416            * wptKeysignDlg.cpp: Ditto
1417            * wptKeyRevokersDlg.cpp: Ditto. Fixed spelling of wptW32API.h.
1418            * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Replaced unlink by remove.
1419            Removed unused variable.
1420            * wptClipVerifyDlg.cpp (show_notation_data): s/not/nota/ due to
1421            silly c++ operator synonyms.
1422            * wptKeyEditDlgs.cpp: Include time.h.
1423            * wptClipDecryptDlg.cpp: Include wptCrypto.h to define PGP_MESSAGE.
1424            * wptFileManagerDlg.cpp: Ditto.
1425            (space_wipefrees_dlg_proc): Replaced unlink by remove; it doesn't
1426            matter if it does an rmdir for a directory.
1427    
1428            Fixed include of resource.h which is not anymore in the top
1429            directory.
1430    
1431    2005-10-28  Werner Koch  <[email protected]>
1432    
1433            * wptProxySettingsDlg.cpp (check_number): Cast isdigit() arg to
1434            unsigned.  Never ever use a possible signed char as argument for
1435            ctype tests.  An alternative is to first test using isascii ().
1436            (keyserver_proxy_dlg_proc): Removed unused variable.
1437    
1438    2005-10-27  Timo Schulz  <[email protected]>
1439    
1440            * wptKeyPropsDlg.cpp (get_validity): Take care of disabled keys.
1441            * wptKeylist.cpp (keylist_add_key): Check global key flag to
1442            see if the key is disabled and not each subkey.
1443            (seclist_init): Likewise.
1444            * wptClipDecryptDlg.cpp (gpgme_op_clip_decrypt): Use
1445            gpgme_op_decrypt_verify.
1446            (clip_decrypt_dlg_proc): Fixed fingerprint
1447            to keyid conversation. This also fixes a crash.
1448            * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Likewise.
1449            * wptKeyEditDlgs.cpp (do_editkey_expire): Ask if the key
1450            already expired if the user wants to change the date.
1451            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Replace old
1452            'v3 sig' option with the 'ask cert level' option. Sync
1453            with global preferences.
1454            * wptKeySignDlg.cpp (keysign_dlg_proc): Watch if the
1455            gpg.conf contains 'ask-cert-level'. If not disable button.
1456            * wptKeySigDlg.cpp (keysig_dlg_proc): Automatically disable
1457            the button when the key is available.
1458            Reload key directly, not the entire cache.
1459            
1460    2005-10-26  Timo Schulz  <[email protected]>
1461    
1462            * wptFileManager.cpp (is_floppy_disc): Prevent very unlikely but
1463            possible overflow.
1464            (is_openpgp_ext): Compare case insentensive.
1465            (add_single_file): New.
1466            (fm_add_opened_files): Support multi file selection.
1467            * wptKeyPropsDlg.cpp (do_change_ownertrust): Removed.
1468            * wptKeyManager.cpp (km_enable_disable_key): Do not set cache
1469            reload flag. Just update the single key.
1470            * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Remove static var
1471            and disable anonymize recipient for now.
1472    
1473            Begin to port code to GCC. Fix all warning issued by the gcc
1474            compiler.
1475    
1476    2005-10-25  Timo Schulz  <[email protected]>
1477    
1478            * wptGPGUtil.cpp (create_process): Hide window.
1479            * wptKeyPropsDlg.cpp (get_photo_tmpname): New.
1480            * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Remove
1481            static var 'enable'.
1482            * wptKeygenDlg.cpp (keygen_dlg_proc): Likewise.
1483            (gpg_genkey_params): Make sure all primary keys are capable
1484            for signing and certification.
1485            * wptKeySigDlg.cpp (is_sig): If no item is selected, return 0.
1486            * wptGPG.cpp (gnupg_access_keyring): Check return value for
1487            NULL. Noted by Ralf.
1488            (get_gnupg_prog): Simplified.
1489            (check_homedir): Fixed. Return 0 when the dir is successfully created.
1490            * wptKeyManagerDlg.cpp (km_file_import): Use the hourglass to
1491            indicate a pending GPG process.
1492            * wptFileManager.cpp (op_begin, op_end): New. Indicate an start
1493            and and of an operation. For now just the cursor changes.
1494            (fm_parse_command_line): Remove debug output. Thanks to Ralf again.
1495            * WinPT.cpp (WinMain): Check if there is already an instance and
1496            set a variable early as possible.
1497            (load_gettext): If a previous instance was found, do not output
1498            any errors. Kudos to Ralf.      
1499    
1500    2005-10-24  Timo Schulz  <[email protected]>
1501    
1502            * wptPassphraseCB.cpp (passphrase_callback_proc): Allow to use
1503            pre-defined recipients.
1504            (release_gpg_passphrase_cb): Release recipients.
1505            * wptKeyPropsDlg.cpp (keyprops_load_photo): Set photo-id
1506            validity if needed.
1507            (keyprops_dlg_proc): Issue a warning if the photo is valid.
1508    
1509    2005-10-23  Timo Schulz  <[email protected]>
1510    
1511            * wptFileManager.cpp (fm_get_file_type): Detect detached sigs.  
1512            * wptKeyList.cpp (keylist_cmp_cb): Take care of expired/revoked keys.
1513            (get_ext_validity): New.
1514            * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Several cleanups.
1515            * wptClipEditDlg.cpp (load_clipboard): Factored out some code into
1516            this function.
1517            (load_clipboard_from_file): Likewise.
1518            (save_clipboard_to_file): New.
1519            * wptKeyManagerDlg.cpp (keyprops_dlg_proc): Fix stack overflow.
1520    
1521    2005-10-22  Timo Schulz  <[email protected]>
1522    
1523            Localized a lot of more strings.
1524    
1525            * wptMainProc.cpp (load_smartcard): New.
1526            * wptFileManager.cpp (fm_parse_command_line): Simplify code.
1527            (fm_check_armor_type): Add new arg. Change all callers.
1528            (fm_get_file_type): Likewise.
1529            * wptKeyPropsDlg.cpp (display_key_info): New.  
1530            (keyprops_show_photo): Factored out some code into..
1531            (keyprops_load_photo): ..this function.
1532    
1533    2005-10-21  Timo Schulz  <[email protected]>
1534    
1535            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Use
1536            WM_INITPOPUPMENU to localize popup menu texts.
1537            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
1538            * wptClipSignDlg.cpp (one_key_proc): Use wipememory instead of memset.  
1539    
1540    2005-10-20  Timo Schulz  <[email protected]>
1541    
1542            Now WinPT depends on GPG 1.4.3 and GPGME 1.2.0.
1543    
1544            * wptPassphraseCB.cpp (passphrase_cb): Complete card support.
1545            * wptCardEdit.cpp (genKey): Handle cancel case.
1546            * keycache.c: Renamed into...
1547            * wptKeyCache.cpp: ...this.
1548            * wptW32API.cpp (set_menu_text): Removed unused code.
1549            (set_menu_text_bypos): New.
1550            * wptCrypto.h: New.
1551            * wptMainProc.cpp (winpt_main_proc): Complete localize
1552            menu texts.
1553            * wptErrors.cpp (log_debug): Use a static var so the file
1554            is only opened once.
1555            (debug_end): Cleanup. Currently just close the log file.
1556            * wptErrors.h (wipememory): New.
1557            (sfree_if_alloc): Use it here.
1558            * WinPT.cpp (WinMain): Display the min. GPGME version which
1559            is needed in case of an error.
1560    
1561    2005-10-17  Timo Schulz  <[email protected]>
1562    
1563            Free all memory returned by the GPGME dll with gpgme_free ().
1564    
1565            s/GPG_ERR_CARD_REMOVED/GPG_ERR_CARD_NOT_PRESENT.
1566    
1567            * wptKeyEdit.cpp (getCardStatus): Remove dummy key.
1568            (list_handler): With user interaction to allow to insert
1569            the card into the reader.
1570            * wptKeyEditCB.cpp (gpg_edit_card): Likewise.
1571            (common_card_handler): Fixed incorrect command string.
1572            * wptKeyPropsDlg.cpp (get_card_type): New.
1573            (keyprops_dlg_proc): Show card information if present.
1574            * wptFileManager.cpp (secret_key_available): Make the code faster.
1575            
1576    
1577    2005-10-16  Timo Schulz  <[email protected]>
1578    
1579            * wptPassphraseCB.cpp (passphrase_cb): Fix problem
1580            with hanging GPG process on cancel.
1581            * keycache.c (gpg_keycache_release): Release all objects.
1582    
1583    2005-10-15  Timo Schulz  <[email protected]>
1584    
1585            * wptCardEdit.cpp (setResult, getResult): New.
1586            (reset): New.
1587            (getCardStatus): Check return codes and release all objects
1588            in case of errors.
1589            * wptCardEditCB.cpp (change_pin_handler): Call reset()
1590            before quit.
1591            (editcard_handler): Likewise.
1592            (common_card_handler): New.
1593            * wptCardDlg.cpp (card_changepin_dlg_proc): Also unmask
1594            the old PIN when 'Hide Typing' is disabled.
1595            * wptPassphraseCB.cpp (passphrase_cb): The card detection
1596            works again. Support to re-enter passphrase.
1597    
1598    2005-10-14  Timo Schulz  <[email protected]>
1599    
1600            * wptCardDlg.cpp (card_status): New fields for the
1601            fingerprint creation time. Display card info as title.
1602            (get_printable_version): New.
1603            * wptCardEditCB.cpp (editcard_handler): Fix problem
1604            with the counter comparison.
1605    
1606    2005-10-11  Timo Schulz  <[email protected]>
1607    
1608            Port to GPGME basically finished.
1609    
1610    2005-09-20  Timo Schulz  <[email protected]>
1611    
1612            * wptFileManagerDlg.cpp (file_secdel_confirm_dlg_proc):
1613            Do not use gpgme_recipients_t but the listview directly
1614            to add the selected files.
1615    
1616    2005-09-07  Timo Schulz  <[email protected]>
1617    
1618            * Make sure all GetOpenFileName filters are terminated by \0\0.
1619    
1620    2005-09-01  Timo Schulz  <[email protected]>
1621    
1622            * wptW32API.cpp (center_window): New argument for parent window.
1623            Change all callers.
1624            (center_window2): Likewise.
1625            * GPGME now can read gpgProgram entries with 'REG_EXPAND_SZ'.
1626            * wptGPG.cpp (gnupg_backup_options): Remove param. One backup
1627            file is enough. Changed all callers.
1628    
1629    2005-08-15  Timo Schulz  <[email protected]>
1630    
1631            * wptKeyEditDlgs.cpp (do_editkey_showpref): Take care of v3 keys.
1632            * wptGPGOptDlg.cpp (gpgopt_dlg_proc): Fixed name of title.
1633            * Make sure the passphrase is always overwritten before it is
1634            freed (or the function returns).
1635            * wptKeyPropDlg.cpp (get_pref_cipher): New.
1636            (keyprops_dlg_proc): Use it here.
1637    
1638    2005-08-06  Timo Schulz  <[email protected]>
1639    
1640            * wptGPGME.cpp (keycache_update): Reload OpenPGP parts
1641            of the secret key.
1642            (keycache_init): cache name of secret keyring.
1643            * wptKeyList.cpp (keylist_upd_key): Do not add long keyid.
1644            (get_key_type): Do not assume 'ultimate' means key pair.
1645            * wptKeyEditDlgs.cpp (diff_time): New.
1646            (keyedit_addsubkey_dlg_proc): Changed design and use
1647            diff_time. Drop checks for invalid keylength (< 1024, > 4096)
1648            because the combo box automatically handles this.
1649            * wptKeyManager.cpp (km_set_implicit_trust): Return error code.
1650            * wptGPG.cpp (get_backup_name): New.
1651            (gnupg_backup_keyrings): Rotate backup names, from 0..3.
1652            * wptClipImportDialog.cpp (clip_import_dlg_proc): Free memory.
1653            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Use 0x short keyid and
1654            not the long keyid.
1655    
1656    2005-08-05  Timo Schulz  <[email protected]>
1657    
1658            * wptListView.cpp (listview_set_item2): New.
1659            * wptKeyManager.cpp (km_check_if_protected): Directly
1660            retrieve gpgme_key_t from the list.
1661            (km_check_key_status): Likewise.        
1662            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Also use
1663            a human-readable name for secret key export.
1664            Reload just the keys which were affected by updates
1665            (edit-key).
1666            (update_key): New.
1667            * wptKeyList.cpp ((keylist_upd_key): Stripped down
1668            version of keylist_add_key.
1669            * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Do not
1670            reload the keycache here, just flag 'update'. Give the
1671            control to the calling dialog.
1672            * wptKeySignDlg.cpp (keysign_dlg_proc): Use winpt_key_t
1673            as parameter. Changed all callers.
1674            Add date of expiration to the key info.
1675            (get_expire_date): New.
1676            Use a checkbox to allow to ask for the cert level.
1677            * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Do no reload
1678            the cache.
1679    
1680    2005-08-04  Timo Schulz  <[email protected]>
1681    
1682            * wptListView.cpp (listview_scroll): New.
1683            (listview_get_item2): New.
1684            * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): If the
1685            item was found, make it visible with scrolling.
1686            * wptKeyManager.cpp (km_find_key): New.
1687            (keylist_subclass_proc): Support to handle some acceleators.
1688            Strg+{C, P, F, A}.
1689            (km_get_key_status): Get the gpgme_key_t object directly
1690            from the list.
1691            * wptGPGPRefsDlg.cpp (gpgprefs_dlg_proc): Also try to set
1692            the config file (if it exists).
1693            * wptKeySignDlg.cpp (keysign_dlg_proc): Use easier code
1694            to handle the click->activate situation.
1695            * wptPassphraseCB.cpp (passphrase_callback_proc): Likewise.
1696            Support to check the passphrase quality.
1697            * wptPassphraseDlg.cpp (passwd_dlg_proc): Likewise.
1698            (request_passphrase): Rename 'init' to 'flags' to allow more
1699            options.
1700            * wptMAPI.cpp: Check all *alloc results.
1701            * wptKeyGenDlg.cpp (keygen_dlg_proc): Use a rudimentary
1702            passphrase quality check.
1703            * wptMDSumDlg.cpp (mdsum_dlg_proc): Use md5/sha1sum file
1704            format and allow to save the checksum in a file.
1705            * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Issue a warning
1706            when the PGP mode is disabled.
1707            wptKeyEditDlgs.cpp (do_editkey_primary): Return if just
1708            one user-ID exists.
1709            (keyedit_dlg_proc): Fixed index problem.
1710            * wptKeyPropsDlg.cpp (get_validity): New.
1711            (keyprops_dlg_proc): Actually show extended validity if possible.
1712            * wptKeyList.cpp (get_key_fpr): Support for old v3 format.
1713            (do_addkey): Use listview_add_item2 to store key as opaque
1714            param inside the list.
1715            * wptFileStatDlg.cpp (get_digest_algo): Add SHAxxx.
1716            (file_stat_dlg_proc): End dialog if no PGP data was found.
1717            (do_list_packets): Return the number of valid PGP packets
1718            of the file.
1719    
1720    2005-08-02  Timo Schulz  <[email protected]>
1721    
1722            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Instead of
1723            using 'Default Keyserver' add the real keyserver name to
1724            the menu.
1725            The rebuild command does not reload the cache any longer.
1726            Use ATTR_NAME + .asc as the filename and not keyid + .asc.
1727            * wptProxySettingsDlg.cpp (enable_proxy_auth): New.
1728            (keyserver_proxy_dlg_proc): Changed the design a little
1729            and add some additional sanity checks.
1730            * wptGPGParser.cpp (commit_gpg_options): Use W32 line endings.
1731            This fixes the problem that the GPG option dialog does not show
1732            very nice lines.
1733            * wptGPGOptDlg.cpp (gpgopt_dlg_proc): s/options/config.
1734            * wptKeySigDlg.cpp (keysig_dlg_proc): If a single key is selected
1735            check for 'NOKEY' before asking a keyserver.
1736            * wptKeyManager.cpp (km_delete_keys): Do not set 'refresh' flag.
1737            If a lot of keys were selected, ask if the user wants to confirm
1738            each delete procedure or allow to cancel the operation.
1739            * wptFileManagerDlg.cpp (file_import_dlg_proc): Display how much
1740            keys the file contain.
1741            * wptKeyList.cpp (get_key_algo): Beautified.
1742            (get_key_status): Drop the "[XYZ] Unknown" format, it is too
1743            confusing for users.
1744            * wptKeyManager.cpp (km_check_key_status): Adjustments for the
1745            new code.
1746            (km_check_for_seckey): Reset utrust parameter. Return -1 for
1747            invalid (exp+rev+dis) keys.
1748    
1749    2005-08-01  Timo Schulz  <[email protected]>
1750    
1751            * wptKeyserver.cpp (kserver_urlencode): Use unsigned for all given
1752            sizes.
1753            (check_IP_or_hostname): New.
1754            (kserver_load_conf): Correct finger URL parsing problem.
1755            (port_from_proto): New.
1756            (keyserver_load_conf): Guess the port.
1757            (keyserver_set_default): Allocate new buffer.
1758            (kserver_load_conf): Likewise.
1759            * wptHTTP.c (parse_reqline, parse_request): Removed.
1760            Use WinPT error code and remove all unused code.
1761            * wptKeyserverDlg.cpp (keyserver_dlg_proc): Properly handle finger URLs.
1762            * wptProxySettingsDlg.cpp (read_proxy): Simple check for
1763            invalid host/IP addresses.
1764            * wptGPG.cpp (multi_gnupg_path): Return allocated buffer.
1765            Changed all callers.
1766            * wptPreferencesDlg.cpp (prefs_dlg_proc): At the first start,
1767            automatically set 'backup to homedir'.
1768            * WinPT.cpp (WinMain): Use desktop window as the parent window
1769            to load 'first-start' dialogs.
1770            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Do not set 'refresh'
1771            flag after deleting keys.
1772            * wptFirstRunDlg.cpp (first_run_dlg_proc): Use a new structure
1773            for passing the arguments.
1774            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Do not store "" for
1775            the OptFile. This was responsible for a lot of 'General Errors'
1776            after the first start related to key caching.
1777            Automatically set the gpg binary if possible.
1778    
1779    2005-07-22  Timo Schulz  <[email protected]>
1780    
1781            * wptMainProc.cpp (winpt_main_proc): Take care for shutdown
1782            messages and make sure WinPT make a keyring backup in this case.
1783            * wptGPGME.cpp (keycache_reload): Do not rebuild the signature
1784            cache each time. Just do it on startup.
1785            * wptKeyManager.cpp (km_key_is_v3): Use new ATTR_VERSION.
1786            * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Assume the v3 flag
1787            was set by the calling function.
1788            * wptKeyGenDlg.cpp (keygen_wizard_dlg_proc): Ask for backups.
1789            (keygen_dlg_proc): Only add the generated key to the keycache
1790            and do not reload the entire cache.
1791            * wptKeyManager.cpp (km_delete_keys): Store the number of keys
1792            because in each loop iteration it will be new calculated.
1793            * wptListView.cpp (listview_del_items): Likewise.
1794            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Directly add the
1795            generated key to the list instead of reloading the entire cache.
1796            * wptKeyEditDlgs.cpp (parse_preflist): Support fpr SHAnnn.
1797    
1798  2005-05-09  Timo Schulz  <[email protected]>  2005-05-09  Timo Schulz  <[email protected]>
1799    
1800          * wptCommonDlg.cpp (http_file_dlg_proc): Renamed to..          * wptCommonDlg.cpp (http_file_dlg_proc): Renamed to..
# Line 200  Line 1837 
1837          (kserver_sendkey): Likewise.          (kserver_sendkey): Likewise.
1838          * wptProxySettingsDlg.cpp (check_number): New.          * wptProxySettingsDlg.cpp (check_number): New.
1839          (read_proxy): Check the entered port number.          (read_proxy): Check the entered port number.
1840          * wptKeySignDlg.cpp (sig_class_dlg_proc): Check default button.          * wptKeySignDlg.cpp (sig_class_dlg_proc): Check default button.
1841          * wptW32API.cpp (get_folder_dlg): Free memory.          * wptW32API.cpp (get_folder_dlg): Free memory.
1842    
1843  2005-04-11  Timo Schulz  <[email protected]>  2005-04-11  Timo Schulz  <[email protected]>
# Line 545  Line 2182 
2182    
2183          * WinPT.cpp (load_keyserver_conf): New. Factored out some code          * WinPT.cpp (load_keyserver_conf): New. Factored out some code
2184          from WinMain ().          from WinMain ().
2185          (WinMain): Load keyserver config at the begin. Thanks to Bodo A�ner          (WinMain): Load keyserver config at the begin. Thanks to Bodo Aßner
2186          * wptKeyserverDlg.cpp (keyserver_dlg_proc): If there is no keyserver          * wptKeyserverDlg.cpp (keyserver_dlg_proc): If there is no keyserver
2187          in the list control, add at least the internal default HKP server.          in the list control, add at least the internal default HKP server.
2188          * wptKeygenDlg.cpp (keygen_wizard_dlg_proc): NLS support.          * wptKeygenDlg.cpp (keygen_wizard_dlg_proc): NLS support.

Legend:
Removed from v.22  
changed lines
  Added in v.231

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26