Yurik72/ESPHap

error unknown type name 'curve25519_key'

Opened this issue · 0 comments

/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:20:7: error: unknown type name 'curve25519_key'
   20 | const curve25519_key cache_curve25519_key[CACHE_CURVE25519_KEY_SIZE];
      |       ^~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:79:19: error: unknown type name 'Srp'
   79 | int wc_SrpSetKeyH(Srp *srp, byte *secret, word32 size) {
      |                   ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:100:1: error: unknown type name 'Srp'
  100 | Srp *crypto_srp_new() {
      | ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_srp_new':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:102:5: error: unknown type name 'Srp'
  102 |     Srp *srp = malloc(sizeof(Srp));
      |     ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:102:30: error: 'Srp' undeclared (first use in this function); did you mean 'srp'?
  102 |     Srp *srp = malloc(sizeof(Srp));
      |                              ^~~
      |                              srp
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:102:30: note: each undeclared identifier is reported only once for each function it appears in
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:105:29: error: 'SRP_TYPE_SHA512' undeclared (first use in this function); did you mean 'WC_HASH_TYPE_SHA512'?
  105 |     int r = wc_SrpInit(srp, SRP_TYPE_SHA512, SRP_CLIENT_SIDE);
      |                             ^~~~~~~~~~~~~~~
      |                             WC_HASH_TYPE_SHA512
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:105:46: error: 'SRP_CLIENT_SIDE' undeclared (first use in this function)
  105 |     int r = wc_SrpInit(srp, SRP_TYPE_SHA512, SRP_CLIENT_SIDE);
      |                                              ^~~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:110:8: error: request for member 'keyGenFunc_cb' in something not a structure or union
  110 |     srp->keyGenFunc_cb = wc_SrpSetKeyH;
      |        ^~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:110:26: error: 'wc_SrpSetKeyH' undeclared (first use in this function)
  110 |     srp->keyGenFunc_cb = wc_SrpSetKeyH;
      |                          ^~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: At top level:
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:116:22: error: unknown type name 'Srp'
  116 | void crypto_srp_free(Srp *srp) {
      |                      ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:122:21: error: unknown type name 'Srp'
  122 | int crypto_srp_init(Srp *srp, const char *username, const char *password) {
      |                     ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:179:25: error: unknown type name 'Srp'
  179 | int crypto_srp_get_salt(Srp *srp, byte *buffer, size_t *buffer_size) {
      |                         ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:194:31: error: unknown type name 'Srp'
  194 | int crypto_srp_get_public_key(Srp *srp, byte *buffer, size_t *buffer_size) {
      |                               ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:221:5: error: unknown type name 'Srp'
  221 |     Srp *srp,
      |     ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:239:23: error: unknown type name 'Srp'
  239 | int crypto_srp_verify(Srp *srp, const byte *proof, size_t proof_size) {
      |                       ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:250:26: error: unknown type name 'Srp'
  250 | int crypto_srp_get_proof(Srp *srp, byte *proof, size_t *proof_size) {
      |                          ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_hkdf':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:284:9: error: 'SHA512' undeclared (first use in this function); did you mean 'WC_SHA512'?
  284 |         SHA512,
      |         ^~~~~~
      |         WC_SHA512
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: At top level:
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:297:5: error: unknown type name 'Srp'
  297 |     Srp *srp,
      |     ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_chacha20poly1305_decrypt':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:316:25: error: 'CHACHA20_POLY1305_AEAD_AUTHTAG_SIZE' undeclared (first use in this function)
  316 |     if (message_size <= CHACHA20_POLY1305_AEAD_AUTHTAG_SIZE) {
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_chacha20poly1305_encrypt':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:349:33: error: 'CHACHA20_POLY1305_AEAD_AUTHTAG_SIZE' undeclared (first use in this function)
  349 |     size_t len = message_size + CHACHA20_POLY1305_AEAD_AUTHTAG_SIZE;
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_ed25519_new':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:368:38: error: invalid application of 'sizeof' to incomplete type 'ed25519_key'
  368 |     ed25519_key *key = malloc(sizeof(ed25519_key));
      |                                      ^~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_ed25519_generate':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:390:12: error: storage size of 'rng' isn't known
  390 |     WC_RNG rng;
      |            ^~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:391:39: error: 'ED25519_KEY_SIZE' undeclared (first use in this function); did you mean 'ED25519_TYPE'?
  391 |     int r = wc_ed25519_make_key(&rng, ED25519_KEY_SIZE, key);
      |                                       ^~~~~~~~~~~~~~~~
      |                                       ED25519_TYPE
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_ed25519_import_key':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:403:15: error: 'ED25519_KEY_SIZE' undeclared (first use in this function); did you mean 'ED25519_TYPE'?
  403 |         data, ED25519_KEY_SIZE,
      |               ^~~~~~~~~~~~~~~~
      |               ED25519_TYPE
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:404:34: error: 'ED25519_PUB_KEY_SIZE' undeclared (first use in this function)
  404 |         data + ED25519_KEY_SIZE, ED25519_PUB_KEY_SIZE,
      |                                  ^~~~~~~~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_ed25519_export_key':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:413:17: error: 'ED25519_KEY_SIZE' undeclared (first use in this function); did you mean 'ED25519_TYPE'?
  413 |     if (*size < ED25519_KEY_SIZE + ED25519_PUB_KEY_SIZE) {
      |                 ^~~~~~~~~~~~~~~~
      |                 ED25519_TYPE
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:413:36: error: 'ED25519_PUB_KEY_SIZE' undeclared (first use in this function)
  413 |     if (*size < ED25519_KEY_SIZE + ED25519_PUB_KEY_SIZE) {
      |                                    ^~~~~~~~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_ed25519_export_public_key':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:433:17: error: 'ED25519_PUB_KEY_SIZE' undeclared (first use in this function)
  433 |     if (*size < ED25519_PUB_KEY_SIZE) {
      |                 ^~~~~~~~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_ed25519_sign':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:454:27: error: 'ED25519_SIG_SIZE' undeclared (first use in this function)
  454 |     if (*signature_size < ED25519_SIG_SIZE) {
      |                           ^~~~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: At top level:
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:485:1: error: unknown type name 'curve25519_key'; did you mean 'ed25519_key'?
  485 | curve25519_key *crypto_curve25519_getcached(int idx) {
      | ^~~~~~~~~~~~~~
      | ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:491:1: error: unknown type name 'curve25519_key'; did you mean 'ed25519_key'?
  491 | curve25519_key *crypto_curve25519_new() {
      | ^~~~~~~~~~~~~~
      | ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_curve25519_new':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:492:5: error: unknown type name 'curve25519_key'; did you mean 'ed25519_key'?
  492 |     curve25519_key *key = malloc(sizeof(curve25519_key));
      |     ^~~~~~~~~~~~~~
      |     ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:492:41: error: 'curve25519_key' undeclared (first use in this function); did you mean 'ed25519_key'?
  492 |     curve25519_key *key = malloc(sizeof(curve25519_key));
      |                                         ^~~~~~~~~~~~~~
      |                                         ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: At top level:
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:502:29: error: unknown type name 'curve25519_key'; did you mean 'ed25519_key'?
  502 | void crypto_curve25519_free(curve25519_key *key) {
      |                             ^~~~~~~~~~~~~~
      |                             ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:509:28: error: unknown type name 'curve25519_key'; did you mean 'ed25519_key'?
  509 | int crypto_curve25519_init(curve25519_key *key) {
      |                            ^~~~~~~~~~~~~~
      |                            ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:516:29: error: unknown type name 'curve25519_key'; did you mean 'ed25519_key'?
  516 | void crypto_curve25519_done(curve25519_key *key) {
      |                             ^~~~~~~~~~~~~~
      |                             ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:522:32: error: unknown type name 'curve25519_key'; did you mean 'ed25519_key'?
  522 | int crypto_curve25519_generate(curve25519_key *key) {
      |                                ^~~~~~~~~~~~~~
      |                                ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:540:37: error: unknown type name 'curve25519_key'; did you mean 'ed25519_key'?
  540 | int crypto_curve25519_import_public(curve25519_key *key, const byte *data, size_t size) {
      |                                     ^~~~~~~~~~~~~~
      |                                     ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:545:43: error: unknown type name 'curve25519_key'
  545 | int crypto_curve25519_export_public(const curve25519_key *key, byte *buffer, size_t *size) {
      |                                           ^~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_curve25519_export_public':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:549:14: error: 'curve25519_key' undeclared (first use in this function); did you mean 'ed25519_key'?
  549 |             (curve25519_key *)key,
      |              ^~~~~~~~~~~~~~
      |              ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:549:30: error: expected expression before ')' token
  549 |             (curve25519_key *)key,
      |                              ^
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:559:26: error: expected expression before ')' token
  559 |         (curve25519_key *)key,
      |                          ^
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: At top level:
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:568:43: error: unknown type name 'curve25519_key'
  568 | int crypto_curve25519_shared_secret(const curve25519_key *private_key, const curve25519_key *public_key, byte *buffer, size_t *size) {
      |                                           ^~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:568:78: error: unknown type name 'curve25519_key'
  568 | int crypto_curve25519_shared_secret(const curve25519_key *private_key, const curve25519_key *public_key, byte *buffer, size_t *size) {
      |                                                                              ^~~~~~~~~~~~~~
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c: In function 'crypto_curve25519_shared_secret':
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:569:17: error: 'CURVE25519_KEYSIZE' undeclared (first use in this function); did you mean 'CACHE_CURVE25519_KEY_SIZE'?
  569 |     if (*size < CURVE25519_KEYSIZE) {
      |                 ^~~~~~~~~~~~~~~~~~
      |                 CACHE_CURVE25519_KEY_SIZE
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:576:10: error: 'curve25519_key' undeclared (first use in this function); did you mean 'ed25519_key'?
  576 |         (curve25519_key *)private_key,
      |          ^~~~~~~~~~~~~~
      |          ed25519_key
/Users/wisonlau/Documents/Arduino/libraries/ESPHap/crypto.c:576:26: error: expected expression before ')' token
  576 |         (curve25519_key *)private_key,
      |                          ^
exit status 1
为开发板 Generic ESP8266 Module 编译时出错。
arduino version 1.8.19
os macos 12.6.1
esphap version 1.1.0

May I ask how to solve the problem?