[xserver,2/2] dri3: Refuse to work for remote clients (v2)

Submitted by Michel Dänzer on Jan. 28, 2016, 9:55 a.m.

Details

Message ID 1453974950-8399-1-git-send-email-michel@daenzer.net
State Accepted
Commit 43eb5b6047c9b35c337e553ec054f08bdc835abb
Headers show
Series "dri3: Refuse to work for remote clients" ( rev: 7 ) in X.org (DEPRECATED - USE GITLAB)

Not browsing as part of any series.

Commit Message

Michel Dänzer Jan. 28, 2016, 9:55 a.m.
From: Michel Dänzer <michel.daenzer@amd.com>

Prevents clients forwarded via SSH from hanging while waiting for the
reply from the DRI3Open request.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93261

v2: Return BadMatch instead of BadRequest (Keith Packard)
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
---
 dri3/dri3_request.c | 4 ++++
 1 file changed, 4 insertions(+)

Patch hide | download patch | download mbox

diff --git a/dri3/dri3_request.c b/dri3/dri3_request.c
index 2d75588..2b36221 100644
--- a/dri3/dri3_request.c
+++ b/dri3/dri3_request.c
@@ -312,6 +312,8 @@  int
 proc_dri3_dispatch(ClientPtr client)
 {
     REQUEST(xReq);
+    if (!client->local)
+        return BadMatch;
     if (stuff->data >= DRI3NumberRequests || !proc_dri3_vector[stuff->data])
         return BadRequest;
     return (*proc_dri3_vector[stuff->data]) (client);
@@ -405,6 +407,8 @@  int
 sproc_dri3_dispatch(ClientPtr client)
 {
     REQUEST(xReq);
+    if (!client->local)
+        return BadMatch;
     if (stuff->data >= DRI3NumberRequests || !sproc_dri3_vector[stuff->data])
         return BadRequest;
     return (*sproc_dri3_vector[stuff->data]) (client);

Comments

Michel Dänzer <michel@daenzer.net> writes:

> From: Michel Dänzer <michel.daenzer@amd.com>
>
> Prevents clients forwarded via SSH from hanging while waiting for the
> reply from the DRI3Open request.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93261
>
> v2: Return BadMatch instead of BadRequest (Keith Packard)
> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>

Reviewed-by: Keith Packard <keithp@keithp.com>

(might want to update the DRI3 spec to reflect this change?)
On 28.01.2016 18:06, Keith Packard wrote:
> Michel Dänzer <michel@daenzer.net> writes:
> 
>> From: Michel Dänzer <michel.daenzer@amd.com>
>>
>> Prevents clients forwarded via SSH from hanging while waiting for the
>> reply from the DRI3Open request.
>>
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93261
>>
>> v2: Return BadMatch instead of BadRequest (Keith Packard)
>> Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
> 
> Reviewed-by: Keith Packard <keithp@keithp.com>
> 
> (might want to update the DRI3 spec to reflect this change?)
> 
> 

[xserver,2/2] dri3: Refuse to work for remote clients (v2)
https://patchwork.freedesktop.org/patch/71844

[xserver] os: Treat ssh as a non-local client (v3)
https://patchwork.freedesktop.org/patch/68504

Are those two a pair?

Why wait so long, why this could not get in xserver 1.18.1?
On Tue, 2016-02-09 at 13:08 +0100, poma wrote:

> Why wait so long, why this could not get in xserver 1.18.1?

I do my best to merge patches as they get reviewed, but I don't claim
to be perfect. If you're giving an r-b and you think it's good enough
to be merged, please cc me.

- ajax
On 09.02.2016 19:01, Adam Jackson wrote:
> On Tue, 2016-02-09 at 13:08 +0100, poma wrote:
> 
>> Why wait so long, why this could not get in xserver 1.18.1?
> 
> I do my best to merge patches as they get reviewed, but I don't claim
> to be perfect. If you're giving an r-b and you think it's good enough
> to be merged, please cc me.
> 
> - ajax
> 

Until ready for xserver 1.18.2 , you can push downstream - rhbz#1174257.
It has been tested more than enough. ;)
On 10.02.2016 03:01, Adam Jackson wrote:
> On Tue, 2016-02-09 at 13:08 +0100, poma wrote:
> 
>> Why wait so long, why this could not get in xserver 1.18.1?
> 
> I do my best to merge patches as they get reviewed, but I don't claim
> to be perfect. If you're giving an r-b and you think it's good enough
> to be merged, please cc me.

If you want to push v1 of your patch 1, have my

Acked-by: Michel Dänzer <michel.daenzer@amd.com>

for that. Please push v2 of my patch 2 along with it, reviewed by Keith.
On 10.02.2016 01:41, Michel Dänzer wrote:
> On 10.02.2016 03:01, Adam Jackson wrote:
>> On Tue, 2016-02-09 at 13:08 +0100, poma wrote:
>>
>>> Why wait so long, why this could not get in xserver 1.18.1?
>>
>> I do my best to merge patches as they get reviewed, but I don't claim
>> to be perfect. If you're giving an r-b and you think it's good enough
>> to be merged, please cc me.
> 
> If you want to push v1 of your patch 1, have my
> 
> Acked-by: Michel Dänzer <michel.daenzer@amd.com>
> 
> for that. Please push v2 of my patch 2 along with it, reviewed by Keith.
> 
> 

https://patchwork.freedesktop.org/patch/68504
os: Treat ssh as a non-local client (v3)
is still not part of
https://cgit.freedesktop.org/xorg/xserver/log/os/access.c
i.e. xorg-server 1.18.2
so
DRI3 over ssh is still broken
https://bugs.freedesktop.org/show_bug.cgi?id=93261
On 14.03.2016 15:43, poma wrote:
> On 10.02.2016 01:41, Michel Dänzer wrote:
>> On 10.02.2016 03:01, Adam Jackson wrote:
>>> On Tue, 2016-02-09 at 13:08 +0100, poma wrote:
>>>
>>>> Why wait so long, why this could not get in xserver 1.18.1?
>>>
>>> I do my best to merge patches as they get reviewed, but I don't claim
>>> to be perfect. If you're giving an r-b and you think it's good enough
>>> to be merged, please cc me.
>>
>> If you want to push v1 of your patch 1, have my
>>
>> Acked-by: Michel Dänzer <michel.daenzer@amd.com>
>>
>> for that. Please push v2 of my patch 2 along with it, reviewed by Keith.
>>
>>
> 
> https://patchwork.freedesktop.org/patch/68504
> os: Treat ssh as a non-local client (v3)
> is still not part of
> https://cgit.freedesktop.org/xorg/xserver/log/os/access.c
> i.e. xorg-server 1.18.2
> so
> DRI3 over ssh is still broken
> https://bugs.freedesktop.org/show_bug.cgi?id=93261
> 
> 

https://cgit.freedesktop.org/xorg/xserver/commit/dri3/dri3_request.c?id=43eb5b6
dri3: Refuse to work for remote clients (v2)
on its own ain't solution.