RtlConvertUlongToLargeInteger and RtlConvertLongToLargeInteger are
obsolete NT routines that assign a 32-bit integer to LARGE_INTEGER.QuadPart.
Replace all driver/DLL usages with inline .QuadPart assignments or
standard C/C++ casts. This removes unnecessary function calls.
CORE-19438
CORE-20300
- `NdisRegisterProtocol()`: Add a comment about `NDIS51`: the
`NDIS50_PROTOCOL_CHARACTERISTICS` structure is common to both
NDIS 5.0 and 5.1.
This is in contrast to the `NDIS50/NDIS51_MINIPORT_CHARACTERISTICS`
structures, see for example commit 3e169e3cb2 (r49961).
- Remove obsolete SOURCES file. Addendum to commit d9e83ed22d (r40142).
- Let it be `"NDIS"`, instead of variations of `"SIMN"`.
- Use matching `ExFreePoolWithTag()`.
- Remove a redundant `KeyInformation = NULL;`.
Addendum to commits e8861acfb2 (r12196) and 5658b2154c (r53045).
CORE-18791
The function should return the kernel time for the idle thread in the
first argument, and kernel time + user time for the current thread in
the second argument.
Also retrieve the processor number from the cached PRCB instead of
calling KeGetCurrentProcessorNumber() which retrieves the PRCB again
since the processor could switch in-between those calls.
NdisGetCurrentProcessorCounts() function follows the same prototype
which is the correct one.
There is no need to compile our DLLs as shared libraries since we are
managing symbols exports and imports through spec files.
On my system, this reduces the configure-time by a factor of two.