aboutsummaryrefslogtreecommitdiffstats
path: root/license-generator/src/request.rs
blob: 325fdec162bd916dfe051cae1d68fab600c7fcc0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use base64;
use paddle;

use errors::*;
use params;

pub fn verified(req_params: &str) -> Result<bool> {
    let mut p = params::parse(&req_params);
    let signature = p.remove("p_signature");
    let pem = include_bytes!("../private/paddle.pubkey.asc");

    match signature {
        Some(signature) => {
            let signature = base64::decode(signature.as_bytes())?;
            Ok(paddle::verify_signature(pem, &signature, p)?)
        },
        None => Ok(false),
    }
}