summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/i/2fa/register.ts
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-11-02 12:49:08 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-11-02 12:49:08 +0900
commita7e6b766be6b30b37839beb13f31d96b141cc25a (patch)
treeb6bf96ae808260f0aa94767835d59d25f7f889a7 /src/server/api/endpoints/i/2fa/register.ts
parentUpdate src/server/api/endpoints/meta.ts (diff)
downloadsharkey-a7e6b766be6b30b37839beb13f31d96b141cc25a.tar.gz
sharkey-a7e6b766be6b30b37839beb13f31d96b141cc25a.tar.bz2
sharkey-a7e6b766be6b30b37839beb13f31d96b141cc25a.zip
Resolve #2623
Diffstat (limited to 'src/server/api/endpoints/i/2fa/register.ts')
-rw-r--r--src/server/api/endpoints/i/2fa/register.ts17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/server/api/endpoints/i/2fa/register.ts b/src/server/api/endpoints/i/2fa/register.ts
index 0466a4f366..4d6b05b787 100644
--- a/src/server/api/endpoints/i/2fa/register.ts
+++ b/src/server/api/endpoints/i/2fa/register.ts
@@ -4,19 +4,26 @@ import * as speakeasy from 'speakeasy';
import * as QRCode from 'qrcode';
import User, { ILocalUser } from '../../../../../models/user';
import config from '../../../../../config';
+import getParams from '../../../get-params';
export const meta = {
requireCredential: true,
- secure: true
+
+ secure: true,
+
+ params: {
+ password: {
+ validator: $.str
+ }
+ }
};
export default async (params: any, user: ILocalUser) => new Promise(async (res, rej) => {
- // Get 'password' parameter
- const [password, passwordErr] = $.str.get(params.password);
- if (passwordErr) return rej('invalid password param');
+ const [ps, psErr] = getParams(meta, params);
+ if (psErr) return rej(psErr);
// Compare password
- const same = await bcrypt.compare(password, user.password);
+ const same = await bcrypt.compare(ps.password, user.password);
if (!same) {
return rej('incorrect password');