[libvirt] [PATCH] fix WIN64 compatibility bug in external EventImpl API
Daniel P. Berrange
berrange at redhat.com
Wed Nov 19 16:49:48 UTC 2008
On Wed, Nov 19, 2008 at 11:41:43AM -0500, David Lively wrote:
> While starting to think about Windows compability, I realized the newly
> exposed API for registering an external EventImpl is not adequate.
> Currently it's assuming 32-bit unix fds. But Windows uses a pointer
> (HANDLE) here. So we need to generalize this interface so it can be
> implemented for 64-bit Windows. The attached patch does this. (I'm
> sure it conflicts with work Dan B is doing, so I'm hoping he'll just
> incorporate this into his changes.)
I'm not sure whether this is actually required. We're using gnulib for
socket stuff, and that wraps the Winsock socket() call so that it returns
a real file descriptor rather than a socket handle. It does this calling
_open_osfhandle which appears to be declared to accept a 'long' and return
an 'int' - at least in MinGW headers.
MinGW doesn't implement Win64 though, so its possible the header isn't
quite right. If you have a Win64 box available, could you post what you
see as the declarations for
_open_osfhandle
_get_osfhandle
Regards,
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the libvir-list
mailing list