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

Diff of /trunk/Src/ChangeLog

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

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

Legend:
Removed from v.26  
changed lines
  Added in v.181

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26