blufi.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. * SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
  3. *
  4. * SPDX-License-Identifier: Unlicense OR CC0-1.0
  5. */
  6. #pragma once
  7. #include <stdint.h>
  8. #include "esp_blufi_api.h" // 添加缺少的类型声明
  9. #include "esp_log.h"
  10. #define BLUFI_TAG "cx-mxb-wifi"
  11. #define BLUFI_INFO(fmt, ...) ESP_LOGI(BLUFI_TAG, fmt, ##__VA_ARGS__)
  12. #define BLUFI_ERROR(fmt, ...) ESP_LOGE(BLUFI_TAG, fmt, ##__VA_ARGS__)
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. // 安全协议函数
  17. void blufi_dh_negotiate_data_handler(uint8_t *data, int len,
  18. uint8_t **output_data, int *output_len,
  19. bool *need_free);
  20. int blufi_aes_encrypt(uint8_t iv8, uint8_t *crypt_data, int crypt_len);
  21. int blufi_aes_decrypt(uint8_t iv8, uint8_t *crypt_data, int crypt_len);
  22. uint16_t blufi_crc_checksum(uint8_t iv8, uint8_t *data, int len);
  23. // 初始化和反初始化
  24. int blufi_security_init(void);
  25. void blufi_security_deinit(void);
  26. // BLE GAP 回调注册
  27. int esp_blufi_gap_register_callback(void);
  28. // Blufi 主机控制接口
  29. esp_err_t esp_blufi_host_init(void);
  30. esp_err_t esp_blufi_host_and_cb_init(esp_blufi_callbacks_t *callbacks);
  31. esp_err_t esp_blufi_host_deinit(void);
  32. // Blufi 控制器接口
  33. esp_err_t esp_blufi_controller_init(void);
  34. esp_err_t esp_blufi_controller_deinit(void);
  35. // 主测试函数
  36. void blufi_entry_func(void);
  37. #ifdef __cplusplus
  38. }
  39. #endif