Merge "Multi-user - 1st major checkin"
This commit is contained in:
commit
a11edd8dc1
@ -41,6 +41,7 @@ public:
|
||||
|
||||
int getCallingPid();
|
||||
int getCallingUid();
|
||||
int getOrigCallingUid();
|
||||
|
||||
void setStrictModePolicy(int32_t policy);
|
||||
int32_t getStrictModePolicy() const;
|
||||
@ -116,6 +117,7 @@ private:
|
||||
status_t mLastError;
|
||||
pid_t mCallingPid;
|
||||
uid_t mCallingUid;
|
||||
uid_t mOrigCallingUid;
|
||||
int32_t mStrictModePolicy;
|
||||
int32_t mLastTransactionBinderFlags;
|
||||
};
|
||||
|
@ -371,6 +371,11 @@ int IPCThreadState::getCallingUid()
|
||||
return mCallingUid;
|
||||
}
|
||||
|
||||
int IPCThreadState::getOrigCallingUid()
|
||||
{
|
||||
return mOrigCallingUid;
|
||||
}
|
||||
|
||||
int64_t IPCThreadState::clearCallingIdentity()
|
||||
{
|
||||
int64_t token = ((int64_t)mCallingUid<<32) | mCallingPid;
|
||||
@ -641,6 +646,7 @@ IPCThreadState::IPCThreadState()
|
||||
{
|
||||
pthread_setspecific(gTLS, this);
|
||||
clearCaller();
|
||||
mOrigCallingUid = mCallingUid;
|
||||
mIn.setDataCapacity(256);
|
||||
mOut.setDataCapacity(256);
|
||||
}
|
||||
@ -987,6 +993,7 @@ status_t IPCThreadState::executeCommand(int32_t cmd)
|
||||
|
||||
mCallingPid = tr.sender_pid;
|
||||
mCallingUid = tr.sender_euid;
|
||||
mOrigCallingUid = tr.sender_euid;
|
||||
|
||||
int curPrio = getpriority(PRIO_PROCESS, mMyThreadId);
|
||||
if (gDisableBackgroundScheduling) {
|
||||
@ -1045,6 +1052,7 @@ status_t IPCThreadState::executeCommand(int32_t cmd)
|
||||
|
||||
mCallingPid = origPid;
|
||||
mCallingUid = origUid;
|
||||
mOrigCallingUid = origUid;
|
||||
|
||||
IF_LOG_TRANSACTIONS() {
|
||||
TextOutput::Bundle _b(alog);
|
||||
|
Loading…
Reference in New Issue
Block a user