[gnome-keyring/gpg-agent: 44/44] Merge branch 'master' into gpg-agent



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]