Hi,
        Can you please review this, need to push it soon.

Thanks
-Nagu

> -----Original Message-----
> From: Nagendra Kumar
> Sent: 26 August 2015 10:51
> To: hans.nordeb...@ericsson.com; Praveen Malviya
> Cc: opensaf-devel@lists.sourceforge.net
> Subject: [devel] [PATCH 1 of 1] amfa: return NOT_SUPPORTED for
> PM_ABNORMAL_END [#181]
> 
>  osaf/libs/agents/saf/amfa/ava_api.c |  28 ++++++++++++++++++++++------
>  1 files changed, 22 insertions(+), 6 deletions(-)
> 
> 
> Amf is returning SA_AIS_ERR_INVALID_PARAM for
> SA_AMF_PM_ABNORMAL_END and its combination with other
> SaAmfPmErrorsT flags. This is incorrect behaviour because
> SA_AMF_PM_ABNORMAL_END and its combination with other
> SaAmfPmErrorsT flags are valid input to APIs saAmfPmStart and
> saAmfPmStop.
> Since these combinations feature is not supported in Amf as of now, so, Amf
> should return SA_AIS_ERR_NOT_SUPPORTED for such combinations.
> The fix provides the same.
> 
> diff --git a/osaf/libs/agents/saf/amfa/ava_api.c
> b/osaf/libs/agents/saf/amfa/ava_api.c
> --- a/osaf/libs/agents/saf/amfa/ava_api.c
> +++ b/osaf/libs/agents/saf/amfa/ava_api.c
> @@ -953,9 +953,17 @@ SaAisErrorT saAmfPmStart(SaAmfHandleT hd
> 
>       /* input validation of pmError */
>       if (pmErr != SA_AMF_PM_NON_ZERO_EXIT && pmErr !=
> SA_AMF_PM_ZERO_EXIT &&
> -         pmErr != (SA_AMF_PM_NON_ZERO_EXIT |
> SA_AMF_PM_ZERO_EXIT)) {
> -             TRACE_LEAVE2("Incorrect argument specified for
> SaAmfPmErrorsT ");
> -             return SA_AIS_ERR_INVALID_PARAM;
> +                     pmErr != (SA_AMF_PM_NON_ZERO_EXIT |
> SA_AMF_PM_ZERO_EXIT)) {
> +             if ((pmErr == SA_AMF_PM_ABNORMAL_END) ||
> +                             (pmErr == (SA_AMF_PM_NON_ZERO_EXIT |
> SA_AMF_PM_ABNORMAL_END)) ||
> +                             (pmErr == (SA_AMF_PM_ZERO_EXIT |
> SA_AMF_PM_ABNORMAL_END)) ||
> +                             (pmErr == (SA_AMF_PM_ZERO_EXIT |
> SA_AMF_PM_NON_ZERO_EXIT | SA_AMF_PM_ABNORMAL_END))) {
> +                     TRACE_LEAVE2("Unsupported argument specified for
> SaAmfPmErrorsT ");
> +                     return SA_AIS_ERR_NOT_SUPPORTED;
> +             } else {
> +                     TRACE_LEAVE2("Incorrect argument specified for
> SaAmfPmErrorsT ");
> +                     return SA_AIS_ERR_INVALID_PARAM;
> +             }
>       }
> 
>       /* input validation of Recomended recovery */ @@ -1064,9 +1072,17
> @@ SaAisErrorT saAmfPmStop(SaAmfHandleT hdl
> 
>       /* input validation of pmError */
>       if (pmErr != SA_AMF_PM_NON_ZERO_EXIT && pmErr !=
> SA_AMF_PM_ZERO_EXIT &&
> -         pmErr != (SA_AMF_PM_NON_ZERO_EXIT |
> SA_AMF_PM_ZERO_EXIT)) {
> -             TRACE_LEAVE2("Incorrect argument specified for
> SaAmfPmErrorsT");
> -             return SA_AIS_ERR_INVALID_PARAM;
> +                     pmErr != (SA_AMF_PM_NON_ZERO_EXIT |
> SA_AMF_PM_ZERO_EXIT)) {
> +             if ((pmErr == SA_AMF_PM_ABNORMAL_END) ||
> +                             (pmErr == (SA_AMF_PM_NON_ZERO_EXIT |
> SA_AMF_PM_ABNORMAL_END)) ||
> +                             (pmErr == (SA_AMF_PM_ZERO_EXIT |
> SA_AMF_PM_ABNORMAL_END)) ||
> +                             (pmErr == (SA_AMF_PM_ZERO_EXIT |
> SA_AMF_PM_NON_ZERO_EXIT | SA_AMF_PM_ABNORMAL_END))) {
> +                     TRACE_LEAVE2("Unsupported argument specified for
> SaAmfPmErrorsT ");
> +                     return SA_AIS_ERR_NOT_SUPPORTED;
> +             } else {
> +                     TRACE_LEAVE2("Incorrect argument specified for
> SaAmfPmErrorsT");
> +                     return SA_AIS_ERR_INVALID_PARAM;
> +             }
>       }
> 
>       /* input validation of Process ID */
> 
> ------------------------------------------------------------------------------
> _______________________________________________
> Opensaf-devel mailing list
> Opensaf-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/opensaf-devel

------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to