mirror of
https://gitlab.com/fabinfra/fabaccess/nfc_rs.git
synced 2025-03-12 14:51:50 +01:00
ran cargo fix
This commit is contained in:
parent
6fc20bdc0c
commit
7d8c8bb3fe
@ -1,7 +1,7 @@
|
|||||||
use crate::crypto::cipher::{aes, tdes, tdes_2k, tdes_3k, Cipher};
|
use crate::crypto::cipher::{aes, tdes, tdes_2k, tdes_3k, Cipher};
|
||||||
use crate::crypto::cipher_type::CipherType;
|
use crate::crypto::cipher_type::CipherType;
|
||||||
use crate::crypto::cipher_type::CipherType::*;
|
use crate::crypto::cipher_type::CipherType::*;
|
||||||
use crate::error::Error;
|
|
||||||
use crate::error::Result;
|
use crate::error::Result;
|
||||||
|
|
||||||
use simple_error::simple_error;
|
use simple_error::simple_error;
|
||||||
|
@ -15,8 +15,8 @@ use crate::error::{Error, Result};
|
|||||||
use crate::iso7816_4::apducommand::{APDUCommand, IsoCase};
|
use crate::iso7816_4::apducommand::{APDUCommand, IsoCase};
|
||||||
use crate::{error, Card};
|
use crate::{error, Card};
|
||||||
use num_traits::FromPrimitive;
|
use num_traits::FromPrimitive;
|
||||||
use std::fs::read;
|
|
||||||
use std::usize::MAX;
|
|
||||||
|
|
||||||
pub const MAX_BYTES_PER_TRANSACTION: usize = 47;
|
pub const MAX_BYTES_PER_TRANSACTION: usize = 47;
|
||||||
|
|
||||||
@ -780,23 +780,23 @@ mod tests {
|
|||||||
generate_file_access_rights, generate_keysetting1, generate_keysetting2,
|
generate_file_access_rights, generate_keysetting1, generate_keysetting2,
|
||||||
generate_session_key_aes, generate_session_key_des, Desfire,
|
generate_session_key_aes, generate_session_key_des, Desfire,
|
||||||
};
|
};
|
||||||
use crate::desfire::CryptoOperationsType::TDES;
|
|
||||||
use crate::desfire::{
|
use crate::desfire::{
|
||||||
ChangeApplicationKey, ChangeMasterKey, ChangeMasterKeySettings, CreateDeleteFile,
|
ChangeApplicationKey, ChangeMasterKey, ChangeMasterKeySettings, CreateDeleteFile,
|
||||||
CryptoOperationsType, FileAccessRights, FileCommunication, FileDirectoryAccess,
|
CryptoOperationsType, FileAccessRights, FileCommunication, FileDirectoryAccess,
|
||||||
FileIdentifiers,
|
FileIdentifiers,
|
||||||
};
|
};
|
||||||
use crate::error::Error::{CardError, InvalidKeyID};
|
use crate::error::Error::{CardError};
|
||||||
use crate::error::Result;
|
use crate::error::Result;
|
||||||
use crate::iso7816_4::apdustatuswords::APDUStatusWord::OK;
|
|
||||||
use crate::{APDUCommand, APDUResponse, Card as CardTrait};
|
use crate::{APDUCommand, APDUResponse, Card as CardTrait};
|
||||||
use hex_literal::hex;
|
use hex_literal::hex;
|
||||||
use mockall::{mock, predicate};
|
use mockall::{mock};
|
||||||
use pcsc::{Card, Context, Disposition, Error, Protocols, Scope, ShareMode, MAX_BUFFER_SIZE};
|
use pcsc::{Card, Context, Protocols, Scope, ShareMode, MAX_BUFFER_SIZE};
|
||||||
use std::convert::TryFrom;
|
use std::convert::TryFrom;
|
||||||
use std::ffi::{CStr, CString};
|
use std::ffi::{CString};
|
||||||
use std::fs::{read, File};
|
|
||||||
use std::ops::Deref;
|
|
||||||
|
|
||||||
mock! {
|
mock! {
|
||||||
pub VirtualCard {}
|
pub VirtualCard {}
|
||||||
@ -820,7 +820,7 @@ mod tests {
|
|||||||
.connect(&self.reader, ShareMode::Shared, Protocols::ANY)
|
.connect(&self.reader, ShareMode::Shared, Protocols::ANY)
|
||||||
{
|
{
|
||||||
Ok(card) => Some(card),
|
Ok(card) => Some(card),
|
||||||
Err(err) => {
|
Err(_err) => {
|
||||||
// eprintln!("Failed to connect to card: {}", err);
|
// eprintln!("Failed to connect to card: {}", err);
|
||||||
return Err(CardError);
|
return Err(CardError);
|
||||||
}
|
}
|
||||||
@ -845,7 +845,7 @@ mod tests {
|
|||||||
.transmit(apdu.as_slice(), &mut rapdu_buf)
|
.transmit(apdu.as_slice(), &mut rapdu_buf)
|
||||||
{
|
{
|
||||||
Ok(rapdu) => rapdu,
|
Ok(rapdu) => rapdu,
|
||||||
Err(err) => {
|
Err(_err) => {
|
||||||
// eprintln!("Failed to transmit APDU command to card: {}", err);
|
// eprintln!("Failed to transmit APDU command to card: {}", err);
|
||||||
return Err(CardError);
|
return Err(CardError);
|
||||||
}
|
}
|
||||||
@ -986,7 +986,7 @@ mod tests {
|
|||||||
fn select_application_invalidaid() {
|
fn select_application_invalidaid() {
|
||||||
let mock = MockVirtualCard::new();
|
let mock = MockVirtualCard::new();
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1001,7 +1001,7 @@ mod tests {
|
|||||||
// Establish a PC/SC context.
|
// Establish a PC/SC context.
|
||||||
let ctx = match Context::establish(Scope::User) {
|
let ctx = match Context::establish(Scope::User) {
|
||||||
Ok(ctx) => ctx,
|
Ok(ctx) => ctx,
|
||||||
Err(err) => {
|
Err(_err) => {
|
||||||
// eprintln!("Failed to establish context: {}", err);
|
// eprintln!("Failed to establish context: {}", err);
|
||||||
std::process::exit(1);
|
std::process::exit(1);
|
||||||
}
|
}
|
||||||
@ -1011,7 +1011,7 @@ mod tests {
|
|||||||
let mut readers_buf = [0; 2048];
|
let mut readers_buf = [0; 2048];
|
||||||
let mut readers = match ctx.list_readers(&mut readers_buf) {
|
let mut readers = match ctx.list_readers(&mut readers_buf) {
|
||||||
Ok(readers) => readers,
|
Ok(readers) => readers,
|
||||||
Err(err) => {
|
Err(_err) => {
|
||||||
// eprintln!("Failed to list readers: {}", err);
|
// eprintln!("Failed to list readers: {}", err);
|
||||||
std::process::exit(1);
|
std::process::exit(1);
|
||||||
}
|
}
|
||||||
@ -1073,7 +1073,7 @@ mod tests {
|
|||||||
});
|
});
|
||||||
|
|
||||||
let rndA = hex!("5f7d1dd12d979173");
|
let rndA = hex!("5f7d1dd12d979173");
|
||||||
let mut key = CipherKey::new_empty(CipherType::TDES).unwrap();
|
let key = CipherKey::new_empty(CipherType::TDES).unwrap();
|
||||||
// println!("{:x?}", key.key.deref());
|
// println!("{:x?}", key.key.deref());
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let mut desfire = Desfire {
|
||||||
@ -1115,7 +1115,7 @@ mod tests {
|
|||||||
// Establish a PC/SC context.
|
// Establish a PC/SC context.
|
||||||
let ctx = match Context::establish(Scope::User) {
|
let ctx = match Context::establish(Scope::User) {
|
||||||
Ok(ctx) => ctx,
|
Ok(ctx) => ctx,
|
||||||
Err(err) => {
|
Err(_err) => {
|
||||||
// eprintln!("Failed to establish context: {}", err);
|
// eprintln!("Failed to establish context: {}", err);
|
||||||
std::process::exit(1);
|
std::process::exit(1);
|
||||||
}
|
}
|
||||||
@ -1125,7 +1125,7 @@ mod tests {
|
|||||||
let mut readers_buf = [0; 2048];
|
let mut readers_buf = [0; 2048];
|
||||||
let mut readers = match ctx.list_readers(&mut readers_buf) {
|
let mut readers = match ctx.list_readers(&mut readers_buf) {
|
||||||
Ok(readers) => readers,
|
Ok(readers) => readers,
|
||||||
Err(err) => {
|
Err(_err) => {
|
||||||
// eprintln!("Failed to list readers: {}", err);
|
// eprintln!("Failed to list readers: {}", err);
|
||||||
std::process::exit(1);
|
std::process::exit(1);
|
||||||
}
|
}
|
||||||
@ -1156,10 +1156,10 @@ mod tests {
|
|||||||
|
|
||||||
desfire.select_application(0x000000);
|
desfire.select_application(0x000000);
|
||||||
|
|
||||||
let mut key = CipherKey::new_empty(CipherType::TDES).unwrap();
|
let key = CipherKey::new_empty(CipherType::TDES).unwrap();
|
||||||
match desfire.authenticate_iso_des(0x00, key.key.as_ref(), None) {
|
match desfire.authenticate_iso_des(0x00, key.key.as_ref(), None) {
|
||||||
Ok(_) => {}
|
Ok(_) => {}
|
||||||
Err(err) => {
|
Err(_err) => {
|
||||||
// eprintln!("Failed to authenticate: {}", err);
|
// eprintln!("Failed to authenticate: {}", err);
|
||||||
panic!("Failed to authenticate");
|
panic!("Failed to authenticate");
|
||||||
}
|
}
|
||||||
@ -1188,7 +1188,7 @@ mod tests {
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
let rndA = hex!("2176770e7a6eb4bef00d5e4b201d1e57");
|
let rndA = hex!("2176770e7a6eb4bef00d5e4b201d1e57");
|
||||||
let mut key = CipherKey::new_empty(CipherType::AES).unwrap();
|
let key = CipherKey::new_empty(CipherType::AES).unwrap();
|
||||||
// println!("{:x?}", key.key.deref());
|
// println!("{:x?}", key.key.deref());
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let mut desfire = Desfire {
|
||||||
@ -1239,7 +1239,7 @@ mod tests {
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1263,7 +1263,7 @@ mod tests {
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1275,9 +1275,9 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic(expected = "InvalidApplicationID")]
|
#[should_panic(expected = "InvalidApplicationID")]
|
||||||
fn create_application_invalid_aid() {
|
fn create_application_invalid_aid() {
|
||||||
let mut mock = MockVirtualCard::new();
|
let mock = MockVirtualCard::new();
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1309,7 +1309,7 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic(expected = "InvalidKeyID")]
|
#[should_panic(expected = "InvalidKeyID")]
|
||||||
fn change_key_aes_invalid_keyno() {
|
fn change_key_aes_invalid_keyno() {
|
||||||
let mut mock = MockVirtualCard::new();
|
let mock = MockVirtualCard::new();
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let mut desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
@ -1346,7 +1346,7 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic(expected = "InvalidKeyID")]
|
#[should_panic(expected = "InvalidKeyID")]
|
||||||
fn change_other_key_aes_invalid_keyno() {
|
fn change_other_key_aes_invalid_keyno() {
|
||||||
let mut mock = MockVirtualCard::new();
|
let mock = MockVirtualCard::new();
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let mut desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
@ -1374,7 +1374,7 @@ mod tests {
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1390,9 +1390,9 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic(expected = "InvalidFileID")]
|
#[should_panic(expected = "InvalidFileID")]
|
||||||
fn create_file_standard_invalid_file_id() {
|
fn create_file_standard_invalid_file_id() {
|
||||||
let mut mock = MockVirtualCard::new();
|
let mock = MockVirtualCard::new();
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1421,7 +1421,7 @@ mod tests {
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1459,7 +1459,7 @@ mod tests {
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1472,9 +1472,9 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic(expected = "InvalidFileID")]
|
#[should_panic(expected = "InvalidFileID")]
|
||||||
fn write_data_invalid_file_id() {
|
fn write_data_invalid_file_id() {
|
||||||
let mut mock = MockVirtualCard::new();
|
let mock = MockVirtualCard::new();
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1503,7 +1503,7 @@ mod tests {
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1525,7 +1525,7 @@ mod tests {
|
|||||||
body: Some(hex!("5465737431323334000000000000000000000000000000000000000000000000809a9bedbc559a5b9100").to_vec())
|
body: Some(hex!("5465737431323334000000000000000000000000000000000000000000000000809a9bedbc559a5b9100").to_vec())
|
||||||
}));
|
}));
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1565,7 +1565,7 @@ mod tests {
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
@ -1581,9 +1581,9 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[should_panic(expected = "InvalidFileID")]
|
#[should_panic(expected = "InvalidFileID")]
|
||||||
fn read_data_invalid_file_id() {
|
fn read_data_invalid_file_id() {
|
||||||
let mut mock = MockVirtualCard::new();
|
let mock = MockVirtualCard::new();
|
||||||
|
|
||||||
let mut desfire = Desfire {
|
let desfire = Desfire {
|
||||||
card: Some(Box::new(mock)),
|
card: Some(Box::new(mock)),
|
||||||
cbc_iv: None,
|
cbc_iv: None,
|
||||||
session_key: None,
|
session_key: None,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user