From be87e3214e4977fc7e34f161dd6223d60ff0baea Mon Sep 17 00:00:00 2001 From: Kelven Yang Date: Mon, 28 Nov 2011 11:28:28 -0800 Subject: [PATCH] bug 12175 : perform data validation before queuing/executing command --- .../com/cloud/api/commands/DeleteRemoteAccessVpnCmd.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/api/src/com/cloud/api/commands/DeleteRemoteAccessVpnCmd.java b/api/src/com/cloud/api/commands/DeleteRemoteAccessVpnCmd.java index 582da4f03f8..aa20155680c 100644 --- a/api/src/com/cloud/api/commands/DeleteRemoteAccessVpnCmd.java +++ b/api/src/com/cloud/api/commands/DeleteRemoteAccessVpnCmd.java @@ -27,6 +27,7 @@ import com.cloud.api.Implementation; import com.cloud.api.Parameter; import com.cloud.api.response.SuccessResponse; import com.cloud.event.EventTypes; +import com.cloud.exception.InvalidParameterValueException; import com.cloud.exception.ResourceUnavailableException; import com.cloud.network.RemoteAccessVpn; @@ -63,7 +64,11 @@ public class DeleteRemoteAccessVpnCmd extends BaseAsyncCmd { @Override public long getEntityOwnerId() { if (ownerId == null) { - ownerId = _entityMgr.findById(RemoteAccessVpn.class, publicIpId).getAccountId(); + RemoteAccessVpn vpnEntity = _entityMgr.findById(RemoteAccessVpn.class, publicIpId); + if(vpnEntity != null) + return vpnEntity.getAccountId(); + + throw new InvalidParameterValueException("The specified public ip is not allocated to any account"); } return ownerId; }