in src/main/java/com/googlesource/gerrit/plugins/lfs/fs/LfsFsContentServlet.java [108:132]
private Optional<AnyLongObjectId> validateGetRequest(
HttpServletRequest req, HttpServletResponse rsp) throws IOException {
AnyLongObjectId obj = getObjectToTransfer(req, rsp);
if (obj == null) {
return Optional.empty();
}
if (repository.getSize(obj) == -1) {
sendError(
rsp,
HttpStatus.SC_NOT_FOUND,
MessageFormat.format(LfsServerText.get().objectNotFound, obj.getName()));
return Optional.empty();
}
if (!authorizer.verifyAuthInfo(req.getHeader(HDR_AUTHORIZATION), DOWNLOAD, obj)) {
sendError(
rsp,
HttpStatus.SC_UNAUTHORIZED,
MessageFormat.format(
LfsServerText.get().failedToCalcSignature, "Invalid authorization token"));
return Optional.empty();
}
return Optional.of(obj);
}