589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync/*
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * HTTP Server API definitions
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync *
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * Copyright (C) 2009 Andrey Turkin
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync *
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * This library is free software; you can redistribute it and/or
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * modify it under the terms of the GNU Lesser General Public
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * License as published by the Free Software Foundation; either
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * version 2.1 of the License, or (at your option) any later version.
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync *
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * This library is distributed in the hope that it will be useful,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * Lesser General Public License for more details.
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync *
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * You should have received a copy of the GNU Lesser General Public
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * License along with this library; if not, write to the Free Software
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync */
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync/*
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
4b9d6701570cb98fd36e209314239d104ec584d3vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * a choice of LGPL license versions is made available with the language indicating
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync * of the LGPL is applied is otherwise unspecified.
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync */
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#ifndef __WINE_HTTP_H
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#define __WINE_HTTP_H
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#include <winsock2.h>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#include <ws2tcpip.h>
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#ifdef __cplusplus
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncextern "C" {
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#endif
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsynctypedef struct _HTTPAPI_VERSION
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync{
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync USHORT HttpApiMajorVersion;
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync USHORT HttpApiMinorVersion;
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync} HTTPAPI_VERSION, *PHTTPAPI_VERSION;
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#define HTTPAPI_VERSION_1 {1,0}
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#define HTTPAPI_VERSION_2 {2,0}
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync/* HttpInitialize and HttpTerminate flags */
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#define HTTP_INITIALIZE_SERVER 0x00000001
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#define HTTP_INITIALIZE_CONFIG 0x00000002
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsynctypedef enum _HTTP_SERVICE_CONFIG_ID
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync{
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync HttpServiceConfigIPListenList,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync HttpServiceConfigSSLCertInfo,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync HttpServiceConfigUrlAclInfo,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync HttpServiceConfigTimeout,
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync HttpServiceConfigMax
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync} HTTP_SERVICE_CONFIG_ID, *PHTTP_SERVICE_CONFIG_ID;
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncULONG WINAPI HttpInitialize(HTTPAPI_VERSION,ULONG,PVOID);
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncULONG WINAPI HttpTerminate(ULONG,PVOID);
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncULONG WINAPI HttpDeleteServiceConfiguration(HANDLE,HTTP_SERVICE_CONFIG_ID,PVOID,ULONG,LPOVERLAPPED);
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncULONG WINAPI HttpQueryServiceConfiguration(HANDLE,HTTP_SERVICE_CONFIG_ID,PVOID,ULONG,PVOID,ULONG,PULONG,LPOVERLAPPED);
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsyncULONG WINAPI HttpSetServiceConfiguration(HANDLE,HTTP_SERVICE_CONFIG_ID,PVOID,ULONG,LPOVERLAPPED);
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#ifdef __cplusplus
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync}
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#endif
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync
589fd26cedb2b4ebbed14f2964cad03cc8ebbca2vboxsync#endif /* __WINE_HTTP_H */