6 releases

Uses old Rust 2015

0.1.5 Sep 16, 2016
0.1.4 Jun 20, 2016
0.1.2 May 30, 2016

#1732 in Hardware support

Download history 38/week @ 2024-03-17 30/week @ 2024-03-24 56/week @ 2024-03-31 25/week @ 2024-04-07 28/week @ 2024-04-14 39/week @ 2024-04-21 39/week @ 2024-04-28 34/week @ 2024-05-05 34/week @ 2024-05-12 49/week @ 2024-05-19 57/week @ 2024-05-26 33/week @ 2024-06-02 23/week @ 2024-06-09 48/week @ 2024-06-16 35/week @ 2024-06-23 6/week @ 2024-06-30

115 downloads per month
Used in 6 crates (4 directly)

MIT license

23KB
376 lines

nfc-sys

Crates.io

nfc-sys provides FFI bindings to libnfc.

Following the *-sys package conventions, the nfc-sys package does not define higher-level abstractions over the native library; for a safe implementation, see nfc.

Installation

Install libnfc (e.g. Debian/Ubuntu, brew install libnfc using Homebrew on Mac OSx, or on other systems).

Cargo.toml

[dependencies]
libc = "0.2.0"
nfc-sys = "0.1.4"

Example Usage

// main.rs

extern crate nfc_sys;

use ::std::ffi::CStr;

fn main() {
    unsafe {
         // Create new Context and initialize libnfc
         let mut context = nfc_sys::nfc_context_new();
         nfc_sys::nfc_init(&mut context);
    
         if context.is_null() {
             println!("Unable to initialize new nfc context");
         }
    
         let version = CStr::from_ptr(nfc_sys::nfc_version()).to_str().unwrap();
    
         println!("libnfc version: {:?}", version);
    }
}

Contributing

I'm brand new to Rust so any help or constructive information would be really appreciated. Thanks in advance!

License

MIT

Dependencies

~43KB