qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
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
>>
>>
>>      
>    

  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).