diff options
Diffstat (limited to 'src/routers/scanner.py')
-rw-r--r-- | src/routers/scanner.py | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/routers/scanner.py b/src/routers/scanner.py index 645cd74..3296b83 100644 --- a/src/routers/scanner.py +++ b/src/routers/scanner.py @@ -20,18 +20,18 @@ async def scanner(uuid, data: Request, Authorize: AuthJWT = Depends()): status_code=400) if 'targets' in json_data: - if isinstance(json_data['targets'], str): + if isinstance(json_data['targets'], list): Scanner.comment(uuid, json_data['targets']) else: return JSONResponse(content={"status": "error", - "message": "Targets should be a string."}, + "message": "Targets should be a list."}, status_code=400) if 'scanner' in json_data: - if isinstance(json_data['comment'], str): + if isinstance(json_data['scanner'], dict): Scanner.comment(uuid, json_data['scanner']) else: return JSONResponse(content={"status": "error", - "message": "Scanner should be a string."}, + "message": "Scanner should be a dict."}, status_code=400) if 'comment' in json_data: if isinstance(json_data['comment'], str): @@ -50,18 +50,22 @@ async def scanner(uuid, data: Request, Authorize: AuthJWT = Depends()): return JSONResponse(content={"status": "error", "message": "Enabled should be boolean."}, status_code=400) + if Scanner.get(uuid=uuid): + Scanner.update(uuid, json_data) + else: + return JSONResponse(content={"status": "error", + "message": "Scanner don't exist."}, + status_code=400) + + return JSONResponse(content={"status": "success", + "message": "Scanner updated."}, + status_code=200) @router.get('/callhome/{uuid}') async def callhome(uuid, data: Request, Authorize: AuthJWT = Depends()): - Authorize.jwt_required() - - raw_jwt = Authorize.get_raw_jwt() - if 'user' not in raw_jwt or raw_jwt['user'] != "scanner": - return JSONResponse(content={"status": "error", - "message": "Invalid token type."}, - status_code=400) + Authorize.jwt_required() try: UUID(uuid).version |