blob: 49994655315f99f33bf9ee006c8891cab33b69a8 [file] [log] [blame]
// Copyright (c) 2010 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_NET_SERVICE_PROVIDERS_WIN_H_
#define CHROME_BROWSER_NET_SERVICE_PROVIDERS_WIN_H_
#include <vector>
#include "base/strings/string16.h"
struct WinsockNamespaceProvider {
base::string16 name;
int version;
bool active;
int type;
};
typedef std::vector<WinsockNamespaceProvider> WinsockNamespaceProviderList;
struct WinsockLayeredServiceProvider {
WinsockLayeredServiceProvider();
WinsockLayeredServiceProvider(const WinsockLayeredServiceProvider& other);
~WinsockLayeredServiceProvider();
base::string16 name;
base::string16 path;
int version;
int chain_length;
int socket_type;
int socket_protocol;
};
typedef std::vector<WinsockLayeredServiceProvider>
WinsockLayeredServiceProviderList;
// Returns all the Winsock namespace providers.
void GetWinsockNamespaceProviders(WinsockNamespaceProviderList* namespace_list);
// Returns all the Winsock layered service providers and their paths.
void GetWinsockLayeredServiceProviders(
WinsockLayeredServiceProviderList* service_list);
#endif // CHROME_BROWSER_NET_SERVICE_PROVIDERS_WIN_H_