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 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_H__ | 7 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_H__ |
8 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_H__ | 8 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_H__ |
9 | 9 |
10 /* Defines the API to the native client validation code. | 10 /* Defines the API to the native client validation code. |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 NACL_TARGET_ARCH, | 79 NACL_TARGET_ARCH, |
80 NACL_TARGET_SUBARCH)( | 80 NACL_TARGET_SUBARCH)( |
81 uintptr_t guest_addr, | 81 uintptr_t guest_addr, |
82 uint8_t *data, | 82 uint8_t *data, |
83 size_t size, | 83 size_t size, |
84 int stubout_mode, | 84 int stubout_mode, |
85 int readonly_text, | 85 int readonly_text, |
86 const NaClCPUFeatures *cpu_features, | 86 const NaClCPUFeatures *cpu_features, |
87 struct NaClValidationCache *cache); | 87 struct NaClValidationCache *cache); |
88 | 88 |
| 89 /* Applies the DFA-based validator as in the ApplyValidator case described |
| 90 * above. The interface of this new validator must remain the same as of the |
| 91 * ApplyValidator. Less arguments will be ignored as the new validator |
| 92 * implements features, such as stubout mode. |
| 93 */ |
| 94 extern NaClValidationStatus NACL_SUBARCH_NAME(ApplyDfaValidator, |
| 95 NACL_TARGET_ARCH, |
| 96 NACL_TARGET_SUBARCH)( |
| 97 uintptr_t guest_addr, |
| 98 uint8_t *data, |
| 99 size_t size, |
| 100 int stubout_mode, |
| 101 int readonly_text, |
| 102 const NaClCPUFeatures *cpu_features, |
| 103 struct NaClValidationCache *cache); |
| 104 |
89 /* Applies the validator, as used in a command-line tool to report issues. | 105 /* Applies the validator, as used in a command-line tool to report issues. |
90 * Note: This is intentionally separated from ApplyValidator, since it need | 106 * Note: This is intentionally separated from ApplyValidator, since it need |
91 * not be performance critical. | 107 * not be performance critical. |
92 * Parameters are: | 108 * Parameters are: |
93 * local_cpu: True if local cpu rules should be applied. | 109 * local_cpu: True if local cpu rules should be applied. |
94 * Otherwise, assume no cpu specific rules. | 110 * Otherwise, assume no cpu specific rules. |
95 * guest_addr - The virtual pc to assume with the beginning address of the | 111 * guest_addr - The virtual pc to assume with the beginning address of the |
96 * code segment. Typically, this is the corresponding addresss that | 112 * code segment. Typically, this is the corresponding addresss that |
97 * will be used by objdump. | 113 * will be used by objdump. |
98 * data - The contents of the code segment to be validated. | 114 * data - The contents of the code segment to be validated. |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
150 NACL_TARGET_SUBARCH)( | 166 NACL_TARGET_SUBARCH)( |
151 uintptr_t guest_addr, | 167 uintptr_t guest_addr, |
152 uint8_t *data_old, | 168 uint8_t *data_old, |
153 uint8_t *data_new, | 169 uint8_t *data_new, |
154 size_t size, | 170 size_t size, |
155 const NaClCPUFeatures *cpu_features); | 171 const NaClCPUFeatures *cpu_features); |
156 | 172 |
157 EXTERN_C_END | 173 EXTERN_C_END |
158 | 174 |
159 #endif /* NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_H__ */ | 175 #endif /* NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_H__ */ |
OLD | NEW |