# Generate automatically. Do not edit.

commit 3ee322327b37d9137f3c2c8a9df267ddc7a44678
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-25

    Release 0.25.1
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 NEWS         | 13 +++++++++++++
 configure.ac |  2 +-
 meson.build  |  2 +-
 3 files changed, 15 insertions(+), 2 deletions(-)

commit 96a8b145a33f95eae52d7d31d0d7ed1674c68423
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-24

    Revise documentation of the object and profile sub-commands
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 doc/manual/p11-kit.xml | 99 +++++++++++++++++++++++++++++++++-----------------
 1 file changed, 65 insertions(+), 34 deletions(-)

commit bd75edd1aeb964b124b1b96e8d5c8cea0db6eacc
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-25

    Add --login option to delete-object command
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/delete-object.c | 41 +++++++++++++++++++++++++++++++++++++----
 1 file changed, 37 insertions(+), 4 deletions(-)

commit 6bacb564458a3bb3b2de5a5dfded809a2e348d6b
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-04

    Add command for importing objects into a PKCS#11 token
    
    The import-object command allows users to import certificates or
    public keys into a pkcs#11 token by providing a PEM file.
    
    usage: p11-kit import-object --file=<file.pem> [--label=<label>]
    [--login] pkcs11:token
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 bash-completion/p11-kit       |   2 +-
 doc/manual/p11-kit.xml        |  19 +-
 p11-kit/Makefile.am           |   3 +
 p11-kit/import-object.c       | 615 ++++++++++++++++++++++++++++++++++++++++++
 p11-kit/meson.build           |   5 +
 p11-kit/p11-kit.c             |   4 +
 p11-kit/test-import-public.sh | 151 +++++++++++
 po/POTFILES.in                |   1 +
 8 files changed, 798 insertions(+), 2 deletions(-)

commit cced2d9a4772cb126974a69354b6a9845105407a
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-19

    iter: Add option to stop at token with active session
    
    The commit fd7c819eff1de40619ba0231dc8819af76df72a6 introduced a
    slight backward incompatibility to the P11KitIter behavior when
    iterating with P11_KIT_ITER_WITH_TOKENS: previously it stopped before
    opening a token, while now it stops after that.
    
    This adds a compatibility measure so those two are distinguishable
    with an explicit flag P11_KIT_ITER_WITH_SESSIONS and a kind
    P11_KIT_ITER_KIND_SESSION.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/add-profile.c      |  2 +-
 p11-kit/delete-profile.c   |  2 +-
 p11-kit/generate-keypair.c |  2 +-
 p11-kit/iter.c             | 31 ++++++++++++++++++++++---------
 p11-kit/iter.h             |  2 ++
 p11-kit/list-profiles.c    |  2 +-
 6 files changed, 28 insertions(+), 13 deletions(-)

commit e5f0be33f5d39ad117e1cb84de5a8ac1ebe75548
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-06

    p11-kit commands: Add --login option
    
    Previously those tools determined whether a login is necessary by
    checking the presence of "pin-value" query attribute in the URI.  It
    was too implicit and against modern security practice.  This instead
    asks users to specify --login option and if no "pin-value" is given,
    it tries to read a PIN from the terminal.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/add-profile.c            | 32 +++++++++++++++++++---
 p11-kit/delete-profile.c         | 32 +++++++++++++++++++---
 p11-kit/export-object.c          | 41 ++++++++++++++++++++++++++---
 p11-kit/generate-keypair.c       | 34 +++++++++++++++++++++---
 p11-kit/list-objects.c           | 42 ++++++++++++++++++++++++++---
 p11-kit/list-profiles.c          | 37 +++++++++++++++++++++++---
 p11-kit/test-generate-keypair.sh | 10 +++----
 p11-kit/test-objects.sh          | 57 +++++++++++++++++++++++++++++++++++++++-
 8 files changed, 257 insertions(+), 28 deletions(-)

commit 751118077ae093c33a093a9a0f634406b2e97c13
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-04

    p11-kit: Support PIN prompting from tty
    
    This adds support for prompting PIN on the terminal, through the
    readpassphrase function borrowed from libbsd.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 common/Makefile.am      |   6 ++
 common/compat.h         |  21 +++++
 common/meson.build      |  10 +++
 common/readpassphrase.c | 208 ++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac            |   2 +
 meson.build             |   3 +-
 p11-kit/Makefile.am     |  19 ++---
 p11-kit/meson.build     |   4 +
 p11-kit/pin.c           |   2 +-
 p11-kit/tty.c           |  78 ++++++++++++++++++
 p11-kit/tty.h           |  48 +++++++++++
 11 files changed, 385 insertions(+), 16 deletions(-)

commit 466da61d3ec8a1dbbc7f48eab8efb4d6f56d2a41
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-05

    p11-kit commands: Stop calling C_Login manually
    
    This is now done in P11KitIter as needed.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/add-profile.c      | 34 +++++++++-------------------------
 p11-kit/delete-profile.c   | 34 +++++++++-------------------------
 p11-kit/generate-keypair.c | 34 +++++++++-------------------------
 p11-kit/list-profiles.c    | 34 +++++++++-------------------------
 4 files changed, 36 insertions(+), 100 deletions(-)

commit fd7c819eff1de40619ba0231dc8819af76df72a6
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-05

    iter: Plumb PIN retrieval through pin-source
    
    This make P11KitIter use the P11KitPin interface to retrieve PIN if
    the "pin-source" attribute is available in the matching URI.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/iter.c      | 92 +++++++++++++++++++++++++++++++++++++++++++----------
 p11-kit/test-iter.c | 92 +++++++++++++++++++++++++++++++++++++++++++++++------
 po/POTFILES.in      |  1 +
 3 files changed, 159 insertions(+), 26 deletions(-)

commit 605232952fa4b4b9f0d7ac8d79afa97f992136a5
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-04

    Add list-tokens into po/POTFILES.in and autocompletion
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 bash-completion/p11-kit | 2 +-
 po/POTFILES.in          | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

commit 168fdc2b6a9d5aa82a86b417ddf4bba9ef150e05
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-05

    Fix some cppcheck errors
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 common/compat.c       | 15 +++++++++------
 p11-kit/rpc-message.c |  6 +++---
 p11-kit/test-iter.c   | 16 ++++++++--------
 p11-kit/test-mock.c   | 18 +++++++++---------
 4 files changed, 29 insertions(+), 26 deletions(-)

commit 1cfbac317f2029a3a3a1c4cc65c49488efd0cd1e
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-04

    Fix CI warnings and errors
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 .github/actions/basic-meson/action.yaml |  2 +-
 build/cross_file_mingw64.txt            |  2 +-
 common/test-hash.c                      | 12 ++++++------
 3 files changed, 8 insertions(+), 8 deletions(-)

commit 1cec78401c814c589f2dd826de8eaf6c599a4608
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-01

    ci: Update base image and pull in additional packages
    
    This updates the base image to Fedora 38 from Fedora 34, and install
    the p11-kit-devel and softhsm packages, which are needed to test the
    p11-kit generate-keypair command.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 ci/Dockerfile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit fc6d0e281ef3401a619dc1e6f6bbe2751c27b8b1
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-04

    p11-kit generate-keypair: Support EdDSA key generation
    
    This adds support for generating EdDSA keys with the p11-kit
    generate-keypair command.  Aside from that tests are added using
    SoftHSM to exercise all the supported algorithms.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/Makefile.am                              |  2 +
 p11-kit/fixtures/package-modules/softhsm2.module |  4 ++
 p11-kit/generate-keypair.c                       | 11 ++-
 p11-kit/meson.build                              |  4 ++
 p11-kit/test-generate-keypair.sh                 | 92 ++++++++++++++++++++++++
 p11-kit/test-server.sh                           |  1 +
 6 files changed, 113 insertions(+), 1 deletion(-)

commit e2c932038a2c4384d25d24cd5b249b9c84eb12a6
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-01

    p11-kit list-tokens: New subcommand
    
    This adds a new subcommand "list-tokens" to the p11-kit command, which
    is similar to "list-modules" but only prints tokens.  This would make
    scripting tasks easier.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 doc/manual/p11-kit.xml      |  19 +++++
 p11-kit/Makefile.am         |   4 +
 p11-kit/list-tokens.c       | 196 ++++++++++++++++++++++++++++++++++++++++++++
 p11-kit/lists.c             |   9 +-
 p11-kit/meson.build         |   5 ++
 p11-kit/p11-kit.c           |   4 +
 p11-kit/test-list-tokens.sh |  82 ++++++++++++++++++
 7 files changed, 317 insertions(+), 2 deletions(-)

commit 64e5fe3457b9d69ef8bec6de58de7e8dd5b4f056
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-10-01

    lists: Refactor iteration and printing logic of modules and tokens
    
    This splits the logic to iterate over modules and tokens and print the
    details into two functions: the iteration and printing of CK_INFO and
    CK_TOKEN_INFO structures, so that the printing
    function (print_token_info) can be used for `p11-kit list-tokens`.
    
    This also makes slot listing more flexible to allow more than 256
    slots.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/lists.c | 204 ++++++++++++++++++++++++++++++++++++--------------------
 1 file changed, 133 insertions(+), 71 deletions(-)

commit daabb9f2f6e2443e4ce3155ac75341c924175b50
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-21

    Fix meson warnings
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 bash-completion/meson.build |  2 +-
 doc/manual/meson.build      |  2 +-
 meson.build                 | 14 ++++++++++----
 3 files changed, 12 insertions(+), 6 deletions(-)

commit 6bb52b48c77758dbe8b09d15e8d79f4578cfda99
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-03

    Add more tests for profile commands
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/test-profiles.sh | 140 +++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 135 insertions(+), 5 deletions(-)

commit c507a5d911f17e1c64c9aeca93b8a45410a61d92
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-03

    Add/delete-profile should fail if there is no matching token
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/delete-profile.c | 89 ++++++++++++++++++++++++++++++++++++-----------
 p11-kit/list-profiles.c  | 90 +++++++++++++++++++++++++++++++++++++++++-------
 2 files changed, 145 insertions(+), 34 deletions(-)

commit aedbab2c0f9b23dcc8780ba0f4b189d9b24532b4
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-10-02

    Add CI test for building without ASN.1
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 .github/actions/basic-autotools/action.yaml |  6 ++++++
 .github/workflows/test.yaml                 | 27 +++++++++++++++++++++++++++
 Makefile.am                                 |  1 +
 3 files changed, 34 insertions(+)

commit 1392bfcf4e76de01401f15c29551b9fdfc0263f3
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-22

    Add tests for p11-kit profile commands
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 common/persist.c                                 |   3 +
 p11-kit/Makefile.am                              |  55 ++--
 p11-kit/fixtures/package-modules/thirteen.module |   4 +
 p11-kit/meson.build                              |  13 +-
 p11-kit/mock-module-ep11.c                       | 211 ++++++++++++++++
 p11-kit/mock-module-ep9.c                        |   1 -
 p11-kit/test-lists.sh                            |  17 ++
 p11-kit/test-objects.sh                          |  52 +---
 p11-kit/test-profiles.sh                         | 309 ++++++++++++++++++++++-
 trust/Makefile.am                                |   6 +-
 10 files changed, 595 insertions(+), 76 deletions(-)

commit 85a0ac8c67f873771ea7d48e625fbcf044601ae2
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-22

    Move persist files to Common subdirectory
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 common/Makefile.am          | 2 ++
 common/meson.build          | 1 +
 {trust => common}/persist.c | 0
 {trust => common}/persist.h | 0
 {trust => common}/types.h   | 0
 po/POTFILES.in              | 2 +-
 trust/Makefile.am           | 3 ---
 trust/meson.build           | 2 --
 8 files changed, 4 insertions(+), 6 deletions(-)

commit f7a89e5cfe36f642a3f6004e29fd1160933c8f08
Author: Alexander Sosedkin <asosedkin@redhat.com>
Date:   2023-09-22

    list-mechanisms: initial implementation
    
    Resolves: #563
    Signed-off-by: Alexander Sosedkin <asosedkin@redhat.com>

 bash-completion/p11-kit         |   2 +-
 doc/manual/p11-kit.xml          |  16 +++
 p11-kit/Makefile.am             |   4 +
 p11-kit/list-mechanisms.c       | 284 ++++++++++++++++++++++++++++++++++++++++
 p11-kit/meson.build             |   5 +
 p11-kit/p11-kit.c               |   4 +
 p11-kit/test-list-mechanisms.sh |  65 +++++++++
 po/POTFILES.in                  |   1 +
 8 files changed, 380 insertions(+), 1 deletion(-)

commit 7d659c1ac7f6153381af042f8fa26485b208483a
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-25

    .dir-locals.el: Update indentation settings for C and shell-script
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 .dir-locals.el | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 5b13c85909eef2b38859b7fb5a2abc0e33107280
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-26

    Test for nonexistent tokens in p11-kit commands
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 common/test-init.sh.in   |  4 ++--
 p11-kit/test-objects.sh  | 35 ++++++++++++++++++++++++++++++++++-
 p11-kit/test-profiles.sh | 19 ++++++++++++++++++-
 3 files changed, 54 insertions(+), 4 deletions(-)

commit 202c1c143620fea5dfecd5fa721aef7a8656142b
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-22

    p11-kit tool: make "no matching object/token" error user friendly
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/add-profile.c      | 5 ++++-
 p11-kit/delete-object.c    | 5 ++++-
 p11-kit/generate-keypair.c | 5 ++++-
 3 files changed, 12 insertions(+), 3 deletions(-)

commit 2d697bfa2903d4f11c56b5aa44e6cdf8c040d944
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-22

    Don't check for slot == 0 as 0 is a valid slot ID
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/add-profile.c      | 5 -----
 p11-kit/generate-keypair.c | 5 -----
 2 files changed, 10 deletions(-)

commit 0b280a0e9ca3b2c6b6738f85a944ee57b9179ed0
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-21

    export-object: Recover public key from algorithm specific attributes
    
    Some tokens such as SoftHSMv2 omits CKA_PUBLIC_KEY_INFO when it can be
    derived from algorithm specific attributes, such as CKA_MODULUS and
    CKA_PUBLIC_EXPONENT for RSA.  This adds support for it if libtasn1 is
    available at compile time.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 common/oid.h                                       |   3 +
 common/pkix.asn                                    |   4 +
 p11-kit/Makefile.am                                |  23 +-
 p11-kit/export-object.c                            | 421 ++++++++++++++++++---
 p11-kit/fixtures/package-modules/twelve.module     |   4 +
 .../fixtures/package-modules/win32/twelve.module   |   4 +
 p11-kit/meson.build                                |  13 +-
 p11-kit/mock-module-ep10.c                         | 194 ++++++++++
 p11-kit/test-export-public.sh                      |  90 +++++
 p11-kit/test-lists.sh                              |  17 +
 p11-kit/test-objects.sh                            |  35 +-
 11 files changed, 749 insertions(+), 59 deletions(-)

commit d8cc241187775e18de86caf446e9160299e6f157
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-21

    build: Move common files for handling ASN.1 to common
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 Makefile.am                   |  1 +
 common/Makefile.am            | 47 +++++++++++++++++++++++++++++++
 {trust => common}/asn1.c      |  0
 {trust => common}/asn1.h      |  0
 {trust => common}/basic.asn   |  0
 common/meson.build            | 64 +++++++++++++++++++++++++++++++++++++++++++
 {trust => common}/oid.c       |  0
 {trust => common}/oid.h       |  0
 {trust => common}/openssl.asn |  0
 {trust => common}/pkix.asn    |  0
 {trust => common}/test-asn1.c |  1 -
 {trust => common}/test-oid.c  |  0
 meson.build                   |  2 ++
 trust/Makefile.am             | 32 ++--------------------
 trust/meson.build             | 27 ++----------------
 15 files changed, 119 insertions(+), 55 deletions(-)

commit e8872bfdc4b12735bbc0433a59fc0a7ddfd68bbb
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-21

    list-objects: nicer printing of flags
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/list-objects.c    | 39 +++++++++++++++++++++++++--------------
 p11-kit/mock-module-ep9.c |  4 ++++
 p11-kit/test-objects.sh   | 16 ++++++++--------
 3 files changed, 37 insertions(+), 22 deletions(-)

commit 4d33a6267a8f646ed08ee066afe579036341b8ed
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-21

    Add missing copyable and destroyable flags into the constants
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 common/constants.c | 2 ++
 1 file changed, 2 insertions(+)

commit 231878de9d8463b55a935e0c55f5f1108196e665
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-20

    Use only token URI as profiles arent storage objects
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/delete-profile.c | 2 +-
 p11-kit/list-profiles.c  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 42e93d7dca2885ba2da3c53daf70845466cf4f94
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-19

    delete-object: remove only first match on a token
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/delete-object.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

commit f1b7d0ee6c8ecb827164578ef9fba5b667936e97
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-19

    delete-profile: match only a single token
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/delete-profile.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 691235df5b41c0144a27649627e7a3e7c5bd77bb
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-19

    Allow login in list-profiles and delete-profiles commands
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/delete-profile.c | 2 +-
 p11-kit/list-profiles.c  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 0c51f30b8d00cd79ededf6d1e3f0baf98a924281
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-18

    Rework add-profile
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/add-profile.c | 114 ++++++++++++++++++++++++++++----------------------
 1 file changed, 63 insertions(+), 51 deletions(-)

commit 42b1025e67d318cc57aff2d8169e6168ef29a085
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-18

    Fix add-profile command to create token objects
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/add-profile.c | 2 ++
 1 file changed, 2 insertions(+)

commit 0a11e88cd61a551bf5ea5028aa0b0de4cd1c7445
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-18

    Small error message fixups
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/add-profile.c      | 8 ++++----
 p11-kit/delete-object.c    | 4 ++--
 p11-kit/delete-profile.c   | 8 ++++----
 p11-kit/export-object.c    | 4 ++--
 p11-kit/generate-keypair.c | 4 ++--
 p11-kit/list-objects.c     | 6 +++---
 p11-kit/list-profiles.c    | 7 +++----
 7 files changed, 20 insertions(+), 21 deletions(-)

commit 79fe36c8b2d8880a4fbde4cad0c3781d0f3917c4
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-18

    list-modules: Do not embed module-name and module-path in URL
    
    module-name and module-path are query attributes, which are to modify
    the default settings (RFC 7512 section 2.4).  As p11-kit manages the
    default configuration, it shouldn't print them as part of the token
    URL.  This instead prints the absolute path of each module in a
    separate field of the output.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 common/print.c        |   4 +-
 p11-kit/Makefile.am   |   2 +
 p11-kit/lists.c       |  33 ++++++++--------
 p11-kit/meson.build   |   4 ++
 p11-kit/test-lists.sh | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 128 insertions(+), 20 deletions(-)

commit 6d0e5564f6ca1d128591d812b094ba16d6e23c2d
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-18

    tests: Check exit status of p11-kit commands in shell-script tests
    
    As we no longer call `set -e`, exit status of each command invocation
    should be checked manually.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/test-objects.sh  | 28 +++++++++++++++++++++-------
 p11-kit/test-profiles.sh |  4 +++-
 2 files changed, 24 insertions(+), 8 deletions(-)

commit ca5ed350a48013fbd7de32d28ce63a34d9d18276
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-15

    Add test for p11-kit generate-keypair command
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/test-objects.sh | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

commit ef0bfeac6dedfacc80fa97371b727efd0a1a588b
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-04

    Add command to generate keypair on a PKCS#11 token
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 bash-completion/p11-kit    |   2 +-
 common/compat.c            |  10 +
 common/compat.h            |  13 +-
 doc/manual/p11-kit.xml     |  41 ++++
 p11-kit/Makefile.am        |   3 +
 p11-kit/generate-keypair.c | 457 +++++++++++++++++++++++++++++++++++++++++++++
 p11-kit/meson.build        |   5 +-
 p11-kit/p11-kit.c          |  44 +++--
 po/POTFILES.in             |   1 +
 9 files changed, 549 insertions(+), 27 deletions(-)

commit d85df9e2bd1c3c907e67b5cf276e6b724be933fd
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-11

    Prevent printing empty date in list-objects
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/list-objects.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 65b2e473e1922d0faabb4c58830153573907cdcd
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-14

    tests: Port shell-script tests to using test-init.sh
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/test-messages.sh |  43 ++++++++------
 p11-kit/test-objects.sh  | 146 ++++++++++++++++++++++-------------------------
 p11-kit/test-profiles.sh |  40 +++++++------
 p11-kit/test-server.sh   | 122 +++++++++++++++++++--------------------
 4 files changed, 176 insertions(+), 175 deletions(-)

commit ef2e9fd46ccd0d7895359f02149657236eb12e7d
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-14

    build: Move test-init.sh from trust to common
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 common/meson.build                | 17 +++++++++++++++++
 {trust => common}/test-init.sh.in |  0
 configure.ac                      |  2 +-
 trust/Makefile.am                 |  4 ++--
 trust/test-extract.sh             |  7 ++++++-
 trust/test-trust.sh               |  7 ++++++-
 6 files changed, 32 insertions(+), 5 deletions(-)

commit 70b7ee8372fec89e1faea09fd673c3f4c6cb3a1d
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-01

    Add test for exporting public key
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/mock-module-ep9.c | 121 ++++++++++++++++++++++++++++------------------
 p11-kit/test-objects.sh   |  62 +++++++++++++++++-------
 2 files changed, 119 insertions(+), 64 deletions(-)

commit a16d77a075a9f9222ff55fac3ccac0a945776898
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-04

    x
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/export-object.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

commit d035c8c2f9821abb0731ab4c81e6589da9952c23
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-09-01

    Add ability to export public keys into export-object command
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/export-object.c | 24 ++++++++++++++++--------
 1 file changed, 16 insertions(+), 8 deletions(-)

commit e732f987851a024d22d7369895ba7bbb0ae11b14
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-02

    proxy: Generate wrappers with script
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 .gitignore                            |    1 +
 p11-kit/Makefile.am                   |   23 +-
 p11-kit/gen-wrappers.py               |   32 +-
 p11-kit/meson.build                   |   12 +
 p11-kit/proxy.c                       | 1517 +--------------------------------
 p11-kit/templates/proxy-excludes.list |   14 +
 p11-kit/templates/proxy-wrappers.py   |  100 +++
 7 files changed, 175 insertions(+), 1524 deletions(-)

commit 81bed3ddc5c3c740cee93cbb35282f56457e53e4
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-09-02

    pkcs11-json: Update git submodule
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 subprojects/pkcs11-json | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 30c302ac6d7b86e0d294b01aeceeaf052bcb99f6
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-08-31

    p11-kit list-objects: Use p11_attrs to access attributes by name
    
    This way we don't need to maintain the order of attributes as a magic
    number.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/list-objects.c | 105 ++++++++++++++++++++++++-------------------------
 1 file changed, 51 insertions(+), 54 deletions(-)

commit ecdc85302717d0f6f4f3c8d2a569089f9a7eeb52
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-08-31

    p11-kit list-objects: Use p11_buffer to safely allocate memory
    
    This makes use of p11_buffer to safely allocate buffer for attribute
    retrieval, taking into account of integer overflow and terminating NUL
    byte.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 p11-kit/list-objects.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

commit 11394d91ec05ff63f5f7201bb9c2098d707fe4e4
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-08-29

    Add test for export-object command
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 common/mock.h             |  1 +
 p11-kit/mock-module-ep9.c | 51 +++++++++++++++++++++++++++++++++++
 p11-kit/test-objects.sh   | 69 ++++++++++++++++++++++++++++++++++++-----------
 3 files changed, 106 insertions(+), 15 deletions(-)

commit 7726337b8b9779ac21d1b842c0cf2dd3f2f38897
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-08-09

    Add command to export objects matching PKCS#11 URI
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 bash-completion/p11-kit |   2 +-
 doc/manual/p11-kit.xml  |  17 ++++
 p11-kit/Makefile.am     |   2 +
 p11-kit/export-object.c | 242 ++++++++++++++++++++++++++++++++++++++++++++++++
 p11-kit/meson.build     |   1 +
 p11-kit/p11-kit.c       |   4 +
 po/POTFILES.in          |   1 +
 7 files changed, 268 insertions(+), 1 deletion(-)

commit b4d4fc4b3dd97dd160e8a8439bb4af25b8cdcff7
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-08-25

    Move pem.h and base64.h to common subdirectory
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 common/Makefile.am         | 2 ++
 {trust => common}/base64.c | 0
 {trust => common}/base64.h | 0
 common/meson.build         | 2 ++
 {trust => common}/pem.c    | 0
 {trust => common}/pem.h    | 0
 trust/Makefile.am          | 2 --
 trust/meson.build          | 2 --
 8 files changed, 4 insertions(+), 4 deletions(-)

commit a3549f82c8769f41a7cee8f2198354939e28c05c
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-08-29

    Dont pass NULL to p11_kit_modules_finalize/release
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/add-profile.c    | 4 ++--
 p11-kit/delete-object.c  | 4 ++--
 p11-kit/delete-profile.c | 4 ++--
 p11-kit/list-objects.c   | 4 ++--
 p11-kit/list-profiles.c  | 4 ++--
 5 files changed, 10 insertions(+), 10 deletions(-)

commit 93f1ccff3c91557ae6c523729e75cef69548c6e1
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-08-29

    Add test for list-objects command
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/Makefile.am     |   2 +
 p11-kit/meson.build     |   4 ++
 p11-kit/test-objects.sh | 149 ++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 155 insertions(+)

commit 602c9040afe136af2b14743b210bea4ab33c30f8
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-08-29

    Print URI for storage objects in list-objects command
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/list-objects.c | 120 +++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 112 insertions(+), 8 deletions(-)

commit 585d6af8088a4d40ffc2f2c25c9a840b7e65eede
Author: Zoltan Fridrich <zfridric@redhat.com>
Date:   2023-08-28

    Allow all types of URIs to be used in p11-kit commands
    
    Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>

 p11-kit/delete-object.c  | 2 +-
 p11-kit/delete-profile.c | 2 +-
 p11-kit/list-objects.c   | 2 +-
 p11-kit/list-profiles.c  | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 9ff72077b8baee36c44dcbf0d6286c167c1d898b
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-08-29

    Update pkcs11-json submodule
    
    This fixes the issue when running meson setup with "castxml"
    installed:
    
      Executing subproject pkcs11-json
    
      pkcs11-json| Project name: pkcs11-json
      pkcs11-json| Project version: undefined
      pkcs11-json| Program castxml found: YES (/usr/bin/castxml)
    
      subprojects/pkcs11-json/meson.build:6:2: ERROR: Unknown variable "pkcs11_json_input".
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 meson.build             | 3 ++-
 subprojects/pkcs11-json | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

commit 6b7ffded7e20d39de1bb61fbfc4fb4731e9e8d74
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-08-24

    pkcs11-json: Make use of Meson subprojects feature
    
    This moves the pkcs11-json submodule under "subprojects", following
    the Meson subprojects convention.  This allows the submodule to be
    automatically initialized when running meson setup.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 .gitmodules             |  2 +-
 Makefile.am             |  4 ++--
 meson.build             |  4 +++-
 p11-kit/Makefile.am     | 16 ++++++++--------
 pkcs11-json             |  1 -
 subprojects/pkcs11-json |  1 +
 6 files changed, 15 insertions(+), 13 deletions(-)

commit 92055a93d59d72c0c65baf2e85520a408ae884bf
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-08-12

    virtual: Factor out code generation templates
    
    This makes the code generation script more generic by factoring out
    templates into separate files.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 .gitignore                              |   2 +
 configure.ac                            |   2 +-
 p11-kit/Makefile.am                     |  51 +++--
 p11-kit/gen-fixed-closures.py           |  43 ++++
 p11-kit/gen-virtual.py                  | 363 --------------------------------
 p11-kit/gen-wrappers.py                 | 145 +++++++++++++
 p11-kit/meson.build                     |  54 +++--
 p11-kit/templates/base-wrappers.py      |  40 ++++
 p11-kit/templates/binding-wrappers.py   |  29 +++
 p11-kit/templates/fixed-wrappers.py     | 117 ++++++++++
 p11-kit/templates/stack-wrappers.py     |  29 +++
 p11-kit/templates/virtual-excludes.list |   5 +
 p11-kit/virtual.c                       |   3 +-
 13 files changed, 483 insertions(+), 400 deletions(-)

commit b6411d7a62c1d228042ccf663487253eea4cd84b
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-08-14

    common: Avoid naming clash on MinGW
    
    The symbol "interface" is defined differently in a header included by
    default on MinGW, which prevents the use of it in a function signature
    in pkcs11.h.  To mitigate that, this renames it to "interface_".
    
    In the source there are more places where "interface" is used, though
    it shouldn't be a problem as WIN32_LEAN_AND_MEAN is set in compat.h.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 common/pkcs11.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 91bec95e9ddbf9ba89dce13513e939bebd92ffce
Author: Daiki Ueno <ueno@gnu.org>
Date:   2023-08-02

    virtual: Auto-generate boilerplate functions from JSON
    
    To avoid a lot of code repetitions in p11-kit/virtual.c, this
    introduces a mechanism to generate those from pkcs11.h, through a JSON
    based intermediate data format.
    
    Signed-off-by: Daiki Ueno <ueno@gnu.org>

 .github/workflows/codeql.yml |    2 +
 .github/workflows/test.yaml  |   18 +
 .gitignore                   |    2 +-
 .gitmodules                  |    3 +
 Makefile.am                  |    6 +-
 configure.ac                 |    2 +
 meson.build                  |    7 +
