Lines Matching refs:uid

155 bool SetProcessProfiles(uid_t uid, pid_t pid, const std::vector<std::string>& profiles) {  in SetProcessProfiles()  argument
157 uid, pid, std::span<const std::string>(profiles), false); in SetProcessProfiles()
160 bool SetProcessProfiles(uid_t uid, pid_t pid, std::initializer_list<std::string_view> profiles) { in SetProcessProfiles() argument
162 uid, pid, std::span<const std::string_view>(profiles), false); in SetProcessProfiles()
165 bool SetProcessProfiles(uid_t uid, pid_t pid, std::span<const std::string_view> profiles) { in SetProcessProfiles() argument
166 return TaskProfiles::GetInstance().SetProcessProfiles(uid, pid, profiles, false); in SetProcessProfiles()
169 bool SetProcessProfilesCached(uid_t uid, pid_t pid, const std::vector<std::string>& profiles) { in SetProcessProfilesCached() argument
171 uid, pid, std::span<const std::string>(profiles), true); in SetProcessProfilesCached()
193 extern "C" bool android_set_process_profiles(uid_t uid, pid_t pid, size_t num_profiles, in android_set_process_profiles() argument
200 return SetProcessProfiles(uid, pid, std::span<const std::string_view>(profiles_)); in android_set_process_profiles()
203 bool SetUserProfiles(uid_t uid, const std::vector<std::string>& profiles) { in SetUserProfiles() argument
204 return TaskProfiles::GetInstance().SetUserProfiles(uid, std::span<const std::string>(profiles), in SetUserProfiles()
208 static std::string ConvertUidToPath(const char* cgroup, uid_t uid) { in ConvertUidToPath() argument
209 return StringPrintf("%s/uid_%d", cgroup, uid); in ConvertUidToPath()
212 static std::string ConvertUidPidToPath(const char* cgroup, uid_t uid, int pid) { in ConvertUidPidToPath() argument
213 return StringPrintf("%s/uid_%d/pid_%d", cgroup, uid, pid); in ConvertUidPidToPath()
216 static int RemoveProcessGroup(const char* cgroup, uid_t uid, int pid, unsigned int retries) { in RemoveProcessGroup() argument
218 auto uid_pid_path = ConvertUidPidToPath(cgroup, uid, pid); in RemoveProcessGroup()
219 auto uid_path = ConvertUidToPath(cgroup, uid); in RemoveProcessGroup()
231 std::unique_ptr<DIR, decltype(&closedir)> uid(opendir(uid_path.c_str()), closedir); in RemoveUidProcessGroups() local
233 if (uid != NULL) { in RemoveUidProcessGroups()
235 while ((dir = readdir(uid.get())) != nullptr) { in RemoveUidProcessGroups()
327 static bool MkdirAndChown(const std::string& path, mode_t mode, uid_t uid, gid_t gid) { in MkdirAndChown() argument
351 if (lchown(file_path.c_str(), uid, gid) < 0) { in MkdirAndChown()
374 static int DoKillProcessGroupOnce(const char* cgroup, uid_t uid, int initialPid, int signal) { in DoKillProcessGroupOnce() argument
385 auto path = ConvertUidPidToPath(cgroup, uid, initialPid) + PROCESSGROUP_CGROUP_PROCS_FILE; in DoKillProcessGroupOnce()
392 PLOG(WARNING) << __func__ << " failed to open process cgroup uid " << uid << " pid " in DoKillProcessGroupOnce()
431 LOG(VERBOSE) << "Killing process group " << -pgid << " in uid " << uid in DoKillProcessGroupOnce()
441 LOG(VERBOSE) << "Killing pid " << pid << " in uid " << uid << " as part of process cgroup " in DoKillProcessGroupOnce()
452 static int KillProcessGroup(uid_t uid, int initialPid, int signal, int retries, in KillProcessGroup() argument
454 CHECK_GE(uid, 0); in KillProcessGroup()
471 while ((processes = DoKillProcessGroupOnce(cgroup, uid, initialPid, signal)) > 0) { in KillProcessGroup()
490 PLOG(ERROR) << "Error encountered killing process cgroup uid " << uid << " pid " in KillProcessGroup()
506 LOG(INFO) << "Successfully killed process cgroup uid " << uid << " pid " << initialPid in KillProcessGroup()
516 int err = RemoveProcessGroup(cgroup, uid, initialPid, 400); in KillProcessGroup()
521 RemoveProcessGroup(memcg_apps_path.c_str(), uid, initialPid, 400) < 0) { in KillProcessGroup()
529 LOG(ERROR) << "Failed to kill process cgroup uid " << uid << " pid " << initialPid in KillProcessGroup()
537 int killProcessGroup(uid_t uid, int initialPid, int signal, int* max_processes) { in killProcessGroup() argument
538 return KillProcessGroup(uid, initialPid, signal, 40 /*retries*/, max_processes); in killProcessGroup()
541 int killProcessGroupOnce(uid_t uid, int initialPid, int signal, int* max_processes) { in killProcessGroupOnce() argument
542 return KillProcessGroup(uid, initialPid, signal, 0 /*retries*/, max_processes); in killProcessGroupOnce()
545 int sendSignalToProcessGroup(uid_t uid, int initialPid, int signal) { in sendSignalToProcessGroup() argument
551 return DoKillProcessGroupOnce(cgroup, uid, initialPid, signal); in sendSignalToProcessGroup()
554 static int createProcessGroupInternal(uid_t uid, int initialPid, std::string cgroup, in createProcessGroupInternal() argument
556 auto uid_path = ConvertUidToPath(cgroup.c_str(), uid); in createProcessGroupInternal()
584 auto uid_pid_path = ConvertUidPidToPath(cgroup.c_str(), uid, initialPid); in createProcessGroupInternal()
601 int createProcessGroup(uid_t uid, int initialPid, bool memControl) { in createProcessGroup() argument
602 CHECK_GE(uid, 0); in createProcessGroup()
615 int ret = createProcessGroupInternal(uid, initialPid, memcg_apps_path, false); in createProcessGroup()
623 return createProcessGroupInternal(uid, initialPid, cgroup, true); in createProcessGroup()
661 bool isProfileValidForProcess(const std::string& profile_name, int uid, int pid) { in isProfileValidForProcess() argument
668 return tp->IsValidForProcess(uid, pid); in isProfileValidForProcess()