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