Module: wine Branch: master Commit: 3a493d7782b56ce0c55cda60271be75843d7104d URL: http://source.winehq.org/git/wine.git/?a=commit;h=3a493d7782b56ce0c55cda6027...
Author: Juan Lang juan.lang@gmail.com Date: Tue Aug 4 10:44:06 2009 -0700
secur32: Sanity check handle index before indexing table.
---
dlls/secur32/schannel.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/dlls/secur32/schannel.c b/dlls/secur32/schannel.c index 8f127e6..b9644e3 100644 --- a/dlls/secur32/schannel.c +++ b/dlls/secur32/schannel.c @@ -165,6 +165,7 @@ static void *schan_free_handle(ULONG_PTR handle_idx, enum schan_handle_type type void *object;
if (handle_idx == SCHAN_INVALID_HANDLE) return NULL; + if (handle_idx >= schan_handle_count) return NULL; handle = &schan_handle_table[handle_idx]; if (handle->type != type) { @@ -185,6 +186,7 @@ static void *schan_get_object(ULONG_PTR handle_idx, enum schan_handle_type type) struct schan_handle *handle;
if (handle_idx == SCHAN_INVALID_HANDLE) return NULL; + if (handle_idx >= schan_handle_count) return NULL; handle = &schan_handle_table[handle_idx]; if (handle->type != type) {