130 |
error_t err = 0; |
error_t err = 0; |
131 |
hurd_cap_bucket_t bucket = ctx->bucket; |
hurd_cap_bucket_t bucket = ctx->bucket; |
132 |
_hurd_cap_client_t client; |
_hurd_cap_client_t client; |
|
hurd_cap_handle_t cap; |
|
133 |
hurd_cap_class_t cap_class; |
hurd_cap_class_t cap_class; |
134 |
hurd_cap_obj_t obj; |
hurd_cap_obj_t obj; |
135 |
_hurd_cap_obj_entry_t obj_entry; |
_hurd_cap_obj_entry_t obj_entry; |
157 |
malformed, and thus ignored. */ |
malformed, and thus ignored. */ |
158 |
if (l4_untyped_words (l4_msg_msg_tag (ctx->msg)) < 1) |
if (l4_untyped_words (l4_msg_msg_tag (ctx->msg)) < 1) |
159 |
return ECAP_NOREPLY; |
return ECAP_NOREPLY; |
160 |
cap = l4_msg_word (ctx->msg, 0); |
ctx->handle = l4_msg_word (ctx->msg, 0); |
161 |
|
|
162 |
err = lookup_client (bucket, _hurd_cap_client_id (cap), |
err = lookup_client (bucket, _hurd_cap_client_id (ctx->handle), |
163 |
ctx->sender, &client); |
ctx->sender, &client); |
164 |
if (err) |
if (err) |
165 |
return err; |
return err; |
202 |
{ |
{ |
203 |
_hurd_cap_obj_entry_t *entry; |
_hurd_cap_obj_entry_t *entry; |
204 |
|
|
205 |
entry = (_hurd_cap_obj_entry_t *) hurd_table_lookup (&client->caps, |
entry = (_hurd_cap_obj_entry_t *) |
206 |
_hurd_cap_id (cap)); |
hurd_table_lookup (&client->caps, _hurd_cap_id (ctx->handle)); |
207 |
if (!entry) |
if (!entry) |
208 |
err = ECAP_NOREPLY; |
err = ECAP_NOREPLY; |
209 |
else |
else |