qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/7] usb-ccid (v15)


From: Alon Levy
Subject: Re: [Qemu-devel] [PATCH 0/7] usb-ccid (v15)
Date: Mon, 17 Jan 2011 17:56:28 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

Ping

On Tue, Jan 11, 2011 at 10:42:31AM +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.v15
> 
> 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 (6):
>   usb-ccid: add CCID bus
>   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
> 
> Robert Relyea (1):
>   libcacard: initial commit after coding style fixes
> 
>  Makefile                    |    6 +-
>  Makefile.objs               |    7 +
>  Makefile.target             |    2 +
>  configure                   |   48 ++
>  docs/ccid.txt               |  135 +++++
>  docs/libcacard.txt          |  483 +++++++++++++++
>  hw/ccid-card-emulated.c     |  535 +++++++++++++++++
>  hw/ccid-card-passthru.c     |  273 +++++++++
>  hw/ccid.h                   |   35 ++
>  hw/usb-ccid.c               | 1356 
> +++++++++++++++++++++++++++++++++++++++++++
>  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/config.h          |   81 +++
>  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  | 1171 +++++++++++++++++++++++++++++++++++++
>  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   |  130 ++++
>  libcacard/vscclient.c       |  710 ++++++++++++++++++++++
>  36 files changed, 8580 insertions(+), 2 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/config.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.3.4
> 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]