Closed
Bug 3217
Opened 26 years ago
Closed 25 years ago
RX: CAPS
Categories
(Core :: Security: CAPS, defect, P2)
Tracking
()
RESOLVED
FIXED
M11
People
(Reporter: chofmann, Assigned: norrisboyd)
Details
Probably need to address these to both raman and sudu
Please have a look at the file(s) below to see if we can improve reentrantcy
across
the code base by making modifications to:
caps/include/nsCCapsManagerFactory.h: static nsIFactory *m_pNSIFactory;
caps/include/nsPrivilege.h: static PRBool theInited;
caps/include/nsPrivilegeManager.h: static PRBool theSecurityInited;
caps/include/nsPrivilegeManager.h: static char * SignedAppletDBName;
caps/include/nsPrivilegeManager.h: static PRBool theInited;
caps/include/nsTarget.h: static PRBool theInited;
Reporter | ||
Comment 1•26 years ago
|
||
RX tasks aren't going to make M3.
close the reentrantcy tracking tasks if this specific area has been looked at
and doesn't seem to be a problem. Otherwise each of these areas
still need some looking at.
Reporter | ||
Comment 2•26 years ago
|
||
moving to m5. raman can you have a look at these files and
see if they can be cleaned up to comply with the reentrancy
goals...
A reentrant function f is a nested function (not a leaf; it calls other
functions)
that may be reentered (indirect recursion) from under any other function g()
that it calls.
Therefore f must avoid sampling a static or global variable and holding it
across such a call to g(),
if the recursive f called from g could modify the static and vary conditions
that f believes are invariant.
We believe much of our non-static/global data is partitioned by window,
not reachable by other windows except through statics/globals.
Therefore we're starting the hunt with statics and globals.
Please have a look at the file(s) below to see if we can improve reentrantcy
across
the code base by making modifications to:
Reporter | ||
Updated•26 years ago
|
Target Milestone: M4 → M5
I apolosize for not taking a look at any of the CAPS related bugs (I have been
swamped with pushing the netcenter products out. I am close to shipping my 2nd
product out and one more product to go. I am on the hook here until the last guy
is out. I really apolosize for not being able to look at CAPS stuff).
I will try to do a pull and build of mozilla this week end. If someone already
has a tree, I could come over and knock these problems off within couple of
hours. I would really appreciate that.
thanks very much,
raman
Reporter | ||
Updated•26 years ago
|
QA Contact: 1680
Reporter | ||
Updated•26 years ago
|
Target Milestone: M5 → M6
Reporter | ||
Comment 4•26 years ago
|
||
raman, any update on this and other CAPPs work?
I think we are going to need CAPPs support
in one of the upcoming milestones
Reporter | ||
Comment 5•26 years ago
|
||
raman, any update on this and other CAPPs work?
I think we are going to need CAPPs support
in one of the upcoming milestones
Reporter | ||
Updated•26 years ago
|
Assignee: raman → norris
Status: ASSIGNED → NEW
Target Milestone: M6 → M7
Reporter | ||
Comment 6•26 years ago
|
||
moving to norris, and taking off the m6 list
Assignee | ||
Updated•26 years ago
|
Status: NEW → ASSIGNED
Summary: RX: CAPPS → RX: CAPS
Target Milestone: M7 → M13
Assignee | ||
Comment 7•26 years ago
|
||
Accepting bug and changing target milestone based upon current schedule rollup.
Assignee | ||
Updated•26 years ago
|
Assignee: norris → arielb
Status: ASSIGNED → NEW
OK, i've been reading over the comments and i'm not quite sure i understand the overall impact of reentrant functions though i
think i get the idea. in terms of the state of the statics listed below here is a short status update.
caps/include/nsCCapsManagerFactory.h: static nsIFactory *m_pNSIFactory;
--- this file doesn't exist anymore so neither does this static var
caps/include/nsPrivilege.h: static PRBool theInited;
--- this boolean has been removed, i'm not sure if it ever served a purpose.
caps/include/nsPrivilegeManager.h: static PRBool theSecurityInited;
--- this static var no longer exists, with the new factory scheme, there exists a static method var
-- -in GetPrivilegeManager(), maybe you should check and see if that's kosher. i think it's alright.
caps/include/nsPrivilegeManager.h: static char * SignedAppletDBName;
---this one still exists, i'm not sure what it does so idon't what to get rid of it just yet, i'll take a look at
---this one soon
caps/include/nsPrivilegeManager.h: static PRBool theInited;
---gone
caps/include/nsTarget.h: static PRBool theInited;
---still there, haven't really gotten around to fixing up nsTarget API yet,
---improvements should be coming soon
Assignee | ||
Updated•26 years ago
|
Assignee: arielb → norris
Status: ASSIGNED → NEW
Assignee | ||
Updated•25 years ago
|
Status: NEW → ASSIGNED
Target Milestone: M13 → M11
Assignee | ||
Updated•25 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 9•25 years ago
|
||
Atthis point the only static variable in caps is
static nsScriptSecurityManager *ssecMan = NULL;
which is used to implement the singleton status of nsScriptSecurityManager.
jband said this was an acceptable use until the new glorious factory code is
done.
You need to log in
before you can comment on or make changes to this bug.
Description
•