I have a project that needs access to Linux Bluetooth sockets from Mono.
Miguel previously suggested that I would have to manually P/Invoke to socket
(and connect, bind, getpeername, etc) and use Reflection to set the fd value
returned by the socket call into the "socket" field in the Socket class.
I've implemented that but I get a ENOTSOCK on any access to Socket's
methods/properties. For example:
System.Net.Sockets.SocketException: The descriptor is not a socket
at System.Net.Sockets.Socket.Receive (System.Byte[] buffer, Int32 offset,
Int32 size, SocketFlags flags) [0x000af] in
/usr/src/packages/BUILD/mono-2.8/mcs/class/System/System.Net.Sockets/Socket.cs:2410
...
Which is presumably due to the following (_wapi_recvfrom in sockets.c).
if (_wapi_handle_type (handle) != WAPI_HANDLE_SOCKET) {
WSASetLastError (WSAENOTSOCK);
return(SOCKET_ERROR);
}
Presumably I can't convert my fd to a wapi handle somehow... So is that plan
not going to work? :-,(
Thanks
Andy
_______________________________________________
Mono-devel-list mailing list
[email protected]
http://lists.ximian.com/mailman/listinfo/mono-devel-list