File: smb_errors.h

package info (click to toggle)
chromium 139.0.7258.127-1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 6,122,068 kB
  • sloc: cpp: 35,100,771; ansic: 7,163,530; javascript: 4,103,002; python: 1,436,920; asm: 946,517; xml: 746,709; pascal: 187,653; perl: 88,691; sh: 88,436; objc: 79,953; sql: 51,488; cs: 44,583; fortran: 24,137; makefile: 22,147; tcl: 15,277; php: 13,980; yacc: 8,984; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (42 lines) | stat: -rw-r--r-- 2,061 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_BROWSER_ASH_SMB_CLIENT_SMB_ERRORS_H_
#define CHROME_BROWSER_ASH_SMB_CLIENT_SMB_ERRORS_H_

#include "base/files/file.h"
#include "chromeos/ash/components/dbus/smbprovider/smb_provider_client.h"

namespace ash::smb_client {

// These values are written to logs. New enum values may be added, but existing
// enums must never be renumbered or values reused. Must be kept in sync
// with the SmbMountResult enum in
// ash/webui/common/resources/smb_shares/smb_browser_proxy.js
// and the NativeSmbFileShare_MountResult enum in enums.xml.
enum class SmbMountResult {
  kSuccess = 0,                 // Mount succeeded.
  kUnknownFailure = 1,          // Mount failed in an unrecognized way.
  kAuthenticationFailed = 2,    // Authentication to the share failed.
  kNotFound = 3,                // The specified share was not found.
  kUnsupportedDevice = 4,       // The specified share is not supported.
  kMountExists = 5,             // The specified share is already mounted.
  kInvalidUrl = 6,              // The mount URL is an invalid SMB URL.
  kInvalidOperation = 7,        // libsmbclient returned invalid operation.
  kDbusParseFailed = 8,         // Parsing the D-Bus message or response failed.
  kOutOfMemory = 9,             // The share is out of memory or storage.
  kAborted = 10,                // The operation was aborted.
  kIoError = 11,                // An I/O error occurred.
  kTooManyOpened = 12,          // There are too many shares open.
  kInvalidSsoUrl = 13,          // The share URL is not valid when using SSO.
  kInvalidUsername = 14,        // The username is invalid.
  kMaxValue = kInvalidUsername  // Max enum value for use in metrics.
};

// Translates an smbprovider::ErrorType to an SmbMountResult.
SmbMountResult TranslateErrorToMountResult(smbprovider::ErrorType error);

}  // namespace ash::smb_client

#endif  // CHROME_BROWSER_ASH_SMB_CLIENT_SMB_ERRORS_H_