gioblu / Cape

String encryption for Arduino, limited microcontrollers and other embedded systems.
67 stars 18 forks source link

Adds 'cape_c.h', a C port of Cape #12

Closed colinta closed 6 years ago

colinta commented 6 years ago

Personally I needed this for use in QMK, which didn't like the C++ code (it uses avrgcc, not sure why it doesn't support C++, but oh well).

colinta commented 6 years ago

@gioblu not sure if this is the format you wanted this in, let me know if this works, or if you want any changes! Thanks!

gioblu commented 6 years ago

Ciao @colinta thank you very much for your support to the project. I am sure other users will find your implementation useful 👍

I will go through your proposal now, but from a first look it seems more than fine :)

Thank you again.

gioblu commented 6 years ago

Ciao @colinta I have added the Cape_c to Cape example: https://github.com/gioblu/Cape/tree/master/examples/Cape_c/Cape_c-Cape to assess their compatibility

The only error I have found is the cape_init function overload: https://github.com/gioblu/Cape/commit/7f0c7b3f30c8c8f0ca877facb260d8d33c7f1e5c I have fixed using salt default parameter instead.

Another thing I see could be maybe changed is the use of pointers for cap_t parameter, why you have not passed the object itself instead?

Thank you for your support to the project 👍