bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 2/2] Reverse authenticating ioctl-handler protocol


From: olafBuddenhagen
Subject: Re: [PATCH 2/2] Reverse authenticating ioctl-handler protocol
Date: Mon, 31 Aug 2009 09:08:36 +0200
User-agent: Mutt/1.5.19 (2009-01-05)

Hi,

On Wed, Aug 26, 2009 at 04:21:43PM +0200, Carl Fredrik Hammar wrote:

> +    * The client sends an `ioctl_handler_request' to the server,
> +      with a rendezvous port.
> +
> +    * The server sends an `ioctl_handler_acknowledge' in reply, this
> +      is needed so that the client won't wait indefinitely for
> +      `auth_server_authenticate' to return if the server does not support
> +      this protocol.
> +
> +    * The client sends an `auth_server_authenticate' with the rendezvous
> +      port and a reply port to the auth server.  (Note the reversal of
> +      the roles of client and server from the normal auth protocol.)
> +
> +    * The server sends an `auth_user_authenticate' with the rendezvous
> +      port to the auth server.
> +
> +    * The auth server matches up the requests using the rendezvous port,
> +      and returns the reply port to the server and the server's ID block
> +      to the client.
> +
> +    * The server sends a port to a file that can be opened with `dlopen'
> +      and exports an`ioctl_handler_t' typed function named
> +      `hurd_ioctl_handler'.

This last bit is the ioctl_handler_reply part I think?

I think the protocol could be simpified a lot by using a normal RPC, and
letting the server wait for the auth_user_authenticate() reply
asynchronously. (Or not wait for it at all, if auth can deal with
this...) The server is not really interested in the result of the
authentication -- there is no reason to wait for it before returning the
module file...

Also, the detailed description of the protocol should probably go into
the Hurd reference manual...

-antrik-




reply via email to

[Prev in Thread] Current Thread [Next in Thread]