Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Distribution packages and development. #1450

Closed
asmjmisc opened this issue Aug 16, 2018 · 7 comments
Closed

Distribution packages and development. #1450

asmjmisc opened this issue Aug 16, 2018 · 7 comments

Comments

@asmjmisc
Copy link

Hi,

I'm currently working on a piece of software that will work with a bunch of smart cards, and of the few libraries that exist, I've chosen to run with OpenSC. However, I am not able to find development packages for the library (particularly, a package that would ship headers), and I've checked Fedora, Debian, Ubuntu, Arch (primary and AUR) and Gentoo packages to make sure[1]. The packages that do exist (non-development) don't appear to be maintained by anyone from the OpenSC project, and are just the handy work of distribution package maintainers.

Additionally, packaging/debian.templates/control does not contain a stanza for producing a development package.

So my questions are:

  • Is there a plan to do this, and if so, what would be the ballpark ETA?
  • If there is no plan to deliver a development package, how could I help to get this moving along somehow?
  • What would be the preferred method of working around this while there is no development package?

[1]: Package search results:
Fedora: https://apps.fedoraproject.org/packages/s/opensc
Debian: https://packages.debian.org/search?keywords=opensc&searchon=names&suite=stable&section=all
Ubuntu: https://packages.ubuntu.com/search?keywords=opensc&searchon=names&suite=bionic&section=all
Arch: https://www.archlinux.org/packages/?q=opensc
Arch AUR: https://aur.archlinux.org/packages/?SeB=n&K=opensc
Gentoo: https://packages.gentoo.org/packages/search?q=opensc

@martinpaljak
Copy link
Member

The interface for programming that OpenSC provides is PKCS#11

@asmjmisc
Copy link
Author

Hi, @martinpaljak!

Are you saying I should be using libp11? I kind of wanted to use the more fancy, OpenSC (opensc.h) interface. Or am I misinterpreting something?

@martinpaljak
Copy link
Member

You can use libp11, pkcs11-helper, SunPKCS11 or whatever mid-layer for working with OpenSC-supported cards via the OpenSC PKCS#11 module. Or you might run the PKCS#11 API yourself, there is no technical need for a middleman.

OpenSC API is internal and should not be considered stable. If you just want low level smart card access, use PC/SC directly.

@martinpaljak
Copy link
Member

@asmjmisc
Copy link
Author

Thanks, @martinpaljak.

In that case, I have the following questions:

How do I manage smart card reader events (such as insert and remove), and how is card access and state managed? (I'm not sure I have my layer sequence mental model right)

@martinpaljak
Copy link
Member

SCardGetStatusChange (PC/SC, can/may/should be complementary to PKCS#11) and/or C_WaitForSlotEvent (PKCS#11)

@asmjmisc
Copy link
Author

Sorry, but I'm now slightly confused. If I opt to use libp11 (which doesn't abstract over C_WaitForSlotEvent), would I have to implement these myself somehow, or am I missing something again?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants