• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #pragma once
8 
9 // The UpdateFtpServerTypeHistograms function collects statistics related
10 // to the types of FTP servers that our users are encountering.
11 
12 namespace net {
13 
14 enum FtpServerType {
15   // Record cases in which we couldn't parse the server's response. That means
16   // a server type we don't recognize, a security attack (when what we're
17   // connecting to isn't an FTP server), or a broken server.
18   SERVER_UNKNOWN = 0,
19 
20   // Types 1-8 are RESERVED (were earlier used for listings recognized by
21   // Mozilla's ParseFTPList code).
22 
23   SERVER_LS = 9,        // Server using /bin/ls -l listing style.
24   SERVER_WINDOWS = 10,  // Server using Windows listing style.
25   SERVER_VMS = 11,      // Server using VMS listing style.
26   SERVER_NETWARE = 12,  // Server using Netware listing style.
27 
28   // Types 13-14 are RESERVED (were earlier used for MLSD listings).
29 
30   NUM_OF_SERVER_TYPES
31 };
32 
33 void UpdateFtpServerTypeHistograms(FtpServerType type);
34 
35 }  // namespace net
36 
37 #endif  // NET_FTP_FTP_SERVER_TYPE_HISTOGRAMS_H_
38