/[winpt]/trunk/Include/wptKeyCache.h
ViewVC logotype

Annotation of /trunk/Include/wptKeyCache.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 167 - (hide annotations)
Thu Jan 26 10:17:17 2006 UTC (19 years, 1 month ago) by twoaday
File MIME type: text/plain
File size: 3770 byte(s)
2006-01-25  Timo Schulz  <ts@g10code.com>
 
        * wptRegistry.cpp (get_reg_entry_gpg): Return NULL if
        the key exist with no value.
        * wptMDSumDlg.cpp (mdsum_dlg_proc): Translate string.
        * wptKeysignDlg.cpp (do_fill_seclist): Select the
        default key if possible.
        * wptFirstRunDlg.cpp (firstrun_dlg_proc): Directly
        return the choice.
        * wptKeylist.cpp (get_key_desc): New.
        (keylist_upd_key): Free memory.
        * wptKeyCache.cpp (gpg_keycache_get_default_key): New.
        (gpg_keycache_set_default_key): New.
        * WinPT.cpp (gpg_prefs_ok): New.
        (WinMain): Only start gpg prefs if needed.
         


1 twoaday 38 /* wptKeyCache.h
2 twoaday 146 * Copyright (C) 2005, 2006 Timo Schulz
3 twoaday 38 *
4     * This file is part of WinPT.
5     *
6     * WinPT is free software; you can redistribute it and/or modify
7     * it under the terms of the GNU General Public License as published by
8     * the Free Software Foundation; either version 2 of the License, or
9     * (at your option) any later version.
10     *
11     * WinPT is distributed in the hope that it will be useful,
12     * but WITHOUT ANY WARRANTY; without even the implied warranty of
13     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14     * GNU General Public License for more details.
15     *
16     * You should have received a copy of the GNU General Public License
17     * along with WinPT; if not, write to the Free Software Foundation,
18     * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
19     */
20     #ifndef WPT_KEYCACHE_H
21     #define WPT_KEYCACHE_H
22    
23 twoaday 151 enum keycache_flag_t {
24     KC_FLAG_ADD = 1,
25     KC_FLAG_UPD = 2
26     };
27    
28 twoaday 38 struct keycache_s {
29 twoaday 167 struct keycache_s *next;
30 twoaday 38 int flags;
31     gpgme_key_t key; /* actual key context. */
32 twoaday 167 unsigned int default_key:1; /* default signing key. */
33 twoaday 38 struct keycache_s *pubpart; /* corresponding public key. */
34     struct {
35     unsigned int is_protected:1; /* key is protected. */
36     unsigned int divert_to_card:1; /* secret key on card. */
37     unsigned int has_desig_rev:1; /* has desig. revokers. */
38     } gloflags;
39     struct {
40 twoaday 133 unsigned int flags;
41 twoaday 38 unsigned char *d; /* attribute (JPG) data. */
42     unsigned int len; /* attribute data length. */
43     gpgme_validity_t validity; /* attribute id validity. */
44     } attrib;
45     unsigned char *sym_prefs;/* symmetric cipher preferences. */
46     char *card_type; /* if != NULL key stored on smart card. */
47     };
48    
49     struct gpg_keycache_s {
50     struct keycache_s *item;
51     struct keycache_s *tmp;
52     int secret;
53     int pos;
54 twoaday 167 void (*cb) (void*, const char*, int, int, int);
55 twoaday 38 void *cb_value;
56     int cb_value2;
57     };
58     typedef struct gpg_keycache_s *gpg_keycache_t;
59    
60     gpgme_error_t gpg_keycache_new (gpg_keycache_t * r_ctx);
61     void gpg_keycache_release (gpg_keycache_t ctx);
62     void gpg_keycache_set_cb (gpg_keycache_t ctx,
63     void (*cb)(void *, const char *, int, int, int),
64 twoaday 167 void* cb_value1, int cb_value2);
65 twoaday 38 void gpg_keycache_rewind (gpg_keycache_t ctx);
66     int gpg_keycache_get_size (gpg_keycache_t ctx);
67     gpgme_error_t gpg_keycache_add_key (gpg_keycache_t ctx, gpgme_key_t key,
68     void **opaque);
69     gpgme_error_t gpg_keycache_update_key (gpg_keycache_t ctx, int is_sec,
70     void *opaque, const char *keyid);
71 twoaday 167 gpgme_error_t gpg_keycache_find_key (gpg_keycache_t ctx, const char *pattern,
72 twoaday 38 int flags, gpgme_key_t * r_key);
73 twoaday 167 gpgme_error_t gpg_keycache_find_key2 (gpg_keycache_t ctx,
74     const char *pattern, int flags,
75     gpgme_key_t *r_key,
76     struct keycache_s **r_item);
77 twoaday 38 gpgme_error_t gpg_keycache_delete_key (gpg_keycache_t ctx,
78     const char * pattern);
79     gpgme_error_t gpg_keycache_init (gpg_keycache_t ctx, const char * pattern,
80     int secret);
81     gpgme_error_t gpg_keycache_next_key (gpg_keycache_t ctx, int flags,
82     gpgme_key_t * r_key);
83     gpgme_error_t gpg_keycache_prepare (gpg_keycache_t ctx,
84 twoaday 167 const char *pubring,
85     const char *secring);
86 twoaday 38 gpgme_error_t gpg_keycache_prepare_single (gpg_keycache_t ctx,
87     const char *keyid,
88     const char *pubr,
89     const char *secr);
90     gpgme_error_t gpg_keycache_sync (gpg_keycache_t pub, gpg_keycache_t sec);
91 twoaday 146 gpgme_error_t gpg_keycache_next_updated_key (gpg_keycache_t ctx,
92 twoaday 151 struct keycache_s **r_obj,
93     int *r_status);
94 twoaday 167 gpgme_error_t gpg_keycache_set_default_key (gpg_keycache_t ctx,
95     const char *pattern);
96     gpgme_error_t gpg_keycache_get_default_key (gpg_keycache_t ctx,
97     gpgme_key_t *r_key);
98 twoaday 38
99     #endif /*WPT_KEYCACHE_H*/

Properties

Name Value
svn:eol-style native

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26