146 |
|
|
147 |
struct mutex global_lock; |
struct mutex global_lock; |
148 |
|
|
149 |
extern inline void |
static inline void __attribute__ ((unused)) |
150 |
process_drop (struct proc *p) |
process_drop (struct proc *p) |
151 |
{ |
{ |
152 |
if (p) |
if (p) |
209 |
void initialize_version_info (void); |
void initialize_version_info (void); |
210 |
|
|
211 |
void send_signal (mach_port_t, int, mach_port_t); |
void send_signal (mach_port_t, int, mach_port_t); |
212 |
|
|
|
/* Returns true if PROC1 has `owner' privileges over PROC2 (and can thus get |
|
|
its task port &c). If PROC2 has an owner, then PROC1 must have that uid; |
|
|
otherwise, both must be in the same login collection. */ |
|
|
extern inline int |
|
|
check_owner (struct proc *proc1, struct proc *proc2) |
|
|
{ |
|
|
return |
|
|
proc2->p_noowner |
|
|
? check_uid (proc1, 0) || proc1->p_login == proc2->p_login |
|
|
: check_uid (proc1, proc2->p_owner); |
|
|
} |
|
213 |
|
|
214 |
#endif |
#endif |