Closed Bug 1088275 Opened 7 years ago Closed 4 years ago

nsSSLStatus is not threadsafe, despite claiming it is

Categories

(Core :: Security: PSM, defect, P2)

defect

Tracking

()

RESOLVED DUPLICATE of bug 698243

People

(Reporter: keeler, Unassigned)

Details

(Whiteboard: [psm-backlog])

nsSSLStatus.h has the following:

17 class nsSSLStatus MOZ_FINAL
18   : public nsISSLStatus
19   , public nsISerializable
20   , public nsIClassInfo
21 {
22 protected:
23   virtual ~nsSSLStatus();
24 public:
25   NS_DECL_THREADSAFE_ISUPPORTS

(note in particular line 25)
However, nsSSLStatus has no mechanisms that prevent data races.
I may be misinterpreting what NS_DECL_THREADSAFE_ISUPPORTS means, but from what I can see, nsSSLStatus objects can be accessed (and are accessed) on multiple threads. We should add a lock and maybe not make all of its members public so that we can't accidentally do the unsafe thing.
See bug 698243 and the other bugs about this. I think there are at least three different bugs about this topic.
Whiteboard: [psm-backlog]
Priority: -- → P2
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 698243
You need to log in before you can comment on or make changes to this bug.