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.
4
5#include "ppapi/proxy/error_conversion.h"
6
7#include "ppapi/c/pp_errors.h"
8
9namespace ppapi {
10namespace proxy {
11
12int32_t ConvertNetworkAPIErrorForCompatibility(int32_t pp_error,
13                                               bool private_api) {
14  // The private API doesn't return network-specific error codes or
15  // PP_ERROR_NOACCESS. In order to preserve the behavior, we convert those to
16  // PP_ERROR_FAILED.
17  if (private_api &&
18      (pp_error <= PP_ERROR_CONNECTION_CLOSED ||
19       pp_error == PP_ERROR_NOACCESS)) {
20    return PP_ERROR_FAILED;
21  }
22  return pp_error;
23}
24
25}  // namespace proxy
26}  // namespace ppapi
27