source: trunk/src/ws2_32/ioctl.cpp@ 6748

Last change on this file since 6748 was 6748, checked in by phaller, 24 years ago

.

File size: 2.8 KB
Line 
1/* $Id: ioctl.cpp,v 1.1 2001-09-18 16:58:59 phaller Exp $ */
2/*
3 * based on Windows Sockets 1.1 specs
4 * (ftp.microsoft.com:/Advsys/winsock/spec11/WINSOCK.TXT)
5 *
6 * (C) 1993,1994,1996,1997 John Brezak, Erik Bos, Alex Korobka.
7 *
8 * NOTE: If you make any changes to fix a particular app, make sure
9 * they don't break something else like Netscape or telnet and ftp
10 * clients and servers (www.winsite.com got a lot of those).
11 *
12 * NOTE 2: Many winsock structs such as servent, hostent, protoent, ...
13 * are used with 1-byte alignment for Win16 programs and 4-byte alignment
14 * for Win32 programs in winsock.h. winsock2.h uses forced 4-byte alignment.
15 * So we have non-forced (just as MSDN) ws_XXXXent (winsock.h), 4-byte forced
16 * ws_XXXXent32 (winsock2.h) and 1-byte forced ws_XXXXent16 (winsock16.h).
17 */
18
19
20/*****************************************************************************
21 * Includes *
22 *****************************************************************************/
23
24#define INCL_BASE
25#include <os2wrap.h>
26#include <stdio.h>
27#include <string.h>
28#include <odin.h>
29#include <odinwrap.h>
30#include <os2sel.h>
31#include <misc.h>
32#include <win32api.h>
33
34#define DBG_LOCALLOG DBG_wsa
35#include "dbglocal.h"
36
37// PH: ugly ...
38#include "../wsock32/wsock32.h"
39
40
41ODINDEBUGCHANNEL(WS2_32-IOCTL)
42
43
44typedef LPVOID LPWSAOVERLAPPED;
45typedef LPVOID LPWSAOVERLAPPED_COMPLETION_ROUTINE;
46
47
48/*****************************************************************************
49 * Name : int WSAIoctl
50 * Purpose : direct socket / stack ioctls
51 * Parameters: SOCKET s
52 * DWORD dwIoControlCode
53 * LPVOID lpvInBuffer
54 * DWORD cbInBuffer
55 * LPVOID lpvOutBuffer
56 * DWORD cbOutBuffer
57 * LPDWORD lpcbBytesReturned
58 * LPWSAOVERLAPPED lpOverlapped (unsupported, must be NULL)
59 * LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine (unsupported, must be NULL)
60 * Variables :
61 * Result : 0 indicates success, SOCKET_ERROR indicates failure in case
62 * WSAGetLastError provides closer information
63 * Remark :
64 * Status : UNTESTED
65 *
66 * Author : Patrick Haller [2001-09-17]
67 *****************************************************************************/
68
69ODINFUNCTION9(int, WSAIoctl,
70 SOCKET, s,
71 DWORD, dwIoControlCode,
72 LPVOID, lpvInBuffer,
73 DWORD, cbInBuffer,
74 LPVOID, lpvOutBuffer,
75 DWORD, cbOutBuffer,
76 LPDWORD, lpcbBytesReturned,
77 LPWSAOVERLAPPED, lpOverlapped,
78 LPWSAOVERLAPPED_COMPLETION_ROUTINE, lpCompletionRoutine)
79{
80 dprintf(("not implemented"));
81
82 WSASetLastError(ERROR_NOT_SUPPORTED);
83 return SOCKET_ERROR;
84}
Note: See TracBrowser for help on using the repository browser.