From e29bcec693268225f9e66aaa13d1e3a54f55c18f Mon Sep 17 00:00:00 2001 From: midipix Date: Tue, 15 May 2018 19:05:43 +0000 Subject: string interfaces: __ntapi_tt_aligned_block_memlock(): initial integration. --- src/string/ntapi_tt_aligned_block_memlock.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/string/ntapi_tt_aligned_block_memlock.c (limited to 'src/string/ntapi_tt_aligned_block_memlock.c') diff --git a/src/string/ntapi_tt_aligned_block_memlock.c b/src/string/ntapi_tt_aligned_block_memlock.c new file mode 100644 index 0000000..5aa3a7e --- /dev/null +++ b/src/string/ntapi_tt_aligned_block_memlock.c @@ -0,0 +1,23 @@ +/********************************************************/ +/* ntapi: Native API core library */ +/* Copyright (C) 2013--2018 Z. Gilboa */ +/* Released under GPLv2 and GPLv3; see COPYING.NTAPI. */ +/********************************************************/ + +#include +#include +#include +#include + +uintptr_t * __cdecl __ntapi_tt_aligned_block_memlock( + __in uintptr_t * dst, + __in size_t bytes) +{ + size_t addr = (size_t)dst & ~(size_t)(NT_SYNC_BLOCK_SIZE); + size_t cap = addr + bytes; + + for (; addr