1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_NET_SERVICE_PROVIDERS_WIN_H_ 6 #define CHROME_BROWSER_NET_SERVICE_PROVIDERS_WIN_H_ 7 #pragma once 8 9 #include <vector> 10 11 class Value; 12 13 struct WinsockNamespaceProvider { 14 std::wstring name; 15 int version; 16 bool active; 17 int type; 18 }; 19 typedef std::vector<WinsockNamespaceProvider> WinsockNamespaceProviderList; 20 21 struct WinsockLayeredServiceProvider { 22 std::wstring name; 23 std::wstring path; 24 int version; 25 int chain_length; 26 int socket_type; 27 int socket_protocol; 28 }; 29 typedef std::vector<WinsockLayeredServiceProvider> 30 WinsockLayeredServiceProviderList; 31 32 // Returns all the Winsock namespace providers. 33 void GetWinsockNamespaceProviders( 34 WinsockNamespaceProviderList* namespace_list); 35 36 // Returns all the Winsock layered service providers and their paths. 37 void GetWinsockLayeredServiceProviders( 38 WinsockLayeredServiceProviderList* service_list); 39 40 #endif // CHROME_BROWSER_NET_SERVICE_PROVIDERS_WIN_H_ 41 42