Signed-off-by: Yevgeny Kliteynik <[email protected]>
---
opensm/opensm/osm_qos_parser_y.y | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/opensm/opensm/osm_qos_parser_y.y b/opensm/opensm/osm_qos_parser_y.y
index 7118b79..d9830dc 100644
--- a/opensm/opensm/osm_qos_parser_y.y
+++ b/opensm/opensm/osm_qos_parser_y.y
@@ -763,6 +763,7 @@ qos_ulp: TK_ULP_DEFAULT single_number {
if (range_arr[i][0] > 0xFFFF || range_arr[i][1] >
0xFFFF)
{
yyerror("SDP port number out of range");
+ free(range_arr);
return 1;
}
range_arr[i][0] +=
OSM_QOS_POLICY_ULP_SDP_SERVICE_ID;
@@ -809,6 +810,7 @@ qos_ulp: TK_ULP_DEFAULT single_number {
if (range_arr[i][0] > 0xFFFF || range_arr[i][1] >
0xFFFF)
{
yyerror("SDP port number out of range");
+ free(range_arr);
return 1;
}
range_arr[i][0] +=
OSM_QOS_POLICY_ULP_RDS_SERVICE_ID;
@@ -855,6 +857,7 @@ qos_ulp: TK_ULP_DEFAULT single_number {
if (range_arr[i][0] > 0xFFFF || range_arr[i][1] >
0xFFFF)
{
yyerror("SDP port number out of range");
+ free(range_arr);
return 1;
}
range_arr[i][0] +=
OSM_QOS_POLICY_ULP_ISER_SERVICE_ID;
@@ -944,8 +947,10 @@ qos_ulp: TK_ULP_DEFAULT single_number {
* If some problem would be found, parsing will
* be aborted with a proper error messages.
*/
- if (__validate_pkeys(range_arr, range_len, TRUE))
+ if (__validate_pkeys(range_arr, range_len, TRUE)) {
+ free(range_arr);
return 1;
+ }
p_current_qos_match_rule->pkey_range_arr = range_arr;
p_current_qos_match_rule->pkey_range_len = range_len;
--
1.6.2.4
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html