[gnome-keyring/gpg-agent: 44/44] Merge branch 'master' into gpg-agent
- From: Stefan Walter <stefw src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-keyring/gpg-agent: 44/44] Merge branch 'master' into gpg-agent
- Date: Sat, 12 Jun 2010 22:40:03 +0000 (UTC)
commit 445771d2a6c07f9f056434db96e1749aa3befc53
Merge: 302db3f ec61791
Author: Stef Walter <stef memberwebs com>
Date: Sat Jun 12 22:39:09 2010 +0000
Merge branch 'master' into gpg-agent
.gitignore | 9 +-
Makefile.am | 14 +-
configure.in | 64 +-
daemon/.gitignore | 15 -
daemon/Makefile.am | 22 +-
daemon/control/tests/.gitignore | 3 +
daemon/control/tests/test-control-change.c | 4 +-
daemon/control/tests/test-control-init.c | 4 +-
daemon/control/tests/test-control-unlock.c | 4 +-
daemon/data/.gitignore | 2 -
daemon/dbus/Makefile.am | 1 +
daemon/dbus/gkd-dbus-secrets.c | 2 +-
daemon/dbus/gkd-secret-change.c | 26 +-
daemon/dbus/gkd-secret-create.c | 20 +-
daemon/dbus/gkd-secret-dispatch.c | 73 +
daemon/dbus/gkd-secret-dispatch.h | 56 +
daemon/dbus/gkd-secret-prompt.c | 119 +-
daemon/dbus/gkd-secret-prompt.h | 11 +-
daemon/dbus/gkd-secret-secret.c | 3 +-
daemon/dbus/gkd-secret-service.c | 15 +-
daemon/dbus/gkd-secret-session.c | 72 +-
daemon/dbus/gkd-secret-session.h | 5 -
daemon/dbus/gkd-secret-types.h | 1 +
daemon/dbus/gkd-secret-unlock.c | 654 +++---
daemon/dbus/gkd-secret-unlock.h | 2 +-
daemon/gkd-main.c | 25 +-
daemon/gkd-pkcs11.c | 205 ++
daemon/{pkcs11 => }/gkd-pkcs11.h | 0
daemon/gpg-agent/.gitignore | 1 +
daemon/login/gkd-login.c | 350 +---
daemon/login/gkd-login.h | 19 -
daemon/pkcs11/.gitignore | 3 -
daemon/pkcs11/Makefile.am | 22 -
daemon/pkcs11/gkd-pkcs11-auth.c | 1536 -------------
daemon/pkcs11/gkd-pkcs11-auth.h | 33 -
daemon/pkcs11/gkd-pkcs11-data.c | 263 ---
daemon/pkcs11/gkd-pkcs11-data.h | 52 -
daemon/pkcs11/gkd-pkcs11.c | 177 --
daemon/prompt/Makefile.am | 79 -
daemon/prompt/gkd-prompt-tool.c | 915 --------
daemon/prompt/gkd-prompt-util.c | 222 --
daemon/prompt/gkd-prompt-util.h | 49 -
daemon/prompt/gkd-prompt.c | 1122 ---------
daemon/prompt/gkd-prompt.h | 138 --
daemon/prompt/tests/Makefile.am | 14 -
daemon/prompt/tests/unit-test-util.c | 136 --
daemon/ssh-agent/.gitignore | 5 +-
daemon/ssh-agent/gkd-ssh-agent-standalone.c | 11 +-
docs/.gitignore | 3 -
docs/reference/.gitignore | 7 -
docs/reference/gcr/gcr-sections.txt | 4 -
egg/.gitignore | 4 -
egg/egg-secure-memory.h | 8 +
egg/tests/.gitignore | 9 -
egg/tests/Makefile.am | 6 +-
egg/tests/test-padding.c | 2 +-
egg/tests/unit-test-asn1.c | 4 +-
egg/tests/unit-test-cleanup.c | 2 +-
egg/tests/unit-test-dh.c | 2 +-
egg/tests/unit-test-hex.c | 2 +-
egg/tests/unit-test-oid.c | 2 +-
egg/tests/unit-test-openssl.c | 4 +-
egg/tests/unit-test-secmem.c | 2 +-
egg/tests/unit-test-spawn.c | 18 +-
egg/tests/unit-test-symkey.c | 2 +-
gcr/.gitignore | 6 -
gcr/tests/.gitignore | 9 -
gcr/tests/Makefile.am | 8 +-
gcr/tests/unit-test-certificate.c | 4 +-
gcr/tests/unit-test-parser.c | 6 +-
gp11/.gitignore | 5 -
gp11/gp11-attributes.c | 4 +-
gp11/gp11-call.c | 1 +
gp11/tests/.gitignore | 9 -
gp11/tests/Makefile.am | 10 +-
gp11/tests/gp11-test.h | 4 -
gp11/tests/test-gp11-mechanism.c | 2 +-
gp11/tests/unit-test-gp11-attributes.c | 2 +-
gp11/tests/unit-test-gp11-crypto.c | 33 +-
gp11/tests/unit-test-gp11-module.c | 2 +-
gp11/tests/unit-test-gp11-object.c | 17 +-
gp11/tests/unit-test-gp11-session.c | 23 +-
gp11/tests/unit-test-gp11-slot.c | 2 +-
pam/.gitignore | 4 -
pam/Makefile.am | 8 -
pam/gkr-pam-module.c | 31 +-
pam/tests/.gitignore | 4 -
pam/tests/Makefile.am | 10 -
pam/tests/unit-test-pam-setup.c | 116 -
pam/tests/unit-test-pam.c | 73 -
pkcs11/.gitignore | 4 -
pkcs11/Makefile.am | 7 +-
pkcs11/gck/.gitignore | 8 -
pkcs11/gck/Makefile.am | 99 -
pkcs11/gck/gck-aes-key.c | 267 ---
pkcs11/gck/gck-aes-key.h | 57 -
pkcs11/gck/gck-aes-mechanism.c | 231 --
pkcs11/gck/gck-aes-mechanism.h | 54 -
pkcs11/gck/gck-attributes.c | 615 -----
pkcs11/gck/gck-attributes.h | 134 --
pkcs11/gck/gck-certificate-key.c | 152 --
pkcs11/gck/gck-certificate-key.h | 57 -
pkcs11/gck/gck-certificate-trust.c | 377 ----
pkcs11/gck/gck-certificate-trust.h | 57 -
pkcs11/gck/gck-certificate.c | 794 -------
pkcs11/gck/gck-certificate.h | 75 -
pkcs11/gck/gck-credential.c | 525 -----
pkcs11/gck/gck-credential.h | 95 -
pkcs11/gck/gck-crypto.c | 551 -----
pkcs11/gck/gck-crypto.h | 157 --
pkcs11/gck/gck-data-asn1.c | 97 -
pkcs11/gck/gck-data-asn1.h | 39 -
pkcs11/gck/gck-data-der.c | 1285 -----------
pkcs11/gck/gck-data-der.h | 121 -
pkcs11/gck/gck-data-file.c | 1478 ------------
pkcs11/gck/gck-data-file.h | 109 -
pkcs11/gck/gck-data-types.h | 15 -
pkcs11/gck/gck-dh-key.c | 155 --
pkcs11/gck/gck-dh-key.h | 59 -
pkcs11/gck/gck-dh-mechanism.c | 270 ---
pkcs11/gck/gck-dh-mechanism.h | 52 -
pkcs11/gck/gck-dh-private-key.c | 220 --
pkcs11/gck/gck-dh-private-key.h | 59 -
pkcs11/gck/gck-dh-public-key.c | 192 --
pkcs11/gck/gck-dh-public-key.h | 57 -
pkcs11/gck/gck-factory.c | 25 -
pkcs11/gck/gck-factory.h | 40 -
pkcs11/gck/gck-file-tracker.c | 304 ---
pkcs11/gck/gck-file-tracker.h | 63 -
pkcs11/gck/gck-manager.c | 992 --------
pkcs11/gck/gck-manager.h | 143 --
pkcs11/gck/gck-mechanism-dsa.c | 144 --
pkcs11/gck/gck-mechanism-dsa.h | 49 -
pkcs11/gck/gck-mechanism-rsa.c | 220 --
pkcs11/gck/gck-mechanism-rsa.h | 67 -
pkcs11/gck/gck-memory-store.c | 261 ---
pkcs11/gck/gck-memory-store.h | 48 -
pkcs11/gck/gck-module-ep.h | 1541 -------------
pkcs11/gck/gck-module.c | 1370 -----------
pkcs11/gck/gck-module.h | 224 --
pkcs11/gck/gck-null-key.c | 131 --
pkcs11/gck/gck-null-key.h | 52 -
pkcs11/gck/gck-null-mechanism.c | 157 --
pkcs11/gck/gck-null-mechanism.h | 55 -
pkcs11/gck/gck-object.c | 948 --------
pkcs11/gck/gck-object.h | 155 --
pkcs11/gck/gck-private-xsa-key.c | 427 ----
pkcs11/gck/gck-private-xsa-key.h | 67 -
pkcs11/gck/gck-public-xsa-key.c | 316 ---
pkcs11/gck/gck-public-xsa-key.h | 60 -
pkcs11/gck/gck-secret-key.c | 160 --
pkcs11/gck/gck-secret-key.h | 51 -
pkcs11/gck/gck-secret.c | 177 --
pkcs11/gck/gck-secret.h | 67 -
pkcs11/gck/gck-serializable.c | 79 -
pkcs11/gck/gck-serializable.h | 64 -
pkcs11/gck/gck-session.c | 1643 --------------
pkcs11/gck/gck-session.h | 366 ---
pkcs11/gck/gck-sexp-key.c | 261 ---
pkcs11/gck/gck-sexp-key.h | 71 -
pkcs11/gck/gck-sexp.c | 281 ---
pkcs11/gck/gck-sexp.h | 61 -
pkcs11/gck/gck-store.c | 328 ---
pkcs11/gck/gck-store.h | 102 -
pkcs11/gck/gck-timer.c | 230 --
pkcs11/gck/gck-timer.h | 43 -
pkcs11/gck/gck-transaction.c | 510 -----
pkcs11/gck/gck-transaction.h | 82 -
pkcs11/gck/gck-types.h | 51 -
pkcs11/gck/gck-util.c | 100 -
pkcs11/gck/gck-util.h | 52 -
pkcs11/gck/pk.asn | 103 -
pkcs11/gck/pkix.asn | 1230 ----------
pkcs11/gck/tests/.gitignore | 9 -
pkcs11/gck/tests/Makefile.am | 48 -
pkcs11/gck/tests/dump-data-file.c | 100 -
pkcs11/gck/tests/mock-locked-object.c | 91 -
pkcs11/gck/tests/mock-locked-object.h | 52 -
pkcs11/gck/tests/test-module.c | 114 -
pkcs11/gck/tests/test-module.h | 45 -
pkcs11/gck/tests/unit-test-attributes.c | 779 -------
pkcs11/gck/tests/unit-test-credential.c | 285 ---
pkcs11/gck/tests/unit-test-data-asn1.c | 117 -
pkcs11/gck/tests/unit-test-data-der.c | 543 -----
pkcs11/gck/tests/unit-test-data-file.c | 587 -----
pkcs11/gck/tests/unit-test-file-tracker.c | 221 --
pkcs11/gck/tests/unit-test-memory-store.c | 438 ----
pkcs11/gck/tests/unit-test-object.c | 277 ---
pkcs11/gck/tests/unit-test-secret.c | 178 --
pkcs11/gck/tests/unit-test-sexp.c | 132 --
pkcs11/gck/tests/unit-test-store.c | 85 -
pkcs11/gck/tests/unit-test-timer.c | 144 --
pkcs11/gck/tests/unit-test-transaction.c | 334 ---
pkcs11/gkm/.gitignore | 3 +
pkcs11/gkm/Makefile.am | 101 +
pkcs11/gkm/gkm-aes-key.c | 267 +++
pkcs11/gkm/gkm-aes-key.h | 57 +
pkcs11/gkm/gkm-aes-mechanism.c | 231 ++
pkcs11/gkm/gkm-aes-mechanism.h | 54 +
pkcs11/gkm/gkm-attributes.c | 676 ++++++
pkcs11/gkm/gkm-attributes.h | 154 ++
pkcs11/gkm/gkm-certificate-key.c | 152 ++
pkcs11/gkm/gkm-certificate-key.h | 57 +
pkcs11/gkm/gkm-certificate-trust.c | 377 ++++
pkcs11/gkm/gkm-certificate-trust.h | 57 +
pkcs11/gkm/gkm-certificate.c | 794 +++++++
pkcs11/gkm/gkm-certificate.h | 75 +
pkcs11/gkm/gkm-credential.c | 525 +++++
pkcs11/gkm/gkm-credential.h | 95 +
pkcs11/gkm/gkm-crypto.c | 550 +++++
pkcs11/gkm/gkm-crypto.h | 157 ++
pkcs11/gkm/gkm-data-asn1.c | 97 +
pkcs11/gkm/gkm-data-asn1.h | 39 +
pkcs11/gkm/gkm-data-der.c | 1285 +++++++++++
pkcs11/gkm/gkm-data-der.h | 121 +
pkcs11/gkm/gkm-data-file.c | 1478 ++++++++++++
pkcs11/gkm/gkm-data-file.h | 109 +
pkcs11/gkm/gkm-data-types.h | 15 +
pkcs11/gkm/gkm-dh-key.c | 155 ++
pkcs11/gkm/gkm-dh-key.h | 59 +
pkcs11/gkm/gkm-dh-mechanism.c | 270 +++
pkcs11/gkm/gkm-dh-mechanism.h | 52 +
pkcs11/gkm/gkm-dh-private-key.c | 220 ++
pkcs11/gkm/gkm-dh-private-key.h | 59 +
pkcs11/gkm/gkm-dh-public-key.c | 192 ++
pkcs11/gkm/gkm-dh-public-key.h | 57 +
pkcs11/gkm/gkm-factory.c | 24 +
pkcs11/gkm/gkm-factory.h | 40 +
pkcs11/gkm/gkm-file-tracker.c | 304 +++
pkcs11/gkm/gkm-file-tracker.h | 62 +
pkcs11/gkm/gkm-manager.c | 992 ++++++++
pkcs11/gkm/gkm-manager.h | 142 ++
.../{gck/gck-marshal.list => gkm/gkm-marshal.list} | 0
pkcs11/gkm/gkm-mechanism-dsa.c | 144 ++
pkcs11/gkm/gkm-mechanism-dsa.h | 49 +
pkcs11/gkm/gkm-mechanism-rsa.c | 220 ++
pkcs11/gkm/gkm-mechanism-rsa.h | 67 +
pkcs11/gkm/gkm-memory-store.c | 261 +++
pkcs11/gkm/gkm-memory-store.h | 48 +
pkcs11/gkm/gkm-mock.c | 1607 +++++++++++++
pkcs11/gkm/gkm-mock.h | 396 ++++
pkcs11/gkm/gkm-module-ep.h | 1541 +++++++++++++
pkcs11/gkm/gkm-module.c | 1370 +++++++++++
pkcs11/gkm/gkm-module.h | 224 ++
pkcs11/gkm/gkm-null-key.c | 131 ++
pkcs11/gkm/gkm-null-key.h | 52 +
pkcs11/gkm/gkm-null-mechanism.c | 157 ++
pkcs11/gkm/gkm-null-mechanism.h | 55 +
pkcs11/gkm/gkm-object.c | 948 ++++++++
pkcs11/gkm/gkm-object.h | 155 ++
pkcs11/gkm/gkm-private-xsa-key.c | 427 ++++
pkcs11/gkm/gkm-private-xsa-key.h | 67 +
pkcs11/gkm/gkm-public-xsa-key.c | 316 +++
pkcs11/gkm/gkm-public-xsa-key.h | 60 +
pkcs11/gkm/gkm-secret-key.c | 159 ++
pkcs11/gkm/gkm-secret-key.h | 51 +
pkcs11/gkm/gkm-secret.c | 184 ++
pkcs11/gkm/gkm-secret.h | 69 +
pkcs11/gkm/gkm-serializable.c | 79 +
pkcs11/gkm/gkm-serializable.h | 63 +
pkcs11/gkm/gkm-session.c | 1643 ++++++++++++++
pkcs11/gkm/gkm-session.h | 366 +++
pkcs11/gkm/gkm-sexp-key.c | 261 +++
pkcs11/gkm/gkm-sexp-key.h | 71 +
pkcs11/gkm/gkm-sexp.c | 281 +++
pkcs11/gkm/gkm-sexp.h | 61 +
pkcs11/gkm/gkm-store.c | 328 +++
pkcs11/gkm/gkm-store.h | 102 +
pkcs11/gkm/gkm-test.c | 60 +
pkcs11/gkm/gkm-test.h | 62 +
pkcs11/gkm/gkm-timer.c | 230 ++
pkcs11/gkm/gkm-timer.h | 43 +
pkcs11/gkm/gkm-transaction.c | 510 +++++
pkcs11/gkm/gkm-transaction.h | 82 +
pkcs11/gkm/gkm-types.h | 51 +
pkcs11/gkm/gkm-util.c | 220 ++
pkcs11/gkm/gkm-util.h | 56 +
pkcs11/gkm/pk.asn | 103 +
pkcs11/gkm/pkix.asn | 1230 ++++++++++
pkcs11/gkm/tests/.gitignore | 2 +
pkcs11/gkm/tests/Makefile.am | 47 +
pkcs11/gkm/tests/dump-data-file.c | 95 +
pkcs11/gkm/tests/mock-locked-object.c | 91 +
pkcs11/gkm/tests/mock-locked-object.h | 52 +
.../tests/test-data/ca-certificates.crt | 0
.../tests/test-data/data-file-private.store | Bin 494 -> 494 bytes
.../tests/test-data/data-file-public.store | Bin 216 -> 216 bytes
.../tests/test-data/der-pkcs8-PBE-MD5-DES.key | Bin 677 -> 677 bytes
.../tests/test-data/der-pkcs8-PBE-SHA1-3DES.key | Bin 678 -> 678 bytes
.../tests/test-data/der-pkcs8-PBE-SHA1-DES.key | Bin 677 -> 677 bytes
.../tests/test-data/der-pkcs8-PBE-SHA1-RC2-40.key | Bin 678 -> 678 bytes
.../tests/test-data/der-pkcs8-PBE-SHA1-RC4-128.key | Bin 673 -> 673 bytes
.../{gck => gkm}/tests/test-data/der-pkcs8-dsa.key | Bin 335 -> 335 bytes
.../tests/test-data/der-pkcs8-encrypted-pkcs5.key | Bin 677 -> 677 bytes
.../tests/test-data/der-pkcs8-v2-des.key | Bin 711 -> 711 bytes
.../tests/test-data/der-pkcs8-v2-des3.key | Bin 714 -> 714 bytes
pkcs11/{gck => gkm}/tests/test-data/der-pkcs8.key | Bin 635 -> 635 bytes
.../{gck => gkm}/tests/test-data/pem-rsa-enc.key | 0
.../tests/test-data/test-certificate-1.der | Bin 813 -> 813 bytes
.../tests/test-data/test-certificate-2.der | Bin 1346 -> 1346 bytes
pkcs11/gkm/tests/test-module.c | 114 +
pkcs11/gkm/tests/test-module.h | 45 +
pkcs11/{gck => gkm}/tests/test.asn | 0
pkcs11/gkm/tests/unit-test-attributes.c | 779 +++++++
pkcs11/gkm/tests/unit-test-credential.c | 285 +++
pkcs11/gkm/tests/unit-test-data-asn1.c | 117 +
pkcs11/gkm/tests/unit-test-data-der.c | 543 +++++
pkcs11/gkm/tests/unit-test-data-file.c | 587 +++++
pkcs11/gkm/tests/unit-test-file-tracker.c | 221 ++
pkcs11/gkm/tests/unit-test-memory-store.c | 438 ++++
pkcs11/gkm/tests/unit-test-object.c | 277 +++
pkcs11/gkm/tests/unit-test-secret.c | 178 ++
pkcs11/gkm/tests/unit-test-sexp.c | 132 ++
pkcs11/gkm/tests/unit-test-store.c | 85 +
pkcs11/gkm/tests/unit-test-timer.c | 144 ++
pkcs11/gkm/tests/unit-test-transaction.c | 334 +++
pkcs11/pkcs11g.h | 36 +-
pkcs11/pkcs11i.h | 2 +
pkcs11/pkcs11n.h | 442 ++--
pkcs11/plex-layer/.gitignore | 3 -
pkcs11/plex-layer/Makefile.am | 15 +-
pkcs11/plex-layer/gck-plex-layer.c | 945 --------
pkcs11/plex-layer/gck-plex-layer.h | 31 -
pkcs11/plex-layer/gkm-plex-layer.c | 945 ++++++++
pkcs11/plex-layer/gkm-plex-layer.h | 31 +
pkcs11/roots-store/.gitignore | 3 -
pkcs11/roots-store/Makefile.am | 32 +-
pkcs11/roots-store/gck-roots-certificate.c | 216 --
pkcs11/roots-store/gck-roots-certificate.h | 55 -
pkcs11/roots-store/gck-roots-module.c | 365 ---
pkcs11/roots-store/gck-roots-module.h | 45 -
pkcs11/roots-store/gck-roots-standalone.c | 60 -
pkcs11/roots-store/gck-roots-store.h | 29 -
pkcs11/roots-store/gkm-roots-certificate.c | 216 ++
pkcs11/roots-store/gkm-roots-certificate.h | 55 +
pkcs11/roots-store/gkm-roots-module.c | 365 +++
pkcs11/roots-store/gkm-roots-module.h | 45 +
pkcs11/roots-store/gkm-roots-standalone.c | 54 +
pkcs11/roots-store/gkm-roots-store.h | 29 +
pkcs11/roots-store/tests/.gitignore | 2 -
pkcs11/roots-store/tests/Makefile.am | 10 +-
pkcs11/roots-store/tests/p11-tests.conf | 4 +-
pkcs11/roots-store/tests/test-module.c | 8 +-
pkcs11/rpc-layer/.gitignore | 6 +-
pkcs11/rpc-layer/Makefile.am | 53 +-
pkcs11/rpc-layer/gck-rpc-daemon-standalone.c | 134 --
pkcs11/rpc-layer/gck-rpc-dispatch.c | 2373 --------------------
pkcs11/rpc-layer/gck-rpc-layer.h | 25 -
pkcs11/rpc-layer/gck-rpc-message.c | 471 ----
pkcs11/rpc-layer/gck-rpc-module.c | 2206 ------------------
pkcs11/rpc-layer/gck-rpc-private.h | 342 ---
pkcs11/rpc-layer/gck-rpc-util.c | 207 --
pkcs11/rpc-layer/gkm-rpc-daemon-standalone.c | 134 ++
pkcs11/rpc-layer/gkm-rpc-dispatch.c | 2373 ++++++++++++++++++++
pkcs11/rpc-layer/gkm-rpc-layer.h | 25 +
pkcs11/rpc-layer/gkm-rpc-message.c | 471 ++++
pkcs11/rpc-layer/gkm-rpc-module.c | 2206 ++++++++++++++++++
pkcs11/rpc-layer/gkm-rpc-private.h | 342 +++
pkcs11/rpc-layer/gkm-rpc-util.c | 207 ++
pkcs11/secret-store/Makefile.am | 46 +-
pkcs11/secret-store/gck-secret-binary.c | 988 --------
pkcs11/secret-store/gck-secret-binary.h | 40 -
pkcs11/secret-store/gck-secret-collection.c | 967 --------
pkcs11/secret-store/gck-secret-collection.h | 104 -
pkcs11/secret-store/gck-secret-compat.c | 91 -
pkcs11/secret-store/gck-secret-compat.h | 47 -
pkcs11/secret-store/gck-secret-data.c | 222 --
pkcs11/secret-store/gck-secret-data.h | 70 -
pkcs11/secret-store/gck-secret-fields.c | 494 ----
pkcs11/secret-store/gck-secret-fields.h | 106 -
pkcs11/secret-store/gck-secret-item.c | 499 ----
pkcs11/secret-store/gck-secret-item.h | 61 -
pkcs11/secret-store/gck-secret-module.c | 510 -----
pkcs11/secret-store/gck-secret-module.h | 44 -
pkcs11/secret-store/gck-secret-object.c | 399 ----
pkcs11/secret-store/gck-secret-object.h | 81 -
pkcs11/secret-store/gck-secret-search.c | 465 ----
pkcs11/secret-store/gck-secret-search.h | 54 -
pkcs11/secret-store/gck-secret-standalone.c | 60 -
pkcs11/secret-store/gck-secret-store.h | 29 -
pkcs11/secret-store/gck-secret-textual.c | 550 -----
pkcs11/secret-store/gck-secret-textual.h | 39 -
pkcs11/secret-store/gck-secret-types.h | 35 -
pkcs11/secret-store/gkm-secret-binary.c | 988 ++++++++
pkcs11/secret-store/gkm-secret-binary.h | 40 +
pkcs11/secret-store/gkm-secret-collection.c | 978 ++++++++
pkcs11/secret-store/gkm-secret-collection.h | 104 +
pkcs11/secret-store/gkm-secret-compat.c | 91 +
pkcs11/secret-store/gkm-secret-compat.h | 47 +
pkcs11/secret-store/gkm-secret-data.c | 222 ++
pkcs11/secret-store/gkm-secret-data.h | 70 +
pkcs11/secret-store/gkm-secret-fields.c | 494 ++++
pkcs11/secret-store/gkm-secret-fields.h | 106 +
pkcs11/secret-store/gkm-secret-item.c | 499 ++++
pkcs11/secret-store/gkm-secret-item.h | 61 +
pkcs11/secret-store/gkm-secret-module.c | 510 +++++
pkcs11/secret-store/gkm-secret-module.h | 44 +
pkcs11/secret-store/gkm-secret-object.c | 399 ++++
pkcs11/secret-store/gkm-secret-object.h | 81 +
pkcs11/secret-store/gkm-secret-search.c | 465 ++++
pkcs11/secret-store/gkm-secret-search.h | 54 +
pkcs11/secret-store/gkm-secret-standalone.c | 54 +
pkcs11/secret-store/gkm-secret-store.h | 29 +
pkcs11/secret-store/gkm-secret-textual.c | 550 +++++
pkcs11/secret-store/gkm-secret-textual.h | 39 +
pkcs11/secret-store/gkm-secret-types.h | 35 +
pkcs11/secret-store/tests/.gitignore | 4 -
pkcs11/secret-store/tests/Makefile.am | 12 +-
pkcs11/secret-store/tests/test-secret-module.c | 162 +-
pkcs11/secret-store/tests/test-secret-module.h | 16 +-
.../secret-store/tests/unit-test-secret-binary.c | 106 +-
.../tests/unit-test-secret-collection.c | 288 ++--
.../secret-store/tests/unit-test-secret-compat.c | 58 +-
pkcs11/secret-store/tests/unit-test-secret-data.c | 168 +-
.../secret-store/tests/unit-test-secret-fields.c | 148 +-
pkcs11/secret-store/tests/unit-test-secret-item.c | 280 ++--
.../secret-store/tests/unit-test-secret-object.c | 90 +-
.../secret-store/tests/unit-test-secret-search.c | 178 +-
.../secret-store/tests/unit-test-secret-textual.c | 94 +-
pkcs11/ssh-store/.gitignore | 3 -
pkcs11/ssh-store/Makefile.am | 36 +-
pkcs11/ssh-store/gck-ssh-module.c | 274 ---
pkcs11/ssh-store/gck-ssh-module.h | 46 -
pkcs11/ssh-store/gck-ssh-openssh.c | 394 ----
pkcs11/ssh-store/gck-ssh-openssh.h | 24 -
pkcs11/ssh-store/gck-ssh-private-key.c | 378 ----
pkcs11/ssh-store/gck-ssh-private-key.h | 62 -
pkcs11/ssh-store/gck-ssh-public-key.c | 153 --
pkcs11/ssh-store/gck-ssh-public-key.h | 53 -
pkcs11/ssh-store/gck-ssh-standalone.c | 57 -
pkcs11/ssh-store/gck-ssh-store.h | 29 -
pkcs11/ssh-store/gkm-ssh-module.c | 274 +++
pkcs11/ssh-store/gkm-ssh-module.h | 46 +
pkcs11/ssh-store/gkm-ssh-openssh.c | 394 ++++
pkcs11/ssh-store/gkm-ssh-openssh.h | 24 +
pkcs11/ssh-store/gkm-ssh-private-key.c | 378 ++++
pkcs11/ssh-store/gkm-ssh-private-key.h | 62 +
pkcs11/ssh-store/gkm-ssh-public-key.c | 153 ++
pkcs11/ssh-store/gkm-ssh-public-key.h | 53 +
pkcs11/ssh-store/gkm-ssh-standalone.c | 51 +
pkcs11/ssh-store/gkm-ssh-store.h | 29 +
pkcs11/ssh-store/tests/.gitignore | 8 -
pkcs11/ssh-store/tests/Makefile.am | 12 +-
pkcs11/ssh-store/tests/test-ssh-module.c | 56 +-
pkcs11/ssh-store/tests/test-ssh-module.h | 6 +-
pkcs11/ssh-store/tests/unit-test-private-key.c | 56 +-
pkcs11/ssh-store/tests/unit-test-ssh-openssh.c | 54 +-
pkcs11/template/gck-xxx.c | 144 --
pkcs11/template/gck-xxx.h | 49 -
pkcs11/template/gck-zzz.c | 60 -
pkcs11/template/gck-zzz.h | 46 -
pkcs11/template/gkm-xxx.c | 144 ++
pkcs11/template/gkm-xxx.h | 49 +
pkcs11/template/gkm-zzz.c | 59 +
pkcs11/template/gkm-zzz.h | 45 +
pkcs11/user-store/.gitignore | 3 -
pkcs11/user-store/Makefile.am | 36 +-
pkcs11/user-store/gck-user-module.c | 350 ---
pkcs11/user-store/gck-user-module.h | 45 -
pkcs11/user-store/gck-user-private-key.c | 346 ---
pkcs11/user-store/gck-user-private-key.h | 52 -
pkcs11/user-store/gck-user-public-key.c | 205 --
pkcs11/user-store/gck-user-public-key.h | 51 -
pkcs11/user-store/gck-user-standalone.c | 57 -
pkcs11/user-store/gck-user-storage.c | 1357 -----------
pkcs11/user-store/gck-user-storage.h | 79 -
pkcs11/user-store/gck-user-store.h | 29 -
pkcs11/user-store/gkm-user-module.c | 350 +++
pkcs11/user-store/gkm-user-module.h | 45 +
pkcs11/user-store/gkm-user-private-key.c | 346 +++
pkcs11/user-store/gkm-user-private-key.h | 52 +
pkcs11/user-store/gkm-user-public-key.c | 205 ++
pkcs11/user-store/gkm-user-public-key.h | 51 +
pkcs11/user-store/gkm-user-standalone.c | 51 +
pkcs11/user-store/gkm-user-storage.c | 1357 +++++++++++
pkcs11/user-store/gkm-user-storage.h | 79 +
pkcs11/user-store/gkm-user-store.h | 29 +
pkcs11/user-store/tests/.gitignore | 2 -
pkcs11/user-store/tests/Makefile.am | 10 +-
pkcs11/user-store/tests/p11-tests.conf | 4 +-
pkcs11/user-store/tests/test-module.c | 8 +-
pkcs11/wrap-layer/Makefile.am | 35 +
pkcs11/wrap-layer/gkm-wrap-layer.c | 1417 ++++++++++++
pkcs11/wrap-layer/gkm-wrap-layer.h | 37 +
pkcs11/wrap-layer/gkm-wrap-login.c | 465 ++++
pkcs11/wrap-layer/gkm-wrap-login.h | 42 +
pkcs11/wrap-layer/gkm-wrap-prompt.c | 1502 +++++++++++++
pkcs11/wrap-layer/gkm-wrap-prompt.h | 104 +
pkcs11/wrap-layer/tests/Makefile.am | 19 +
pkcs11/wrap-layer/tests/mock-secret-store.c | 286 +++
pkcs11/wrap-layer/tests/test-create-credential.c | 156 ++
pkcs11/wrap-layer/tests/test-init-pin.c | 92 +
pkcs11/wrap-layer/tests/test-login-auto.c | 210 ++
pkcs11/wrap-layer/tests/test-login-hints.c | 44 +
pkcs11/wrap-layer/tests/test-login-keyring.c | 306 +++
pkcs11/wrap-layer/tests/test-login-specific.c | 135 ++
pkcs11/wrap-layer/tests/test-login-user.c | 144 ++
pkcs11/wrap-layer/tests/test-set-pin.c | 92 +
po/.gitignore | 2 -
po/POTFILES.in | 12 +-
po/ca.po | 46 +-
po/en shaw po | 770 +++----
po/es.po | 73 +-
po/et.po | 4 +-
po/ms.po | 1435 ++++++++++---
po/nb.po | 52 +-
po/or.po | 792 +++-----
po/th.po | 492 ++--
po/zh_HK.po | 14 +-
po/zh_TW.po | 12 +-
testing/.gitignore | 2 +
testing/Makefile.am | 23 +
{tests => testing}/ca-example/certs/ca.crt | 0
{tests => testing}/ca-example/certs/client.crt | 0
{tests => testing}/ca-example/certs/email.crt | 0
.../ca-example/certs/generic-dsa.crt | 0
{tests => testing}/ca-example/database.txt | 0
{tests => testing}/ca-example/keys/ca.key | 0
{tests => testing}/ca-example/keys/client.key | 0
{tests => testing}/ca-example/keys/dsa.params | 0
{tests => testing}/ca-example/keys/email.key | 0
{tests => testing}/ca-example/keys/generic-dsa.key | 0
testing/ca-example/profiles/ca.conf | 32 +
.../ca-example/profiles/extensions.conf | 0
.../ca-example/profiles/request.conf | 0
{tests => testing}/ca-example/requests/client.req | 0
{tests => testing}/ca-example/requests/email.req | 0
.../ca-example/requests/generic-dsa.req | 0
{tests => testing}/ca-example/serial.txt | 0
testing/testing-build.sh | 136 ++
testing/testing.c | 284 +++
testing/testing.h | 104 +
testing/testing.make | 57 +
tests/.gitignore | 15 -
tests/Makefile.am | 19 -
tests/ca-example/profiles/ca.conf | 32 -
tests/dbus-test.py | 16 -
tests/gtest-helpers.c | 271 ---
tests/gtest-helpers.h | 95 -
tests/gtest.make | 77 -
tests/prep-gtest.sh | 137 --
tool/.gitignore | 3 -
ui/.gitignore | 1 +
ui/Makefile.am | 79 +
.../gku-prompt-marshal.list | 0
ui/gku-prompt-tool.c | 920 ++++++++
ui/gku-prompt-util.c | 222 ++
ui/gku-prompt-util.h | 49 +
ui/gku-prompt.c | 1246 ++++++++++
ui/gku-prompt.h | 161 ++
daemon/prompt/gkd-prompt.ui => ui/gku-prompt.ui | 0
ui/tests/Makefile.am | 14 +
{daemon/prompt => ui}/tests/test-data/prompt-empty | 0
{daemon/prompt => ui}/tests/test-data/prompt-full | 0
{daemon/prompt => ui}/tests/test-data/prompt-test | 0
ui/tests/unit-test-util.c | 136 ++
556 files changed, 60046 insertions(+), 54524 deletions(-)
---
diff --cc configure.in
index f3d6516,e8d4d65..86e28c6
--- a/configure.in
+++ b/configure.in
@@@ -572,11 -586,7 +604,8 @@@ daemon/control/Makefil
daemon/control/tests/Makefile
daemon/data/Makefile
daemon/dbus/Makefile
+daemon/gpg-agent/Makefile
daemon/login/Makefile
- daemon/pkcs11/Makefile
- daemon/prompt/Makefile
- daemon/prompt/tests/Makefile
daemon/ssh-agent/Makefile
docs/Makefile
docs/reference/Makefile
diff --cc daemon/Makefile.am
index 5f17d10,1a2d3c2..5e66819
--- a/daemon/Makefile.am
+++ b/daemon/Makefile.am
@@@ -2,9 -2,6 +2,7 @@@ SUBDIRS =
login \
control \
ssh-agent \
+ gpg-agent \
- pkcs11 \
dbus \
data
@@@ -26,25 -23,23 +24,25 @@@ INCLUDES=
$(GLIB_CFLAGS)
gnome_keyring_daemon_SOURCES = \
+ gkd-glue.c gkd-glue.h \
gkd-main.c gkd-main.h \
+ gkd-pkcs11.c gkd-pkcs11.h \
gkd-util.c gkd-util.h
gnome_keyring_daemon_LDADD = \
$(top_builddir)/daemon/dbus/libgkd-dbus.la \
$(top_builddir)/daemon/login/libgkd-login.la \
$(top_builddir)/daemon/control/libgkd-control.la \
- $(top_builddir)/daemon/prompt/libgkd-prompt.la \
+ $(top_builddir)/ui/libgku-prompt.la \
$(top_builddir)/daemon/ssh-agent/libgkd-ssh-agent.la \
+ $(top_builddir)/daemon/gpg-agent/libgkd-gpg-agent.la \
- $(top_builddir)/pkcs11/plex-layer/libgck-plex-layer.la \
- $(top_builddir)/pkcs11/roots-store/libgck-roots-store.la \
- $(top_builddir)/pkcs11/rpc-layer/libgck-rpc-layer.la \
- $(top_builddir)/pkcs11/secret-store/libgck-secret-store.la \
- $(top_builddir)/pkcs11/ssh-store/libgck-ssh-store.la \
- $(top_builddir)/pkcs11/user-store/libgck-user-store.la \
- $(top_builddir)/pkcs11/gck/libgck.la \
+ $(top_builddir)/pkcs11/wrap-layer/libgkm-wrap-layer.la \
+ $(top_builddir)/pkcs11/roots-store/libgkm-roots-store.la \
+ $(top_builddir)/pkcs11/rpc-layer/libgkm-rpc-layer.la \
+ $(top_builddir)/pkcs11/secret-store/libgkm-secret-store.la \
+ $(top_builddir)/pkcs11/ssh-store/libgkm-ssh-store.la \
+ $(top_builddir)/pkcs11/user-store/libgkm-user-store.la \
+ $(top_builddir)/pkcs11/gkm/libgkm.la \
$(top_builddir)/gp11/libgp11.la \
$(top_builddir)/egg/libegg-dbus.la \
$(DAEMON_LIBS) \
diff --cc daemon/gkd-main.c
index 71fec7c,c805554..bb9a952
--- a/daemon/gkd-main.c
+++ b/daemon/gkd-main.c
@@@ -23,8 -23,8 +23,9 @@@
#include "config.h"
+#include "gkd-glue.h"
#include "gkd-main.h"
+ #include "gkd-pkcs11.h"
#include "gkd-util.h"
#include "control/gkd-control.h"
diff --cc daemon/gkd-pkcs11.c
index 0000000,c544f82..8790508
mode 000000,100644..100644
--- a/daemon/gkd-pkcs11.c
+++ b/daemon/gkd-pkcs11.c
@@@ -1,0 -1,203 +1,205 @@@
+ /*
+ * gnome-keyring
+ *
+ * Copyright (C) 2008 Stefan Walter
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * License along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+ #include "config.h"
+
+ #include "gkd-util.h"
+ #include "gkd-pkcs11.h"
+
+ #include "egg/egg-cleanup.h"
+
+ #include "pkcs11/wrap-layer/gkm-wrap-layer.h"
+ #include "pkcs11/roots-store/gkm-roots-store.h"
+ #include "pkcs11/rpc-layer/gkm-rpc-layer.h"
+ #include "pkcs11/secret-store/gkm-secret-store.h"
+ #include "pkcs11/ssh-store/gkm-ssh-store.h"
+ #include "pkcs11/user-store/gkm-user-store.h"
+
++#include "gpg-agent/gkd-gpg-agent.h"
+ #include "ssh-agent/gkd-ssh-agent.h"
+
+ #include <string.h>
+
+ /* The top level of our internal PKCS#11 module stack */
+ static CK_FUNCTION_LIST_PTR pkcs11_roof = NULL;
+
+ static void
+ pkcs11_daemon_cleanup (gpointer unused)
+ {
+ CK_RV rv;
+
+ g_assert (pkcs11_roof);
+
+ gkd_ssh_agent_uninitialize ();
+ gkm_rpc_layer_uninitialize ();
+ rv = (pkcs11_roof->C_Finalize) (NULL);
+
+ if (rv != CKR_OK)
+ g_warning ("couldn't finalize internal PKCS#11 stack (code: %d)", (gint)rv);
+
+ pkcs11_roof = NULL;
+ }
+
+ gboolean
+ gkd_pkcs11_initialize (void)
+ {
+ CK_FUNCTION_LIST_PTR roots_store;
+ CK_FUNCTION_LIST_PTR secret_store;
+ CK_FUNCTION_LIST_PTR ssh_store;
+ CK_FUNCTION_LIST_PTR user_store;
+ CK_C_INITIALIZE_ARGS init_args;
+ gboolean ret;
+ CK_RV rv;
+
+ /* Secrets */
+ secret_store = gkm_secret_store_get_functions ();
+
+ /* SSH storage */
+ ssh_store = gkm_ssh_store_get_functions ();
+
+ /* Root certificates */
+ roots_store = gkm_roots_store_get_functions ();
+
+ /* User certificates */
+ user_store = gkm_user_store_get_functions ();
+
+ /* Add all of those into the wrapper layer */
+ gkm_wrap_layer_add_module (ssh_store);
+ #ifdef ROOT_CERTIFICATES
+ gkm_wrap_layer_add_module (roots_store);
+ #endif
+ gkm_wrap_layer_add_module (secret_store);
+ gkm_wrap_layer_add_module (user_store);
+
+ pkcs11_roof = gkm_wrap_layer_get_functions ();
+
+ memset (&init_args, 0, sizeof (init_args));
+ init_args.flags = CKF_OS_LOCKING_OK;
+
+ #if WITH_TESTS
+ {
+ const gchar *path = g_getenv ("GNOME_KEYRING_TEST_PATH");
+ if (path && path[0])
+ init_args.pReserved = g_strdup_printf ("directory=\"%s\"", path);
+ }
+ #endif
+
+ /* Initialize the whole caboodle */
+ rv = (pkcs11_roof->C_Initialize) (&init_args);
+ g_free (init_args.pReserved);
+
+ if (rv != CKR_OK) {
+ g_warning ("couldn't initialize internal PKCS#11 stack (code: %d)", (gint)rv);
+ return FALSE;
+ }
+
+ egg_cleanup_register (pkcs11_daemon_cleanup, NULL);
+
- ret = gkd_ssh_agent_initialize (pkcs11_roof) &&
++ ret = gkd_gpg_agent_initialize (pkcs11_roof) &&
++ gkd_ssh_agent_initialize (pkcs11_roof) &&
+ gkm_rpc_layer_initialize (pkcs11_roof);
+
+ return ret;
+ }
+
+ static void
+ pkcs11_rpc_cleanup (gpointer unused)
+ {
+ gkm_rpc_layer_shutdown ();
+ }
+
+ static gboolean
+ accept_rpc_client (GIOChannel *channel, GIOCondition cond, gpointer unused)
+ {
+ if (cond == G_IO_IN)
+ gkm_rpc_layer_accept ();
+
+ return TRUE;
+ }
+
+ gboolean
+ gkd_pkcs11_startup_pkcs11 (void)
+ {
+ GIOChannel *channel;
+ const gchar *base_dir;
+ int sock;
+
+ base_dir = gkd_util_get_master_directory ();
+ g_return_val_if_fail (base_dir, FALSE);
+
+ sock = gkm_rpc_layer_startup (base_dir);
+ if (sock == -1)
+ return FALSE;
+
+ channel = g_io_channel_unix_new (sock);
+ g_io_add_watch (channel, G_IO_IN | G_IO_HUP, accept_rpc_client, NULL);
+ g_io_channel_unref (channel);
+
+ egg_cleanup_register (pkcs11_rpc_cleanup, NULL);
+
+ return TRUE;
+ }
+
+ static void
+ pkcs11_ssh_cleanup (gpointer unused)
+ {
+ gkd_ssh_agent_shutdown ();
+ }
+
+ static gboolean
+ accept_ssh_client (GIOChannel *channel, GIOCondition cond, gpointer unused)
+ {
+ if (cond == G_IO_IN)
+ gkd_ssh_agent_accept ();
+ return TRUE;
+ }
+
+ gboolean
+ gkd_pkcs11_startup_ssh (void)
+ {
+ GIOChannel *channel;
+ const gchar *base_dir;
+ int sock;
+
+ base_dir = gkd_util_get_master_directory ();
+ g_return_val_if_fail (base_dir, FALSE);
+
+ sock = gkd_ssh_agent_startup (base_dir);
+ if (sock == -1)
+ return FALSE;
+
+ channel = g_io_channel_unix_new (sock);
+ g_io_add_watch (channel, G_IO_IN | G_IO_HUP, accept_ssh_client, NULL);
+ g_io_channel_unref (channel);
+
+ /* gkm-ssh-agent sets the environment variable */
+ gkd_util_push_environment ("SSH_AUTH_SOCK", g_getenv ("SSH_AUTH_SOCK"));
+
+ egg_cleanup_register (pkcs11_ssh_cleanup, NULL);
+
+ return TRUE;
+ }
+
+ CK_FUNCTION_LIST_PTR
+ gkd_pkcs11_get_functions (void)
+ {
+ return pkcs11_roof;
+ }
diff --cc daemon/gpg-agent/.gitignore
index 0000000,0000000..924e19e
new file mode 100644
--- /dev/null
+++ b/daemon/gpg-agent/.gitignore
@@@ -1,0 -1,0 +1,1 @@@
++/gkd-gpg-agent-standalone
diff --cc po/en shaw po
index bfeb208,4f9923d..5e1166b
--- a/po/en shaw po
+++ b/po/en shaw po
@@@ -1223,38 -1074,12 +1074,11 @@@ msgstr "ð??? ð???ð??¦ð???ð??¯ð??©ð???ð?
msgid "Unknown error"
msgstr "ð??³ð??¯ð??´ð??¯ ð??»ð??¼"
- #: ../library/gnome-keyring-utils.c:168
- msgid "Access Denied"
- msgstr "ð??¨ð???ð???ð??§ð??? ð???ð??¦ð??¯ð??²ð???"
-
- #: ../library/gnome-keyring-utils.c:170
- msgid "The gnome-keyring-daemon application is not running."
- msgstr "ð??? ð??¯ð??´ð??¥-ð???ð??°ð??®ð??¦ð???-ð???ð??°ð??¥ð??©ð??¯ ð??©ð???ð??¤ð??¦ð???ð??±ð???ð??©ð??¯ ð??¦ð??? ð??¯ð??ªð??? ð??®ð??³ð??¯ð??¦ð???."
-
- #: ../library/gnome-keyring-utils.c:172
- msgid "Error communicating with gnome-keyring-daemon"
- msgstr "ð??»ð??¼ ð???ð??©ð??¥ð??¿ð??¯ð??¦ð???ð??±ð???ð??¦ð??? ð??¢ð??¦ð??? ð??¯ð??´ð??¥-ð???ð??°ð??®ð??¦ð???-ð???ð??°ð??¥ð??©ð??¯"
-
- #: ../library/gnome-keyring-utils.c:174
- msgid "A keyring with that name already exists"
- msgstr "ð??© ð???ð??°ð??®ð??¦ð??? ð??¢ð??¦ð??? ð???ð??¨ð??? ð??¯ð??±ð??¥ ð??·ð??¤ð??®ð??§ð???ð??¦ ð??§ð???ð???ð??¦ð???ð???ð???"
-
- #: ../library/gnome-keyring-utils.c:176
- msgid "Programmer error: The application sent invalid data."
- msgstr "ð???ð??®ð??´ð???ð??®ð??¨ð??¥ð??¼ ð??»ð??¼: ð??? ð??©ð???ð??¤ð??¦ð???ð??±ð???ð??©ð??¯ ð???ð??§ð??¯ð??? ð??¦ð??¯ð???ð??¨ð??¤ð??¦ð??? ð???ð??±ð???ð??©."
-
- #: ../library/gnome-keyring-utils.c:178
- msgid "No matching results"
- msgstr "ð??¯ð??´ ð??¥ð??¨ð???ð??¦ð??? ð??®ð??¦ð???ð??³ð??¤ð???ð???"
-
- #: ../library/gnome-keyring-utils.c:180
- msgid "A keyring with that name does not exist."
- msgstr "ð??© ð???ð??°ð??®ð??¦ð??? ð??¢ð??¦ð??? ð???ð??¨ð??? ð??¯ð??±ð??¥ ð???ð??³ð??? ð??¯ð??ªð??? ð??§ð???ð???ð??¦ð???ð???."
-
- #: ../library/gnome-keyring-utils.c:187
- msgid "The keyring has already been unlocked."
- msgstr "ð??? ð???ð??°ð??®ð??¦ð??? ð??£ð??¨ð??? ð??·ð??¤ð??®ð??§ð???ð??¦ ð???ð??°ð??¯ ð??©ð??¯ð??¤ð??ð???ð???."
-
- #: ../pkcs11/gck/gck-certificate.c:716
+ #: ../pkcs11/gck/gck-certificate.c:740
msgid "Unnamed Certificate"
msgstr "ð??©ð??¯ð??¯ð??±ð??¥ð??? ð???ð??©ð???ð??¦ð???ð??¦ð???ð??©ð???"
+
+ #, fuzzy
+ #: ../pkcs11/ssh-store/gck-ssh-private-key.c:339
+ msgid "Couldn't parse public SSH key"
+ msgstr "ð???ð??«ð???ð??¯ð??? ð???ð??¸ð??? ð???ð??³ð???ð??¤ð??¦ð??? SSH ð???ð??°"
-
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]