- **status**: review --> fixed
- **Comment**:

[staging:6edee7]
[staging:44a11d]
[staging:73cd02]
[staging:6c2242]


changeset:   5904:6c2242f702a8
tag:         tip
parent:      5900:6a2f24cf65d8
user:        Neelakanta Reddy <[email protected]>
date:        Mon Sep 22 18:08:15 2014 +0530
summary:     imm:fix memory leaks in finalizeSync [#1085]

changeset:   5903:73cd02a6b98a
branch:      opensaf-4.5.x
parent:      5899:406fc43e20c3
user:        Neelakanta Reddy <[email protected]>
date:        Mon Sep 22 18:08:15 2014 +0530
summary:     imm:fix memory leaks in finalizeSync [#1085]

changeset:   5902:44a11d4113f4
branch:      opensaf-4.4.x
parent:      5894:cb6559b47125
user:        Neelakanta Reddy <[email protected]>
date:        Mon Sep 22 18:08:15 2014 +0530
summary:     imm:fix memory leaks in finalizeSync [#1085]

changeset:   5901:6edee73b61ea
branch:      opensaf-4.3.x
parent:      5890:de1deaac6a51
user:        Neelakanta Reddy <[email protected]>
date:        Mon Sep 22 18:08:15 2014 +0530
summary:     imm:fix memory leaks in finalizeSync [#1085]




---

** [tickets:#1085] imm: memory leak in finalizeSync**

**Status:** fixed
**Milestone:** 4.3.3
**Created:** Mon Sep 15, 2014 02:03 PM UTC by Zoran Milinkovic
**Last Updated:** Mon Sep 22, 2014 11:22 AM UTC
**Owner:** Neelakanta Reddy

In ImmModel::finalize Sync, memory is not deleted for CcbInfo and 
AdminOwnerInfo structs, if errors happen in the same block.

For AdminOwnerInfo:

                AdminOwnerInfo* info = new AdminOwnerInfo;

                ...

                if((info->mDying) && (!(info->mReleaseOnFinalize))) {
                    LOG_ER("finalizeSync client: Admo is dying yet 
releaseOnFinalize is false");
                    err = SA_AIS_ERR_FAILED_OPERATION;
                    goto done; 
                }

                ...

                    if(oi == sObjectMap.end()) {
                        LOG_ER("Sync client failed to locate object: "
                            "%s, will restart.", objectName.c_str());
                        err = SA_AIS_ERR_FAILED_OPERATION;
                        goto done; 
                    }     

For CcbInfo:

                CcbInfo* newCcb = new CcbInfo;

                ...

                if(newCcb->mWaitStartTime <= ((time_t) 0)) {
                    LOG_ER("newCcb->mWaitStartTime <= 0");
                    err = SA_AIS_ERR_FAILED_OPERATION;
                    goto done;
                }

                ...

                if((newCcb->isActive())) {
                    LOG_ER("Can not sync Ccb that is active");
                    err = SA_AIS_ERR_FAILED_OPERATION;
                    goto done;
                }



---

Sent from sourceforge.net because [email protected] is 
subscribed to https://sourceforge.net/p/opensaf/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/opensaf/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-tickets mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets

Reply via email to