1// Copyright (c) 2009 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 NET_FTP_FTP_SERVER_TYPE_HISTOGRAMS_H_
6#define NET_FTP_FTP_SERVER_TYPE_HISTOGRAMS_H_
7
8// The UpdateFtpServerTypeHistograms function collects statistics related
9// to the types of FTP servers that our users are encountering.
10
11namespace net {
12
13enum FtpServerType {
14  // Record cases in which we couldn't parse the server's response. That means
15  // a server type we don't recognize, a security attack (when what we're
16  // connecting to isn't an FTP server), or a broken server.
17  SERVER_UNKNOWN = 0,
18
19  SERVER_LS = 1,       // Server using /bin/ls -l listing style.
20  SERVER_WINDOWS = 2,  // Server using Windows listing style.
21  SERVER_VMS = 3,      // Server using VMS listing style.
22  SERVER_NETWARE = 4,  // Server using Netware listing style.
23  SERVER_OS2 = 5,      // Server using OS/2 listing style.
24
25  NUM_OF_SERVER_TYPES
26};
27
28void UpdateFtpServerTypeHistograms(FtpServerType type);
29
30}  // namespace net
31
32#endif  // NET_FTP_FTP_SERVER_TYPE_HISTOGRAMS_H_
33