osaf/services/saf/smfsv/smfd/SmfUpgradeStep.cc |  11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)


If the SU attribute saAmfSUMaintenanceCampaign is, set the executing campaign 
check that it contain the DN of the current campaign.
Witout this patch the values are judged equal if the "first" value was a 
substring of the "second".

diff --git a/osaf/services/saf/smfsv/smfd/SmfUpgradeStep.cc 
b/osaf/services/saf/smfsv/smfd/SmfUpgradeStep.cc
--- a/osaf/services/saf/smfsv/smfd/SmfUpgradeStep.cc
+++ b/osaf/services/saf/smfsv/smfd/SmfUpgradeStep.cc
@@ -904,11 +904,12 @@ SmfUpgradeStep::setMaintenanceState(SmfA
                                                                                
0);
                //If a value is set, this shall be the current campaign DN
                if(saAmfSUMaintenanceCampaign != NULL) {
-                       if(strncmp((char *)saAmfSUMaintenanceCampaign->value, 
campDn.c_str(), saAmfSUMaintenanceCampaign->length) != 0){ //Exist, but no match
-                               LOG_NO("saAmfSUMaintenanceCampaign already set 
to unknown campaign dn = %s", (char *)saAmfSUMaintenanceCampaign->value);
-                               rc = false;
-                               goto exit;
-                       }
+                        if((saAmfSUMaintenanceCampaign->length != 
campDn.length()) || 
+                           (strncmp((char *)saAmfSUMaintenanceCampaign->value, 
campDn.c_str(), saAmfSUMaintenanceCampaign->length) != 0)){ //Exist, but no 
match
+                                   LOG_NO("saAmfSUMaintenanceCampaign already 
set to unknown campaign dn = %s", (char *)saAmfSUMaintenanceCampaign->value);
+                                   rc = false;
+                                   goto exit;
+                           }
                } else {
                        SmfImmModifyOperation *modop = new (std::nothrow) 
SmfImmModifyOperation;
                        osafassert(modop != 0);

------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to