[Xapian-tickets] [Xapian] #738: FIx remote backend on 64-bit MS Windows

Xapian nobody at xapian.org
Sun Oct 16 06:38:10 BST 2016


#738: FIx remote backend on 64-bit MS Windows
--------------------------------------+-------------------
        Reporter:  olly               |      Owner:  olly
            Type:  defect             |     Status:  new
        Priority:  low                |  Milestone:  1.4.x
       Component:  Backend-Remote     |    Version:  1.4.0
        Severity:  normal             |   Keywords:
      Blocked By:                     |   Blocking:
Operating System:  Microsoft Windows  |
--------------------------------------+-------------------
 The remote backend code assumes it can cast `HANDLE` to `int` and back and
 preserve the value.  But `HANDLE` is `void*` so that fails for the 64-bit
 version of this platform.

 The inherent problem is that sockets aren't just normal fds on this
 platform, which doesn't match the POSIX model.  I think the simplest fix
 is probably to allocate a large `int` value (well above the max possible
 fd supported) for each `HANDLE` value, and then have a suitable data
 structure to map these back to the `HANDLE` values.

 Doesn't affect the library ABI so could be implemented in 1.4.x.  Also
 affects 1.2.x.

 Not actually reported by users (I just noticed this while working on the
 code) to setting as "low" priority.

--
Ticket URL: <https://trac.xapian.org/ticket/738>
Xapian <//xapian.org/>
Xapian



More information about the Xapian-tickets mailing list