aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-01-26 08:40:49 -0800
committerAdam Soltys <[email protected]>2026-01-26 08:40:49 -0800
commit79dec0747646ebe530fa139e73d7653feb2fe331 (patch)
treee0c2a962c2f26e9da421fe4fd5853731cc3e58b5
parentd147e04d1b52f1359507a6f9d88e0227cf6bb250 (diff)
downloadcoinos-server-79dec0747646ebe530fa139e73d7653feb2fe331.tar.gz
coinos-server-79dec0747646ebe530fa139e73d7653feb2fe331.zip
captcha bypass whitelist
-rw-r--r--routes/users.ts23
1 files changed, 13 insertions, 10 deletions
diff --git a/routes/users.ts b/routes/users.ts
index 8cb24870..c5fd0c39 100644
--- a/routes/users.ts
+++ b/routes/users.ts
@@ -36,6 +36,9 @@ const verifyRecaptcha = async (response, req?) => {
return true;
}
+ const { username } = req.body;
+ if (await db.sIsMember("nocaptcha", username)) return true;
+
if (!response) return false;
try {
@@ -641,22 +644,22 @@ export default {
user: u,
} = req;
try {
- const admin = u?.admin;
- let id;
- let user;
+ const admin = u?.admin;
+ let id;
+ let user;
if (u.username !== config.admin) fail("disabled");
id = await g(`user:${username.toLowerCase().replace(/\s/g, "")}`);
user = await g(`user:${id}`);
- if (!user) fail("user not found");
+ if (!user) fail("user not found");
- warn(
- "password reset",
- user.username,
- code,
- req.headers["cf-connecting-ip"],
- );
+ warn(
+ "password reset",
+ user.username,
+ code,
+ req.headers["cf-connecting-ip"],
+ );
user.pin = null;
user.nsec = null;