79 |
static const char* |
static const char* |
80 |
get_photo_tmpname (HWND dlg) |
get_photo_tmpname (HWND dlg) |
81 |
{ |
{ |
82 |
static char buf[64]; |
static char buf[MAX_PATH+128+1]; |
83 |
|
char name[64]; |
84 |
|
|
85 |
_snprintf (buf, sizeof (buf)-1, "winpt_photo_%08lX.tmp", (DWORD)dlg); |
_snprintf (name, sizeof (name)-1, "winpt_photo_%08lX.tmp", (DWORD)dlg); |
86 |
|
get_temp_name (buf, DIM (buf), name); |
87 |
return buf; |
return buf; |
88 |
} |
} |
89 |
|
|
208 |
{ |
{ |
209 |
static char buf[64]; |
static char buf[64]; |
210 |
|
|
211 |
if (!k->ext->card_type) |
if (!k->ext || !k->ext->card_type) |
212 |
return ""; |
return ""; |
213 |
_snprintf (buf, sizeof (buf)-1, _("Card-Type: %s\r\n"), k->ext->card_type); |
_snprintf (buf, sizeof (buf)-1, _("Card-Type: %s\r\n"), k->ext->card_type); |
214 |
return buf; |
return buf; |
220 |
static void |
static void |
221 |
display_key_info (HWND dlg, winpt_key_t k, gpgme_key_t *r_key) |
display_key_info (HWND dlg, winpt_key_t k, gpgme_key_t *r_key) |
222 |
{ |
{ |
223 |
struct winpt_key_s k2; |
gpgme_key_t key; |
224 |
gpgme_key_t sk, key; |
struct winpt_key_s pk, sk; |
225 |
char info[512]; |
char info[512]; |
226 |
const char *inf; |
const char *inf; |
227 |
u32 created, expires; |
DWORD created, expires; |
228 |
|
|
229 |
memset (&k2, 0, sizeof (k2)); |
memset (&pk, 0, sizeof (pk)); |
230 |
if (k->key_pair) |
if (winpt_get_pubkey (k->keyid, &pk)) |
231 |
winpt_get_seckey (k->keyid, &k2); |
BUG (0); |
232 |
else |
gpg_keycache_update_attr (pk.ext, KC_ATTR_PREFSYM, 0); |
233 |
winpt_get_pubkey (k->keyid, &k2); |
memset (&sk, 0, sizeof (sk)); |
234 |
sk = k2.ctx; |
if (k->key_pair && !winpt_get_seckey (k->keyid, &sk)) |
235 |
if (sk) |
k->is_protected = sk.is_protected; |
236 |
k->is_protected = k2.is_protected; |
key = pk.ext->key; |
237 |
if (get_pubkey (k->keyid, &key)) |
created = key->subkeys->timestamp; |
238 |
BUG (0); |
expires = key->subkeys->expires; |
|
created = key->subkeys->timestamp; |
|
|
expires = key->subkeys->expires; |
|
239 |
_snprintf (info, DIM (info)-1, |
_snprintf (info, DIM (info)-1, |
240 |
_("Type: %s\r\n" |
_("Type: %s\r\n" |
241 |
"Key ID: %s\r\n" |
"Key ID: %s\r\n" |
253 |
get_key_created (created), |
get_key_created (created), |
254 |
get_key_expire_date (expires), |
get_key_expire_date (expires), |
255 |
get_validity (key), |
get_validity (key), |
256 |
get_pref_cipher (&k2), |
get_pref_cipher (&pk), |
257 |
get_card_type (&k2)); |
get_card_type (&sk)); |
258 |
|
|
259 |
SetDlgItemText (dlg, IDC_KEYPROPS_INFO, info); |
SetDlgItemText (dlg, IDC_KEYPROPS_INFO, info); |
260 |
SetDlgItemText (dlg, IDC_KEYPROPS_FPR, get_key_fpr (key)); |
SetDlgItemText (dlg, IDC_KEYPROPS_FPR, get_key_fpr (key)); |
272 |
static winpt_key_t k; |
static winpt_key_t k; |
273 |
static gpgme_key_t key; |
static gpgme_key_t key; |
274 |
gpgme_validity_t valid; |
gpgme_validity_t valid; |
|
refresh_cache_s rcs = {0}; |
|
275 |
const char *inf; |
const char *inf; |
|
int cancel = 0; |
|
276 |
int rc; |
int rc; |
277 |
|
|
278 |
/* XXX: static variable (k) prevent that the dialog can |
/* XXX: static variable (k) prevent that the dialog can |
287 |
SetDlgItemText (dlg, IDC_KEYPROPS_REVOKERS, _("&Revokers")); |
SetDlgItemText (dlg, IDC_KEYPROPS_REVOKERS, _("&Revokers")); |
288 |
SetDlgItemText (dlg, IDC_KEYPROPS_CHANGE_PWD, _("Change &Password")); |
SetDlgItemText (dlg, IDC_KEYPROPS_CHANGE_PWD, _("Change &Password")); |
289 |
SetDlgItemText (dlg, IDC_KEYPROPS_OTINF, _("Ownertrust")); |
SetDlgItemText (dlg, IDC_KEYPROPS_OTINF, _("Ownertrust")); |
290 |
|
|
291 |
display_key_info (dlg, k, &key); |
display_key_info (dlg, k, &key); |
292 |
if (!keyprops_load_photo (dlg, key, &valid)) { |
if (!keyprops_load_photo (dlg, key, &valid)) { |
293 |
k->has_photo = 1; |
k->has_photo = 1; |