Roll src/third_party/skia 1107e90:06f3647
[chromium-blink-merge.git] / ppapi / host / error_conversion.cc
blobf97b121b9c04c36ee2528f0dd2598ac6a264794a
1 // Copyright 2013 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.
5 #include "ppapi/host/error_conversion.h"
7 #include "base/numerics/safe_conversions.h"
8 #include "net/base/net_errors.h"
9 #include "ppapi/c/pp_errors.h"
11 namespace ppapi {
12 namespace host {
14 int32_t NetErrorToPepperError(int net_error) {
15 if (net_error > 0)
16 return base::checked_cast<int32_t>(net_error);
18 switch (net_error) {
19 case net::OK:
20 return PP_OK;
21 case net::ERR_IO_PENDING:
22 return PP_OK_COMPLETIONPENDING;
23 case net::ERR_ABORTED:
24 return PP_ERROR_ABORTED;
25 case net::ERR_INVALID_ARGUMENT:
26 return PP_ERROR_BADARGUMENT;
27 case net::ERR_INVALID_HANDLE:
28 return PP_ERROR_BADARGUMENT;
29 case net::ERR_FILE_NOT_FOUND:
30 return PP_ERROR_FILENOTFOUND;
31 case net::ERR_TIMED_OUT:
32 return PP_ERROR_TIMEDOUT;
33 case net::ERR_FILE_TOO_BIG:
34 return PP_ERROR_FILETOOBIG;
35 case net::ERR_ACCESS_DENIED:
36 return PP_ERROR_NOACCESS;
37 case net::ERR_NOT_IMPLEMENTED:
38 return PP_ERROR_NOTSUPPORTED;
39 case net::ERR_OUT_OF_MEMORY:
40 return PP_ERROR_NOMEMORY;
41 case net::ERR_FILE_EXISTS:
42 return PP_ERROR_FILEEXISTS;
43 case net::ERR_FILE_NO_SPACE:
44 return PP_ERROR_NOSPACE;
45 case net::ERR_CONNECTION_CLOSED:
46 return PP_ERROR_CONNECTION_CLOSED;
47 case net::ERR_CONNECTION_RESET:
48 return PP_ERROR_CONNECTION_RESET;
49 case net::ERR_CONNECTION_REFUSED:
50 return PP_ERROR_CONNECTION_REFUSED;
51 case net::ERR_CONNECTION_ABORTED:
52 return PP_ERROR_CONNECTION_ABORTED;
53 case net::ERR_CONNECTION_FAILED:
54 return PP_ERROR_CONNECTION_FAILED;
55 case net::ERR_NAME_NOT_RESOLVED:
56 case net::ERR_ICANN_NAME_COLLISION:
57 return PP_ERROR_NAME_NOT_RESOLVED;
58 case net::ERR_ADDRESS_INVALID:
59 return PP_ERROR_ADDRESS_INVALID;
60 case net::ERR_ADDRESS_UNREACHABLE:
61 return PP_ERROR_ADDRESS_UNREACHABLE;
62 case net::ERR_CONNECTION_TIMED_OUT:
63 return PP_ERROR_CONNECTION_TIMEDOUT;
64 case net::ERR_NETWORK_ACCESS_DENIED:
65 return PP_ERROR_NOACCESS;
66 case net::ERR_MSG_TOO_BIG:
67 return PP_ERROR_MESSAGE_TOO_BIG;
68 case net::ERR_ADDRESS_IN_USE:
69 return PP_ERROR_ADDRESS_IN_USE;
70 default:
71 return PP_ERROR_FAILED;
75 } // namespace host
76 } // namespace ppapi