iptypes.h revision b955672b950093ff7416d1269dd4d3b69983bd8f
af062818b47340eef15700d2f0211576ba3506eevboxsync/* WINE iptypes.h
af062818b47340eef15700d2f0211576ba3506eevboxsync * Copyright (C) 2003 Juan Lang
af062818b47340eef15700d2f0211576ba3506eevboxsync *
af062818b47340eef15700d2f0211576ba3506eevboxsync * This library is free software; you can redistribute it and/or
af062818b47340eef15700d2f0211576ba3506eevboxsync * modify it under the terms of the GNU Lesser General Public
af062818b47340eef15700d2f0211576ba3506eevboxsync * License as published by the Free Software Foundation; either
af062818b47340eef15700d2f0211576ba3506eevboxsync * version 2.1 of the License, or (at your option) any later version.
af062818b47340eef15700d2f0211576ba3506eevboxsync *
af062818b47340eef15700d2f0211576ba3506eevboxsync * This library is distributed in the hope that it will be useful,
af062818b47340eef15700d2f0211576ba3506eevboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
af062818b47340eef15700d2f0211576ba3506eevboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
af062818b47340eef15700d2f0211576ba3506eevboxsync * Lesser General Public License for more details.
af062818b47340eef15700d2f0211576ba3506eevboxsync *
af062818b47340eef15700d2f0211576ba3506eevboxsync * You should have received a copy of the GNU Lesser General Public
af062818b47340eef15700d2f0211576ba3506eevboxsync * License along with this library; if not, write to the Free Software
af062818b47340eef15700d2f0211576ba3506eevboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
af062818b47340eef15700d2f0211576ba3506eevboxsync */
af062818b47340eef15700d2f0211576ba3506eevboxsync
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync/*
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * other than GPL or LGPL is available it will apply instead, Sun elects to use only
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * a choice of LGPL license versions is made available with the language indicating
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync * of the LGPL is applied is otherwise unspecified.
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync */
b955672b950093ff7416d1269dd4d3b69983bd8fvboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#ifndef WINE_IPTYPES_H_
af062818b47340eef15700d2f0211576ba3506eevboxsync#define WINE_IPTYPES_H_
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#include <time.h>
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define MAX_ADAPTER_DESCRIPTION_LENGTH 128
af062818b47340eef15700d2f0211576ba3506eevboxsync#define MAX_ADAPTER_NAME_LENGTH 256
af062818b47340eef15700d2f0211576ba3506eevboxsync#define MAX_ADAPTER_ADDRESS_LENGTH 8
af062818b47340eef15700d2f0211576ba3506eevboxsync#define MAX_HOSTNAME_LEN 128
af062818b47340eef15700d2f0211576ba3506eevboxsync#define MAX_DOMAIN_NAME_LEN 128
af062818b47340eef15700d2f0211576ba3506eevboxsync#define MAX_SCOPE_ID_LEN 256
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#define BROADCAST_NODETYPE 1
af062818b47340eef15700d2f0211576ba3506eevboxsync#define PEER_TO_PEER_NODETYPE 2
af062818b47340eef15700d2f0211576ba3506eevboxsync#define MIXED_NODETYPE 4
af062818b47340eef15700d2f0211576ba3506eevboxsync#define HYBRID_NODETYPE 8
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct {
af062818b47340eef15700d2f0211576ba3506eevboxsync char String[4 * 4];
af062818b47340eef15700d2f0211576ba3506eevboxsync} IP_ADDRESS_STRING, *PIP_ADDRESS_STRING, IP_MASK_STRING, *PIP_MASK_STRING;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct _IP_ADDR_STRING {
af062818b47340eef15700d2f0211576ba3506eevboxsync struct _IP_ADDR_STRING* Next;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_ADDRESS_STRING IpAddress;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_MASK_STRING IpMask;
af062818b47340eef15700d2f0211576ba3506eevboxsync DWORD Context;
af062818b47340eef15700d2f0211576ba3506eevboxsync} IP_ADDR_STRING, *PIP_ADDR_STRING;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct _IP_ADAPTER_INFO {
af062818b47340eef15700d2f0211576ba3506eevboxsync struct _IP_ADAPTER_INFO* Next;
af062818b47340eef15700d2f0211576ba3506eevboxsync DWORD ComboIndex;
af062818b47340eef15700d2f0211576ba3506eevboxsync char AdapterName[MAX_ADAPTER_NAME_LENGTH + 4];
af062818b47340eef15700d2f0211576ba3506eevboxsync char Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4];
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT AddressLength;
af062818b47340eef15700d2f0211576ba3506eevboxsync BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH];
af062818b47340eef15700d2f0211576ba3506eevboxsync DWORD Index;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT Type;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT DhcpEnabled;
af062818b47340eef15700d2f0211576ba3506eevboxsync PIP_ADDR_STRING CurrentIpAddress;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_ADDR_STRING IpAddressList;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_ADDR_STRING GatewayList;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_ADDR_STRING DhcpServer;
af062818b47340eef15700d2f0211576ba3506eevboxsync BOOL HaveWins;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_ADDR_STRING PrimaryWinsServer;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_ADDR_STRING SecondaryWinsServer;
af062818b47340eef15700d2f0211576ba3506eevboxsync time_t LeaseObtained;
af062818b47340eef15700d2f0211576ba3506eevboxsync time_t LeaseExpires;
af062818b47340eef15700d2f0211576ba3506eevboxsync} IP_ADAPTER_INFO, *PIP_ADAPTER_INFO;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct _IP_PER_ADAPTER_INFO {
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT AutoconfigEnabled;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT AutoconfigActive;
af062818b47340eef15700d2f0211576ba3506eevboxsync PIP_ADDR_STRING CurrentDnsServer;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_ADDR_STRING DnsServerList;
af062818b47340eef15700d2f0211576ba3506eevboxsync} IP_PER_ADAPTER_INFO, *PIP_PER_ADAPTER_INFO;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsynctypedef struct {
af062818b47340eef15700d2f0211576ba3506eevboxsync char HostName[MAX_HOSTNAME_LEN + 4] ;
af062818b47340eef15700d2f0211576ba3506eevboxsync char DomainName[MAX_DOMAIN_NAME_LEN + 4];
af062818b47340eef15700d2f0211576ba3506eevboxsync PIP_ADDR_STRING CurrentDnsServer;
af062818b47340eef15700d2f0211576ba3506eevboxsync IP_ADDR_STRING DnsServerList;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT NodeType;
af062818b47340eef15700d2f0211576ba3506eevboxsync char ScopeId[MAX_SCOPE_ID_LEN + 4];
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT EnableRouting;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT EnableProxy;
af062818b47340eef15700d2f0211576ba3506eevboxsync UINT EnableDns;
af062818b47340eef15700d2f0211576ba3506eevboxsync} FIXED_INFO, *PFIXED_INFO;
af062818b47340eef15700d2f0211576ba3506eevboxsync
af062818b47340eef15700d2f0211576ba3506eevboxsync#endif /* WINE_IPTYPES_H_*/