Commit Graph

4 Commits

Author SHA1 Message Date
Tony Arcieri 1d86885ab1 oxidize: Fix first pass of compile errors
This commit contains a multitude of fixes and some initial translation
work so the first rustc pass compiles.

It removes `unsafe extern "C"` declarations, so now there are a number
of errors about invocations of unsafe functions that need to be
addressed. They should each be scoped to an `unsafe` block so as to aid
in an eventual safe translation.

Some of the functions are now using the module system rather than
`extern "C"` bindings, but the translation is not complete.
2019-11-17 08:21:48 -08:00
Tony Arcieri 4cd59cb992 oxidize: Add pub mod directives and run rustfmt
Makes all translated files part of the crate, and then runs rustfmt
on all of them, hopefully making them marginally more bearable.
2019-08-10 14:53:25 -07:00
Tony Arcieri 5e0e0fe0c2 oxidize: Fix or note any translation errata
This either fixes or adds "FIXME" notes for any parts of the code that
corrode had trouble translating.

Namely there are a number of places members of the APDU struct(?) were
accessed which corrode failed to translate.
2019-08-10 14:50:36 -07:00
Tony Arcieri 29fe670896 oxidize: Factor into standard Rust crate structure
- Adds initial `Cargo.toml` (and `Cargo.lock` to `.gitignore`)
- Deletes `tool` (it seems hard to `corrode`)
- Moves `lib/tests` => `tests` (we should figure out how to translate them)
- Moves `lib` => `src` to match Rust conventions
- Renames `lib/ykpiv.rs` => `src/lib.rs` to match Rust conventions
- Adds copyright from `ykpiv.h` to the top of all `*.rs` files
2019-08-10 14:49:48 -07:00