+\r
+\r
+/**\r
+ If the DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of PcdDebugProperyMask is clear, \r
+ then this macro return a pointer to a data structure ISCSI_FORM_CALLBACK_INFO.\r
+\r
+ If the DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED bit of PcdDebugProperyMask is set, \r
+ The Signature field of the data structure ISCSI_FORM_CALLBACK_INFO \r
+ is compared to TestSignature. If the signatures match, then a pointer \r
+ to the pointer to a data structure ISCSI_FORM_CALLBACK_INFO is returned. \r
+ If the signatures do not match, then DebugAssert() is called with a description \r
+ of "CR has a bad signature" and Callback is returned. \r
+\r
+ If the data type ISCSI_FORM_CALLBACK_INFO_SIGNATURE does not contain the field\r
+ specified by Callback, then the module will not compile.\r
+\r
+ If ISCSI_FORM_CALLBACK_INFO_SIGNATURE does not contain a field called Signature, \r
+ then the module will not compile.\r
+\r
+ @param Callback Pointer to the specified field within the data \r
+ structure ISCSI_FORM_CALLBACK_INFO.\r
+ @return a pointer to the pointer to a data structure ISCSI_FORM_CALLBACK_INFO.\r
+ @return Others Some unexpected error happened.\r
+**/\r
+\r