diff options
author | wpaul <wpaul@FreeBSD.org> | 2005-11-10 02:22:55 +0000 |
---|---|---|
committer | wpaul <wpaul@FreeBSD.org> | 2005-11-10 02:22:55 +0000 |
commit | 358decbed5c7bc10eb5ed65da5b7581a0fe3a18c (patch) | |
tree | de65c69a9b3937f82fd2452ab35b4db4d53f987b /sys | |
parent | bb06a7834025d8fa0447c1e3e75c895e47730345 (diff) | |
download | FreeBSD-src-358decbed5c7bc10eb5ed65da5b7581a0fe3a18c.zip FreeBSD-src-358decbed5c7bc10eb5ed65da5b7581a0fe3a18c.tar.gz |
Implement RtlZeroMemory() and RtlCopyMemory(). This seems to allow
the Broadcom Win64 wireless driver for the BCM4318 to work on amd64.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/compat/ndis/subr_ntoskrnl.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/sys/compat/ndis/subr_ntoskrnl.c b/sys/compat/ndis/subr_ntoskrnl.c index f221f7f..06d42fb 100644 --- a/sys/compat/ndis/subr_ntoskrnl.c +++ b/sys/compat/ndis/subr_ntoskrnl.c @@ -205,6 +205,8 @@ static void *MmMapLockedPagesSpecifyCache(mdl *, static void MmUnmapLockedPages(void *, mdl *); static uint8_t MmIsAddressValid(void *); static device_t ntoskrnl_finddev(device_t, uint64_t, struct resource **); +static void RtlZeroMemory(void *, size_t); +static void RtlCopyMemory(void *, const void *, size_t); static size_t RtlCompareMemory(const void *, const void *, size_t); static ndis_status RtlUnicodeStringToInteger(unicode_string *, uint32_t, uint32_t *); @@ -2899,6 +2901,25 @@ ExQueueWorkItem(w, qtype) return; } +static void +RtlZeroMemory(dst, len) + void *dst; + size_t len; +{ + bzero(dst, len); + return; +} + +static void +RtlCopyMemory(dst, src, len) + void *dst; + const void *src; + size_t len; +{ + bcopy(src, dst, len); + return; +} + static size_t RtlCompareMemory(s1, s2, len) const void *s1; @@ -4089,6 +4110,8 @@ dummy() image_patch_table ntoskrnl_functbl[] = { + IMPORT_SFUNC(RtlZeroMemory, 2), + IMPORT_SFUNC(RtlCopyMemory, 3), IMPORT_SFUNC(RtlCompareMemory, 3), IMPORT_SFUNC(RtlEqualUnicodeString, 3), IMPORT_SFUNC(RtlCopyUnicodeString, 2), |