1 unstable release
0.1.0 | May 29, 2021 |
---|
#1753 in Hardware support
26KB
571 lines
pafe for Rust
This crate provides bindings for libpafe, a C library for interacting with Sony PaSoRi USB devices. These devices are USB readers for FeliCa IC cards, a kind of contactless smart card which is widely used in Japan - particularly for Japanese transit cards like Suica and the Edy electronic wallet.
There are two crates in this repo: pafe-sys
, which provides low-level bindings to libpafe
, and pafe
, which provides high-level Rustic bindings. pafe-sys
covers roughly 100% of libpafe's functionality, while pafe
is still very incomplete.
Usage
You need to have a copy of libpafe
installed to build this crate. If you use Homebrew on Mac, you can get it by running:
brew install mistydemeo/formulae/libpafe
pafe-sys
The second crate included in this repo, pafe-sys
, is an automatically-generated low-level binding to libpafe
with no niceties. I've lightly altered the types generated by rust-bindgen to fix some incompatibilities, but it's otherwise untouched. No documentation is provided since it maps exactly to the original C library; please refer to the upstream repository for more information.
I want to help!
Thank you! I'm still in the early stages of working on this, so the project structure may change frequently. PRs that add more high-level mappings of the lower-level functions are welcome.
License
GPL 2.0, matching libpafe itself.