osaf/libs/agents/saf/imma/imma_oi_api.c |  10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)


Do not revert isApplier and isPbe flag when timeout occurs.

diff --git a/osaf/libs/agents/saf/imma/imma_oi_api.c 
b/osaf/libs/agents/saf/imma/imma_oi_api.c
--- a/osaf/libs/agents/saf/imma/imma_oi_api.c
+++ b/osaf/libs/agents/saf/imma/imma_oi_api.c
@@ -1425,7 +1425,15 @@ SaAisErrorT saImmOiImplementerSet(SaImmO
                }
        }
 
-       if(rc != SA_AIS_OK && cl_node) { /* Revert any flags set 
optimistically. */
+       /* Revert any flags set optimistically.
+        *
+        * In case of SA_AIS_ERR_TIMEOUT, we don't revert the flag to prevent
+        * the library from crashing when receiving upcalls.
+        *
+        * cl_node->mImplementerId is not set in case of errors, so clients
+        * have to either finalize the handle or retry to set implementer.
+        */
+       if(rc != SA_AIS_OK && rc != SA_AIS_ERR_TIMEOUT && cl_node) {
                cl_node->isApplier = 0x0;
                cl_node->isPbe = 0x0;
        }

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to