70 |
{ |
{ |
71 |
error_t err; |
error_t err; |
72 |
hurd_cap_handle_t cap; |
hurd_cap_handle_t cap; |
|
hurd_cap_handle_t startup_cap; |
|
73 |
hurd_cap_obj_t obj; |
hurd_cap_obj_t obj; |
74 |
|
task_t task; |
75 |
|
|
76 |
l4_accept (L4_UNTYPED_WORDS_ACCEPTOR); |
l4_accept (L4_UNTYPED_WORDS_ACCEPTOR); |
77 |
|
|
98 |
{ |
{ |
99 |
debug ("Creating task cap for 0x%x:", task_id); |
debug ("Creating task cap for 0x%x:", task_id); |
100 |
|
|
101 |
err = task_alloc (task_id, nr_threads, threads, &obj); |
err = task_alloc (task_id, nr_threads, threads, &task); |
102 |
if (err) |
if (err) |
103 |
panic ("task_alloc: %i\n", err); |
panic ("task_alloc: %i\n", err); |
104 |
|
|
105 |
|
obj = hurd_cap_obj_from_user (task_t, task); |
106 |
hurd_cap_obj_unlock (obj); |
hurd_cap_obj_unlock (obj); |
107 |
|
|
108 |
err = task_id_enter ((task_t) obj); |
err = task_id_enter (task); |
109 |
if (err) |
if (err) |
110 |
panic ("task_id_enter: %i\n", err); |
panic ("task_id_enter: %i\n", err); |
111 |
|
|