/[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 166 by twoaday, Tue Jan 24 10:17:47 2006 UTC
# Line 1  Line 1 
1  2005-08-06  Timo Schulz  <[email protected]>  2006-01-24  Timo Schulz  <[email protected]>
2    
3          * wptGPGME.cpp (keycache_update): Reload OpenPGP parts          * wptKeyManager.cpp (km_dropped_file_import): New.
4          of the secret key.          * wptKeyManagerDlg.cpp (keylist_subclass_proc): Allow
5          (keycache_init): cache name of secret keyring.          to drop files and try to import them.
6          * wptKeyList.cpp (keylist_upd_key): Do not add long keyid.          (keymanager_dlg_proc): Pass kmi as opaque to the subclass
7          (get_key_type): Do not assume 'ultimate' means key pair.          proc.
8          * wptKeyEditDlgs.cpp (diff_time): New.          
9          (keyedit_addsubkey_dlg_proc): Changed design and use  2006-01-23  Timo Schulz  <[email protected]>
10          diff_time. Drop checks for invalid keylength (< 1024, > 4096)  
11          because the combo box automatically handles this.          * wptMDSumDlg.cpp (mdsum_dlg_proc): Allow to send output
12          * wptKeyManager.cpp (km_set_implicit_trust): Return error code.          to the clipboard.
13          * wptGPG.cpp (get_backup_name): New.          * wptKeyEditDlgs.cpp (keyedit_change_ownertrust): New.
14          (gnupg_backup_keyrings): Rotate backup names, from 0..3.          (do_editkey_enable_disable): New.
15          * wptClipImportDialog.cpp (clip_import_dlg_proc): Free memory.          * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Usability fix. Do not
16          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Use 0x short keyid and          close the dialog if the user cancelled the ownertrust dialog.
17          not the long keyid.          * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Return TRUE to indicate
18            an update of any value.
19  2005-08-05  Timo Schulz  <[email protected]>          
20    2006-01-21  Timo Schulz  <[email protected]>
21          * wptListView.cpp (listview_set_item2): New.  
22          * wptKeyManager.cpp (km_check_if_protected): Directly          * wptKeyCache.cpp (keycache_next_key): Handle the case
23          retrieve gpgme_key_t from the list.          that there is a secret key without a public part.
24          (km_check_key_status): Likewise.                  * wptKeyserver.cpp (kserver_save_conf): Save ports.
25          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Also use          * wptKeyserverDlg.cpp (keyserver_modify_dlg_proc):
26          a human-readable name for secret key export.          Reset keyserver name.
27          Reload just the keys which were affected by updates          * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Just indicate
28          (edit-key).          an update, do not update the cache.
29          (update_key): New.          * wptFileManagerDlg.cpp (file_import_dlg_proc): Use one
30          * wptKeyList.cpp ((keylist_upd_key): Stripped down          dialog for both clipboard and file imports.
31          version of keylist_add_key.          * wptKeyManager.cpp (km_file_import, km_clip_import):
32          * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Do not          Changes to support new update system.
33          reload the keycache here, just flag 'update'. Give the          (gpg_clip_import): New.
34          control to the calling dialog.          * wptKeyManagerDlg.cpp (km_gui_import): New.
35          * wptKeySignDlg.cpp (keysign_dlg_proc): Use winpt_key_t          (find_keypos): Rewritten.
36          as parameter. Changed all callers.          (refresh_keylist): Improved error checking.
37          Add date of expiration to the key info.          
38          (get_expire_date): New.  2006-01-20  Timo Schulz  <[email protected]>
39          Use a checkbox to allow to ask for the cert level.  
40          * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Do no reload          * wptKeyCache.cpp (w32_tmpfile): New.
41          the cache.          (parse_attr_data): Use it here.
42            * wptGPGUtil.cpp (gpg_get_photoid_data): Reset @ndata var.
43  2005-08-04  Timo Schulz  <[email protected]>          
44    2006-01-19  Timo Schulz  <[email protected]>
45          * wptListView.cpp (listview_scroll): New.  
46          (listview_get_item2): New.          * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Do not
47          * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): If the          reload the entire cache, just update the key.
48          item was found, make it visible with scrolling.          * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Likewise.
49          * wptKeyManager.cpp (km_find_key): New.          * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Set update flag.
50          (keylist_subclass_proc): Support to handle some acceleators.          * wptKeyRevokersDlg.cpp (key_revokers_dlg_proc): Likewise.
51          Strg+{C, P, F, A}.          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Update key
52          (km_get_key_status): Get the gpgme_key_t object directly          if need after showing the properties.
53          from the list.          * wptGPGMEData.cpp (gpg_data_putc): Fix off-by-one bug.
54          * wptGPGPRefsDlg.cpp (gpgprefs_dlg_proc): Also try to set          * wptKeyManager.cpp (km_import_file): New param. Changed
55          the config file (if it exists).          all callers.
56          * wptKeySignDlg.cpp (keysign_dlg_proc): Use easier code          (km_import_clip): Likewise.
57          to handle the click->activate situation.          (delete_keys_from_cache): Delete secret part if available.
58          * wptPassphraseCB.cpp (passphrase_callback_proc): Likewise.          * wptClipImportDlg.cpp (print_import_status): If there
59          Support to check the passphrase quality.          are too many new keys, use reload code.
60          * wptPassphraseDlg.cpp (passwd_dlg_proc): Likewise.          
61          (request_passphrase): Rename 'init' to 'flags' to allow more  2006-01-18  Timo Schulz  <[email protected]>
62          options.  
63          * wptMAPI.cpp: Check all *alloc results.          * wptKeyEditCB.cpp (cmd_delsig_handler): Do not assume
64          * wptKeyGenDlg.cpp (keygen_dlg_proc): Use a rudimentary          the self sig is always index 0. Noted by Kurt.
65          passphrase quality check.          * wptPassphraseCB.cpp (passphrase_dlg_proc): Do not assume
66          * wptMDSumDlg.cpp (mdsum_dlg_proc): Use md5/sha1sum file          the key user-ID contains an email address.
67          format and allow to save the checksum in a file.          * wptKeyEditDlgs.cpp (do_find_userid): Likewise.
68          * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Issue a warning          (do_editkey_deluid): Likewise.
69          when the PGP mode is disabled.          (do_editkey_revuid): Likewise.
70          wptKeyEditDlgs.cpp (do_editkey_primary): Return if just          
71          one user-ID exists.  2006-01-18  Timo Schulz  <[email protected]>
72          (keyedit_dlg_proc): Fixed index problem.  
73          * wptKeyPropsDlg.cpp (get_validity): New.          * wptListview.cpp (listview_del_sel_items): Fixed index
74          (keyprops_dlg_proc): Actually show extended validity if possible.          calculation. This fixed a lot of problems with the KM listview
75          * wptKeyList.cpp (get_key_fpr): Support for old v3 format.          update.
76          (do_addkey): Use listview_add_item2 to store key as opaque          (listview_del_all): Renamed to...
77          param inside the list.          (listview_del_all_items): ..this. Changed all callers.
78          * wptFileStatDlg.cpp (get_digest_algo): Add SHAxxx.          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Just refresh
79          (file_stat_dlg_proc): End dialog if no PGP data was found.          list when file import contained new/updated keys.
80          (do_list_packets): Return the number of valid PGP packets          * wptKeyManager.cpp (km_file_import): Indicate if the
81          of the file.          import contained any new/update keys.
82            * wptClipImportDlg.cpp (print_import_status): Just mark
83  2005-08-02  Timo Schulz  <[email protected]>          keys which actually changed.
84            
85          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Instead of  2006-01-17  Timo Schulz  <[email protected]>
86          using 'Default Keyserver' add the real keyserver name to  
87          the menu.          * wptMAPI.cpp (mapi_send_pubkey_ext): New.
88          The rebuild command does not reload the cache any longer.          * wptKeysigDlg.cpp (do_delsig): Just flag the key, do not
89          Use ATTR_NAME + .asc as the filename and not keyid + .asc.          update it.
90          * wptProxySettingsDlg.cpp (enable_proxy_auth): New.          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Be more
91          (keyserver_proxy_dlg_proc): Changed the design a little          careful about const pointers.
92          and add some additional sanity checks.          * wptKeyEditDlgs.cpp (get_subkey_fingerprint): Renamed to..
93          * wptGPGParser.cpp (commit_gpg_options): Use W32 line endings.          (get_subkey_keyid): ..this. Fix problem that key was updated
94          This fixes the problem that the GPG option dialog does not show          twice and this corrupted.
95          very nice lines.          (keyedit_add_subkey): Set @lv item in the callback context.
96          * wptGPGOptDlg.cpp (gpgopt_dlg_proc): s/options/config.          
97          * wptKeySigDlg.cpp (keysig_dlg_proc): If a single key is selected  2006-01-16  Timo Schulz  <[email protected]>
98          check for 'NOKEY' before asking a keyserver.  
99          * wptKeyManager.cpp (km_delete_keys): Do not set 'refresh' flag.          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Restore
100          If a lot of keys were selected, ask if the user wants to confirm          window if it lost focus during the operation. Thanks to Kurt.
101          each delete procedure or allow to cancel the operation.          Update keylist when the window is enabled.
102          * wptFileManagerDlg.cpp (file_import_dlg_proc): Display how much          (find_keypos): New.
103          keys the file contain.          * wptKeyCache.cpp (keycache_next_key): Reset update status.
104          * wptKeyList.cpp (get_key_algo): Beautified.          (gpg_keycache_next_updated_key): New arg @r_status. Change all
105          (get_key_status): Drop the "[XYZ] Unknown" format, it is too          callers.
106          confusing for users.          (gpg_keycache_update_key): Different status for new and updated.
107          * wptKeyManager.cpp (km_check_key_status): Adjustments for the          Include key signatures.
108          new code.          * wptClipImportDlg.cpp (print_import_status): Mark all
109          (km_check_for_seckey): Reset utrust parameter. Return -1 for          imported keys.
110          invalid (exp+rev+dis) keys.          * wptMainProc.cpp (clip_gpg_dlg): On import refresh KM keylist.
111            Thanks to Kurt.
112  2005-08-01  Timo Schulz  <[email protected]>          * wptKeysigDlg.cpp (recv_missing_keys): Mark all received keys.
113            (do_delsig): Directly reload key. Thanks to Kurt.
114          * wptKeyserver.cpp (kserver_urlencode): Use unsigned for all given          * wptGPGME.cpp (keycache_set_reload, keycache_get_reload):
115          sizes.          Removed.
116          (check_IP_or_hostname): New.          * wptKeygenDlg.cpp (keygen_dlg_proc): Use new update system.
117          (kserver_load_conf): Correct finger URL parsing problem.          * wptClipImportDlg.cpp (clip_import_dlg_proc): Return
118          (port_from_proto): New.          FALSE if no keys were updated or operation was cancelled.
119          (keyserver_load_conf): Guess the port.          * wptCommonDlg.cpp (http_dlg_proc): Fix title selection code.
120          (keyserver_set_default): Allocate new buffer.          * wptKeylist.cpp (get_ext_validity): Handle disabled keys.
121          (kserver_load_conf): Likewise.          * wptKeyPropsDlg.cpp (keyprops_dlg_proc):
122          * wptHTTP.c (parse_reqline, parse_request): Removed.          Do not allow to change ownertrust of invalid keys.
123          Use WinPT error code and remove all unused code.          Changed translation.
124          * wptKeyserverDlg.cpp (keyserver_dlg_proc): Properly handle finger URLs.          Slightly different user interface.
125          * wptProxySettingsDlg.cpp (read_proxy): Simple check for          
126          invalid host/IP addresses.  2006-11-14  Timo Schulz  <[email protected]>
127          * wptGPG.cpp (multi_gnupg_path): Return allocated buffer.  
128          Changed all callers.          * wptW32API.cpp (make_special_filename): New.
129          * wptPreferencesDlg.cpp (prefs_dlg_proc): At the first start,          * wptRegistry.cpp (set_winpt_reg_prefs, get_winpt_reg_prefs):
130          automatically set 'backup to homedir'.          Removed 'KeyServer' item.
131          * WinPT.cpp (WinMain): Use desktop window as the parent window          * wptPreferencesDlg.cpp (prefs_dlg_proc): Remove keyserver
132          to load 'first-start' dialogs.          config item.
133          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Do not set 'refresh'          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Disable group
134          flag after deleting keys.          window until we really use it.
135          * wptFirstRunDlg.cpp (first_run_dlg_proc): Use a new structure          * wptKeyserver.cpp (kserver_save_conf): New.
136          for passing the arguments.          (wsock_end): Save keyserver config file.
137          * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Do not store "" for          * wptKeyserverDlg.cpp (keyserver_edit): New.
138          the OptFile. This was responsible for a lot of 'General Errors'          (keyserver_remove): New.
139          after the first start related to key caching.          (keyserver_add): New.
140          Automatically set the gpg binary if possible.          (fill_keyserv_types): New.
141            (keyserver_modify_dlg_proc): New.
142  2005-07-22  Timo Schulz  <[email protected]>          (keyserver_dlg_proc): Provide context menu to modify the
143            keyserver list.
144          * wptMainProc.cpp (winpt_main_proc): Take care for shutdown          (keyserver_build_list): Remove 'proto' column because it is
145          messages and make sure WinPT make a keyring backup in this case.          not really useful.
146          * wptGPGME.cpp (keycache_reload): Do not rebuild the signature          * WinPT.cpp (load_keyserver_conf): Store keyserver.conf at
147          cache each time. Just do it on startup.          $APPDATA\winpt. If keyserver.conf exists in the current folder
148          * wptKeyManager.cpp (km_key_is_v3): Use new ATTR_VERSION.          move it to the new destination.
149          * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Assume the v3 flag          
150          was set by the calling function.  2006-11-13  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          * wptPreferencesDlg.cpp (prefs_dlg_proc): Changed translation.
153          and do not reload the entire cache.          * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Likewise.
154          * wptKeyManager.cpp (km_delete_keys): Store the number of keys          * wptAboutDlgs.cpp (about_dlg_proc): Make sure GPG about
155          because in each loop iteration it will be new calculated.          dialog isn't shown twice.
156          * wptListView.cpp (listview_del_items): Likewise.          * wptKeyCache.cpp (gpg_keycache_next_updated_key): New.
157          * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Directly add the          (gpg_keycache_update_key): Set update flag.
158          generated key to the list instead of reloading the entire cache.          * wptKeyManagerDlg.cpp (refresh_keylist): New.
159          * wptKeyEditDlgs.cpp (parse_preflist): Support fpr SHAnnn.          (keymanager_dlg_proc): Use new refresh system for keyservers.
160            * wptKeyserverSearchDlg.cpp (kserver_search_dlg_proc):
161            Update keycache.
162            * wptKeyserverDlg.cpp (hkp_dlg_proc): Likewise.
163            * wptKeyserver.cpp (socket_read_ext): New.
164            (kserver_recv_key_ext): New.
165            (kserver_read_config, kserver_write_config): Removed.
166            
167    2006-01-12  Timo Schulz  <[email protected]>
168    
169            * wptListView.cpp (listview_set_image_list): Make icons
170            always transparent.
171            * wptImageList.cpp (imagelist_load): New icons.
172            * wptGPGMEData.cpp (gpg_data_putc): New.
173            * wptKeyManagerDlg.cpp (load_toolbar): Include new icons.
174            (keymanager_dlg_proc): Add tooltips.
175            * wptKeyserverDlg.cpp (keyserver_list_build): Use icons.
176            * wptKeyserver.cpp (URL_encode): New.
177            (URL_must_encode): New.
178            (kserver_search_init): Properly encode pattern.
179            (parse_iso_date): New.
180            (keyserver_search): Be more strict to prevent buffer overflows.
181            
182    2006-01-11  Timo Schulz  <[email protected]>
183    
184            * wptKeyManagerDlg.cpp (load_toolbar): 2 new icons.
185            (keymanager_dlg_proc): Adjust tooltips.
186            (update_ui_items): Handle new icons.
187            * wptImageList.cpp (imagelist_load): New icons.
188            
189    2006-01-10  Timo Schulz  <[email protected]>
190    
191            * wptMainProc.cpp (winpt_main_proc): Restore iconic
192            File/Key Manager windows if needed.
193            * wptGPGPrefsDlg.cpp (gpg_prefs_dlg_proc): Disable button.
194            * wptSiglist.cpp (init_cmp): New.
195            (siglist_sort): New.
196            (siglist_cmp_cb): New.
197            (siglist_add_key): Force NOKEY status when key was not found.
198            * wptKeysigDlg.cpp (recv_single_key): New.
199            (recv_missing_keys): Reload entire key when more than one key
200            was fetched.
201            (keysig_dlg_proc): Support sorting the listview items.
202            
203    2006-01-09  Timo Schulz  <[email protected]>
204    
205            * WinPT.cpp (load_gettext): Remove file locking.
206            (WinMain): Use pre-defined autoconf constants.
207            * wptW32API.cpp (init_file_lock, release_file_lock): Deleted.
208            * wptGPG.cpp (check_gnupg_engine): Add param @need_gpg_ver.
209            Change all callers.
210            
211    2006-01-07  Timo Schulz  <[email protected]>
212    
213            * wptKeyManager.cpp (km_refresh_from_keyserver): Summarize
214            import status if just one key was selected.
215    
216    2006-01-04  Timo Schulz  <[email protected]>
217    
218            * wptGPGMEWrapper.c (setChangeVersion): New.
219            (exportToBuffer, exportToFile, exportToClipboard): New.
220            (setArmor, getArmor): New.
221            * wptKeylist.cpp (get_key_expire_date): Return locale specific
222            date.
223            (keylist_get_recipients): Do not fetch the key again.
224            (keylist_enum_recipients): Likewise.
225            * wptGPG.cpp (create_empty_keyring): New.
226            (get_gnupg_keyring): Fixed 'strict' logic.
227            * wptKeyManagerDlg.cpp (update_ui_items): Disable some buttons
228            when no secret keys are available.
229            * wptKeyManager.cpp (km_send_to_mail_recipient): Release key data
230            before the MAPI call is made.
231            * WinPT.cpp (check_for_empty_keyrings): New.
232            
233    2006-01-03  Timo Schulz  <[email protected]>
234    
235            * pubkey.ico, keypair.ico: New.
236            * wptListview.cpp (listview_add_item_image): New.
237            (listview_set_image_list): New.
238            * wptSigList.cpp (siglist_add_key): Correct order of the sigs.
239            * wptKeyProps.cpp (keyprops_load_photo): Adjusted for new
240            JPEG data.
241            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Do not allow to
242            add items to revoked keys.
243            * wptKeyManager.cpp (km_delete_keys): Do not use uninitialized
244            keyid buffer. This fixes a segv.
245            * wptKeyserver.cpp (spawn_application): New.
246            (ldap_recv_key): Support recent protocols and several cleanups.
247            * wptKeylist.cpp (do_addkey): Set image which depends on the
248            key type.
249            (keylist_enum_recipients): Cleanups.
250            (keylist_get_keyflags): Rewritten.
251            * wptKeyCache.cpp (free_attr_list): New.
252            (parse_attr_list): New.
253            (parse_attr_data): New.
254            (keycache_update_photo): New.
255            (keycache_update_photos): New.
256            (gpg_keycache_update_key): Automatically reload photos if needed.
257            * wptGPGUtil.cpp (create_process): New param @err. Change all
258            callers.
259            (map_tmpfile): New param @nread. Change all callers.
260            (gpg_get_photoid_data): New.
261            * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Do not allow to
262            add items to revoked keys.
263            (subkey_init_list): Store gpgme key object.
264            
265    2005-12-29  Timo Schulz  <[email protected]>
266    
267            * wptKeygenDlg.cpp (keygen_dlg_proc): Request passphrase dynamically.
268            (gpg_genkey_params): Simplified.
269            * wptPreferencesDlg.cpp (prefs_dlg_proc): Fix problem with mutal
270            exclusion of the dialog items.
271            * wptAboutDlgs.cpp (about_winpt_dlg_proc): Allow to use ESC to
272            quit the dialog.
273            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
274            * wptMDSumDlg.cpp (mdsum_dlg_proc): Handle WM_SYSCOMMAND.
275            (id2algo): New.
276    
277    2005-12-28  Timo Schulz  <[email protected]>
278    
279            * wptKeyserverDlg.cpp (show_imported_keys): Decode user IDs.
280            * wptKeyRevokersDlg.cpp (key_revokers_dlg_proc): Likewise.
281            * wptKeylist.cpp (keylist_udp_key): Likewise.
282            * wptKeyManager.cpp (key_get_clip_info, key_get_info): Likewise.
283            * wptClipDecryptDlg.cpp (clip_decrypt_dlg_proc): Fix problem
284            when no signing key was found.
285            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Properly decode
286            user IDs.
287            (translate_popup_strings): s/Revoke/Revoke Cert.
288            * wptKeyEditDlgs.cpp (do_init_keylist): Do not assume a
289            0x prefixed keyid.
290            * wptKeyEditCB.cpp (editkey_command_handler): Also reset
291            step in case of a bad passphrase.
292            
293    2005-12-27  Timo Schulz  <[email protected]>
294    
295            * wptListView.cpp (listview_set_view): New.
296            (listview_del_column): New.
297            * wptW32API.cpp (get_locale_date): New.
298            (get_menu_state): New.
299            (force_foreground_window): New.
300            * wptVerifyList.cpp (strtimestamp): Support for
301            locale date formats.
302            * wptGPGUtil.cpp (gpg_revoke_cert): Handle bad
303            passphrases.
304            * wptKeyEditCB.cpp (editkey_command_handler): Immediately
305            return when a bad passphrase was submitted.
306            * wptKeyRevokersDlg.cpp (keyrevokers_dlg_proc): Change
307            column order.
308            * wptKeylist.cpp (keylist_upd_col): New.
309            * wptKeyManagerDlg.cpp (update_ui_items): Deactivate
310            'Revocation' for public keys.
311            (translate_menu_strings): s/Revoke/Revoke Cert.
312            (modify_listview_columns): New.
313            
314    2005-12-18  Timo Schulz  <[email protected]>
315    
316            * wptKeyManagerDlg.cpp (save_column_size): New.
317            (restore_column_size): New.
318            (keymanager_dlg_proc): Save and restore column sizes for
319            the listview control.
320            * wptKeyManager.cpp (key_get_info): New.
321            (km_delete_keys): Use it here to have a consistent message.
322            Use stored key context and not the column data.
323            (km_enable_disable_key): Likewise.
324            (km_send_to_keyserver): Likewise.
325            (km_set_implicit_trust): Likewise.
326            * wptKeylist.cpp (get_key_pubalgo2): New.
327            
328    2005-12-17  Timo Schulz  <[email protected]>
329    
330            * wptUTF8.cpp: Removed unused charset array.
331            * wptSigList.cpp (siglist_build): Increase size for 'class'
332            column.
333            * wptGPG.cpp (get_gnupg_path): Simplified.
334            * WinPT.cpp (load_gpg_env): New.
335            (check_crypto_engine): Return type is now bool.
336            * wptRegistry.cpp (is_gpg4win_installed): New.
337            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): More consistent
338            dialog design.
339            * wptKeyManagerDlg.cpp (translate_menu_strings): New.
340            (translate_popupmenu_strings): New.
341            * wptKeyEditDlgs.cpp (is_jpg_file): New.
342            
343    2005-12-13  Timo Schulz  <[email protected]>
344    
345            * wptCommonDlg.cpp (http_dlg_proc): Localized missing elements.
346            * wptKeyManagerDlg.cpp (change_edit_menu): New.
347            (change_key_menu): Renamed from...
348            (menu_gpg_readonly): ..this.
349            (clip_contains_pgpkey): New.
350            (update_ui_items): Do not allow to sign expired keys.
351            (keymanager_dlg_proc): Same for popup menu.
352            * wptKeyPropsDlg.cpp (parse_preflist): Fixed string handling.
353            * wptKeyCache.cpp (copy_uid_prefs):
354            (gpg_keycache_sync): Copy uid prefs so the key property
355            dialog show the correct values. Thanks to Shane.
356            
357    2005-12-11  Timo Schulz  <[email protected]>
358    
359            * wptW32API.cpp (get_file_version): New.
360            * wptGPGUtil.cpp (create_process): Always hide window.
361            * wptClipEditDlg.cpp (clipedit_dlg_proc): Use 'Close'
362            instead of 'Exit'.
363            * wptKeyManager.cpp (km_http_import): New filename
364            generation code.
365            (km_send_to_mail_recipient): Cleanups.
366            * wptKeyEditDlg.cpp (showpref_dlg_proc): Localize dialog.
367            * wptKeyManagerDlg.cpp (update_ui_items): Handle the case
368            when multiple keys are selected.
369            (popup_multiple): New.
370            * WinPT.cpp (WinMain): Check that the PTD.dll and WinPT.exe
371            file versions are equal. Rewrote --keymanager code.
372            
373    2005-12-08  Timo Schulz  <[email protected]>
374    
375            * wptKeyserverDlg.cpp (show_imported_keys): Enhanced.
376            (hkp_recv_key2): Show user-id of the imported key instead
377            of just the pattern.
378            * wptFileCBS.cpp (read_cb): Changed to W32 API.
379            (write_cb): Likewise. Create output file on demand.
380            (gpg_file_data_new): Adjusted code for new API.
381            * wptKeyEdit.cpp (cleanKey): New.
382            * wptKeyEditCB.cpp (cmd_clean_handler): New.
383            (editkey_command_handler): Call clean handler.
384            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Sort
385            keylist after inserting items.
386            * wptFileManager.cpp (fm_set_status): Take care of
387            cleartext sigs.
388            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Make
389            sure can be closed.
390            
391    2005-12-07  Timo Schulz  <[email protected]>
392    
393            * wptOwnertrustDlg.cpp (ownertrust_dlg_proc):
394            Use 'Close' instead of 'Exit'.
395            * wptKeyEditDlgs.cpp (keyedit_dlg_proc): Likewise.
396            * wptGPG.cpp (gnupg_backup_keyrings): Use $APPDATA
397            as the destination dir. Thanks to Werner.
398            * wptRegistry.cpp (is_gpgee_installed): New.
399            (regist_inst_winpt): Do not register file extensions
400            if GPGee is available.
401            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Limit
402            use of local vars.
403            * wptPreferencesDlg.cpp (prefs_dlg_proc): Make sure
404            no illegal backup mode is saved.
405            * wptKeyserverDlg.cpp (show_imported_key): New.
406            (hkp_recv_key2): Show imported keys if the blob
407            contained more than one.
408            
409    2005-12-06  Timo Schulz  <[email protected]>
410    
411            * WinPT.cpp (WinMain): Load the gettext environment soon
412            as possible so all 'first start' messages are localized.
413            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): If a single key is
414            received via the keyserver, return the gpgme key context on
415            success and add it directly to the list.
416            * wptKeyserverDlg.cpp (keyserver_dlg_proc): Support a param
417            to store the key.
418            (hkp_recv_key2): Add extra param for the fingerprint.
419            (hkp_recv_key): Call hkp_recv_key2 without fingerprint.
420            
421    2005-12-02  Werner Koch  <[email protected]>
422    
423            * wptKeyEditDlgs.cpp (subkey_list_init): Avoid trigraphs.
424    
425    2005-12-01  Timo Schulz  <[email protected]>
426    
427            * wptClipVerifyDlg.cpp (clipverify_dlg_proc): Use new semantic
428            for get_gpg_sigstat().
429            * wptGPGME.cpp (get_gpg_sigstat): New. It is now a function.
430            As a macro strings will not be translated at runtime.
431            * wptKeyserverDlg.cpp (hkp_recv_key): Properly detect if we
432            need to update the cache. Thanks to Jan-Oliver.
433            * wptKeyImportStatusDlg.cpp (import_status_dlg_proc): Localized.
434            
435    2005-11-30  Timo Schulz  <[email protected]>
436    
437            * wptW32API.cpp (dialog_box_param): Removed LANG_DE code.
438            * WinPT-en.rc: Removed string list.
439            * wptFileSaveDlg.cpp (file_save_dlg_proc): Localized
440            * wptKeylist.cpp (keylist_build): Cannot use global
441            arrays for the columns due to gettext.
442            
443    2005-11-29  Timo Schulz  <[email protected]>
444    
445            * WinPT.cpp (WinMain): Modify --keymanager. If an instance
446            is running, just send the command to open the manager.
447            
448    2005-11-25  Timo Schulz  <[email protected]>
449    
450            * wptKeyEditCB.cpp (addrev_cmd_handler): Avoid hanging
451            process when the revoker is already there.
452            
453    2005-11-24  Timo Schulz  <[email protected]>
454    
455            * wptPassphraseCB.cpp (passphrase_callback_proc): Localize
456            signing dialog items.
457            * wptMainProc.cpp (confirm_delclip_dlg): Localize dialog items.
458            * wptAboutDlgs.cpp (about_winpt_dlg_proc): Disable help for now.
459            * wptMDSumDlg.cpp (mdsum_dlg_proc): Localize missing items.
460            * wptKeylist.cpp (key_check_validity): Likewise.
461            * wptKeyEditDlgs.cpp (keyedit_addsubkey_dlg_proc): Likewise.
462            
463    2005-11-22  Timo Schulz  <[email protected]>
464    
465            * wptCardEditCB.cpp (gpg_write): Due to removed _DEBUG
466            macro debug output will be generated in release version.
467            
468    2005-11-21  Timo Schulz  <[email protected]>
469    
470            * WinPT.cpp (WinMain): Implement --stop switch.
471            * wptClipEditDlg.cpp (clip_edit_dlg_proc): Localize
472            missing string.
473            * wptPreferencesDlg.cpp (prefs_dlg_proc): Likewise.
474            * wptKeygenDlg.cpp (keygen_dlg_proc): Verify valid context
475            first. Thanks to Ralf.
476            * wptFileManagerDlg.cpp (update_ui_items): New.
477            * wptFileManager.cpp (fm_set_status): New sigmode param.
478            Changed all callers.
479            
480    2005-11-17  Timo Schulz  <[email protected]>
481    
482            * wptGPG.cpp (check_last_gnupg_access): Kludge to avoid that
483            the cache will be loaded twice.
484            * wptRegistry.cpp (regist_inst_winpt): More comments.
485            * wptKeyManagerDlg.cpp (do_center_window): Make sure that
486            neg. coordinates are never used.
487            * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Localize all
488            strings.
489            * wptPassphraseCB.cpp (passphrase_callback_proc): Likewise.
490            * wptFileManagerDlg.cpp (filemanager_dlg_proc): Localize menu
491            and save 'AlwaysOnTop' in the registry.
492            
493    2005-11-16  Timo Schulz  <[email protected]>
494    
495            * WinPT.cpp (check_crypto_engine): Min is now GPG 1.4.2.
496            * wptKeylist.cpp (keylist_add_key): Add disabled keys in list
497            mode.
498            * wptPreferencesDlg.cpp (prefs_dlg_proc): Localize all strings.
499            * wptRegistry.cpp (regist_inst_winpt): Set install directory.
500            Useful for other programs to figure out the path to the EXE.
501            
502    2005-11-14  Timo Schulz  <[email protected]>
503    
504            * wptGPG.cpp (check_gnupg_engine): Fix version check.
505            * wptMainProc.cpp (winpt_main_proc): Check keyring
506            file permissions always and do not use interative output
507            when the windows session ends.
508            * wptProxySettingsDlg.cpp (proxy_settings_dlg_proc):
509            Localize all strings.
510            * wptPassphraseDlg.cpp (passwd_dlg_proc): Likewise.
511            * wptGPGPrefsDlg.cpp (gpg_prefs_dlg): Likewise.
512            * wptKeyEditDlgs.cpp (do_init_keylist): Skip all
513            non-valid keys.
514            
515    2005-11-12  Timo Schulz  <[email protected]>
516    
517            Fix more GCC warnings.
518    
519    2005-11-10  Timo Schulz  <[email protected]>
520    
521            * wptClipSignDlg.cpp (one_key_proc): Use
522            release_gpg_passphrase_cb() to free the context.
523            * wptListView.cpp (listview_deselect_all): New.
524            * wptMAPI.cpp (mapi_send_pubkey): Works again.
525            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Support encrypt &
526            zip.    
527            * wptPassphraseCB.cpp (passphrase_callback_proc): Fix passphrase
528            caching for signing operations.
529            * wptKeyManager.cpp (km_send_to_mail_recipient): Works again.
530            * wptFileManager.cpp (fm_send_file): Likewise.
531            (fm_encrypt_into_zip): New.      
532            
533    2005-11-09  Timo Schulz  <[email protected]>
534    
535            * wptNLS.c (get_gettext_langid): Map user language id to
536            printable gettext language strings.
537            * wptRegistry.cpp (get_reg_entry_mo): Support for the
538            gettext environment.
539            * wptFileManager.cpp (fm_encrypt): Close all files before
540            the wipe procedure is called.
541            * wptVerlist.cpp (verlist_add_sig): Handle the case the
542            issuer is not valid but the signature is.
543            (verlist_add_sig_log): Likewise. Thanks to the folks on
544            winpt-users.
545            
546    2005-11-08  Werner Koch  <[email protected]>
547    
548            * SAFE.ICO, SIGN.ICO: Fixed capitalization.
549            * WinPT-en.rc: Ditto.
550            * winpt_km.ico:  Moved from ../.
551    
552            * Makefile.am (resource_files): Add missing backslash.
553    
554    2005-11-08  Timo Schulz  <[email protected]>
555    
556            More minor changes to avoid GCC warnings.
557            
558            * wptGPG.cpp (check_homedir): Free memory in case of errors.
559            (multi_gnupg_path): Add strict mode. If non-strict mode return
560            the folder even if it does not exist.
561            (check_for_gpgwin): New.
562            * wptKeyserverDlg.cpp (hkp_recv_key): Make sure import_res is
563            initialized.
564            * wptRegistry.cpp (get_reg_entry_gpg4win): New.
565            (get_reg_entry_mo): Support for gpg4win.
566            
567    2005-11-07  Timo Schulz  <[email protected]>
568    
569            * wptMainProc.cpp (winpt_main_proc): Disable
570            some menu items when no secret key is available.
571            
572    2005-11-05  Timo Schulz  <[email protected]>
573    
574            More minor changes to avoid GCC warnings.
575            
576            * wptErrors.cp (winpt_strerror): Return w32
577            formatted error and do not use 'break'.
578            
579    2005-11-04  Werner Koch  <[email protected]>
580    
581            * WinPT-en.rc: Fixed locations of icons.
582    
583    2005-11-03  Timo Schulz  <[email protected]>
584    
585            A lot of minor changes to avoid GCC warnings.
586    
587            * wptGPG.cpp (get_gnupg_keyring): Only check size for
588            public keyring.
589            * wptKeyManager.cpp (km_update_default_key_str): Do
590            not issue a bug message when no secret key was found.
591            * wptGPGPrefsDlg.cpp: Replace "" with NULL in the name struct.
592            
593    2005-11-02  Werner Koch  <[email protected]>
594    
595            * WinPT.cpp (WinMain): Disabled PTD version tests.
596            (check_crypto_engine): Fixed version check for scard.
597    
598            * wptErrors.cpp (debug_end): Add dummy function.
599    
600            * Makefile.am (code_files): Added wptCardEditCB.cpp and
601            wptKeyEditCB.cpp.
602    
603    2005-10-31  Werner Koch  <[email protected]>
604    
605            * wptCurrWnd.cpp: Include wptVersion.h to get prototypes of PTD
606            functions.
607    
608            * wptKeyEditDlgs.cpp: Include oleauto.h
609            * wptKeyEdit.cpp: Include time.h.
610            * wptRegistry.cpp (gpg_filetypes): New from ../Include/wptGPG.h.
611            * wptGPGUtil.cpp (gpg_manage_ownertrust): s/export/exportflag/.
612    
613            * Makefile.am (code_files): Add wptGPGUtil.cpp, wptCardEdit.cpp,
614            wptKeyEdit.cpp and wptKeycache.cpp.
615    
616            * wptPassphraseCB.cpp: Fixed spelling of wptKeylist.h
617            * wptImportList.cpp (implist_load): Use remove and not unlink.
618            * wptGPG.cpp: Fixed spelling of wptGpgCmds.h
619            * wptImportList.cpp (implist_load): Use remove and not unlink.
620            * wptKeyManager.cpp (km_http_import): Ditto
621            * wptMainProc.cpp: Include wptCrypto.h
622            * wptKeyManager.cpp: Ditto.
623            * wptFileManager.cpp: Ditto.
624            * wptImportList.cpp (parse_colon_key): Need to cast argument for
625            isdigit.  Include ctype.h.
626            * wptGPG.cpp: Include shlobj.h.
627    
628            Fixed double inclusion of windows.h.
629            
630            * Makefile.am (bin_PROGRAMS): Don't build KeyManagerExe for now.
631            * wptKeylist.cpp (get_key_created): Broke up trigraph.
632            (get_key_status): Removed dangerous use of sprintf.  Still other
633            flaws present, see comment.
634    
635            * wptCardPCSC.c: Don't include winscard.h.
636            (pcsc_readerstate_t, pcsc_context_t): New.  Changed call users to
637            use these types.
638            (PCSC_): Added a lot of constants, all taked from GnuPG 1.9.
639            (SCARD_S_SUCCESS): Changed all compares to test the value directly
640            against zero.
641    
642            * WinPT.cpp: Include wptCrypto.h.
643            (WinMain): Don't shard S. Removed usunsed variable SIZE.
644            * Makefile.am (code_files): Actually add files by adding a first
645            backslash.
646            * wptMDSumDlg.cpp: Include wptCrypto.h.
647            * wptProxySettingsDlg.cpp: Included ctype.h.
648            * wptKeysigDlg.cpp: Fixed spelling of wptKeylist.h.
649            * wptKeysignDlg.cpp: Ditto
650            * wptKeyRevokersDlg.cpp: Ditto. Fixed spelling of wptW32API.h.
651            * wptKeyPropsDlg.cpp (keyprops_dlg_proc): Replaced unlink by remove.
652            Removed unused variable.
653            * wptClipVerifyDlg.cpp (show_notation_data): s/not/nota/ due to
654            silly c++ operator synonyms.
655            * wptKeyEditDlgs.cpp: Include time.h.
656            * wptClipDecryptDlg.cpp: Include wptCrypto.h to define PGP_MESSAGE.
657            * wptFileManagerDlg.cpp: Ditto.
658            (space_wipefrees_dlg_proc): Replaced unlink by remove; it doesn't
659            matter if it does an rmdir for a directory.
660    
661            Fixed include of resource.h which is not anymore in the top
662            directory.
663    
664    2005-10-28  Werner Koch  <[email protected]>
665    
666            * wptProxySettingsDlg.cpp (check_number): Cast isdigit() arg to
667            unsigned.  Never ever use a possible signed char as argument for
668            ctype tests.  An alternative is to first test using isascii ().
669            (keyserver_proxy_dlg_proc): Removed unused variable.
670    
671    2005-10-27  Timo Schulz  <[email protected]>
672    
673            * wptKeyPropsDlg.cpp (get_validity): Take care of disabled keys.
674            * wptKeylist.cpp (keylist_add_key): Check global key flag to
675            see if the key is disabled and not each subkey.
676            (seclist_init): Likewise.
677            * wptClipDecryptDlg.cpp (gpgme_op_clip_decrypt): Use
678            gpgme_op_decrypt_verify.
679            (clip_decrypt_dlg_proc): Fixed fingerprint
680            to keyid conversation. This also fixes a crash.
681            * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Likewise.
682            * wptKeyEditDlgs.cpp (do_editkey_expire): Ask if the key
683            already expired if the user wants to change the date.
684            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Replace old
685            'v3 sig' option with the 'ask cert level' option. Sync
686            with global preferences.
687            * wptKeySignDlg.cpp (keysign_dlg_proc): Watch if the
688            gpg.conf contains 'ask-cert-level'. If not disable button.
689            * wptKeySigDlg.cpp (keysig_dlg_proc): Automatically disable
690            the button when the key is available.
691            Reload key directly, not the entire cache.
692            
693    2005-10-26  Timo Schulz  <[email protected]>
694    
695            * wptFileManager.cpp (is_floppy_disc): Prevent very unlikely but
696            possible overflow.
697            (is_openpgp_ext): Compare case insentensive.
698            (add_single_file): New.
699            (fm_add_opened_files): Support multi file selection.
700            * wptKeyPropsDlg.cpp (do_change_ownertrust): Removed.
701            * wptKeyManager.cpp (km_enable_disable_key): Do not set cache
702            reload flag. Just update the single key.
703            * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Remove static var
704            and disable anonymize recipient for now.
705    
706            Begin to port code to GCC. Fix all warning issued by the gcc
707            compiler.
708    
709    2005-10-25  Timo Schulz  <[email protected]>
710    
711            * wptGPGUtil.cpp (create_process): Hide window.
712            * wptKeyPropsDlg.cpp (get_photo_tmpname): New.
713            * wptClipSignEncDlg.cpp (clip_signenc_dlg_proc): Remove
714            static var 'enable'.
715            * wptKeygenDlg.cpp (keygen_dlg_proc): Likewise.
716            (gpg_genkey_params): Make sure all primary keys are capable
717            for signing and certification.
718            * wptKeySigDlg.cpp (is_sig): If no item is selected, return 0.
719            * wptGPG.cpp (gnupg_access_keyring): Check return value for
720            NULL. Noted by Ralf.
721            (get_gnupg_prog): Simplified.
722            (check_homedir): Fixed. Return 0 when the dir is successfully created.
723            * wptKeyManagerDlg.cpp (km_file_import): Use the hourglass to
724            indicate a pending GPG process.
725            * wptFileManager.cpp (op_begin, op_end): New. Indicate an start
726            and and of an operation. For now just the cursor changes.
727            (fm_parse_command_line): Remove debug output. Thanks to Ralf again.
728            * WinPT.cpp (WinMain): Check if there is already an instance and
729            set a variable early as possible.
730            (load_gettext): If a previous instance was found, do not output
731            any errors. Kudos to Ralf.      
732    
733    2005-10-24  Timo Schulz  <[email protected]>
734    
735            * wptPassphraseCB.cpp (passphrase_callback_proc): Allow to use
736            pre-defined recipients.
737            (release_gpg_passphrase_cb): Release recipients.
738            * wptKeyPropsDlg.cpp (keyprops_load_photo): Set photo-id
739            validity if needed.
740            (keyprops_dlg_proc): Issue a warning if the photo is valid.
741    
742    2005-10-23  Timo Schulz  <[email protected]>
743    
744            * wptFileManager.cpp (fm_get_file_type): Detect detached sigs.  
745            * wptKeyList.cpp (keylist_cmp_cb): Take care of expired/revoked keys.
746            (get_ext_validity): New.
747            * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Several cleanups.
748            * wptClipEditDlg.cpp (load_clipboard): Factored out some code into
749            this function.
750            (load_clipboard_from_file): Likewise.
751            (save_clipboard_to_file): New.
752            * wptKeyManagerDlg.cpp (keyprops_dlg_proc): Fix stack overflow.
753    
754    2005-10-22  Timo Schulz  <[email protected]>
755    
756            Localized a lot of more strings.
757    
758            * wptMainProc.cpp (load_smartcard): New.
759            * wptFileManager.cpp (fm_parse_command_line): Simplify code.
760            (fm_check_armor_type): Add new arg. Change all callers.
761            (fm_get_file_type): Likewise.
762            * wptKeyPropsDlg.cpp (display_key_info): New.  
763            (keyprops_show_photo): Factored out some code into..
764            (keyprops_load_photo): ..this function.
765    
766    2005-10-21  Timo Schulz  <[email protected]>
767    
768            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Use
769            WM_INITPOPUPMENU to localize popup menu texts.
770            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
771            * wptClipSignDlg.cpp (one_key_proc): Use wipememory instead of memset.  
772    
773    2005-10-20  Timo Schulz  <[email protected]>
774    
775            Now WinPT depends on GPG 1.4.3 and GPGME 1.2.0.
776    
777            * wptPassphraseCB.cpp (passphrase_cb): Complete card support.
778            * wptCardEdit.cpp (genKey): Handle cancel case.
779            * keycache.c: Renamed into...
780            * wptKeyCache.cpp: ...this.
781            * wptW32API.cpp (set_menu_text): Removed unused code.
782            (set_menu_text_bypos): New.
783            * wptCrypto.h: New.
784            * wptMainProc.cpp (winpt_main_proc): Complete localize
785            menu texts.
786            * wptErrors.cpp (log_debug): Use a static var so the file
787            is only opened once.
788            (debug_end): Cleanup. Currently just close the log file.
789            * wptErrors.h (wipememory): New.
790            (sfree_if_alloc): Use it here.
791            * WinPT.cpp (WinMain): Display the min. GPGME version which
792            is needed in case of an error.
793    
794    2005-10-17  Timo Schulz  <[email protected]>
795    
796            Free all memory returned by the GPGME dll with gpgme_free ().
797    
798            s/GPG_ERR_CARD_REMOVED/GPG_ERR_CARD_NOT_PRESENT.
799    
800            * wptKeyEdit.cpp (getCardStatus): Remove dummy key.
801            (list_handler): With user interaction to allow to insert
802            the card into the reader.
803            * wptKeyEditCB.cpp (gpg_edit_card): Likewise.
804            (common_card_handler): Fixed incorrect command string.
805            * wptKeyPropsDlg.cpp (get_card_type): New.
806            (keyprops_dlg_proc): Show card information if present.
807            * wptFileManager.cpp (secret_key_available): Make the code faster.
808            
809    
810    2005-10-16  Timo Schulz  <[email protected]>
811    
812            * wptPassphraseCB.cpp (passphrase_cb): Fix problem
813            with hanging GPG process on cancel.
814            * keycache.c (gpg_keycache_release): Release all objects.
815    
816    2005-10-15  Timo Schulz  <[email protected]>
817    
818            * wptCardEdit.cpp (setResult, getResult): New.
819            (reset): New.
820            (getCardStatus): Check return codes and release all objects
821            in case of errors.
822            * wptCardEditCB.cpp (change_pin_handler): Call reset()
823            before quit.
824            (editcard_handler): Likewise.
825            (common_card_handler): New.
826            * wptCardDlg.cpp (card_changepin_dlg_proc): Also unmask
827            the old PIN when 'Hide Typing' is disabled.
828            * wptPassphraseCB.cpp (passphrase_cb): The card detection
829            works again. Support to re-enter passphrase.
830    
831    2005-10-14  Timo Schulz  <[email protected]>
832    
833            * wptCardDlg.cpp (card_status): New fields for the
834            fingerprint creation time. Display card info as title.
835            (get_printable_version): New.
836            * wptCardEditCB.cpp (editcard_handler): Fix problem
837            with the counter comparison.
838    
839    2005-10-11  Timo Schulz  <[email protected]>
840    
841            Port to GPGME basically finished.
842    
843    2005-09-20  Timo Schulz  <[email protected]>
844    
845            * wptFileManagerDlg.cpp (file_secdel_confirm_dlg_proc):
846            Do not use gpgme_recipients_t but the listview directly
847            to add the selected files.
848    
849    2005-09-07  Timo Schulz  <[email protected]>
850    
851            * Make sure all GetOpenFileName filters are terminated by \0\0.
852    
853    2005-09-01  Timo Schulz  <[email protected]>
854    
855            * wptW32API.cpp (center_window): New argument for parent window.
856            Change all callers.
857            (center_window2): Likewise.
858            * GPGME now can read gpgProgram entries with 'REG_EXPAND_SZ'.
859            * wptGPG.cpp (gnupg_backup_options): Remove param. One backup
860            file is enough. Changed all callers.
861    
862    2005-08-15  Timo Schulz  <[email protected]>
863    
864            * wptKeyEditDlgs.cpp (do_editkey_showpref): Take care of v3 keys.
865            * wptGPGOptDlg.cpp (gpgopt_dlg_proc): Fixed name of title.
866            * Make sure the passphrase is always overwritten before it is
867            freed (or the function returns).
868            * wptKeyPropDlg.cpp (get_pref_cipher): New.
869            (keyprops_dlg_proc): Use it here.
870    
871    2005-08-06  Timo Schulz  <[email protected]>
872    
873            * wptGPGME.cpp (keycache_update): Reload OpenPGP parts
874            of the secret key.
875            (keycache_init): cache name of secret keyring.
876            * wptKeyList.cpp (keylist_upd_key): Do not add long keyid.
877            (get_key_type): Do not assume 'ultimate' means key pair.
878            * wptKeyEditDlgs.cpp (diff_time): New.
879            (keyedit_addsubkey_dlg_proc): Changed design and use
880            diff_time. Drop checks for invalid keylength (< 1024, > 4096)
881            because the combo box automatically handles this.
882            * wptKeyManager.cpp (km_set_implicit_trust): Return error code.
883            * wptGPG.cpp (get_backup_name): New.
884            (gnupg_backup_keyrings): Rotate backup names, from 0..3.
885            * wptClipImportDialog.cpp (clip_import_dlg_proc): Free memory.
886            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Use 0x short keyid and
887            not the long keyid.
888    
889    2005-08-05  Timo Schulz  <[email protected]>
890    
891            * wptListView.cpp (listview_set_item2): New.
892            * wptKeyManager.cpp (km_check_if_protected): Directly
893            retrieve gpgme_key_t from the list.
894            (km_check_key_status): Likewise.        
895            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Also use
896            a human-readable name for secret key export.
897            Reload just the keys which were affected by updates
898            (edit-key).
899            (update_key): New.
900            * wptKeyList.cpp ((keylist_upd_key): Stripped down
901            version of keylist_add_key.
902            * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Do not
903            reload the keycache here, just flag 'update'. Give the
904            control to the calling dialog.
905            * wptKeySignDlg.cpp (keysign_dlg_proc): Use winpt_key_t
906            as parameter. Changed all callers.
907            Add date of expiration to the key info.
908            (get_expire_date): New.
909            Use a checkbox to allow to ask for the cert level.
910            * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Do no reload
911            the cache.
912    
913    2005-08-04  Timo Schulz  <[email protected]>
914    
915            * wptListView.cpp (listview_scroll): New.
916            (listview_get_item2): New.
917            * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): If the
918            item was found, make it visible with scrolling.
919            * wptKeyManager.cpp (km_find_key): New.
920            (keylist_subclass_proc): Support to handle some acceleators.
921            Strg+{C, P, F, A}.
922            (km_get_key_status): Get the gpgme_key_t object directly
923            from the list.
924            * wptGPGPRefsDlg.cpp (gpgprefs_dlg_proc): Also try to set
925            the config file (if it exists).
926            * wptKeySignDlg.cpp (keysign_dlg_proc): Use easier code
927            to handle the click->activate situation.
928            * wptPassphraseCB.cpp (passphrase_callback_proc): Likewise.
929            Support to check the passphrase quality.
930            * wptPassphraseDlg.cpp (passwd_dlg_proc): Likewise.
931            (request_passphrase): Rename 'init' to 'flags' to allow more
932            options.
933            * wptMAPI.cpp: Check all *alloc results.
934            * wptKeyGenDlg.cpp (keygen_dlg_proc): Use a rudimentary
935            passphrase quality check.
936            * wptMDSumDlg.cpp (mdsum_dlg_proc): Use md5/sha1sum file
937            format and allow to save the checksum in a file.
938            * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Issue a warning
939            when the PGP mode is disabled.
940            wptKeyEditDlgs.cpp (do_editkey_primary): Return if just
941            one user-ID exists.
942            (keyedit_dlg_proc): Fixed index problem.
943            * wptKeyPropsDlg.cpp (get_validity): New.
944            (keyprops_dlg_proc): Actually show extended validity if possible.
945            * wptKeyList.cpp (get_key_fpr): Support for old v3 format.
946            (do_addkey): Use listview_add_item2 to store key as opaque
947            param inside the list.
948            * wptFileStatDlg.cpp (get_digest_algo): Add SHAxxx.
949            (file_stat_dlg_proc): End dialog if no PGP data was found.
950            (do_list_packets): Return the number of valid PGP packets
951            of the file.
952    
953    2005-08-02  Timo Schulz  <[email protected]>
954    
955            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Instead of
956            using 'Default Keyserver' add the real keyserver name to
957            the menu.
958            The rebuild command does not reload the cache any longer.
959            Use ATTR_NAME + .asc as the filename and not keyid + .asc.
960            * wptProxySettingsDlg.cpp (enable_proxy_auth): New.
961            (keyserver_proxy_dlg_proc): Changed the design a little
962            and add some additional sanity checks.
963            * wptGPGParser.cpp (commit_gpg_options): Use W32 line endings.
964            This fixes the problem that the GPG option dialog does not show
965            very nice lines.
966            * wptGPGOptDlg.cpp (gpgopt_dlg_proc): s/options/config.
967            * wptKeySigDlg.cpp (keysig_dlg_proc): If a single key is selected
968            check for 'NOKEY' before asking a keyserver.
969            * wptKeyManager.cpp (km_delete_keys): Do not set 'refresh' flag.
970            If a lot of keys were selected, ask if the user wants to confirm
971            each delete procedure or allow to cancel the operation.
972            * wptFileManagerDlg.cpp (file_import_dlg_proc): Display how much
973            keys the file contain.
974            * wptKeyList.cpp (get_key_algo): Beautified.
975            (get_key_status): Drop the "[XYZ] Unknown" format, it is too
976            confusing for users.
977            * wptKeyManager.cpp (km_check_key_status): Adjustments for the
978            new code.
979            (km_check_for_seckey): Reset utrust parameter. Return -1 for
980            invalid (exp+rev+dis) keys.
981    
982    2005-08-01  Timo Schulz  <[email protected]>
983    
984            * wptKeyserver.cpp (kserver_urlencode): Use unsigned for all given
985            sizes.
986            (check_IP_or_hostname): New.
987            (kserver_load_conf): Correct finger URL parsing problem.
988            (port_from_proto): New.
989            (keyserver_load_conf): Guess the port.
990            (keyserver_set_default): Allocate new buffer.
991            (kserver_load_conf): Likewise.
992            * wptHTTP.c (parse_reqline, parse_request): Removed.
993            Use WinPT error code and remove all unused code.
994            * wptKeyserverDlg.cpp (keyserver_dlg_proc): Properly handle finger URLs.
995            * wptProxySettingsDlg.cpp (read_proxy): Simple check for
996            invalid host/IP addresses.
997            * wptGPG.cpp (multi_gnupg_path): Return allocated buffer.
998            Changed all callers.
999            * wptPreferencesDlg.cpp (prefs_dlg_proc): At the first start,
1000            automatically set 'backup to homedir'.
1001            * WinPT.cpp (WinMain): Use desktop window as the parent window
1002            to load 'first-start' dialogs.
1003            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Do not set 'refresh'
1004            flag after deleting keys.
1005            * wptFirstRunDlg.cpp (first_run_dlg_proc): Use a new structure
1006            for passing the arguments.
1007            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Do not store "" for
1008            the OptFile. This was responsible for a lot of 'General Errors'
1009            after the first start related to key caching.
1010            Automatically set the gpg binary if possible.
1011    
1012    2005-07-22  Timo Schulz  <[email protected]>
1013    
1014            * wptMainProc.cpp (winpt_main_proc): Take care for shutdown
1015            messages and make sure WinPT make a keyring backup in this case.
1016            * wptGPGME.cpp (keycache_reload): Do not rebuild the signature
1017            cache each time. Just do it on startup.
1018            * wptKeyManager.cpp (km_key_is_v3): Use new ATTR_VERSION.
1019            * wptKeyEditDlgs.cpp (keyedit_main_dlg_proc): Assume the v3 flag
1020            was set by the calling function.
1021            * wptKeyGenDlg.cpp (keygen_wizard_dlg_proc): Ask for backups.
1022            (keygen_dlg_proc): Only add the generated key to the keycache
1023            and do not reload the entire cache.
1024            * wptKeyManager.cpp (km_delete_keys): Store the number of keys
1025            because in each loop iteration it will be new calculated.
1026            * wptListView.cpp (listview_del_items): Likewise.
1027            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Directly add the
1028            generated key to the list instead of reloading the entire cache.
1029            * wptKeyEditDlgs.cpp (parse_preflist): Support fpr SHAnnn.
1030    
1031  2005-05-09  Timo Schulz  <[email protected]>  2005-05-09  Timo Schulz  <[email protected]>
1032    
1033          * wptCommonDlg.cpp (http_file_dlg_proc): Renamed to..          * wptCommonDlg.cpp (http_file_dlg_proc): Renamed to..
# Line 200  Line 1070 
1070          (kserver_sendkey): Likewise.          (kserver_sendkey): Likewise.
1071          * wptProxySettingsDlg.cpp (check_number): New.          * wptProxySettingsDlg.cpp (check_number): New.
1072          (read_proxy): Check the entered port number.          (read_proxy): Check the entered port number.
1073          * wptKeySignDlg.cpp (sig_class_dlg_proc): Check default button.          * wptKeySignDlg.cpp (sig_class_dlg_proc): Check default button.
1074          * wptW32API.cpp (get_folder_dlg): Free memory.          * wptW32API.cpp (get_folder_dlg): Free memory.
1075    
1076  2005-04-11  Timo Schulz  <[email protected]>  2005-04-11  Timo Schulz  <[email protected]>
# Line 545  Line 1415 
1415    
1416          * WinPT.cpp (load_keyserver_conf): New. Factored out some code          * WinPT.cpp (load_keyserver_conf): New. Factored out some code
1417          from WinMain ().          from WinMain ().
1418          (WinMain): Load keyserver config at the begin. Thanks to Bodo A�ner          (WinMain): Load keyserver config at the begin. Thanks to Bodo Aßner
1419          * wptKeyserverDlg.cpp (keyserver_dlg_proc): If there is no keyserver          * wptKeyserverDlg.cpp (keyserver_dlg_proc): If there is no keyserver
1420          in the list control, add at least the internal default HKP server.          in the list control, add at least the internal default HKP server.
1421          * 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.166

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26