<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nx-libs/nx-X11/programs/Xserver/os/osdep.h, branch pr/drop-bin-wrappers</title>
<subtitle>NXv3 (redistributed) 
</subtitle>
<id>https://openid.arctica-project.org/nx-libs/atom?h=pr%2Fdrop-bin-wrappers</id>
<link rel='self' href='https://openid.arctica-project.org/nx-libs/atom?h=pr%2Fdrop-bin-wrappers'/>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/'/>
<updated>2017-03-21T09:58:08+00:00</updated>
<entry>
<title>os: Use NotifyFd for ErrorConnMax</title>
<updated>2017-03-21T09:58:08+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-03-15T10:42:30+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=eb49996116fd3beeff66ddf192bfc80e117086d1'/>
<id>urn:sha1:eb49996116fd3beeff66ddf192bfc80e117086d1</id>
<content type='text'>
 commit c3fea428aed919826130ef8ebdb2cceb445a845b
 Author: Keith Packard &lt;keithp@keithp.com&gt;
 Date:   Tue May 24 20:51:31 2016 -0700

    os: Use NotifyFd for ErrorConnMax

    Instead of open-coding a single FD wait, use NotifyFd to wait for the
    FD to become readable before returning the error message.

    Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
    Reviewed-by: Adam Jackson &lt;ajax@redhat.com&gt;

 Backported-to-NX-by: Mike Gabriel &lt;mike.gabriel@das-netzwerkteam.de&gt;
</content>
</entry>
<entry>
<title>dix: Pull client-is-local flag up to the ClientRec</title>
<updated>2017-03-21T09:58:07+00:00</updated>
<author>
<name>Adam Jackson</name>
<email>ajax@redhat.com</email>
</author>
<published>2017-02-16T10:51:40+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=ed52cb2952bebf6b98e187ff1f8609690fae3d59'/>
<id>urn:sha1:ed52cb2952bebf6b98e187ff1f8609690fae3d59</id>
<content type='text'>
 Backported from X.org

 commit ff8e3ad8074cd2c8bed49b39c40c2b4892118270
 Author: Adam Jackson &lt;ajax@redhat.com&gt;
 Date:   Thu Sep 20 13:16:59 2012 -0400

    dix: Pull client-is-local flag up to the ClientRec

    Reviewed-by: Daniel Stone &lt;daniel@fooishbar.org&gt;
    Signed-off-by: Adam Jackson &lt;ajax@redhat.com&gt;

 Backported-to-NX-by: Mike Gabriel &lt;mike.gabriel@das-netzwerkteam.de&gt;
</content>
</entry>
<entry>
<title>os: always check if client is local when connection is accepted</title>
<updated>2017-03-21T09:58:07+00:00</updated>
<author>
<name>Pauli Nieminen</name>
<email>ext-pauli.nieminen@nokia.com</email>
</author>
<published>2017-02-16T09:35:39+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=349b6dec54eaa86b49f3627939c4e7039e3b25f0'/>
<id>urn:sha1:349b6dec54eaa86b49f3627939c4e7039e3b25f0</id>
<content type='text'>
 Backported from X.org:

 commit 2d67ada3c4079a11c52024a9c3d4138becca5171
 Author: Pauli Nieminen &lt;ext-pauli.nieminen@nokia.com&gt;
 Date:   Thu Dec 30 19:19:43 2010 +0200

    os: always check if client is local when connection is accepted

    LocalClient is used for all DRI2 requests that makes it frequently
    called function. Querying if connection is local or not takes 10-15us
    (on ARM) depending on malloc speed.

    Signed-off-by: Pauli Nieminen &lt;ext-pauli.nieminen@nokia.com&gt;
    Reviewed-by: Daniel Stone &lt;daniel@fooishbar.org&gt;

 Backported-to-NX-by: Mike Gabriel &lt;mike.gabriel@das-netzwerkteam.de&gt;
</content>
</entry>
<entry>
<title>os: Return BadLength instead of disconnecting BigReq clients (#4565)</title>
<updated>2017-03-20T09:50:57+00:00</updated>
<author>
<name>Aaron Plattner</name>
<email>aplattner@nvidia.com</email>
</author>
<published>2017-02-14T15:47:10+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=2ecd2a006866bd7053536c04b195319a548c6ca2'/>
<id>urn:sha1:2ecd2a006866bd7053536c04b195319a548c6ca2</id>
<content type='text'>
 Backported from X.org:

 commit 67c66606c760c263d7a4c2d1bba43ed6225a4e7c
 Author: Robert Morell &lt;rmorell@nvidia.com&gt;
 Date:   Thu May 9 13:09:02 2013 -0700

    os: Reset input buffer's 'ignoreBytes' field

    If a client sends a request larger than maxBigRequestSize, the server is
    supposed to ignore it.

    Before commit cf88363d, the server would simply disconnect the client.  After
    that commit, it attempts to gracefully ignore the request by remembering how
    long the client specified the request to be, and ignoring that many bytes.
    However, if a client sends a BigReq header with a large size and disconnects
    before actually sending the rest of the specified request, the server will
    reuse the ConnectionInput buffer without resetting the ignoreBytes field.  This
    makes the server ignore new X clients' requests.

    This fixes that behavior by resetting the ignoreBytes field when putting the
    ConnectionInput buffer back on the FreeInputs list.

    Signed-off-by: Robert Morell &lt;rmorell@nvidia.com&gt;
    Reviewed-by: Peter Hutterer &lt;peter.hutterer@who-t.net&gt;
    Signed-off-by: Peter Hutterer &lt;peter.hutterer@who-t.net&gt;

 commit c80c41767eb101e9dbd8393d8cca7764b4e248a4
 Author: Aaron Plattner &lt;aplattner@nvidia.com&gt;
 Date:   Mon Oct 25 22:01:32 2010 -0700

    os: Fix BigReq ignoring when another request is pending

    Commit cf88363db0ebb42df7cc286b85d30d7898aea840 fixed the handling of
    BigReq requests that are way too large and handles the case where the
    read() syscall returns a short read.  However, it neglected to handle
    the case where it returns a long read, which happens when the client
    has another request in the queue after the bogus large one.

    Handle the long read case by subtracting the smaller of 'needed' and
    'gotnow' from oci-&gt;ignoreBytes.  If needed &lt; gotnow, simply subtract
    the two, leaving gotnow equal to the number of extra bytes read.
    Since the code immediately following the (oci-&gt;ignoreBytes &gt; 0) block
    tries to handle the next request, advance oci-&gt;bufptr immediately
    instead of setting oci-&gt;lenLastReq and letting the next call to
    ReadRequestFromClient do it.

    Fixes the XTS pChangeKeyboardMapping-3 test.

             CASES TESTS  PASS UNSUP UNTST NOTIU  WARN   FIP  FAIL UNRES  UNIN ABORT
    -Xproto    122   389   367     2    19     0     0     0     1     0     0     0
    +Xproto    122   389   368     2    19     0     0     0     0     0     0     0

    Signed-off-by: Aaron Plattner &lt;aplattner@nvidia.com&gt;
    Reviewed-by: Adam Jackson &lt;ajax@redhat.com&gt;
    Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;

 commit cf88363db0ebb42df7cc286b85d30d7898aea840
 Author: Aaron Plattner &lt;aplattner@nvidia.com&gt;
 Date:   Fri Aug 27 10:20:29 2010 -0700

    os: Return BadLength instead of disconnecting BigReq clients (#4565)

    If a client sends a big request that's too big (i.e. bigger than
    maxBigRequestSize &lt;&lt; 2 bytes), the server just disconnects it.  This makes the
    client receive SIGPIPE the next time it tries to send something.

    The X Test Suite sends requests that are too big when the test specifies the
    TOO_LONG test type.  When the client receives SIGPIPE, XTS marks it as
    UNRESOLVED, which counts as a failure.

    Instead, remember how long the request is supposed to be and then return that
    size.  Dispatch() checks the length and sends BadLength to the client.  Then,
    whenever oci-&gt;ignoreBytes is nonzero, ignore the data read instead of trying to
    process it as a request.

    Signed-off-by: Aaron Plattner &lt;aplattner@nvidia.com&gt;
    Reviewed-by: Keith Packard &lt;keithp@keithp.com&gt;
    Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;

 Backported-to-NX-by: Mike Gabriel &lt;mike.gabriel@das-netzwerkteam.de&gt;
</content>
</entry>
<entry>
<title>os: Implement support for NotifyFd X_NOTIFY_WRITE and removal of AddEnabledDevices/RemoveEnabledDevices</title>
<updated>2017-03-17T08:40:37+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-02-09T23:33:44+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=761d74a6805e1030f2206a50834b36d807e8e107'/>
<id>urn:sha1:761d74a6805e1030f2206a50834b36d807e8e107</id>
<content type='text'>
 Backported from X.org:

 commit be5a513fee6cbf29ef7570e57eb0436d70fbd88c
 Author: Keith Packard &lt;keithp@keithp.com&gt;
 Date:   Mon Dec 7 15:12:14 2015 -0800

    Remove AddEnabledDevice and AddGeneralSocket APIs

    All uses of these interfaces should instead be using the NotifyFd API
    instead.

    Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;
    Reviewed-by: Adam Jackson &lt;ajax@redhat.com&gt;

 commit 4020aacd1fc5b9c63369f011aeb9120af9c55218
 Author: Keith Packard &lt;keithp@keithp.com&gt;
 Date:   Wed Nov 11 22:02:03 2015 -0800

    os: Implement support for NotifyFd X_NOTIFY_WRITE

    This adds the ability to be notified when a file descriptor is
    available for writing.

    Reviewed-by: Adam Jackson &lt;ajax@redhat.com&gt;
    Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;

 Backported-to-NX-by: Mike Gabriel &lt;mike.gabriel@das-netzwerkteam.de&gt;
</content>
</entry>
<entry>
<title>os: Add NotifyFd interfaces</title>
<updated>2017-03-15T10:09:41+00:00</updated>
<author>
<name>Keith Packard</name>
<email>keithp@keithp.com</email>
</author>
<published>2017-02-09T12:45:12+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=86110d6edadef2d9fbcd3ee0d008696bfcf7dcd4'/>
<id>urn:sha1:86110d6edadef2d9fbcd3ee0d008696bfcf7dcd4</id>
<content type='text'>
 Backported from X.org:

 commit 0c41b7af4ab0c8d22b88f201293f59524d1e7317
 Author: Keith Packard &lt;keithp@keithp.com&gt;
 Date:   Wed Nov 11 22:02:02 2015 -0800

    os: Add NotifyFd interfaces

    This provides a callback-based interface to monitor file
    descriptors beyond the usual client and device interfaces.

    Modules within the server using file descriptors for reading and/or
    writing can call

        Bool SetNotifyFd(int fd, NotifyFdProcPtr notify_fd, int mask, void *data);

    mask can be any combination of X_NOTIFY_READ and X_NOTIFY_WRITE.

    When 'fd' becomes readable or writable, the notify_fd function will be
    called with the 'fd', the ready conditions and 'data' values as arguments,

    When the module no longer needs to monitor the fd, it will call

        void RemoveNotifyFd(int fd);

    RemoveNotifyFd may be called from the notify function.

    Reviewed-by: Adam Jackson &lt;ajax@redhat.com&gt;
    Signed-off-by: Keith Packard &lt;keithp@keithp.com&gt;

    Backported-to-NX-by: Mike Gabriel &lt;mike.gabriel@das-netzwerkteam.de&gt;
</content>
</entry>
<entry>
<title>drop platform support: unifdef sgi.</title>
<updated>2017-02-08T21:40:47+00:00</updated>
<author>
<name>Mike Gabriel</name>
<email>mike.gabriel@das-netzwerkteam.de</email>
</author>
<published>2016-11-15T21:03:39+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=2d45d8d805df95f7277d333e026a008dbd07f479'/>
<id>urn:sha1:2d45d8d805df95f7277d333e026a008dbd07f479</id>
<content type='text'>
 Relates to ArcticaProject/nx-libs#275.
</content>
</entry>
<entry>
<title>drop platform support: unifdef QNX.</title>
<updated>2017-02-08T21:40:47+00:00</updated>
<author>
<name>Mike Gabriel</name>
<email>mike.gabriel@das-netzwerkteam.de</email>
</author>
<published>2016-11-15T20:51:55+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=c6250a86468b1c2c23d41b27c4d6e438518ec917'/>
<id>urn:sha1:c6250a86468b1c2c23d41b27c4d6e438518ec917</id>
<content type='text'>
 Relates to ArcticaProject/nx-libs#275.
</content>
</entry>
<entry>
<title>drop platform support: unifdef hpux and __hppa__.</title>
<updated>2017-02-08T21:40:46+00:00</updated>
<author>
<name>Mike Gabriel</name>
<email>mike.gabriel@das-netzwerkteam.de</email>
</author>
<published>2016-11-15T19:59:35+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=184c5d778210dea8eab045a5f7ecf9d4344c1c34'/>
<id>urn:sha1:184c5d778210dea8eab045a5f7ecf9d4344c1c34</id>
<content type='text'>
 Fixes ArcticaProject/nx-libs#273.
</content>
</entry>
<entry>
<title>drop platform support: unifdef __UNIXOS2__.</title>
<updated>2017-02-08T21:40:46+00:00</updated>
<author>
<name>Mike Gabriel</name>
<email>mike.gabriel@das-netzwerkteam.de</email>
</author>
<published>2016-11-15T17:41:52+00:00</published>
<link rel='alternate' type='text/html' href='https://openid.arctica-project.org/nx-libs/commit/?id=d12f9524138899e43deb1a70fb37c97559d8f64e'/>
<id>urn:sha1:d12f9524138899e43deb1a70fb37c97559d8f64e</id>
<content type='text'>
 Fixes ArcticaProject/nx-libs#271.
</content>
</entry>
</feed>
