bug-hurd
[Top][All Lists]
Advanced

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

Re: [PATCH hurd 21/30] trans/fakeroot: make the demuxer payload-aware


From: Samuel Thibault
Subject: Re: [PATCH hurd 21/30] trans/fakeroot: make the demuxer payload-aware
Date: Tue, 2 Dec 2014 01:11:06 +0100
User-agent: Mutt/1.5.21+34 (58baf7c9f32f) (2010-12-30)

Justus Winter, le Thu 27 Nov 2014 14:19:01 +0100, a écrit :
> * trans/fakeroot.c (netfs_demuxer): Make the demuxer payload-aware.

Ack.

> ---
>  trans/fakeroot.c | 17 +++++++++++++----
>  1 file changed, 13 insertions(+), 4 deletions(-)
> 
> diff --git a/trans/fakeroot.c b/trans/fakeroot.c
> index df2de64..12173bd 100644
> --- a/trans/fakeroot.c
> +++ b/trans/fakeroot.c
> @@ -964,9 +964,16 @@ netfs_demuxer (mach_msg_header_t *inp,
>      {
>        /* We didn't recognize the message ID, so pass the message through
>        unchanged to the underlying file.  */
> -      struct protid *cred = ports_lookup_port (netfs_port_bucket,
> -                                            inp->msgh_local_port,
> -                                            netfs_protid_class);
> +      struct protid *cred;
> +      if (MACH_MSGH_BITS_LOCAL (inp->msgh_bits) ==
> +       MACH_MSG_TYPE_PROTECTED_PAYLOAD)
> +     cred = ports_lookup_payload (netfs_port_bucket,
> +                                  inp->msgh_protected_payload,
> +                                  netfs_protid_class);
> +      else
> +     cred = ports_lookup_port (netfs_port_bucket,
> +                               inp->msgh_local_port,
> +                               netfs_protid_class);
>        if (cred == 0)
>       /* This must be an unknown message on our fsys control port.  */
>       return 0;
> @@ -974,7 +981,9 @@ netfs_demuxer (mach_msg_header_t *inp,
>       {
>         error_t err;
>         assert (MACH_MSGH_BITS_LOCAL (inp->msgh_bits)
> -               == MACH_MSG_TYPE_MOVE_SEND);
> +               == MACH_MSG_TYPE_MOVE_SEND
> +               || MACH_MSGH_BITS_LOCAL (inp->msgh_bits)
> +               == MACH_MSG_TYPE_PROTECTED_PAYLOAD);
>         inp->msgh_bits = (inp->msgh_bits & MACH_MSGH_BITS_COMPLEX)
>           | MACH_MSGH_BITS (MACH_MSG_TYPE_COPY_SEND,
>                             MACH_MSGH_BITS_REMOTE (inp->msgh_bits));
> -- 
> 2.1.3
> 

-- 
Samuel
<B> l'alim je sais où elle est, elle est juste à côté de la dame qui dort
<g> B: clairement faut revoir les priorités dans la vie
<g> B: une dame ça se retrouve, un uptime...



reply via email to

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