| Summary: | [dstore] Need to set proper uid for commands when using SecuredThread and single server for multiple clients | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Tools] Target Management | Reporter: | Violaine Batthish <batthish> | ||||||||||||
| Component: | RSE | Assignee: | David McKnight <dmcknigh> | ||||||||||||
| Status: | RESOLVED FIXED | QA Contact: | Martin Oberhuber <mober.at+eclipse> | ||||||||||||
| Severity: | normal | ||||||||||||||
| Priority: | P3 | CC: | ankitp, dmcknigh | ||||||||||||
| Version: | unspecified | ||||||||||||||
| Target Milestone: | 3.2 M6 | ||||||||||||||
| Hardware: | PC | ||||||||||||||
| OS: | Windows XP | ||||||||||||||
| Whiteboard: | |||||||||||||||
| Bug Depends on: | |||||||||||||||
| Bug Blocks: | 290843 | ||||||||||||||
| Attachments: |
|
||||||||||||||
|
Description
Violaine Batthish
So as discussed, a check in the CommandMinerThread needs to be made to see if the user for the client dstore matches that of the process. If not then su should be run.
Here is a sample file. It should be put into CommandMinerThread before the check for custom shell invocation.
// if the user id in the client doesn't match the user name of the process
// we should ensure that the shell is started with the correct user id
if (!_dataStore.getClient().getUserid().equals(_dataStore.getClient()
.getProperty("user.name")))
theShell = "su "+_dataStore.getClient()+" -c "+theShell;
This fix will be needed for 3.0.3+
Created attachment 148439 [details]
patch to support su when client id is different from actual id
Violaine, could you try this patch out?
Created attachment 149039 [details]
patch with update to handle bash shells better
Created attachment 149046 [details]
patch updated again
Created attachment 149052 [details]
patch update
Created attachment 149278 [details]
updated patch based on requirements for violaine
I've committed the patch to cvs. |