From 6cb0efc1abeccd8f6a9c7ca7f209ff22c42341bd Mon Sep 17 00:00:00 2001 From: kaotisk Date: Fri, 1 Mar 2024 02:47:10 +0200 Subject: Renamed functions and routes receive* -> announce* szbk -> /v0/announce/zblock szch -> /v0/announce/zchain --- api/routes/announceZChain/index.js | 49 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 api/routes/announceZChain/index.js (limited to 'api/routes/announceZChain/index.js') diff --git a/api/routes/announceZChain/index.js b/api/routes/announceZChain/index.js new file mode 100644 index 0000000..092b6a9 --- /dev/null +++ b/api/routes/announceZChain/index.js @@ -0,0 +1,49 @@ +/* + * After NS validation went through we examine the return code + * of the application that run the test. + * + * Returns: + * - error on failure + * - on success we process with addNSEntriesToFile() + * + */ +function continuethingsNS(validitycode,sh,res,gotit){ + if (validitycode === 0){ + var entry = { + zchain: sh, + latest: JSON.parse(gotit).Path.replace('/ipfs/','') + }; + addNSEntriesToFile(entry,res); + } else { + res.send({error:"Invalid data"}); + } +} +/* + * Accepts a zchain + * + * Checks: + * 1. Exists, + * 2. Length is 62 bytes, + * 3. Matches regular expression /k51qzi5uqu5d[A-Za-z0-9]{50}/ + * + * Returns: + * - error on failure + * - on success the string is processed for further validation to the + * function getNSvalidity() + * + */ +const getNSvalidity = require('../../validators/ZchainValidator') + +module.exports = (req, res) => { + console.log(req); + if ( (req.body.zchain) && req.body.zchain.length === 62 ){//&& req.body.block_signature.length === 46){ + regex= /k51qzi5uqu5d[A-Za-z0-9]{50}/ + if (regex.test(req.body.zchain)){ // && regex.test(req.body.block_signature)){ + getNSvalidity(req.body.zchain,res); + } else { + res.send({error:"Invalid data"}); + } + } else { + res.send({error:"Invalid data"}); + } +} -- cgit v1.2.3