diff options
author | Teddy Wing | 2018-11-10 15:00:45 +0100 |
---|---|---|
committer | Teddy Wing | 2018-11-10 15:00:45 +0100 |
commit | 8edf2808e1b2f11ecb5e395452886e98ce8acb18 (patch) | |
tree | e3c7729cfa655d32fa2ae12496480aeda450a8cc /license-generator/src/lib.rs | |
parent | d87ed40cd99f6c7dae019cc13b0a16db65d847e5 (diff) | |
download | dome-key-web-8edf2808e1b2f11ecb5e395452886e98ce8acb18.tar.bz2 |
Add a helper function to verify webhook requests
The new `request::verified()` takes POST params as a string as does all
the work needed to call `paddle::verify_signature()`.
This involves extracting the `p_signature` POST parameter to get the
signature, and getting the public key PEM.
Change `params::parse()` to return a
`BTreeMap<Cow<'a, str>, Cow<'a, str>>` instead of `String` keys &
values. This is because `paddle::verify_signature()` needs a `(<&str,
&str)` iterator. Actually, it still doesn't solve the problem because
the types don't match. We need to modify the input type of
`verify_signature()`, but at least this change gives us references.
Make `params` private to the crate because we no longer need to use it
in `main()`.
Diffstat (limited to 'license-generator/src/lib.rs')
-rw-r--r-- | license-generator/src/lib.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/license-generator/src/lib.rs b/license-generator/src/lib.rs index 64d96e9..bf3ed57 100644 --- a/license-generator/src/lib.rs +++ b/license-generator/src/lib.rs @@ -2,12 +2,15 @@ extern crate error_chain; extern crate log; extern crate mysql; +extern crate paddle; extern crate rand; extern crate sha1; extern crate url; +mod params; + pub mod database; pub mod errors; -pub mod params; pub mod purchaser; +pub mod request; |