summaryrefslogtreecommitdiff
path: root/edk2/NetworkPkg
diff options
context:
space:
mode:
authortye1 <tye1@6f19259b-4bc3-4df7-8a09-765794883524>2012-04-12 09:54:59 +0000
committertye1 <tye1@6f19259b-4bc3-4df7-8a09-765794883524>2012-04-12 09:54:59 +0000
commitb9e0cc977be5e0a721ca96597d487472b25c5a34 (patch)
tree7005b5128bb53b9256b31641ca232405ef6e3297 /edk2/NetworkPkg
parente1e690bfc0f065d2a9bab0c895184c0926c0f105 (diff)
Removes irrelevant parameter during negotiation to avoid login fail.
Signed-off-by: Ye Ting<ting.ye@intel.com> Reviewed by: Ouyang, Qian <qian.ouyang@intel.com> Reviewed by: Tian, Feng<feng.tian@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk@13193 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'edk2/NetworkPkg')
-rw-r--r--edk2/NetworkPkg/IScsiDxe/IScsiProto.c10
-rw-r--r--edk2/NetworkPkg/IScsiDxe/IScsiProto.h6
2 files changed, 11 insertions, 5 deletions
diff --git a/edk2/NetworkPkg/IScsiDxe/IScsiProto.c b/edk2/NetworkPkg/IScsiDxe/IScsiProto.c
index acb7876ab..72c90a7fe 100644
--- a/edk2/NetworkPkg/IScsiDxe/IScsiProto.c
+++ b/edk2/NetworkPkg/IScsiDxe/IScsiProto.c
@@ -1291,7 +1291,7 @@ ON_EXIT:
/**
- Check and get the result of the prameter negotiation.
+ Check and get the result of the parameter negotiation.
@param[in, out] Conn The connection in iSCSI login.
@@ -1539,6 +1539,12 @@ IScsiCheckOpParams (
IScsiGetValueByKeyFromList (KeyValueList, ISCSI_KEY_DATA_PDU_IN_ORDER);
IScsiGetValueByKeyFromList (KeyValueList, ISCSI_KEY_DATA_SEQUENCE_IN_ORDER);
+ //
+ // Remove irrelevant parameter, if any.
+ //
+ if (Session->InitialR2T && !Session->ImmediateData) {
+ IScsiGetValueByKeyFromList (KeyValueList, ISCSI_KEY_FIRST_BURST_LENGTH);
+ }
if (IsListEmpty (KeyValueList)) {
//
@@ -1558,7 +1564,7 @@ ON_ERROR:
/**
- Fill the oprational parameters.
+ Fill the operational parameters.
@param[in] Conn The connection in iSCSI login.
@param[in, out] Pdu The iSCSI login request PDU to fill the parameters.
diff --git a/edk2/NetworkPkg/IScsiDxe/IScsiProto.h b/edk2/NetworkPkg/IScsiDxe/IScsiProto.h
index 80c62b765..d97fa083e 100644
--- a/edk2/NetworkPkg/IScsiDxe/IScsiProto.h
+++ b/edk2/NetworkPkg/IScsiDxe/IScsiProto.h
@@ -1,7 +1,7 @@
/** @file
The header file of iSCSI Protocol that defines many specific data structures.
-Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2004 - 2012, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -866,7 +866,7 @@ IScsiReceivePdu (
);
/**
- Check and get the result of the prameter negotiation.
+ Check and get the result of the parameter negotiation.
@param[in, out] Conn The connection in iSCSI login.
@@ -881,7 +881,7 @@ IScsiCheckOpParams (
);
/**
- Fill the oprational prameters.
+ Fill the operational parameters.
@param[in] Conn The connection in iSCSI login.
@param[in, out] Pdu The iSCSI login request PDU to fill the parameters.