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

Switch pcsclite dependency from cgo to native go #9

Closed
wants to merge 1 commit into from

Conversation

mtibben
Copy link

@mtibben mtibben commented Jul 5, 2019

Switch out the pcsclite cgo dependency to a native go dependency.

Please note I don't have a Yubikey, so it would be great to confirm that this works :)

@j0hnsmith
Copy link
Contributor

Doesn't work on my mac because it seems that osx doesn't have a traditional PCSC unix socket any more gballet/go-libpcsclite@2772fd8

@yawn
Copy link
Owner

yawn commented Jul 5, 2019

So this would be Linux only? What's the advantage of this approach in general?

@j0hnsmith
Copy link
Contributor

@yawn see the linked pull request. @mtibben is trying to avoid ykoath requiring CGO=1 but he doesn't have a yubikey to test, he coded what looked like it would work.

I'm going to spend some time to try to get this working.

@mtibben
Copy link
Author

mtibben commented Jul 7, 2019

Looks like it might be complicated on macOS... see https://ludovicrousseau.blogspot.com/search/label/Mac%20OS%20X

CryptoTokenKit is the closed-source Apple library, and looks like PC/SC API is implemented on top?

@mtibben
Copy link
Author

mtibben commented Jul 7, 2019

@yawn
Copy link
Owner

yawn commented Jul 29, 2019

Maybe we should offer two versions - Darwin + everything else w/o CGO? Would this fit better?

@yawn
Copy link
Owner

yawn commented Oct 13, 2019

Do you thing multiple builds would work here @j0hnsmith ?

@j0hnsmith
Copy link
Contributor

Generally speaking, it's nice to be able to have CGO=0 as much as possible, however I'm not sure it would work for aws-vault as I suspect they would want the functionality for all architectures or none at all.

@yawn
Copy link
Owner

yawn commented Oct 14, 2019

So this basically depends on gballet/go-libpcsclite#3 or any other cross OS solution like it.

@yawn
Copy link
Owner

yawn commented Jan 7, 2021

Is this still something you depend on @j0hnsmith / @mtibben? If so, can we try to make some progress here? If the issue here is the missing Yubikey, I can send you one via Amazon ...

@j0hnsmith
Copy link
Contributor

I'm pretty sure there is no cross platform solution available at this time. Also, aws-vault doesn't want native yubikey functionality, it prefers external solutions such as ykman.

IMO this can be closed.

@mtibben
Copy link
Author

mtibben commented Jan 7, 2021

It's not that a native solution isn't wanted, it's that there is no simple cross-platform way to implement. We can close this

@mtibben mtibben closed this Jan 7, 2021
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

Successfully merging this pull request may close these issues.

3 participants