Liron Ar has uploaded a new change for review. Change subject: core: RetrieveImageData - validate received response ......................................................................
core: RetrieveImageData - validate received response After recieving OK response validate that the received size specified in the header and the size of the data match the requested size. Change-Id: I8f27ad8349ad9c8f1e44a204a4c5bc31f9ae5c7a Signed-off-by: Liron Aravot <[email protected]> --- M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/RetrieveImageDataVDSCommand.java 1 file changed, 7 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/09/28809/1 diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/RetrieveImageDataVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/RetrieveImageDataVDSCommand.java index 81adb41..5beaf28 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/RetrieveImageDataVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/RetrieveImageDataVDSCommand.java @@ -4,6 +4,7 @@ import org.apache.commons.httpclient.methods.GetMethod; import org.ovirt.engine.core.common.asynctasks.AsyncTaskType; import org.ovirt.engine.core.common.config.ConfigValues; +import org.ovirt.engine.core.common.errors.VdcBllErrors; import org.ovirt.engine.core.common.vdscommands.ImageHttpAccessVDSCommandParameters; public class RetrieveImageDataVDSCommand<P extends ImageHttpAccessVDSCommandParameters> extends HttpImageTaskVDSCommand<GetMethod, P> { @@ -18,6 +19,8 @@ @Override protected void handleOkResponse() { + processResponseHeaderValue(getMethod(), "Content-Length", getParameters().getSize().toString()); + byte[] data; try { data = getMethod().getResponseBody(); @@ -25,6 +28,10 @@ throw createNetworkException(e); } + if (data.length != getParameters().getSize()) { + throwVdsErrorException("received downloaded data size is wrong", VdcBllErrors.GeneralException); + } + getVDSReturnValue().setReturnValue(data); } -- To view, visit http://gerrit.ovirt.org/28809 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I8f27ad8349ad9c8f1e44a204a4c5bc31f9ae5c7a Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Liron Ar <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
