ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

stubs.c
Go to the documentation of this file.
00001 /*
00002  * COPYRIGHT:   See COPYING in the top level directory
00003  * PROJECT:     ReactOS WinSock 2 DLL
00004  * FILE:        misc/stubs.c
00005  * PURPOSE:     Stubs
00006  * PROGRAMMERS: Casper S. Hornstrup (chorns@users.sourceforge.net)
00007  * REVISIONS:
00008  *   CSH 01/09-2000 Created
00009  */
00010 
00011 #include "ws2_32.h"
00012 
00013 /*
00014  * @implemented
00015  */
00016 INT
00017 EXPORT
00018 getpeername(IN     SOCKET s,
00019             OUT    LPSOCKADDR name,
00020             IN OUT INT FAR* namelen)
00021 {
00022     int Error;
00023     INT Errno;
00024     PCATALOG_ENTRY Provider;
00025 
00026     if (!WSAINITIALIZED)
00027     {
00028         WSASetLastError(WSANOTINITIALISED);
00029         return SOCKET_ERROR;
00030     }
00031 
00032     if (!ReferenceProviderByHandle((HANDLE)(ULONG_PTR)(s), &Provider))
00033     {
00034         WSASetLastError(WSAENOTSOCK);
00035         return SOCKET_ERROR;
00036     }
00037 
00038     Error = Provider->ProcTable.lpWSPGetPeerName(s,
00039                                                  name,
00040                                                  namelen,
00041                                                  &Errno);
00042 
00043     DereferenceProviderByPointer(Provider);
00044 
00045     if (Error == SOCKET_ERROR)
00046     {
00047         WSASetLastError(Errno);
00048     }
00049 
00050     return Error;
00051 }
00052 
00053 
00054 
00055 /*
00056  * @implemented
00057  */
00058 INT
00059 EXPORT
00060 getsockname(IN     SOCKET s,
00061             OUT    LPSOCKADDR name,
00062             IN OUT INT FAR* namelen)
00063 {
00064     int Error;
00065     INT Errno;
00066     PCATALOG_ENTRY Provider;
00067 
00068     if (!WSAINITIALIZED)
00069     {
00070         WSASetLastError(WSANOTINITIALISED);
00071         return SOCKET_ERROR;
00072     }
00073 
00074     if (!ReferenceProviderByHandle((HANDLE)s,
00075                                    &Provider))
00076     {
00077         WSASetLastError(WSAENOTSOCK);
00078         return SOCKET_ERROR;
00079     }
00080 
00081     Error = Provider->ProcTable.lpWSPGetSockName(s,
00082                                                  name,
00083                                                  namelen,
00084                                                  &Errno);
00085 
00086     DereferenceProviderByPointer(Provider);
00087 
00088     if (Error == SOCKET_ERROR)
00089     {
00090         WSASetLastError(Errno);
00091     }
00092 
00093     return Error;
00094 }
00095 
00096 
00097 /*
00098  * @implemented
00099  */
00100 INT
00101 EXPORT
00102 getsockopt(IN      SOCKET s,
00103            IN      INT level,
00104            IN      INT optname,
00105            OUT     CHAR FAR* optval,
00106            IN OUT  INT FAR* optlen)
00107 {
00108     PCATALOG_ENTRY Provider;
00109     INT Errno;
00110     int Error;
00111 
00112     if (!WSAINITIALIZED)
00113     {
00114         WSASetLastError(WSANOTINITIALISED);
00115         return SOCKET_ERROR;
00116     }
00117 
00118     if (!ReferenceProviderByHandle((HANDLE)s,
00119                                    &Provider))
00120     {
00121         WSASetLastError(WSAENOTSOCK);
00122         return SOCKET_ERROR;
00123     }
00124 
00125     Error = Provider->ProcTable.lpWSPGetSockOpt(s,
00126                                                 level,
00127                                                 optname,
00128                                                 optval,
00129                                                 optlen,
00130                                                 &Errno);
00131 
00132     DereferenceProviderByPointer(Provider);
00133 
00134     if (Error == SOCKET_ERROR)
00135     {
00136         WSASetLastError(Errno);
00137     }
00138 
00139     return Error;
00140 }
00141 
00142 
00143 /*
00144  * @implemented
00145  */
00146 INT
00147 EXPORT __stdcall
00148 setsockopt(IN  SOCKET s,
00149            IN  INT level,
00150            IN  INT optname,
00151            IN  CONST CHAR FAR* optval,
00152            IN  INT optlen)
00153 {
00154     PCATALOG_ENTRY Provider;
00155     INT Errno;
00156     int Error;
00157 
00158     if (!WSAINITIALIZED)
00159     {
00160         WSASetLastError(WSANOTINITIALISED);
00161         return SOCKET_ERROR;
00162     }
00163 
00164     if(IS_INTRESOURCE(optval))
00165     {
00166         SetLastError(WSAEFAULT);
00167         return SOCKET_ERROR;
00168     }
00169 
00170     if (!ReferenceProviderByHandle((HANDLE)s, &Provider))
00171     {
00172         WSASetLastError(WSAENOTSOCK);
00173         return SOCKET_ERROR;
00174     }
00175 
00176     Error = Provider->ProcTable.lpWSPSetSockOpt(s,
00177                                                   level,
00178                                                 optname,
00179                                                 optval,
00180                                                 optlen,
00181                                                 &Errno);
00182 
00183     DereferenceProviderByPointer(Provider);
00184 
00185     if (Error == SOCKET_ERROR)
00186     {
00187         WSASetLastError(Errno);
00188     }
00189 
00190     return Error;
00191 }
00192 
00193 
00194 /*
00195  * @implemented
00196  */
00197 INT
00198 EXPORT
00199 shutdown(IN  SOCKET s,
00200          IN  INT how)
00201 {
00202     PCATALOG_ENTRY Provider;
00203     INT Errno;
00204     int Error;
00205 
00206     if (!WSAINITIALIZED)
00207     {
00208         WSASetLastError(WSANOTINITIALISED);
00209         return SOCKET_ERROR;
00210     }
00211 
00212     if (!ReferenceProviderByHandle((HANDLE)s, &Provider))
00213     {
00214         WSASetLastError(WSAENOTSOCK);
00215         return SOCKET_ERROR;
00216     }
00217 
00218     Error = Provider->ProcTable.lpWSPShutdown(s,
00219                                               how,
00220                                               &Errno);
00221 
00222     DereferenceProviderByPointer(Provider);
00223 
00224     if (Error == SOCKET_ERROR)
00225     {
00226         WSASetLastError(Errno);
00227     }
00228 
00229     return Error;
00230 }
00231 
00232 
00233 /*
00234  * @implemented
00235  */
00236 INT
00237 EXPORT
00238 WSAAsyncSelect(IN  SOCKET s,
00239                IN  HWND hWnd,
00240                IN  UINT wMsg,
00241                IN  LONG lEvent)
00242 {
00243     PCATALOG_ENTRY Provider;
00244     INT Errno;
00245     int Error;
00246 
00247     if (!WSAINITIALIZED)
00248     {
00249         WSASetLastError(WSANOTINITIALISED);
00250         return SOCKET_ERROR;
00251     }
00252 
00253     if (!ReferenceProviderByHandle((HANDLE)s, &Provider))
00254     {
00255         WSASetLastError(WSAENOTSOCK);
00256         return SOCKET_ERROR;
00257     }
00258 
00259     Error = Provider->ProcTable.lpWSPAsyncSelect(s,
00260                                                  hWnd,
00261                                                  wMsg,
00262                                                  lEvent,
00263                                                  &Errno);
00264 
00265     DereferenceProviderByPointer(Provider);
00266 
00267     if (Error == SOCKET_ERROR)
00268     {
00269         WSASetLastError(Errno);
00270     }
00271 
00272     return Error;
00273 }
00274 
00275 
00276 /*
00277  * @unimplemented
00278  */
00279 INT
00280 EXPORT
00281 WSACancelBlockingCall(VOID)
00282 {
00283 #if 0
00284     INT Errno;
00285     int Error;
00286     PCATALOG_ENTRY Provider;
00287 
00288     if (!WSAINITIALIZED)
00289     {
00290         WSASetLastError(WSANOTINITIALISED);
00291         return SOCKET_ERROR;
00292     }
00293 
00294     if (!ReferenceProviderByHandle((HANDLE)s, &Provider))
00295     {
00296         WSASetLastError(WSAENOTSOCK);
00297         return SOCKET_ERROR;
00298     }
00299 
00300     Error = Provider->ProcTable.lpWSPCancelBlockingCall(&Errno);
00301 
00302     DereferenceProviderByPointer(Provider);
00303 
00304     if (Error == SOCKET_ERROR)
00305     {
00306         WSASetLastError(Errno);
00307     }
00308 
00309     return Error;
00310 #endif
00311 
00312     UNIMPLEMENTED
00313 
00314     WSASetLastError(WSASYSCALLFAILURE);
00315     return SOCKET_ERROR;
00316 }
00317 
00318 
00319 /*
00320  * @unimplemented
00321  */
00322 INT
00323 EXPORT
00324 WSADuplicateSocketA(IN  SOCKET s,
00325                     IN  DWORD dwProcessId,
00326                     OUT LPWSAPROTOCOL_INFOA lpProtocolInfo)
00327 {
00328 #if 0
00329     WSAPROTOCOL_INFOA ProtocolInfoU;
00330 
00331     Error  = WSADuplicateSocketW(s,
00332                                dwProcessId,
00333                                &ProtocolInfoU);
00334 
00335     if (Error == NO_ERROR)
00336     {
00337         UnicodeToAnsi(lpProtocolInfo,
00338                       ProtocolInfoU,
00339                       sizeof(
00340 
00341     }
00342 
00343     return Error;
00344 #endif
00345 
00346     UNIMPLEMENTED
00347 
00348     WSASetLastError(WSASYSCALLFAILURE);
00349     return SOCKET_ERROR;
00350 }
00351 
00352 
00353 
00354 /*
00355  * @implemented
00356  */
00357 INT
00358 EXPORT
00359 WSADuplicateSocketW(IN  SOCKET s,
00360                     IN  DWORD dwProcessId,
00361                     OUT LPWSAPROTOCOL_INFOW lpProtocolInfo)
00362 {
00363     INT Errno;
00364     int Error;
00365     PCATALOG_ENTRY Provider;
00366 
00367     if (!WSAINITIALIZED)
00368     {
00369         WSASetLastError(WSANOTINITIALISED);
00370         return SOCKET_ERROR;
00371     }
00372 
00373     if (!ReferenceProviderByHandle((HANDLE)s, &Provider))
00374     {
00375         WSASetLastError(WSAENOTSOCK);
00376         return SOCKET_ERROR;
00377     }
00378 
00379     Error = Provider->ProcTable.lpWSPDuplicateSocket(s,
00380                                                      dwProcessId,
00381                                                      lpProtocolInfo,
00382                                                      &Errno);
00383     DereferenceProviderByPointer(Provider);
00384 
00385     if (Error == SOCKET_ERROR)
00386     {
00387         WSASetLastError(Errno);
00388     }
00389 
00390     return Error;
00391 }
00392 
00393 
00394 /*
00395  * @unimplemented
00396  */
00397 INT
00398 EXPORT
00399 WSAEnumProtocolsA(IN      LPINT lpiProtocols,
00400                   OUT     LPWSAPROTOCOL_INFOA lpProtocolBuffer,
00401                   IN OUT  LPDWORD lpdwBufferLength)
00402 {
00403     UNIMPLEMENTED
00404 
00405     WSASetLastError(WSASYSCALLFAILURE);
00406     return SOCKET_ERROR;
00407 }
00408 
00409 
00410 /*
00411  * @unimplemented
00412  */
00413 INT
00414 EXPORT
00415 WSAEnumProtocolsW(IN      LPINT lpiProtocols,
00416                   OUT     LPWSAPROTOCOL_INFOW lpProtocolBuffer,
00417                   IN OUT  LPDWORD lpdwBufferLength)
00418 {
00419     UNIMPLEMENTED
00420 
00421     WSASetLastError(WSASYSCALLFAILURE);
00422     return SOCKET_ERROR;
00423 }
00424 
00425 
00426 /*
00427  * @implemented
00428  */
00429 BOOL
00430 EXPORT
00431 WSAGetOverlappedResult(IN  SOCKET s,
00432                        IN  LPWSAOVERLAPPED lpOverlapped,
00433                        OUT LPDWORD lpcbTransfer,
00434                        IN  BOOL fWait,
00435                        OUT LPDWORD lpdwFlags)
00436 {
00437     INT Errno;
00438     BOOL Success;
00439     PCATALOG_ENTRY Provider;
00440 
00441     if (!WSAINITIALIZED)
00442     {
00443         WSASetLastError(WSANOTINITIALISED);
00444         return SOCKET_ERROR;
00445     }
00446 
00447     if (!ReferenceProviderByHandle((HANDLE)s, &Provider))
00448     {
00449         WSASetLastError(WSAENOTSOCK);
00450         return SOCKET_ERROR;
00451     }
00452 
00453     Success = Provider->ProcTable.lpWSPGetOverlappedResult(s,
00454                                                           lpOverlapped,
00455                                                           lpcbTransfer,
00456                                                           fWait,
00457                                                           lpdwFlags,
00458                                                           &Errno);
00459     DereferenceProviderByPointer(Provider);
00460 
00461     if (Success == FALSE)
00462     {
00463         WSASetLastError(Errno);
00464     }
00465 
00466     return Success;
00467 }
00468 
00469 
00470 /*
00471  * @unimplemented
00472  */
00473 BOOL
00474 EXPORT
00475 WSAGetQOSByName(IN      SOCKET s,
00476                 IN OUT  LPWSABUF lpQOSName,
00477                 OUT     LPQOS lpQOS)
00478 {
00479     UNIMPLEMENTED
00480 
00481     WSASetLastError(WSASYSCALLFAILURE);
00482     return FALSE;
00483 }
00484 
00485 
00486 /*
00487  * @unimplemented
00488  */
00489 INT
00490 EXPORT
00491 WSAHtonl(IN  SOCKET s,
00492          IN  ULONG hostLONG,
00493          OUT ULONG FAR* lpnetlong)
00494 {
00495     UNIMPLEMENTED
00496 
00497     WSASetLastError(WSASYSCALLFAILURE);
00498     return SOCKET_ERROR;
00499 }
00500 
00501 
00502 /*
00503  * @unimplemented
00504  */
00505 INT
00506 EXPORT
00507 WSAHtons(IN  SOCKET s,
00508          IN  USHORT hostshort,
00509          OUT USHORT FAR* lpnetshort)
00510 {
00511     PCATALOG_ENTRY provider;
00512     if (!WSAINITIALIZED)
00513     {
00514         WSASetLastError(WSANOTINITIALISED);
00515         return SOCKET_ERROR;
00516     }
00517 
00518     if (!ReferenceProviderByHandle((HANDLE)s, &provider))
00519     {
00520         WSASetLastError(WSAENOTSOCK);
00521         return SOCKET_ERROR;
00522     }
00523 
00524     switch (provider->ProtocolInfo.iNetworkByteOrder)
00525     {
00526     case BIGENDIAN:
00527         *lpnetshort = htons(hostshort);
00528         break;
00529     case LITTLEENDIAN:
00530 #ifdef LE
00531         *lpnetshort = hostshort;
00532 #else
00533         *lpnetshort = (((hostshort & 0xFF00) >> 8) | ((hostshort & 0x00FF) << 8));
00534 #endif
00535         break;
00536     }
00537     return 0;
00538 }
00539 
00540 
00541 /*
00542  * @unimplemented
00543  */
00544 BOOL
00545 EXPORT
00546 WSAIsBlocking(VOID)
00547 {
00548     UNIMPLEMENTED
00549 
00550     return FALSE;
00551 }
00552 
00553 
00554 /*
00555  * @unimplemented
00556  */
00557 SOCKET
00558 EXPORT
00559 WSAJoinLeaf(IN  SOCKET s,
00560             IN  CONST struct sockaddr *name,
00561             IN  INT namelen,
00562             IN  LPWSABUF lpCallerData,
00563             OUT LPWSABUF lpCalleeData,
00564             IN  LPQOS lpSQOS,
00565             IN  LPQOS lpGQOS,
00566             IN  DWORD dwFlags)
00567 {
00568     UNIMPLEMENTED
00569 
00570     WSASetLastError(WSASYSCALLFAILURE);
00571     return INVALID_SOCKET;
00572 }
00573 
00574 
00575 /*
00576  * @unimplemented
00577  */
00578 INT
00579 EXPORT
00580 WSANtohl(IN  SOCKET s,
00581          IN  ULONG netlong,
00582          OUT ULONG FAR* lphostlong)
00583 {
00584     UNIMPLEMENTED
00585 
00586     WSASetLastError(WSASYSCALLFAILURE);
00587     return SOCKET_ERROR;
00588 }
00589 
00590 
00591 /*
00592  * @unimplemented
00593  */
00594 INT
00595 EXPORT
00596 WSANtohs(IN  SOCKET s,
00597          IN  USHORT netshort,
00598          OUT USHORT FAR* lphostshort)
00599 {
00600     PCATALOG_ENTRY provider;
00601     if (!WSAINITIALIZED)
00602     {
00603         WSASetLastError(WSANOTINITIALISED);
00604         return SOCKET_ERROR;
00605     }
00606 
00607     if (!ReferenceProviderByHandle((HANDLE)s, &provider))
00608     {
00609         WSASetLastError(WSAENOTSOCK);
00610         return SOCKET_ERROR;
00611     }
00612 
00613     switch (provider->ProtocolInfo.iNetworkByteOrder)
00614     {
00615     case BIGENDIAN:
00616         *lphostshort = ntohs(netshort);
00617         break;
00618     case LITTLEENDIAN:
00619 #ifdef LE
00620         *lphostshort = netshort;
00621 #else
00622         *lphostshort = (((netshort & 0xFF00) >> 8) | ((netshort & 0x00FF) << 8));
00623 #endif
00624         break;
00625     }
00626     return 0;
00627 }
00628 
00629 
00630 /*
00631  * @unimplemented
00632  */
00633 FARPROC
00634 EXPORT
00635 WSASetBlockingHook(IN  FARPROC lpBlockFunc)
00636 {
00637     UNIMPLEMENTED
00638 
00639     return (FARPROC)0;
00640 }
00641 
00642 
00643 /*
00644  * @unimplemented
00645  */
00646 INT
00647 EXPORT
00648 WSAUnhookBlockingHook(VOID)
00649 {
00650     UNIMPLEMENTED
00651 
00652     return 0;
00653 }
00654 
00655 
00656 /*
00657  * @unimplemented
00658  */
00659 INT
00660 EXPORT
00661 WSAProviderConfigChange(IN OUT  LPHANDLE lpNotificationHandle,
00662                         IN      LPWSAOVERLAPPED lpOverlapped,
00663                         IN      LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine)
00664 {
00665     UNIMPLEMENTED
00666 
00667     WSASetLastError(WSASYSCALLFAILURE);
00668     return SOCKET_ERROR;
00669 }
00670 
00671 
00672 /*
00673  * @unimplemented
00674  */
00675 INT
00676 EXPORT
00677 WSACancelAsyncRequest(IN  HANDLE hAsyncTaskHandle)
00678 {
00679     UNIMPLEMENTED
00680 
00681     WSASetLastError(WSASYSCALLFAILURE);
00682     return SOCKET_ERROR;
00683 }
00684 
00685 /* WinSock Service Provider support functions */
00686 
00687 /*
00688  * @unimplemented
00689  */
00690 INT
00691 EXPORT
00692 WPUCompleteOverlappedRequest(IN  SOCKET s,
00693                              IN  LPWSAOVERLAPPED lpOverlapped,
00694                              IN  DWORD dwError,
00695                              IN  DWORD cbTransferred,
00696                              OUT LPINT lpErrno)
00697 {
00698     UNIMPLEMENTED
00699 
00700     WSASetLastError(WSASYSCALLFAILURE);
00701     return SOCKET_ERROR;
00702 }
00703 
00704 
00705 /*
00706  * @unimplemented
00707  */
00708 INT
00709 EXPORT
00710 WSCDeinstallProvider(IN  LPGUID lpProviderId,
00711                      OUT LPINT lpErrno)
00712 {
00713     UNIMPLEMENTED
00714 
00715     WSASetLastError(WSASYSCALLFAILURE);
00716     return SOCKET_ERROR;
00717 }
00718 
00719 
00720 /*
00721  * @unimplemented
00722  */
00723 INT
00724 EXPORT
00725 WSCEnumProtocols(IN      LPINT lpiProtocols,
00726                  OUT     LPWSAPROTOCOL_INFOW lpProtocolBuffer,
00727                  IN OUT  LPDWORD lpdwBufferLength,
00728                  OUT     LPINT lpErrno)
00729 {
00730     UNIMPLEMENTED
00731 
00732     WSASetLastError(WSASYSCALLFAILURE);
00733     return SOCKET_ERROR;
00734 }
00735 
00736 
00737 /*
00738  * @unimplemented
00739  */
00740 INT
00741 EXPORT
00742 WSCGetProviderPath(IN      LPGUID lpProviderId,
00743                    OUT     LPWSTR lpszProviderDllPath,
00744                    IN OUT  LPINT lpProviderDllPathLen,
00745                    OUT     LPINT lpErrno)
00746 {
00747     UNIMPLEMENTED
00748 
00749     WSASetLastError(WSASYSCALLFAILURE);
00750     return SOCKET_ERROR;
00751 }
00752 
00753 
00754 /*
00755  * @unimplemented
00756  */
00757 INT
00758 EXPORT
00759 WSCInstallProvider(IN  LPGUID lpProviderId,
00760                    IN  CONST WCHAR* lpszProviderDllPath,
00761                    IN  CONST LPWSAPROTOCOL_INFOW lpProtocolInfoList,
00762                    IN  DWORD dwNumberOfEntries,
00763                    OUT LPINT lpErrno)
00764 {
00765     UNIMPLEMENTED
00766 
00767     WSASetLastError(WSASYSCALLFAILURE);
00768     return SOCKET_ERROR;
00769 }
00770 
00771 
00772 /*
00773  * @unimplemented
00774  */
00775 INT
00776 EXPORT
00777 WSCEnableNSProvider(IN  LPGUID lpProviderId,
00778                     IN  BOOL fEnable)
00779 {
00780     UNIMPLEMENTED
00781 
00782     WSASetLastError(WSASYSCALLFAILURE);
00783     return SOCKET_ERROR;
00784 }
00785 
00786 
00787 /*
00788  * @unimplemented
00789  */
00790 INT
00791 EXPORT
00792 WSCInstallNameSpace(IN  LPWSTR lpszIdentifier,
00793                     IN  LPWSTR lpszPathName,
00794                     IN  DWORD dwNameSpace,
00795                     IN  DWORD dwVersion,
00796                     IN  LPGUID lpProviderId)
00797 {
00798     UNIMPLEMENTED
00799 
00800     WSASetLastError(WSASYSCALLFAILURE);
00801     return SOCKET_ERROR;
00802 }
00803 
00804 
00805 /*
00806  * @unimplemented
00807  */
00808 INT
00809 EXPORT
00810 WSCUnInstallNameSpace(IN  LPGUID lpProviderId)
00811 {
00812     UNIMPLEMENTED
00813 
00814     WSASetLastError(WSASYSCALLFAILURE);
00815     return SOCKET_ERROR;
00816 }
00817 
00818 
00819 /*
00820  * @unimplemented
00821  */
00822 INT
00823 EXPORT
00824 WSCWriteProviderOrder(IN  LPDWORD lpwdCatalogEntryId,
00825                       IN  DWORD dwNumberOfEntries)
00826 {
00827     UNIMPLEMENTED
00828 
00829     return WSASYSCALLFAILURE;
00830 }
00831 
00832 /*
00833  * @unimplemented
00834  */
00835 INT
00836 EXPORT
00837 WSANSPIoctl(HANDLE           hLookup,
00838             DWORD            dwControlCode,
00839             LPVOID           lpvInBuffer,
00840             DWORD            cbInBuffer,
00841             LPVOID           lpvOutBuffer,
00842             DWORD            cbOutBuffer,
00843             LPDWORD          lpcbBytesReturned,
00844             LPWSACOMPLETION  lpCompletion)
00845 {
00846     UNIMPLEMENTED
00847 
00848     WSASetLastError(WSASYSCALLFAILURE);
00849     return SOCKET_ERROR;
00850 }
00851 
00852 
00853 /*
00854  * @unimplemented
00855  */
00856 INT
00857 EXPORT
00858 WSCUpdateProvider(LPGUID lpProviderId,
00859                   const WCHAR FAR * lpszProviderDllPath,
00860                   const LPWSAPROTOCOL_INFOW lpProtocolInfoList,
00861                   DWORD dwNumberOfEntries,
00862                   LPINT lpErrno)
00863 {
00864     UNIMPLEMENTED
00865 
00866     WSASetLastError(WSASYSCALLFAILURE);
00867     return SOCKET_ERROR;
00868 }
00869 
00870 /*
00871  * @unimplemented
00872  */
00873 INT
00874 EXPORT
00875 WSCWriteNameSpaceOrder(LPGUID lpProviderId,
00876                        DWORD dwNumberOfEntries)
00877 {
00878     UNIMPLEMENTED
00879 
00880     return WSASYSCALLFAILURE;
00881 }
00882 
00883 /*
00884  * @unimplemented
00885  */
00886 INT
00887 EXPORT
00888 getnameinfo(const struct sockaddr FAR * sa,
00889             socklen_t       salen,
00890             char FAR *      host,
00891             DWORD           hostlen,
00892             char FAR *      serv,
00893             DWORD           servlen,
00894             INT             flags)
00895 {
00896     UNIMPLEMENTED
00897 
00898     WSASetLastError(WSASYSCALLFAILURE);
00899     return SOCKET_ERROR;
00900 }
00901 
00902 /*
00903  * @unimplemented
00904  */
00905 VOID EXPORT WEP()
00906 {
00907     UNIMPLEMENTED
00908 }
00909 
00910 /*
00911  * @unimplemented
00912  */
00913 BOOL EXPORT WSApSetPostRoutine(PVOID Routine)
00914 {
00915     UNIMPLEMENTED
00916 
00917     return FALSE;
00918 }
00919 
00920 /*
00921  * @unimplemented
00922  */
00923 INT
00924 EXPORT
00925 GetAddrInfoW(IN PCWSTR pszNodeName,
00926              IN PCWSTR pszServiceName,
00927              IN const ADDRINFOW *ptHints,
00928              OUT PADDRINFOW *pptResult)
00929 {
00930     UNIMPLEMENTED
00931 
00932     WSASetLastError(EAI_FAIL);
00933     return EAI_FAIL;
00934 }
00935 
00936 
00937 /* EOF */

Generated on Sat May 26 2012 04:20:19 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.