Merge "Multi-user - 1st major checkin"

This commit is contained in:
Amith Yamasani 2012-02-03 12:04:40 -08:00 committed by Android (Google) Code Review
commit a11edd8dc1
2 changed files with 10 additions and 0 deletions

View File

@ -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;
};

View File

@ -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);