Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Side by Side Diff: src/trusted/validator_x86/ncvalidate_iter.h

Issue 3975001: Dynamic code modification support for x64 NaCl modules... (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: '' Created 10 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright 2009 The Native Client Authors. All rights reserved. 2 * Copyright 2009 The Native Client Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can 3 * Use of this source code is governed by a BSD-style license that can
4 * be found in the LICENSE file. 4 * be found in the LICENSE file.
5 */ 5 */
6 6
7 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_ITER_H__ 7 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_ITER_H__
8 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_ITER_H__ 8 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_ITER_H__
9 9
10 /* 10 /*
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after
188 * vbase - The virtual address associated with the beginning of the code 188 * vbase - The virtual address associated with the beginning of the code
189 * segment. 189 * segment.
190 * sz - The number of bytes in the code segment. 190 * sz - The number of bytes in the code segment.
191 * state - The validator state to use while validating. 191 * state - The validator state to use while validating.
192 */ 192 */
193 void NaClValidateSegment(uint8_t* mbase, 193 void NaClValidateSegment(uint8_t* mbase,
194 NaClPcAddress vbase, 194 NaClPcAddress vbase,
195 NaClMemorySize sz, 195 NaClMemorySize sz,
196 NaClValidatorState* state); 196 NaClValidatorState* state);
197 197
198 /* Validate a segment for dynamic code replacement
bsy 2010/11/11 21:27:21 /* * comment text starts on this line, not above.
petr 2010/11/12 18:11:06 Done.
199 * Checks if code at mbase_old can be replaced with code at mbase_new
200 * Note that mbase_old was validated when it was inserted originally.
201 * If validation fails, state->validates_ok will be set to false.
202 * Parameters:
203 * mbase_old - The address of the beginning of the code segment to be
204 * replaced
205 * mbase_new - The address of the code segment that replaces the old
206 * segment
207 * vbase - Virtual address that is associated with both segments
208 * size - Length of the code segments (the segments must be of the same
209 * size)
210 * state - The validator state to use while validating *new* segment
211 */
212 void NaClValidateSegmentPair(uint8_t *mbase_old,
213 uint8_t *mbase_new,
214 NaClPcAddress vbase,
215 size_t size,
216 struct NaClValidatorState *state);
217
198 /* Returns true if the validator hasn't found any problems with the validated 218 /* Returns true if the validator hasn't found any problems with the validated
199 * code segments. 219 * code segments.
200 * Parameters: 220 * Parameters:
201 * state - The validator state used to validate code segments. 221 * state - The validator state used to validate code segments.
202 * Returns: 222 * Returns:
203 * true only if no problems have been found. 223 * true only if no problems have been found.
204 */ 224 */
205 Bool NaClValidatesOk(NaClValidatorState* state); 225 Bool NaClValidatesOk(NaClValidatorState* state);
206 226
207 /* Cleans up and returns the memory created by the corresponding 227 /* Cleans up and returns the memory created by the corresponding
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 void NaClValidatorInstMessage(int level, 363 void NaClValidatorInstMessage(int level,
344 NaClValidatorState* state, 364 NaClValidatorState* state,
345 NaClInstState* inst, 365 NaClInstState* inst,
346 const char* format, 366 const char* format,
347 ...) ATTRIBUTE_FORMAT_PRINTF(4, 5); 367 ...) ATTRIBUTE_FORMAT_PRINTF(4, 5);
348 368
349 /* Returns true if the validator should quit due to previous errors. */ 369 /* Returns true if the validator should quit due to previous errors. */
350 Bool NaClValidatorQuit(NaClValidatorState* state); 370 Bool NaClValidatorQuit(NaClValidatorState* state);
351 371
352 #endif /* NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_ITER_H__ */ 372 #endif /* NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVALIDATE_ITER_H__ */
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698