OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. | 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. |
3 * Use of this source code is governed by a BSD-style license that can be | 3 * Use of this source code is governed by a BSD-style license that can be |
4 * found in the LICENSE file. | 4 * found in the LICENSE file. |
5 */ | 5 */ |
6 | 6 |
7 #include "native_client/src/trusted/validator_arm/ncvalidate.h" | 7 #include "native_client/src/trusted/validator_arm/ncvalidate.h" |
8 | 8 |
9 | 9 |
10 #include <vector> | 10 #include <vector> |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 return 0; | 65 return 0; |
66 } | 66 } |
67 | 67 |
68 NaClValidationStatus NACL_SUBARCH_NAME(ApplyValidator, arm, 32) ( | 68 NaClValidationStatus NACL_SUBARCH_NAME(ApplyValidator, arm, 32) ( |
69 enum NaClSBKind sb_kind, | 69 enum NaClSBKind sb_kind, |
70 NaClApplyValidationKind kind, | 70 NaClApplyValidationKind kind, |
71 uintptr_t guest_addr, | 71 uintptr_t guest_addr, |
72 uint8_t *data, | 72 uint8_t *data, |
73 size_t size, | 73 size_t size, |
74 int bundle_size, | 74 int bundle_size, |
75 NaClCPUFeaturesArm *cpu_features) { | 75 NaClCPUFeaturesArm *cpu_features, |
| 76 struct NaClValidationCache *cache) { |
76 NaClValidationStatus status = NaClValidationFailedNotImplemented; | 77 NaClValidationStatus status = NaClValidationFailedNotImplemented; |
77 UNREFERENCED_PARAMETER(cpu_features); | 78 UNREFERENCED_PARAMETER(cpu_features); |
78 UNREFERENCED_PARAMETER(sb_kind); | 79 UNREFERENCED_PARAMETER(sb_kind); |
| 80 /* The ARM validator is currently unsafe w.r.t. caching. */ |
| 81 UNREFERENCED_PARAMETER(cache); |
79 if (bundle_size == 16) { | 82 if (bundle_size == 16) { |
80 if (kind == NaClApplyCodeValidation) { | 83 if (kind == NaClApplyCodeValidation) { |
81 status = ((0 == NCValidateSegment(data, guest_addr, size)) | 84 status = ((0 == NCValidateSegment(data, guest_addr, size)) |
82 ? NaClValidationSucceeded : NaClValidationFailed); | 85 ? NaClValidationSucceeded : NaClValidationFailed); |
83 } | 86 } |
84 } | 87 } |
85 return status; | 88 return status; |
86 } | 89 } |
87 | 90 |
88 NaClValidationStatus NACL_SUBARCH_NAME(ApplyValidatorCodeReplacement, arm, 32) | 91 NaClValidationStatus NACL_SUBARCH_NAME(ApplyValidatorCodeReplacement, arm, 32) |
(...skipping 26 matching lines...) Expand all Loading... |
115 UNREFERENCED_PARAMETER(guest_addr); | 118 UNREFERENCED_PARAMETER(guest_addr); |
116 UNREFERENCED_PARAMETER(data_old); | 119 UNREFERENCED_PARAMETER(data_old); |
117 UNREFERENCED_PARAMETER(data_new); | 120 UNREFERENCED_PARAMETER(data_new); |
118 UNREFERENCED_PARAMETER(size); | 121 UNREFERENCED_PARAMETER(size); |
119 UNREFERENCED_PARAMETER(bundle_size); | 122 UNREFERENCED_PARAMETER(bundle_size); |
120 UNREFERENCED_PARAMETER(cpu_features); | 123 UNREFERENCED_PARAMETER(cpu_features); |
121 return NaClValidationFailedNotImplemented; | 124 return NaClValidationFailedNotImplemented; |
122 } | 125 } |
123 | 126 |
124 EXTERN_C_END | 127 EXTERN_C_END |
OLD | NEW |