Lines Matching defs:perr
161 static struct ps_prochandle* createProcAndSymbolicator(pid_t pid, task_t task, int* perr, bool should_queue_proc_activity_notices) {
227 *perr = APPLE_PCREATE_BAD_SYMBOLICATOR;
236 int *perr, /* pointer to error return code */
248 *perr = posix_spawnattr_init(&attr);
249 if (0 != *perr) goto destroy_attr;
252 *perr = posix_spawnattr_setbinpref_np(&attr, 1, &arch, NULL);
253 if (0 != *perr) goto destroy_attr;
256 *perr = posix_spawnattr_setflags(&attr, POSIX_SPAWN_START_SUSPENDED);
257 if (0 != *perr) goto destroy_attr;
261 *perr = posix_spawnp(&pid, file, NULL, &attr, argv, *_NSGetEnviron());
268 if (0 == *perr) {
280 *perr = APPLE_EXECUTABLE_RESTRICTED;
288 *perr = APPLE_EXECUTABLE_NOT_ATTACHABLE;
293 *perr = task_for_pid(mach_task_self(), pid, &task);
294 if (*perr == KERN_SUCCESS) {
295 proc = createProcAndSymbolicator(pid, task, perr, true);
297 *perr = -(*perr); // Make room for mach errors
299 } else if (*perr == EBADARCH) {
300 *perr = APPLE_PCREATE_BAD_ARCHITECTURE;
371 * perr: pointer to error return code.
383 struct ps_prochandle *Pgrab(pid_t pid, int flags, int *perr) {
393 *perr = APPLE_EXECUTABLE_NOT_ATTACHABLE;
397 *perr = task_for_pid(mach_task_self(), pid, &task);
398 if (*perr == KERN_SUCCESS) {
402 proc = createProcAndSymbolicator(pid, task, perr, (flags & PGRAB_RDONLY) ? false : true);
405 *perr = APPLE_PGRAB_UNSUPPORTED_FLAGS;