Purge the Claim event type

It's now represented as a Transaction from an unknown party.
This commit is contained in:
Greg Fitzgerald
2018-03-02 11:48:56 -07:00
parent 0d0fee1ca1
commit 9f12cd0c09
2 changed files with 6 additions and 21 deletions

View File

@ -137,7 +137,6 @@ impl Accountant {
let mut found = false; let mut found = false;
while !found { while !found {
found = entries.iter().any(|e| match e.event { found = entries.iter().any(|e| match e.event {
Event::Claim { sig, .. } => sig == *wait_sig,
Event::Transaction { sig, .. } => sig == *wait_sig, Event::Transaction { sig, .. } => sig == *wait_sig,
_ => false, _ => false,
}); });

View File

@ -29,11 +29,6 @@ pub type Signature = GenericArray<u8, U64>;
#[derive(Serialize, Deserialize, Debug, PartialEq, Eq, Clone)] #[derive(Serialize, Deserialize, Debug, PartialEq, Eq, Clone)]
pub enum Event<T> { pub enum Event<T> {
Tick, Tick,
Claim {
to: PublicKey,
data: T,
sig: Signature,
},
Transaction { Transaction {
from: Option<PublicKey>, from: Option<PublicKey>,
to: PublicKey, to: PublicKey,
@ -44,14 +39,12 @@ pub enum Event<T> {
impl<T> Event<T> { impl<T> Event<T> {
pub fn new_claim(to: PublicKey, data: T, sig: Signature) -> Self { pub fn new_claim(to: PublicKey, data: T, sig: Signature) -> Self {
// TODO: Change this to a Transaction Event::Transaction {
Event::Claim { to, data, sig } from: None,
//Event::Transaction { to,
// from: None, data,
// to, sig,
// data, }
// sig,
//}
} }
} }
@ -103,19 +96,12 @@ pub fn verify_signature(peer_public_key_bytes: &[u8], msg_bytes: &[u8], sig_byte
pub fn get_signature<T>(event: &Event<T>) -> Option<Signature> { pub fn get_signature<T>(event: &Event<T>) -> Option<Signature> {
match *event { match *event {
Event::Tick => None, Event::Tick => None,
Event::Claim { sig, .. } => Some(sig),
Event::Transaction { sig, .. } => Some(sig), Event::Transaction { sig, .. } => Some(sig),
} }
} }
pub fn verify_event<T: Serialize>(event: &Event<T>) -> bool { pub fn verify_event<T: Serialize>(event: &Event<T>) -> bool {
use bincode::serialize; use bincode::serialize;
if let Event::Claim { to, ref data, sig } = *event {
let sign_data = serialize(&(&data, &to)).unwrap();
if !verify_signature(&to, &sign_data, &sig) {
return false;
}
}
if let Event::Transaction { if let Event::Transaction {
from, from,
to, to,