Skip to content

Commit 18c2eae

Browse files
author
Joshua Mir
committed
submit_proof_of_storage (pending validate_proof, some questions on events)
1 parent 379053e commit 18c2eae

File tree

1 file changed

+14
-3
lines changed
  • datdot-node/pallets/datdot/src

1 file changed

+14
-3
lines changed

datdot-node/pallets/datdot/src/lib.rs

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,6 @@ pub trait Trait: system::Trait{
113113
******************************************************************************/
114114
decl_event!(
115115
pub enum Event<T> where
116-
<T as Trait>::AttestorId,
117116
<T as Trait>::EncoderId,
118117
<T as Trait>::HosterId,
119118
<T as Trait>::FeedId,
@@ -133,7 +132,7 @@ decl_event!(
133132
/// New proof-of-storage challenge
134133
NewProofOfStorageChallenge(ChallengeId),
135134
/// Proof-of-storage confirmed
136-
ProofOfStorageConfirmed(AttestorId, ChallengeId),
135+
ProofOfStorageConfirmed(ChallengeId),
137136
/// Proof-of-storage not confirmed
138137
ProofOfStorageFailed(ChallengeId),
139138
/// Attestation of retrievability requested
@@ -529,7 +528,12 @@ decl_module!{
529528
#[weight = (100000, Operational, Pays::No)] //todo weight
530529
fn submit_proof_of_storage(origin, challenge_id: T::ChallengeId, proof: Proof ){
531530
let user_address = ensure_signed(origin)?;
532-
if let Some(challenge) = <GetChallengeByID<T>>::get(&challenge_id){
531+
if let Some(challenge) = <GetChallengeByID<T>>::get(challenge_id.clone()){
532+
if Self::validate_proof(proof, challenge){
533+
Self::deposit_event(RawEvent::ProofOfStorageConfirmed(challenge_id.clone()));
534+
} else {
535+
Self::deposit_event(RawEvent::ProofOfStorageFailed(challenge_id.clone()));
536+
}
533537
/*
534538
const challenge = DB.challenges[challengeID - 1]
535539
const isValid = validateProof(proof, challenge)
@@ -541,6 +545,8 @@ decl_module!{
541545
// emit events
542546
handlers.forEach(handler => handler([proofValidation]))
543547
*/
548+
} else {
549+
// TODO invalid challenge
544550
}
545551
}
546552

@@ -627,6 +633,11 @@ impl<T: Trait> Module<T> {
627633
ranges.iter().map(|x|x.0).collect()
628634
}
629635

636+
fn validate_proof(proof: Proof, challenge: Challenge<T>) -> bool {
637+
//TODO validate proof!
638+
true
639+
}
640+
630641
//borrowing from society pallet ---
631642
fn pick_usize<'a, R: RngCore>(rng: &mut R, max: usize) -> usize {
632643

0 commit comments

Comments
 (0)