private static extern unsafe int http_websockets_write_bytes(
     IntPtr pInProcessHandler,
     HttpApiTypes.HTTP_DATA_CHUNK *pDataChunks,
     int nChunks,
     PFN_WEBSOCKET_ASYNC_COMPLETION pfnCompletionCallback,
     IntPtr pvCompletionContext,
     out bool fCompletionExpected);
 private static extern unsafe int http_websockets_read_bytes(
     IntPtr pInProcessHandler,
     byte *pvBuffer,
     int cbBuffer,
     PFN_WEBSOCKET_ASYNC_COMPLETION pfnCompletionCallback,
     IntPtr pvCompletionContext,
     out int dwBytesReceived,
     out bool fCompletionExpected);
 public static unsafe int HttpWebsocketsWriteBytes(
     IntPtr pInProcessHandler,
     HttpApiTypes.HTTP_DATA_CHUNK *pDataChunks,
     int nChunks,
     PFN_WEBSOCKET_ASYNC_COMPLETION pfnCompletionCallback,
     IntPtr pvCompletionContext,
     out bool fCompletionExpected)
 {
     return(http_websockets_write_bytes(pInProcessHandler, pDataChunks, nChunks, pfnCompletionCallback, pvCompletionContext, out fCompletionExpected));
 }
 public static unsafe int HttpWebsocketsReadBytes(
     IntPtr pInProcessHandler,
     byte *pvBuffer,
     int cbBuffer,
     PFN_WEBSOCKET_ASYNC_COMPLETION pfnCompletionCallback,
     IntPtr pvCompletionContext, out int dwBytesReceived,
     out bool fCompletionExpected)
 {
     return(http_websockets_read_bytes(pInProcessHandler, pvBuffer, cbBuffer, pfnCompletionCallback, pvCompletionContext, out dwBytesReceived, out fCompletionExpected));
 }