From: Anthony Liguori <anthony@codemonkey.ws>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 00/16] usb-ccid (v18)
Date: Mon, 07 Feb 2011 07:12:52 -0600 [thread overview]
Message-ID: <4D4FEFD4.3090109@codemonkey.ws> (raw)
In-Reply-To: <20110207110306.GC5754@playa.tlv.redhat.com>
On 02/07/2011 05:03 AM, Alon Levy wrote:
> Hi,
>
> I have a v19 waiting to be sent, but it's basically the same just
> with patches folded were appropriate, and the fixes Markus pointed
> out for the Enumeration property type.
>
> I guess I'll wait a little longer for more feedback? Should I split
> the enum property separately? it's only used by ccid-card-emualted atm.
>
The only non-cosmetic concern I have about your series is the enum
property so I would strongly suggest splitting it. If you did that for
v19, it will be pretty close to merge ready.
Regards,
Anthony Liguori
> Alon
>
> On Fri, Feb 04, 2011 at 12:45:36AM +0200, Alon Levy wrote:
>
>> This patchset adds three new devices, usb-ccid, ccid-card-passthru and
>> ccid-card-emulated, providing a CCID bus, a simple passthru protocol
>> implementing card requiring a client, and a standalone emulated card.
>>
>> It also introduces a new directory libcaccard with CAC card emulation,
>> CAC is a type of ISO 7816 smart card.
>>
>> Tree for pull: git://anongit.freedesktop.org/~alon/qemu usb_ccid.v18
>>
>> v17-v18 changes:
>> * merge vscard_common.h patches.
>> * actually provide a tree to pull.
>>
>> v16-v17 changes:
>> * merged all the "v15->v16" patches
>> * merged some more wherever it was easy (all same file commits).
>> * added signed off by to first four patches
>> * ccid.h: added copyright, removed underscore in defines, and replaced
>> non C89 comments
>>
>> v15-v16 changes:
>> * split vscard_common introducing patch for ease of review
>> * sum of commit logs for the v15-v16 commits: (whitespace fixes
>> removed for space, see original commit messages in later patches)
>> * usb-ccid:
>> * fix abort on client answer after card remove
>> * enable migration
>> * remove side affect code from asserts
>> * return consistent self-powered state
>> * mask out reserved bits in ccid_set_parameters
>> * add missing abRFU in SetParameters (no affect on linux guest)
>> * vscard_common.h protocol change:
>> * VSCMsgInit capabilities and magic
>> * removed ReaderResponse, will use Error instead with code==VSC_SUCCESS.
>> * added Flush and FlushComplete, remove Reconnect.
>> * define VSCARD_MAGIC
>> * added error code VSC_SUCCESS.
>> * ccid-card-passthru
>> * return correct size
>> * return error instead of assert if client sent too large ATR
>> * don't assert if client sent too large a size, but add asserts for indices to buffer
>> * reset vscard_in indices on chardev disconnect
>> * handle init from client
>> * error if no chardev supplied
>> * use ntoh, hton
>> * eradicate reader_id_t
>> * remove Reconnect usage (removed from VSCARD protocol)
>> * send VSC_SUCCESS on card insert/remove and reader add/remove
>> * ccid-card-emulated
>> * fix error reporting in initfn
>>
>> v14-v15 changes:
>> * add patch with --enable-smartcard and --disable-smartcard and only
>> disable ccid-card-emulated if nss not found.
>> * add patch with description strings
>> * s/libcaccard/libcacard/ in docs/ccid.txt
>>
>> v13-v14 changes:
>> - support device_del/device_add on ccid-card-* and usb-ccid
>> * usb-ccid:
>> * lose card reference when card device deleted
>> * check slot number and deny adding a slot if one is already added.
>> * ccid-card-*: use qdev_simple_unplug_cb in both emulated and passthru ccid cards,
>> the exitfn already takes care of triggering card removal in the usb dev.
>> * libcacard:
>> * remove double include of config-host.mak
>> * add replay of card events to libcacard to support second and more emulation
>> * don't initialize more then once (doesn't support it right now, so one
>> thread, NSS thread, is left when device_del is done)
>> * add VCARD_EMUL_INIT_ALREADY_INITED
>> * ccid-card-emulated:
>> * take correct mutexes on signaling to fix deadlocks on device_del
>> * allow card insertion/removal event without proper reader insertion event
>>
>> v12-v13 changes:
>> * libcacard:
>> * fix Makefile clean to remove vscclient
>> * fix double include of config-host in Makefile
>> * usb-ccid: remove attach/detach logic, usb is always attached. Guest
>> doesn't care if there is a reader attached with no card anyway.
>> * ccid-card-passthru: don't close chr_dev on removal, makes it possible
>> to use device_del/device_add to create remove/insertion for debugging.
>>
>> v11-v12 changes:
>> * fix out of tree build
>>
>> v10-v11 changes:
>> * fix last patch that removed one of the doc files.
>> * updated flow table in docs/ccid.txt
>>
>> v8-v10 changes:
>> * usb-ccid:
>> * add slot for future use (Gerd)
>> * ifdef ENABLE_MIGRATION for migration support on account of usb
>> migration not being ready in general. (Gerd)
>> * verbosified commit messages. (Gerd)
>> * put libcacard docs in libcacard commit. (Gerd)
>>
>> v8-v9 changes:
>> * Blue Swirl comments:
>> * white space fixes
>> * enabled by default, disabled only if missing nss
>> * forgotten fix from v8 (don't build libcacard.so)
>> * added a note about device being little endian
>> * library renamed from libcaccard to libcacard
>> * squashed both of libcacard patches, they touched different files anyway.
>>
>> v7-v8 changes:
>> * Blue Swirl comments:
>> * usb-ccid: deannonymize some structs
>> * usb-ccid: coding style change - answer_t and bulk_in_t fixed
>> * usb-ccid: handle endianess conversion between guest and host
>> * usb-ccid: s/ccid_bulk_in_copy_out/ccid_bulk_in_copy_to_guest/
>> * ccid-card-emulated: fix segfault if backend not specified
>> * ccid-card-emulated: let last reader inserted win
>> * libcaccard: remove double vscard_common.h
>>
>> v6->v7 changes:
>> * external libcaccard became internal directory libcaccard
>> * statically link object files into qemu
>> * produce libcaccard.so for usage by external projects
>> * applied coding style to new code (please check me)
>> - did not use the qemu options parsing for libcaccard, since
>> it seems to draw large amounts of qemu code (monitor for instance).
>>
>> v5->v6 changes:
>> * really remove static debug (I apologize for claiming to have done so before)
>>
>> v4->v5 changes:
>> * rebased to latest
>> * remove static debug in card devices
>> * fix --enable-smartcard to link
>> * stall instead of assert when exceeding BULK_OUT_DATA_SIZE
>> * make ccid_reserve_recv_buf for too large len discard message, not exit
>> * make ccid_reserve_recv_buf return void*
>> * fix typo
>> * remove commented code in VMState
>>
>> v3->v4:
>> * remove ccid field in CCIDBus
>> * remove static debug in bus
>> * add back docs
>>
>> v2->v3:
>> * split into bus (usb-ccid.c, uses ccid.h) and card (ccid-card-passthru.c).
>> * removed documentation (being revised).
>>
>> v1->v2:
>> * all QSIMPLEQ turned into fixed sized rings
>> * all allocated buffers turned into fixed size buffers
>> * added migration support
>> * added a message to tell client qemu has migrated to ip:port
>> * for lack of monitor commands ip:port are 0:0, which causes the updated
>> vscclient to connect to one port higher on the same host. will add monitor
>> commands in a separate patch. tested with current setup.
>>
>> Alon Levy (15):
>> qdev: add print_options callback
>> qdev: add data pointer to Property
>> qdev-properties: add PROP_TYPE_ENUM
>> qdev-properties: parse_enum: don't cast a void*
>> usb-ccid: add CCID bus
>> introduce libcacard/vscard_common.h
>> ccid: add passthru card device
>> ccid: add ccid-card-emulated device (v2)
>> ccid: add docs
>> ccid: configure: add --enable/disable and nss only disable
>> ccid: add qdev description strings
>> smartcard,configure: add --enable-smartcard-nss, report only nss
>> smartcard,configure: report only nss
>> ccid-card-emulated: don't link with NSS if --disable-smartcard-nss
>> ccid.h: add copyright, fix define and remove non C89 comments
>>
>> Robert Relyea (1):
>> libcacard: initial commit
>>
>> Makefile | 6 +-
>> Makefile.objs | 7 +
>> Makefile.target | 2 +
>> configure | 60 ++
>> docs/ccid.txt | 135 +++++
>> docs/libcacard.txt | 483 +++++++++++++++
>> hw/ccid-card-emulated.c | 551 ++++++++++++++++++
>> hw/ccid-card-passthru.c | 329 +++++++++++
>> hw/ccid.h | 51 ++
>> hw/qdev-properties.c | 60 ++
>> hw/qdev.c | 10 +-
>> hw/qdev.h | 17 +
>> hw/usb-ccid.c | 1353 +++++++++++++++++++++++++++++++++++++++++++
>> libcacard/Makefile | 14 +
>> libcacard/cac.c | 411 +++++++++++++
>> libcacard/cac.h | 20 +
>> libcacard/card_7816.c | 780 +++++++++++++++++++++++++
>> libcacard/card_7816.h | 60 ++
>> libcacard/card_7816t.h | 163 ++++++
>> libcacard/event.c | 112 ++++
>> libcacard/eventt.h | 28 +
>> libcacard/link_test.c | 20 +
>> libcacard/mutex.h | 59 ++
>> libcacard/passthru.c | 612 +++++++++++++++++++
>> libcacard/passthru.h | 50 ++
>> libcacard/vcard.c | 350 +++++++++++
>> libcacard/vcard.h | 85 +++
>> libcacard/vcard_emul.h | 62 ++
>> libcacard/vcard_emul_nss.c | 1192 +++++++++++++++++++++++++++++++++++++
>> libcacard/vcard_emul_type.c | 60 ++
>> libcacard/vcard_emul_type.h | 29 +
>> libcacard/vcardt.h | 66 +++
>> libcacard/vevent.h | 26 +
>> libcacard/vreader.c | 526 +++++++++++++++++
>> libcacard/vreader.h | 54 ++
>> libcacard/vreadert.h | 23 +
>> libcacard/vscard_common.h | 167 ++++++
>> libcacard/vscclient.c | 743 ++++++++++++++++++++++++
>> 38 files changed, 8773 insertions(+), 3 deletions(-)
>> create mode 100644 docs/ccid.txt
>> create mode 100644 docs/libcacard.txt
>> create mode 100644 hw/ccid-card-emulated.c
>> create mode 100644 hw/ccid-card-passthru.c
>> create mode 100644 hw/ccid.h
>> create mode 100644 hw/usb-ccid.c
>> create mode 100644 libcacard/Makefile
>> create mode 100644 libcacard/cac.c
>> create mode 100644 libcacard/cac.h
>> create mode 100644 libcacard/card_7816.c
>> create mode 100644 libcacard/card_7816.h
>> create mode 100644 libcacard/card_7816t.h
>> create mode 100644 libcacard/event.c
>> create mode 100644 libcacard/eventt.h
>> create mode 100644 libcacard/link_test.c
>> create mode 100644 libcacard/mutex.h
>> create mode 100644 libcacard/passthru.c
>> create mode 100644 libcacard/passthru.h
>> create mode 100644 libcacard/vcard.c
>> create mode 100644 libcacard/vcard.h
>> create mode 100644 libcacard/vcard_emul.h
>> create mode 100644 libcacard/vcard_emul_nss.c
>> create mode 100644 libcacard/vcard_emul_type.c
>> create mode 100644 libcacard/vcard_emul_type.h
>> create mode 100644 libcacard/vcardt.h
>> create mode 100644 libcacard/vevent.h
>> create mode 100644 libcacard/vreader.c
>> create mode 100644 libcacard/vreader.h
>> create mode 100644 libcacard/vreadert.h
>> create mode 100644 libcacard/vscard_common.h
>> create mode 100644 libcacard/vscclient.c
>>
>> --
>> 1.7.4
>>
>>
>>
>
next prev parent reply other threads:[~2011-02-07 13:23 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-03 22:45 [Qemu-devel] [PATCH 00/16] usb-ccid (v18) Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 01/16] qdev: add print_options callback Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 02/16] qdev: add data pointer to Property Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 03/16] qdev-properties: add PROP_TYPE_ENUM Alon Levy
2011-02-07 8:53 ` Markus Armbruster
2011-02-07 10:43 ` Alon Levy
2011-02-07 13:15 ` Anthony Liguori
2011-02-07 14:05 ` Markus Armbruster
2011-02-07 14:21 ` Anthony Liguori
2011-02-07 14:14 ` Alon Levy
2011-02-07 14:49 ` Anthony Liguori
2011-02-07 15:23 ` Anthony Liguori
2011-02-07 14:00 ` Markus Armbruster
2011-02-07 14:27 ` Alon Levy
2011-02-08 15:34 ` Alon Levy
2011-02-08 15:47 ` Markus Armbruster
2011-02-07 13:20 ` Anthony Liguori
2011-02-03 22:45 ` [Qemu-devel] [PATCH 04/16] qdev-properties: parse_enum: don't cast a void* Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 05/16] usb-ccid: add CCID bus Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 06/16] introduce libcacard/vscard_common.h Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 07/16] ccid: add passthru card device Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 08/16] libcacard: initial commit Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 09/16] ccid: add ccid-card-emulated device (v2) Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 10/16] ccid: add docs Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 11/16] ccid: configure: add --enable/disable and nss only disable Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 12/16] ccid: add qdev description strings Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 13/16] smartcard, configure: add --enable-smartcard-nss, report only nss Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 14/16] smartcard,configure: " Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 15/16] ccid-card-emulated: don't link with NSS if --disable-smartcard-nss Alon Levy
2011-02-03 22:45 ` [Qemu-devel] [PATCH 16/16] ccid.h: add copyright, fix define and remove non C89 comments Alon Levy
2011-02-07 11:03 ` [Qemu-devel] [PATCH 00/16] usb-ccid (v18) Alon Levy
2011-02-07 13:12 ` Anthony Liguori [this message]
2011-02-07 15:44 ` Alon Levy
2011-02-07 15:56 ` Eric Blake
2011-02-07 18:00 ` Alon Levy
2011-02-07 19:31 ` Anthony Liguori
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D4FEFD4.3090109@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).