Bug 602530

Summary: coverity: op_shared_modify: compare pre, post and original entries before freeing them
Product: [Retired] 389 Reporter: Noriko Hosoi <nhosoi>
Component: Directory ServerAssignee: Rich Megginson <rmeggins>
Status: CLOSED CURRENTRELEASE QA Contact: Chandrasekar Kannan <ckannan>
Severity: medium Docs Contact:
Priority: medium    
Version: 1.2.6CC: benl, jgalipea
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
URL: http://10.16.47.145:8080/sourcebrowser.htm?projectId=10030#mergedDefectId=12272&streamDefectId=12458&defectInstanceId=14353&fileInstanceId=49048
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-05-17 14:08:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 576869, 639035    
Attachments:
Description Flags
0010-Bug-602530-coverity-op_shared_modify-compare-pr.patch nhosoi: review+

Description Noriko Hosoi 2010-06-10 04:00:30 UTC
Description of problem:
12272 USE_AFTER_FREE Triaged Bug Minor Fix Required op_shared_modify()
file: ds/ldap/servers/slapd/modify.c

Status:  	New  	→  	Triaged
Classification: 	Unclassified 	→ 	Bug
Action: 	Undecided 	→ 	Fix Required
Severity: 	Unspecified 	→ 	Minor

Comment:
SLAPI_ENTRY_PRE_OP and SLAPI_ENTRY_POST_OP are always duplicated in ldbm_back_modify so there is no way these could ever point to the same value. However, we should protect ourselves against problems in the future by using different variables for pre and post entry, and comparing them (and compare to 'e' also?) before doing the free.

Comment 2 Rich Megginson 2010-06-30 21:50:13 UTC
Created attachment 428120 [details]
0010-Bug-602530-coverity-op_shared_modify-compare-pr.patch

Comment 3 Rich Megginson 2010-07-06 16:32:17 UTC
To ssh://git.fedorahosted.org/git/389/ds.git
   e4ca30c..830d55e  master -> master
commit 830d55e8cc9d4a69f099b1c0ee00a93817c8fabb
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 14:51:18 2010 -0600
commit a9a5a5d9fe0801988f51a77b4b11029349f67c10
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 14:40:34 2010 -0600
commit 8401a419da225ade87aa6f36f4b35bafce629c8a
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 14:35:16 2010 -0600
commit 138daaa4b171b770e0372c19fb5f656309eea4b1
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 14:18:36 2010 -0600
commit d76bdddeb292b1d71e5d7b1dcdcd985d39025a15
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 14:15:37 2010 -0600
commit c1a89263495c933673f8b977f6c202f34e65b293
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 14:08:55 2010 -0600
commit fc16d51c7349b07a405085fd80548a6d0aaf31e8
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 13:28:39 2010 -0600
commit 6098df0ea1aec1c25334b4229fe196ca02c0fc26
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 11:37:34 2010 -0600
commit 858f45f80fa73367bc5cf18b3dd29e3129fbe70c
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 11:23:33 2010 -0600
commit 4739bf587db66c9d8ceabd446dabbe03bc3a0664
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 10:52:05 2010 -0600
commit fabd35294d0159ca840b019b6108df2eb759fea3
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 10:46:52 2010 -0600
commit 99fa0c1363c32a2e3352c07be4b5aae751018d23
Author: Rich Megginson <rmeggins>
Date:   Wed Jun 30 10:43:20 2010 -0600