diff options
Diffstat (limited to 'server/middlewares/validators/activitypub/activity.ts')
-rw-r--r-- | server/middlewares/validators/activitypub/activity.ts | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/server/middlewares/validators/activitypub/activity.ts b/server/middlewares/validators/activitypub/activity.ts index 7350be5d5..255d8eb17 100644 --- a/server/middlewares/validators/activitypub/activity.ts +++ b/server/middlewares/validators/activitypub/activity.ts | |||
@@ -2,20 +2,23 @@ import * as express from 'express' | |||
2 | import { isRootActivityValid } from '../../../helpers/custom-validators/activitypub/activity' | 2 | import { isRootActivityValid } from '../../../helpers/custom-validators/activitypub/activity' |
3 | import { logger } from '../../../helpers/logger' | 3 | import { logger } from '../../../helpers/logger' |
4 | import { getServerActor } from '@server/models/application/application' | 4 | import { getServerActor } from '@server/models/application/application' |
5 | import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes' | ||
5 | 6 | ||
6 | async function activityPubValidator (req: express.Request, res: express.Response, next: express.NextFunction) { | 7 | async function activityPubValidator (req: express.Request, res: express.Response, next: express.NextFunction) { |
7 | logger.debug('Checking activity pub parameters') | 8 | logger.debug('Checking activity pub parameters') |
8 | 9 | ||
9 | if (!isRootActivityValid(req.body)) { | 10 | if (!isRootActivityValid(req.body)) { |
10 | logger.warn('Incorrect activity parameters.', { activity: req.body }) | 11 | logger.warn('Incorrect activity parameters.', { activity: req.body }) |
11 | return res.status(400).json({ error: 'Incorrect activity.' }) | 12 | return res.status(HttpStatusCode.BAD_REQUEST_400) |
13 | .json({ error: 'Incorrect activity.' }) | ||
12 | } | 14 | } |
13 | 15 | ||
14 | const serverActor = await getServerActor() | 16 | const serverActor = await getServerActor() |
15 | const remoteActor = res.locals.signature.actor | 17 | const remoteActor = res.locals.signature.actor |
16 | if (serverActor.id === remoteActor.id) { | 18 | if (serverActor.id === remoteActor.id) { |
17 | logger.error('Receiving request in INBOX by ourselves!', req.body) | 19 | logger.error('Receiving request in INBOX by ourselves!', req.body) |
18 | return res.status(409).end() | 20 | return res.status(HttpStatusCode.CONFLICT_409) |
21 | .end() | ||
19 | } | 22 | } |
20 | 23 | ||
21 | return next() | 24 | return next() |