From 877c126ba338516b8dae4364e0f0b041733cfcba Mon Sep 17 00:00:00 2001 From: catbref Date: Mon, 17 Jun 2019 09:15:37 +0100 Subject: [PATCH] Don't allow incorrect/null ARBITRARY dataType when building transactions via API's POST /arbitrary call. --- src/main/java/org/qora/api/resource/ArbitraryResource.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/qora/api/resource/ArbitraryResource.java b/src/main/java/org/qora/api/resource/ArbitraryResource.java index 57d4417d..d4c03deb 100644 --- a/src/main/java/org/qora/api/resource/ArbitraryResource.java +++ b/src/main/java/org/qora/api/resource/ArbitraryResource.java @@ -185,11 +185,14 @@ public class ArbitraryResource { ) } ) - @ApiErrors({ApiError.NON_PRODUCTION, ApiError.TRANSACTION_INVALID, ApiError.TRANSFORMATION_ERROR, ApiError.REPOSITORY_ISSUE}) + @ApiErrors({ApiError.NON_PRODUCTION, ApiError.INVALID_DATA, ApiError.TRANSACTION_INVALID, ApiError.TRANSFORMATION_ERROR, ApiError.REPOSITORY_ISSUE}) public String createArbitrary(ArbitraryTransactionData transactionData) { if (Settings.getInstance().isApiRestricted()) throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.NON_PRODUCTION); + if (transactionData.getDataType() == null) + throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.INVALID_DATA); + try (final Repository repository = RepositoryManager.getRepository()) { Transaction transaction = Transaction.fromData(repository, transactionData);