rust_cryptoauthlib/hw_impl/
c2rust.rs1use super::{AtcaDeviceType, AtcaStatus};
2use std::convert::From;
3
4impl From<cryptoauthlib_sys::ATCA_STATUS> for AtcaStatus {
5 fn from(atca_status: cryptoauthlib_sys::ATCA_STATUS) -> Self {
6 match atca_status {
7 cryptoauthlib_sys::ATCA_STATUS_ATCA_SUCCESS => AtcaStatus::AtcaSuccess,
8 cryptoauthlib_sys::ATCA_STATUS_ATCA_CONFIG_ZONE_LOCKED => {
9 AtcaStatus::AtcaConfigZoneLocked
10 }
11 cryptoauthlib_sys::ATCA_STATUS_ATCA_DATA_ZONE_LOCKED => AtcaStatus::AtcaDataZoneLocked,
12 cryptoauthlib_sys::ATCA_STATUS_ATCA_WAKE_FAILED => AtcaStatus::AtcaWakeFailed,
13 cryptoauthlib_sys::ATCA_STATUS_ATCA_CHECKMAC_VERIFY_FAILED => {
14 AtcaStatus::AtcaCheckMacVerifyFailed
15 }
16 cryptoauthlib_sys::ATCA_STATUS_ATCA_PARSE_ERROR => AtcaStatus::AtcaParseError,
17 cryptoauthlib_sys::ATCA_STATUS_ATCA_STATUS_CRC => AtcaStatus::AtcaStatusCrc,
18 cryptoauthlib_sys::ATCA_STATUS_ATCA_STATUS_UNKNOWN => AtcaStatus::AtcaStatusUnknown,
19 cryptoauthlib_sys::ATCA_STATUS_ATCA_STATUS_ECC => AtcaStatus::AtcaStatusEcc,
20 cryptoauthlib_sys::ATCA_STATUS_ATCA_STATUS_SELFTEST_ERROR => {
21 AtcaStatus::AtcaStatusSelftestError
22 }
23 cryptoauthlib_sys::ATCA_STATUS_ATCA_FUNC_FAIL => AtcaStatus::AtcaFuncFail,
24 cryptoauthlib_sys::ATCA_STATUS_ATCA_GEN_FAIL => AtcaStatus::AtcaGenFail,
25 cryptoauthlib_sys::ATCA_STATUS_ATCA_BAD_PARAM => AtcaStatus::AtcaBadParam,
26 cryptoauthlib_sys::ATCA_STATUS_ATCA_INVALID_ID => AtcaStatus::AtcaInvalidId,
27 cryptoauthlib_sys::ATCA_STATUS_ATCA_INVALID_SIZE => AtcaStatus::AtcaInvalidSize,
28 cryptoauthlib_sys::ATCA_STATUS_ATCA_RX_CRC_ERROR => AtcaStatus::AtcaRxCrcError,
29 cryptoauthlib_sys::ATCA_STATUS_ATCA_RX_FAIL => AtcaStatus::AtcaRxFail,
30 cryptoauthlib_sys::ATCA_STATUS_ATCA_RX_NO_RESPONSE => AtcaStatus::AtcaRxNoResponse,
31 cryptoauthlib_sys::ATCA_STATUS_ATCA_RESYNC_WITH_WAKEUP => {
32 AtcaStatus::AtcaResyncWithWakeup
33 }
34 cryptoauthlib_sys::ATCA_STATUS_ATCA_PARITY_ERROR => AtcaStatus::AtcaParityError,
35 cryptoauthlib_sys::ATCA_STATUS_ATCA_TX_TIMEOUT => AtcaStatus::AtcaTxTimeout,
36 cryptoauthlib_sys::ATCA_STATUS_ATCA_RX_TIMEOUT => AtcaStatus::AtcaRxTimeout,
37 cryptoauthlib_sys::ATCA_STATUS_ATCA_TOO_MANY_COMM_RETRIES => {
38 AtcaStatus::AtcaTooManyCommRetries
39 }
40 cryptoauthlib_sys::ATCA_STATUS_ATCA_SMALL_BUFFER => AtcaStatus::AtcaSmallBuffer,
41 cryptoauthlib_sys::ATCA_STATUS_ATCA_COMM_FAIL => AtcaStatus::AtcaCommFail,
42 cryptoauthlib_sys::ATCA_STATUS_ATCA_TIMEOUT => AtcaStatus::AtcaTimeout,
43 cryptoauthlib_sys::ATCA_STATUS_ATCA_BAD_OPCODE => AtcaStatus::AtcaBadOpcode,
44 cryptoauthlib_sys::ATCA_STATUS_ATCA_WAKE_SUCCESS => AtcaStatus::AtcaWakeSuccess,
45 cryptoauthlib_sys::ATCA_STATUS_ATCA_EXECUTION_ERROR => AtcaStatus::AtcaExecutionError,
46 cryptoauthlib_sys::ATCA_STATUS_ATCA_UNIMPLEMENTED => AtcaStatus::AtcaUnimplemented,
47 cryptoauthlib_sys::ATCA_STATUS_ATCA_ASSERT_FAILURE => AtcaStatus::AtcaAssertFailure,
48 cryptoauthlib_sys::ATCA_STATUS_ATCA_TX_FAIL => AtcaStatus::AtcaTxFail,
49 cryptoauthlib_sys::ATCA_STATUS_ATCA_NOT_LOCKED => AtcaStatus::AtcaNotLocked,
50 cryptoauthlib_sys::ATCA_STATUS_ATCA_NO_DEVICES => AtcaStatus::AtcaNoDevices,
51 cryptoauthlib_sys::ATCA_STATUS_ATCA_HEALTH_TEST_ERROR => {
52 AtcaStatus::AtcaHealthTestError
53 }
54 cryptoauthlib_sys::ATCA_STATUS_ATCA_ALLOC_FAILURE => AtcaStatus::AtcaAllocFailure,
55 cryptoauthlib_sys::ATCA_STATUS_ATCA_USE_FLAGS_CONSUMED => {
56 AtcaStatus::AtcaUseFlagsConsumed
57 }
58 _ => AtcaStatus::AtcaUnknown,
59 }
60 }
61}
62
63impl From<cryptoauthlib_sys::ATCADeviceType> for AtcaDeviceType {
64 fn from(device_type: cryptoauthlib_sys::ATCADeviceType) -> Self {
65 match device_type {
66 cryptoauthlib_sys::ATCADeviceType_ATSHA204A => AtcaDeviceType::ATSHA204A,
67 cryptoauthlib_sys::ATCADeviceType_ATECC108A => AtcaDeviceType::ATECC108A,
68 cryptoauthlib_sys::ATCADeviceType_ATECC508A => AtcaDeviceType::ATECC508A,
69 cryptoauthlib_sys::ATCADeviceType_ATECC608A => AtcaDeviceType::ATECC608A,
70 cryptoauthlib_sys::ATCADeviceType_ATSHA206A => AtcaDeviceType::ATSHA206A,
71 _ => AtcaDeviceType::AtcaDevUnknown,
72 }
73 }
74}