diff options
author | cvs2svn <> | 2008-12-22 22:45:57 +0300 |
---|---|---|
committer | cvs2svn <> | 2008-12-22 22:45:57 +0300 |
commit | 0f285615efa16c783821cd87a1fdabe4913da9a7 (patch) | |
tree | 0108a4b20fb3c5414c4e221ff251a92050bd104d /winsup/w32api/include/ddk/ndis.h | |
parent | 272fac20e743611550c6fad64f054934da6fd4bc (diff) |
This commit was manufactured by cvs2svn to create branch 'newlib-newlib-1_17_0
1_17_0-arc'.
Sprout from master 2008-12-22 19:45:56 UTC Jeff Johnston <jjohnstn@redhat.com> ''
Cherrypick from cygnus 1999-05-03 07:29:06 UTC Richard Henderson <rth@redhat.com> '19990502 sourceware import':
README
config/mt-d30v
config/mt-netware
config/mt-ospace
etc/add-log.el
etc/add-log.vi
etc/configbuild.ein
etc/configbuild.fig
etc/configbuild.jin
etc/configbuild.tin
etc/configdev.ein
etc/configdev.fig
etc/configdev.jin
etc/configdev.tin
makefile.vms
Delete:
djunpack.bat
include/COPYING
include/COPYING3
include/ChangeLog
include/ChangeLog-9103
include/MAINTAINERS
include/alloca-conf.h
include/ansidecl.h
include/aout/ChangeLog
include/aout/adobe.h
include/aout/aout64.h
include/aout/ar.h
include/aout/dynix3.h
include/aout/encap.h
include/aout/host.h
include/aout/hp.h
include/aout/hp300hpux.h
include/aout/hppa.h
include/aout/ranlib.h
include/aout/reloc.h
include/aout/stab.def
include/aout/stab_gnu.h
include/aout/sun4.h
include/bfdlink.h
include/binary-io.h
include/bout.h
include/coff/ChangeLog
include/coff/ChangeLog-9103
include/coff/alpha.h
include/coff/apollo.h
include/coff/arm.h
include/coff/aux-coff.h
include/coff/ecoff.h
include/coff/external.h
include/coff/go32exe.h
include/coff/h8300.h
include/coff/h8500.h
include/coff/i386.h
include/coff/i860.h
include/coff/i960.h
include/coff/ia64.h
include/coff/internal.h
include/coff/m68k.h
include/coff/m88k.h
include/coff/maxq.h
include/coff/mcore.h
include/coff/mips.h
include/coff/mipspe.h
include/coff/or32.h
include/coff/pe.h
include/coff/powerpc.h
include/coff/rs6000.h
include/coff/rs6k64.h
include/coff/sh.h
include/coff/sparc.h
include/coff/sym.h
include/coff/symconst.h
include/coff/ti.h
include/coff/tic30.h
include/coff/tic4x.h
include/coff/tic54x.h
include/coff/tic80.h
include/coff/w65.h
include/coff/we32k.h
include/coff/x86_64.h
include/coff/xcoff.h
include/coff/z80.h
include/coff/z8k.h
include/demangle.h
include/dis-asm.h
include/dyn-string.h
include/elf/ChangeLog
include/elf/ChangeLog-9103
include/elf/alpha.h
include/elf/arc.h
include/elf/arm.h
include/elf/avr.h
include/elf/bfin.h
include/elf/common.h
include/elf/cr16.h
include/elf/cr16c.h
include/elf/cris.h
include/elf/crx.h
include/elf/d10v.h
include/elf/d30v.h
include/elf/dlx.h
include/elf/dwarf.h
include/elf/dwarf2.h
include/elf/external.h
include/elf/fr30.h
include/elf/frv.h
include/elf/h8.h
include/elf/hppa.h
include/elf/i370.h
include/elf/i386.h
include/elf/i860.h
include/elf/i960.h
include/elf/ia64.h
include/elf/internal.h
include/elf/ip2k.h
include/elf/iq2000.h
include/elf/m32c.h
include/elf/m32r.h
include/elf/m68hc11.h
include/elf/m68k.h
include/elf/mcore.h
include/elf/mep.h
include/elf/mips.h
include/elf/mmix.h
include/elf/mn10200.h
include/elf/mn10300.h
include/elf/msp430.h
include/elf/mt.h
include/elf/openrisc.h
include/elf/or32.h
include/elf/pj.h
include/elf/ppc.h
include/elf/ppc64.h
include/elf/reloc-macros.h
include/elf/s390.h
include/elf/score.h
include/elf/sh.h
include/elf/sparc.h
include/elf/spu.h
include/elf/v850.h
include/elf/vax.h
include/elf/vxworks.h
include/elf/x86-64.h
include/elf/xc16x.h
include/elf/xstormy16.h
include/elf/xtensa.h
include/fibheap.h
include/filenames.h
include/floatformat.h
include/fnmatch.h
include/fopen-bin.h
include/fopen-same.h
include/fopen-vms.h
include/gdb/ChangeLog
include/gdb/callback.h
include/gdb/fileio.h
include/gdb/remote-sim.h
include/gdb/signals.h
include/gdb/sim-arm.h
include/gdb/sim-cr16.h
include/gdb/sim-d10v.h
include/gdb/sim-frv.h
include/gdb/sim-h8300.h
include/gdb/sim-m32c.h
include/gdb/sim-ppc.h
include/gdb/sim-sh.h
include/gdbm.h
include/getopt.h
include/hashtab.h
include/hp-symtab.h
include/ieee.h
include/libiberty.h
include/md5.h
include/nlm/ChangeLog
include/nlm/alpha-ext.h
include/nlm/common.h
include/nlm/external.h
include/nlm/i386-ext.h
include/nlm/internal.h
include/nlm/ppc-ext.h
include/nlm/sparc32-ext.h
include/oasys.h
include/objalloc.h
include/obstack.h
include/opcode/ChangeLog
include/opcode/ChangeLog-9103
include/opcode/alpha.h
include/opcode/arc.h
include/opcode/arm.h
include/opcode/avr.h
include/opcode/bfin.h
include/opcode/cgen-bitset.h
include/opcode/cgen.h
include/opcode/convex.h
include/opcode/cr16.h
include/opcode/cris.h
include/opcode/crx.h
include/opcode/d10v.h
include/opcode/d30v.h
include/opcode/dlx.h
include/opcode/h8300.h
include/opcode/hppa.h
include/opcode/i370.h
include/opcode/i386.h
include/opcode/i860.h
include/opcode/i960.h
include/opcode/ia64.h
include/opcode/m68hc11.h
include/opcode/m68k.h
include/opcode/m88k.h
include/opcode/maxq.h
include/opcode/mips.h
include/opcode/mmix.h
include/opcode/mn10200.h
include/opcode/mn10300.h
include/opcode/msp430.h
include/opcode/np1.h
include/opcode/ns32k.h
include/opcode/or32.h
include/opcode/pdp11.h
include/opcode/pj.h
include/opcode/pn.h
include/opcode/ppc.h
include/opcode/pyr.h
include/opcode/s390.h
include/opcode/score-datadep.h
include/opcode/score-inst.h
include/opcode/sparc.h
include/opcode/spu-insns.h
include/opcode/spu.h
include/opcode/tahoe.h
include/opcode/tic30.h
include/opcode/tic4x.h
include/opcode/tic54x.h
include/opcode/tic80.h
include/opcode/v850.h
include/opcode/vax.h
include/os9k.h
include/partition.h
include/plugin-api.h
include/progress.h
include/safe-ctype.h
include/sha1.h
include/sort.h
include/splay-tree.h
include/symcat.h
include/xregex.h
include/xregex2.h
include/xtensa-config.h
include/xtensa-isa-internal.h
include/xtensa-isa.h
winsup/COPYING
winsup/CYGWIN_LICENSE
winsup/ChangeLog
winsup/Makefile.common
winsup/Makefile.in
winsup/README
winsup/acinclude.m4
winsup/aclocal.m4
winsup/configure
winsup/configure.in
winsup/cygserver/ChangeLog
winsup/cygserver/Makefile.in
winsup/cygserver/README
winsup/cygserver/aclocal.m4
winsup/cygserver/bsd_helper.cc
winsup/cygserver/bsd_helper.h
winsup/cygserver/bsd_log.cc
winsup/cygserver/bsd_log.h
winsup/cygserver/bsd_mutex.cc
winsup/cygserver/bsd_mutex.h
winsup/cygserver/client.cc
winsup/cygserver/configure
winsup/cygserver/configure.in
winsup/cygserver/cygserver-config
winsup/cygserver/cygserver.cc
winsup/cygserver/cygserver.conf
winsup/cygserver/msg.cc
winsup/cygserver/process.cc
winsup/cygserver/process.h
winsup/cygserver/sem.cc
winsup/cygserver/setpwd.cc
winsup/cygserver/shm.cc
winsup/cygserver/sysv_msg.cc
winsup/cygserver/sysv_sem.cc
winsup/cygserver/sysv_shm.cc
winsup/cygserver/threaded_queue.cc
winsup/cygserver/threaded_queue.h
winsup/cygserver/transport.cc
winsup/cygserver/transport.h
winsup/cygserver/transport_pipes.cc
winsup/cygserver/transport_pipes.h
winsup/cygserver/woutsup.h
winsup/cygwin/ChangeLog
winsup/cygwin/ChangeLog-1995
winsup/cygwin/ChangeLog-1996
winsup/cygwin/ChangeLog-1997
winsup/cygwin/ChangeLog-1998
winsup/cygwin/ChangeLog-1999
winsup/cygwin/ChangeLog-2000
winsup/cygwin/ChangeLog-2001
winsup/cygwin/ChangeLog-2002
winsup/cygwin/ChangeLog-2003
winsup/cygwin/ChangeLog-2004
winsup/cygwin/ChangeLog-2005
winsup/cygwin/ChangeLog-2006
winsup/cygwin/ChangeLog-2007
winsup/cygwin/Makefile.in
winsup/cygwin/ROADMAP
winsup/cygwin/acconfig.h
winsup/cygwin/aclocal.m4
winsup/cygwin/analyze_sigfe
winsup/cygwin/assert.cc
winsup/cygwin/autoload.cc
winsup/cygwin/automode.c
winsup/cygwin/binmode.c
winsup/cygwin/child_info.h
winsup/cygwin/config.h.in
winsup/cygwin/config/i386/profile.h
winsup/cygwin/configure
winsup/cygwin/configure.in
winsup/cygwin/cpuid.h
winsup/cygwin/crt0.c
winsup/cygwin/ctype.cc
winsup/cygwin/cxx.cc
winsup/cygwin/cygerrno.h
winsup/cygwin/cygheap.cc
winsup/cygwin/cygheap.h
winsup/cygwin/cyglsa.h
winsup/cygwin/cygmagic
winsup/cygwin/cygmalloc.h
winsup/cygwin/cygserver.h
winsup/cygwin/cygserver_ipc.h
winsup/cygwin/cygserver_msg.h
winsup/cygwin/cygserver_sem.h
winsup/cygwin/cygserver_setpwd.h
winsup/cygwin/cygserver_shm.h
winsup/cygwin/cygthread.cc
winsup/cygwin/cygthread.h
winsup/cygwin/cygtls.cc
winsup/cygwin/cygtls.h
winsup/cygwin/cygwin-shilka
winsup/cygwin/cygwin.din
winsup/cygwin/cygwin.sc
winsup/cygwin/cygwin_version.h
winsup/cygwin/dcrt0.cc
winsup/cygwin/debug.cc
winsup/cygwin/debug.h
winsup/cygwin/devices.cc
winsup/cygwin/devices.h
winsup/cygwin/devices.in
winsup/cygwin/dir.cc
winsup/cygwin/dlfcn.cc
winsup/cygwin/dll_init.cc
winsup/cygwin/dll_init.h
winsup/cygwin/dll_init.sgml
winsup/cygwin/dllfixdbg
winsup/cygwin/dlmalloc.c
winsup/cygwin/dlmalloc.h
winsup/cygwin/dtable.cc
winsup/cygwin/dtable.h
winsup/cygwin/dtable.sgml
winsup/cygwin/environ.cc
winsup/cygwin/environ.h
winsup/cygwin/errno.cc
winsup/cygwin/exceptions.cc
winsup/cygwin/exec.cc
winsup/cygwin/external.cc
winsup/cygwin/external.sgml
winsup/cygwin/fcntl.cc
winsup/cygwin/fhandler.cc
winsup/cygwin/fhandler.h
winsup/cygwin/fhandler_clipboard.cc
winsup/cygwin/fhandler_console.cc
winsup/cygwin/fhandler_disk_file.cc
winsup/cygwin/fhandler_dsp.cc
winsup/cygwin/fhandler_fifo.cc
winsup/cygwin/fhandler_floppy.cc
winsup/cygwin/fhandler_mailslot.cc
winsup/cygwin/fhandler_mem.cc
winsup/cygwin/fhandler_netdrive.cc
winsup/cygwin/fhandler_nodevice.cc
winsup/cygwin/fhandler_proc.cc
winsup/cygwin/fhandler_process.cc
winsup/cygwin/fhandler_procnet.cc
winsup/cygwin/fhandler_random.cc
winsup/cygwin/fhandler_raw.cc
winsup/cygwin/fhandler_registry.cc
winsup/cygwin/fhandler_serial.cc
winsup/cygwin/fhandler_socket.cc
winsup/cygwin/fhandler_tape.cc
winsup/cygwin/fhandler_termios.cc
winsup/cygwin/fhandler_tty.cc
winsup/cygwin/fhandler_virtual.cc
winsup/cygwin/fhandler_windows.cc
winsup/cygwin/fhandler_zero.cc
winsup/cygwin/flock.cc
winsup/cygwin/fork.cc
winsup/cygwin/gcrt0.c
winsup/cygwin/gendef
winsup/cygwin/gendevices
winsup/cygwin/gentls_offsets
winsup/cygwin/glob.cc
winsup/cygwin/gmon.c
winsup/cygwin/gmon.h
winsup/cygwin/grp.cc
winsup/cygwin/heap.cc
winsup/cygwin/heap.h
winsup/cygwin/hires.h
winsup/cygwin/hookapi.cc
winsup/cygwin/how-autoload-works.txt
winsup/cygwin/how-cygheap-works.txt
winsup/cygwin/how-cygtls-works.txt
winsup/cygwin/how-fhandlers-work.txt
winsup/cygwin/how-signals-work.txt
winsup/cygwin/how-spawn-works.txt
winsup/cygwin/how-to-debug-cygwin.txt
winsup/cygwin/how-vfork-works.txt
winsup/cygwin/include/a.out.h
winsup/cygwin/include/arpa/ftp.h
winsup/cygwin/include/arpa/inet.h
winsup/cygwin/include/arpa/nameser.h
winsup/cygwin/include/arpa/nameser_compat.h
winsup/cygwin/include/arpa/telnet.h
winsup/cygwin/include/asm/byteorder.h
winsup/cygwin/include/asm/socket.h
winsup/cygwin/include/asm/types.h
winsup/cygwin/include/attr/xattr.h
winsup/cygwin/include/byteswap.h
winsup/cygwin/include/ctype.h
winsup/cygwin/include/cygwin/_types.h
winsup/cygwin/include/cygwin/acl.h
winsup/cygwin/include/cygwin/config.h
winsup/cygwin/include/cygwin/core_dump.h
winsup/cygwin/include/cygwin/cygwin_dll.h
winsup/cygwin/include/cygwin/fs.h
winsup/cygwin/include/cygwin/grp.h
winsup/cygwin/include/cygwin/hdreg.h
winsup/cygwin/include/cygwin/icmp.h
winsup/cygwin/include/cygwin/if.h
winsup/cygwin/include/cygwin/in.h
winsup/cygwin/include/cygwin/in6.h
winsup/cygwin/include/cygwin/in_systm.h
winsup/cygwin/include/cygwin/ipc.h
winsup/cygwin/include/cygwin/kd.h
winsup/cygwin/include/cygwin/msg.h
winsup/cygwin/include/cygwin/mtio.h
winsup/cygwin/include/cygwin/rdevio.h
winsup/cygwin/include/cygwin/sem.h
winsup/cygwin/include/cygwin/shm.h
winsup/cygwin/include/cygwin/signal.h
winsup/cygwin/include/cygwin/socket.h
winsup/cygwin/include/cygwin/sockios.h
winsup/cygwin/include/cygwin/stat.h
winsup/cygwin/include/cygwin/stdlib.h
winsup/cygwin/include/cygwin/sys_time.h
winsup/cygwin/include/cygwin/sysproto.h
winsup/cygwin/include/cygwin/time.h
winsup/cygwin/include/cygwin/types.h
winsup/cygwin/include/cygwin/utmp.h
winsup/cygwin/include/cygwin/version.h
winsup/cygwin/include/cygwin/wait.h
winsup/cygwin/include/dlfcn.h
winsup/cygwin/include/elf.h
winsup/cygwin/include/endian.h
winsup/cygwin/include/err.h
winsup/cygwin/include/exceptions.h
winsup/cygwin/include/fcntl.h
winsup/cygwin/include/features.h
winsup/cygwin/include/fnmatch.h
winsup/cygwin/include/fts.h
winsup/cygwin/include/ftw.h
winsup/cygwin/include/getopt.h
winsup/cygwin/include/glob.h
winsup/cygwin/include/icmp.h
winsup/cygwin/include/ifaddrs.h
winsup/cygwin/include/inttypes.h
winsup/cygwin/include/io.h
winsup/cygwin/include/lastlog.h
winsup/cygwin/include/libgen.h
winsup/cygwin/include/limits.h
winsup/cygwin/include/machine/stdlib.h
winsup/cygwin/include/mapi.h
winsup/cygwin/include/memory.h
winsup/cygwin/include/mntent.h
winsup/cygwin/include/mqueue.h
winsup/cygwin/include/net/if.h
winsup/cygwin/include/netdb.h
winsup/cygwin/include/netinet/in.h
winsup/cygwin/include/netinet/in_systm.h
winsup/cygwin/include/netinet/ip.h
winsup/cygwin/include/netinet/ip_icmp.h
winsup/cygwin/include/netinet/tcp.h
winsup/cygwin/include/netinet/udp.h
winsup/cygwin/include/paths.h
winsup/cygwin/include/poll.h
winsup/cygwin/include/pthread.h
winsup/cygwin/include/pty.h
winsup/cygwin/include/resolv.h
winsup/cygwin/include/sched.h
winsup/cygwin/include/search.h
winsup/cygwin/include/semaphore.h
winsup/cygwin/include/stdint.h
winsup/cygwin/include/strings.h
winsup/cygwin/include/sys/acl.h
winsup/cygwin/include/sys/copying.dj
winsup/cygwin/include/sys/cygwin.h
winsup/cygwin/include/sys/dirent.h
winsup/cygwin/include/sys/elf32.h
winsup/cygwin/include/sys/elf64.h
winsup/cygwin/include/sys/elf_common.h
winsup/cygwin/include/sys/elf_generic.h
winsup/cygwin/include/sys/file.h
winsup/cygwin/include/sys/ioctl.h
winsup/cygwin/include/sys/ipc.h
winsup/cygwin/include/sys/kd.h
winsup/cygwin/include/sys/lock.h
winsup/cygwin/include/sys/mman.h
winsup/cygwin/include/sys/mount.h
winsup/cygwin/include/sys/msg.h
winsup/cygwin/include/sys/mtio.h
winsup/cygwin/include/sys/param.h
winsup/cygwin/include/sys/poll.h
winsup/cygwin/include/sys/procfs.h
winsup/cygwin/include/sys/queue.h
winsup/cygwin/include/sys/resource.h
winsup/cygwin/include/sys/select.h
winsup/cygwin/include/sys/sem.h
winsup/cygwin/include/sys/shm.h
winsup/cygwin/include/sys/smallprint.h
winsup/cygwin/include/sys/socket.h
winsup/cygwin/include/sys/soundcard.h
winsup/cygwin/include/sys/statfs.h
winsup/cygwin/include/sys/statvfs.h
winsup/cygwin/include/sys/stdio.h
winsup/cygwin/include/sys/strace.h
winsup/cygwin/include/sys/syslimits.h
winsup/cygwin/include/sys/syslog.h
winsup/cygwin/include/sys/sysmacros.h
winsup/cygwin/include/sys/sysproto.h
winsup/cygwin/include/sys/termio.h
winsup/cygwin/include/sys/termios.h
winsup/cygwin/include/sys/ttychars.h
winsup/cygwin/include/sys/uio.h
winsup/cygwin/include/sys/un.h
winsup/cygwin/include/sys/utime.h
winsup/cygwin/include/sys/utmp.h
winsup/cygwin/include/sys/utsname.h
winsup/cygwin/include/sys/vfs.h
winsup/cygwin/include/sys/wait.h
winsup/cygwin/include/sysexits.h
winsup/cygwin/include/syslog.h
winsup/cygwin/include/termio.h
winsup/cygwin/include/tzfile.h
winsup/cygwin/include/utmpx.h
winsup/cygwin/include/wait.h
winsup/cygwin/init.cc
winsup/cygwin/ioctl.cc
winsup/cygwin/ipc.cc
winsup/cygwin/kernel32.cc
winsup/cygwin/lib/_cygwin_crt0_common.cc
winsup/cygwin/lib/crt0.h
winsup/cygwin/lib/cygwin_attach_dll.c
winsup/cygwin/lib/cygwin_crt0.c
winsup/cygwin/lib/dll_entry.c
winsup/cygwin/lib/dll_main.cc
winsup/cygwin/lib/libcmain.c
winsup/cygwin/lib/premain0.c
winsup/cygwin/lib/premain1.c
winsup/cygwin/lib/premain2.c
winsup/cygwin/lib/premain3.c
winsup/cygwin/lib/pseudo-reloc.c
winsup/cygwin/libc/bsdlib.cc
winsup/cygwin/libc/fnmatch.c
winsup/cygwin/libc/fts.c
winsup/cygwin/libc/ftw.c
winsup/cygwin/libc/getopt.c
winsup/cygwin/libc/inet_addr.c
winsup/cygwin/libc/inet_network.c
winsup/cygwin/libc/minires-os-if.c
winsup/cygwin/libc/minires.c
winsup/cygwin/libc/minires.h
winsup/cygwin/libc/nftw.c
winsup/cygwin/libc/rcmd.cc
winsup/cygwin/libc/rexec.cc
winsup/cygwin/libc/strptime.cc
winsup/cygwin/libc/xsique.cc
winsup/cygwin/localtime.cc
winsup/cygwin/lsearch.cc
winsup/cygwin/malloc.cc
winsup/cygwin/malloc_wrapper.cc
winsup/cygwin/mcount.c
winsup/cygwin/miscfuncs.cc
winsup/cygwin/miscfuncs.h
winsup/cygwin/mktemp.cc
winsup/cygwin/mkvers.sh
winsup/cygwin/mmap.cc
winsup/cygwin/mmap_helper.h
winsup/cygwin/mount.cc
winsup/cygwin/msg.cc
winsup/cygwin/mtinfo.h
winsup/cygwin/net.cc
winsup/cygwin/netdb.cc
winsup/cygwin/newsym
winsup/cygwin/nfs.cc
winsup/cygwin/nfs.h
winsup/cygwin/ntdll.h
winsup/cygwin/ntea.cc
winsup/cygwin/passwd.cc
winsup/cygwin/path.cc
winsup/cygwin/path.h
winsup/cygwin/path.sgml
winsup/cygwin/perprocess.h
winsup/cygwin/pinfo.cc
winsup/cygwin/pinfo.h
winsup/cygwin/pipe.cc
winsup/cygwin/poll.cc
winsup/cygwin/posix.sgml
winsup/cygwin/posix_ipc.cc
winsup/cygwin/profil.c
winsup/cygwin/profil.h
winsup/cygwin/pseudo-reloc.cc
winsup/cygwin/pthread.cc
winsup/cygwin/pwdgrp.h
winsup/cygwin/random.cc
winsup/cygwin/regex/COPYRIGHT
winsup/cygwin/regex/cclass.h
winsup/cygwin/regex/cname.h
winsup/cygwin/regex/engine.c
winsup/cygwin/regex/engine.ih
winsup/cygwin/regex/mkh
winsup/cygwin/regex/regcomp.c
winsup/cygwin/regex/regcomp.ih
winsup/cygwin/regex/regerror.c
winsup/cygwin/regex/regerror.ih
winsup/cygwin/regex/regex.3
winsup/cygwin/regex/regex.7
winsup/cygwin/regex/regex.h
winsup/cygwin/regex/regex2.h
winsup/cygwin/regex/regexec.c
winsup/cygwin/regex/regfree.c
winsup/cygwin/regex/tests
winsup/cygwin/regex/utils.h
winsup/cygwin/registry.cc
winsup/cygwin/registry.h
winsup/cygwin/resource.cc
winsup/cygwin/rmsym
winsup/cygwin/scandir.cc
winsup/cygwin/sched.cc
winsup/cygwin/sec_acl.cc
winsup/cygwin/sec_auth.cc
winsup/cygwin/sec_helper.cc
winsup/cygwin/security.cc
winsup/cygwin/security.h
winsup/cygwin/security.sgml
winsup/cygwin/select.cc
winsup/cygwin/sem.cc
winsup/cygwin/setlsapwd.cc
winsup/cygwin/shared.cc
winsup/cygwin/shared_info.h
winsup/cygwin/shm.cc
winsup/cygwin/signal.cc
winsup/cygwin/sigproc.cc
winsup/cygwin/sigproc.h
winsup/cygwin/smallprint.cc
winsup/cygwin/sortdin
winsup/cygwin/spawn.cc
winsup/cygwin/speclib
winsup/cygwin/stackdump.sgml
winsup/cygwin/strace.cc
winsup/cygwin/strfuncs.cc
winsup/cygwin/string.h
winsup/cygwin/strsep.cc
winsup/cygwin/strsig.cc
winsup/cygwin/sync.cc
winsup/cygwin/sync.h
winsup/cygwin/syscalls.cc
winsup/cygwin/sysconf.cc
winsup/cygwin/syslog.cc
winsup/cygwin/termios.cc
winsup/cygwin/textmode.c
winsup/cygwin/textreadmode.c
winsup/cygwin/thread.cc
winsup/cygwin/thread.h
winsup/cygwin/timer.cc
winsup/cygwin/times.cc
winsup/cygwin/tls_pbuf.cc
winsup/cygwin/tls_pbuf.h
winsup/cygwin/tlsoffsets.h
winsup/cygwin/tty.cc
winsup/cygwin/tty.h
winsup/cygwin/tz_posixrules.h
winsup/cygwin/uinfo.cc
winsup/cygwin/uname.cc
winsup/cygwin/wait.cc
winsup/cygwin/wchar.h
winsup/cygwin/winbase.h
winsup/cygwin/wincap.cc
winsup/cygwin/wincap.h
winsup/cygwin/window.cc
winsup/cygwin/winf.cc
winsup/cygwin/winf.h
winsup/cygwin/wininfo.h
winsup/cygwin/winsup.h
winsup/cygwin/winver.rc
winsup/doc/ChangeLog
winsup/doc/Makefile.in
winsup/doc/README
winsup/doc/aclocal.m4
winsup/doc/configure
winsup/doc/configure.in
winsup/doc/cygserver.sgml
winsup/doc/cygwin-api.in.sgml
winsup/doc/cygwin-ug-net.in.sgml
winsup/doc/cygwin-ug.in.sgml
winsup/doc/cygwin.dsl
winsup/doc/cygwinenv.sgml
winsup/doc/dll.sgml
winsup/doc/doctool.c
winsup/doc/doctool.txt
winsup/doc/effectively.sgml
winsup/doc/faq-api.xml
winsup/doc/faq-problems.xml
winsup/doc/faq-programming.xml
winsup/doc/faq-resources.xml
winsup/doc/faq-sections.xml
winsup/doc/faq-setup.xml
winsup/doc/faq-using.xml
winsup/doc/faq-what.xml
winsup/doc/faq.xml
winsup/doc/fhandler-tut.txt
winsup/doc/filemodes.sgml
winsup/doc/gcc.sgml
winsup/doc/gdb.sgml
winsup/doc/legal.sgml
winsup/doc/ntsec.sgml
winsup/doc/overview.sgml
winsup/doc/overview2.sgml
winsup/doc/pathnames.sgml
winsup/doc/programming.sgml
winsup/doc/setup-net.sgml
winsup/doc/setup.sgml
winsup/doc/setup2.sgml
winsup/doc/textbinary.sgml
winsup/doc/using.sgml
winsup/doc/windres.sgml
winsup/lsaauth/ChangeLog
winsup/lsaauth/Makefile.in
winsup/lsaauth/aclocal.m4
winsup/lsaauth/configure
winsup/lsaauth/configure.in
winsup/lsaauth/cyglsa-config
winsup/lsaauth/cyglsa.c
winsup/lsaauth/cyglsa.din
winsup/lsaauth/cyglsa64.dll
winsup/lsaauth/make-64bit-version-with-visual-c.bat
winsup/lsaauth/mslsa.def
winsup/mingw/CONTRIBUTORS
winsup/mingw/CRT_fp10.c
winsup/mingw/CRT_fp8.c
winsup/mingw/CRT_noglob.c
winsup/mingw/CRTfmode.c
winsup/mingw/CRTglob.c
winsup/mingw/CRTinit.c
winsup/mingw/ChangeLog
winsup/mingw/DISCLAIMER
winsup/mingw/Makefile.in
winsup/mingw/README
winsup/mingw/TODO
winsup/mingw/aclocal.m4
winsup/mingw/binmode.c
winsup/mingw/config.guess
winsup/mingw/config.sub
winsup/mingw/configure
winsup/mingw/configure.in
winsup/mingw/cpu_features.c
winsup/mingw/cpu_features.h
winsup/mingw/crt1.c
winsup/mingw/crtdll.def
winsup/mingw/crtmt.c
winsup/mingw/crtst.c
winsup/mingw/dllcrt1.c
winsup/mingw/dllmain.c
winsup/mingw/gccmain.c
winsup/mingw/include/_mingw.h
winsup/mingw/include/assert.h
winsup/mingw/include/complex.h
winsup/mingw/include/conio.h
winsup/mingw/include/ctype.h
winsup/mingw/include/dir.h
winsup/mingw/include/direct.h
winsup/mingw/include/dirent.h
winsup/mingw/include/dos.h
winsup/mingw/include/errno.h
winsup/mingw/include/excpt.h
winsup/mingw/include/fcntl.h
winsup/mingw/include/fenv.h
winsup/mingw/include/float.h
winsup/mingw/include/getopt.h
winsup/mingw/include/inttypes.h
winsup/mingw/include/io.h
winsup/mingw/include/libgen.h
winsup/mingw/include/limits.h
winsup/mingw/include/locale.h
winsup/mingw/include/malloc.h
winsup/mingw/include/math.h
winsup/mingw/include/mbctype.h
winsup/mingw/include/mbstring.h
winsup/mingw/include/mem.h
winsup/mingw/include/memory.h
winsup/mingw/include/process.h
winsup/mingw/include/search.h
winsup/mingw/include/setjmp.h
winsup/mingw/include/share.h
winsup/mingw/include/signal.h
winsup/mingw/include/stdint.h
winsup/mingw/include/stdio.h
winsup/mingw/include/stdlib.h
winsup/mingw/include/string.h
winsup/mingw/include/strings.h
winsup/mingw/include/sys/fcntl.h
winsup/mingw/include/sys/file.h
winsup/mingw/include/sys/locking.h
winsup/mingw/include/sys/param.h
winsup/mingw/include/sys/stat.h
winsup/mingw/include/sys/time.h
winsup/mingw/include/sys/timeb.h
winsup/mingw/include/sys/types.h
winsup/mingw/include/sys/unistd.h
winsup/mingw/include/sys/utime.h
winsup/mingw/include/tchar.h
winsup/mingw/include/time.h
winsup/mingw/include/unistd.h
winsup/mingw/include/utime.h
winsup/mingw/include/values.h
winsup/mingw/include/varargs.h
winsup/mingw/include/wchar.h
winsup/mingw/include/wctype.h
winsup/mingw/init.c
winsup/mingw/install-sh
winsup/mingw/isascii.c
winsup/mingw/iscsym.c
winsup/mingw/iscsymf.c
winsup/mingw/jamfile
winsup/mingw/main.c
winsup/mingw/man/dirname.man
winsup/mingw/mingwex/Makefile.in
winsup/mingw/mingwex/_Exit.c
winsup/mingw/mingwex/aclocal.m4
winsup/mingw/mingwex/atoll.c
winsup/mingw/mingwex/basename.c
winsup/mingw/mingwex/btowc.c
winsup/mingw/mingwex/complex/cabs.c
winsup/mingw/mingwex/complex/cabsf.c
winsup/mingw/mingwex/complex/cabsl.c
winsup/mingw/mingwex/complex/cacos.c
winsup/mingw/mingwex/complex/cacosf.c
winsup/mingw/mingwex/complex/cacosh.c
winsup/mingw/mingwex/complex/cacoshf.c
winsup/mingw/mingwex/complex/cacoshl.c
winsup/mingw/mingwex/complex/cacosl.c
winsup/mingw/mingwex/complex/carg.c
winsup/mingw/mingwex/complex/cargf.c
winsup/mingw/mingwex/complex/cargl.c
winsup/mingw/mingwex/complex/casin.c
winsup/mingw/mingwex/complex/casinf.c
winsup/mingw/mingwex/complex/casinh.c
winsup/mingw/mingwex/complex/casinhf.c
winsup/mingw/mingwex/complex/casinhl.c
winsup/mingw/mingwex/complex/casinl.c
winsup/mingw/mingwex/complex/catan.c
winsup/mingw/mingwex/complex/catanf.c
winsup/mingw/mingwex/complex/catanh.c
winsup/mingw/mingwex/complex/catanhf.c
winsup/mingw/mingwex/complex/catanhl.c
winsup/mingw/mingwex/complex/catanl.c
winsup/mingw/mingwex/complex/ccos.c
winsup/mingw/mingwex/complex/ccosf.c
winsup/mingw/mingwex/complex/ccosh.c
winsup/mingw/mingwex/complex/ccoshf.c
winsup/mingw/mingwex/complex/ccoshl.c
winsup/mingw/mingwex/complex/ccosl.c
winsup/mingw/mingwex/complex/cexp.c
winsup/mingw/mingwex/complex/cexpf.c
winsup/mingw/mingwex/complex/cexpl.c
winsup/mingw/mingwex/complex/cimag.c
winsup/mingw/mingwex/complex/cimagf.c
winsup/mingw/mingwex/complex/cimagl.c
winsup/mingw/mingwex/complex/clog.c
winsup/mingw/mingwex/complex/clogf.c
winsup/mingw/mingwex/complex/clogl.c
winsup/mingw/mingwex/complex/cpow.c
winsup/mingw/mingwex/complex/cpowf.c
winsup/mingw/mingwex/complex/cpowl.c
winsup/mingw/mingwex/complex/cproj.c
winsup/mingw/mingwex/complex/cprojf.c
winsup/mingw/mingwex/complex/cprojl.c
winsup/mingw/mingwex/complex/creal.c
winsup/mingw/mingwex/complex/crealf.c
winsup/mingw/mingwex/complex/creall.c
winsup/mingw/mingwex/complex/csin.c
winsup/mingw/mingwex/complex/csinf.c
winsup/mingw/mingwex/complex/csinh.c
winsup/mingw/mingwex/complex/csinhf.c
winsup/mingw/mingwex/complex/csinhl.c
winsup/mingw/mingwex/complex/csinl.c
winsup/mingw/mingwex/complex/csqrt.c
winsup/mingw/mingwex/complex/csqrtf.c
winsup/mingw/mingwex/complex/csqrtl.c
winsup/mingw/mingwex/complex/ctan.c
winsup/mingw/mingwex/complex/ctanf.c
winsup/mingw/mingwex/complex/ctanh.c
winsup/mingw/mingwex/complex/ctanhf.c
winsup/mingw/mingwex/complex/ctanhl.c
winsup/mingw/mingwex/complex/ctanl.c
winsup/mingw/mingwex/configure
winsup/mingw/mingwex/configure.in
winsup/mingw/mingwex/dirent.c
winsup/mingw/mingwex/dirname.c
winsup/mingw/mingwex/feclearexcept.c
winsup/mingw/mingwex/fegetenv.c
winsup/mingw/mingwex/fegetexceptflag.c
winsup/mingw/mingwex/fegetround.c
winsup/mingw/mingwex/feholdexcept.c
winsup/mingw/mingwex/feraiseexcept.c
winsup/mingw/mingwex/fesetenv.c
winsup/mingw/mingwex/fesetexceptflag.c
winsup/mingw/mingwex/fesetround.c
winsup/mingw/mingwex/fetestexcept.c
winsup/mingw/mingwex/feupdateenv.c
winsup/mingw/mingwex/ftruncate.c
winsup/mingw/mingwex/fwide.c
winsup/mingw/mingwex/gdtoa/README
winsup/mingw/mingwex/gdtoa/arithchk.c
winsup/mingw/mingwex/gdtoa/dmisc.c
winsup/mingw/mingwex/gdtoa/dtoa.c
winsup/mingw/mingwex/gdtoa/g__fmt.c
winsup/mingw/mingwex/gdtoa/g_dfmt.c
winsup/mingw/mingwex/gdtoa/g_ffmt.c
winsup/mingw/mingwex/gdtoa/g_xfmt.c
winsup/mingw/mingwex/gdtoa/gd_arith.h
winsup/mingw/mingwex/gdtoa/gd_qnan.h
winsup/mingw/mingwex/gdtoa/gdtoa.c
winsup/mingw/mingwex/gdtoa/gdtoa.h
winsup/mingw/mingwex/gdtoa/gdtoaimp.h
winsup/mingw/mingwex/gdtoa/gethex.c
winsup/mingw/mingwex/gdtoa/gmisc.c
winsup/mingw/mingwex/gdtoa/hd_init.c
winsup/mingw/mingwex/gdtoa/hexnan.c
winsup/mingw/mingwex/gdtoa/misc.c
winsup/mingw/mingwex/gdtoa/qnan.c
winsup/mingw/mingwex/gdtoa/smisc.c
winsup/mingw/mingwex/gdtoa/strtodg.c
winsup/mingw/mingwex/gdtoa/strtodnrp.c
winsup/mingw/mingwex/gdtoa/strtof.c
winsup/mingw/mingwex/gdtoa/strtopx.c
winsup/mingw/mingwex/gdtoa/sum.c
winsup/mingw/mingwex/gdtoa/ulp.c
winsup/mingw/mingwex/getopt.c
winsup/mingw/mingwex/gettimeofday.c
winsup/mingw/mingwex/imaxabs.c
winsup/mingw/mingwex/imaxdiv.c
winsup/mingw/mingwex/isblank.c
winsup/mingw/mingwex/iswblank.c
winsup/mingw/mingwex/lltoa.c
winsup/mingw/mingwex/lltow.c
winsup/mingw/mingwex/math/acosf.c
winsup/mingw/mingwex/math/acosh.c
winsup/mingw/mingwex/math/acoshf.c
winsup/mingw/mingwex/math/acoshl.c
winsup/mingw/mingwex/math/acosl.c
winsup/mingw/mingwex/math/asinf.c
winsup/mingw/mingwex/math/asinh.c
winsup/mingw/mingwex/math/asinhf.c
winsup/mingw/mingwex/math/asinhl.c
winsup/mingw/mingwex/math/asinl.c
winsup/mingw/mingwex/math/atan2f.c
winsup/mingw/mingwex/math/atan2l.c
winsup/mingw/mingwex/math/atanf.c
winsup/mingw/mingwex/math/atanh.c
winsup/mingw/mingwex/math/atanhf.c
winsup/mingw/mingwex/math/atanhl.c
winsup/mingw/mingwex/math/atanl.c
winsup/mingw/mingwex/math/cbrt.c
winsup/mingw/mingwex/math/cbrtf.c
winsup/mingw/mingwex/math/cbrtl.c
winsup/mingw/mingwex/math/ceilf.S
winsup/mingw/mingwex/math/ceill.S
winsup/mingw/mingwex/math/cephes_mconf.h
winsup/mingw/mingwex/math/copysign.S
winsup/mingw/mingwex/math/copysignf.S
winsup/mingw/mingwex/math/copysignl.S
winsup/mingw/mingwex/math/cosf.S
winsup/mingw/mingwex/math/coshf.c
winsup/mingw/mingwex/math/coshl.c
winsup/mingw/mingwex/math/cosl.S
winsup/mingw/mingwex/math/erfl.c
winsup/mingw/mingwex/math/exp2.S
winsup/mingw/mingwex/math/exp2f.S
winsup/mingw/mingwex/math/exp2l.S
winsup/mingw/mingwex/math/expf.c
winsup/mingw/mingwex/math/expl.c
winsup/mingw/mingwex/math/expm1.c
winsup/mingw/mingwex/math/expm1f.c
winsup/mingw/mingwex/math/expm1l.c
winsup/mingw/mingwex/math/fabs.c
winsup/mingw/mingwex/math/fabsf.c
winsup/mingw/mingwex/math/fabsl.c
winsup/mingw/mingwex/math/fastmath.h
winsup/mingw/mingwex/math/fdim.c
winsup/mingw/mingwex/math/fdimf.c
winsup/mingw/mingwex/math/fdiml.c
winsup/mingw/mingwex/math/floorf.S
winsup/mingw/mingwex/math/floorl.S
winsup/mingw/mingwex/math/fma.S
winsup/mingw/mingwex/math/fmaf.S
winsup/mingw/mingwex/math/fmal.c
winsup/mingw/mingwex/math/fmax.c
winsup/mingw/mingwex/math/fmaxf.c
winsup/mingw/mingwex/math/fmaxl.c
winsup/mingw/mingwex/math/fmin.c
winsup/mingw/mingwex/math/fminf.c
winsup/mingw/mingwex/math/fminl.c
winsup/mingw/mingwex/math/fmodf.c
winsup/mingw/mingwex/math/fmodl.c
winsup/mingw/mingwex/math/fp_consts.c
winsup/mingw/mingwex/math/fp_consts.h
winsup/mingw/mingwex/math/fp_constsf.c
winsup/mingw/mingwex/math/fp_constsl.c
winsup/mingw/mingwex/math/fpclassify.c
winsup/mingw/mingwex/math/fpclassifyf.c
winsup/mingw/mingwex/math/fpclassifyl.c
winsup/mingw/mingwex/math/frexpf.c
winsup/mingw/mingwex/math/frexpl.S
winsup/mingw/mingwex/math/fucom.c
winsup/mingw/mingwex/math/hypotf.c
winsup/mingw/mingwex/math/hypotl.c
winsup/mingw/mingwex/math/ilogb.S
winsup/mingw/mingwex/math/ilogbf.S
winsup/mingw/mingwex/math/ilogbl.S
winsup/mingw/mingwex/math/isnan.c
winsup/mingw/mingwex/math/isnanf.c
winsup/mingw/mingwex/math/isnanl.c
winsup/mingw/mingwex/math/ldexpf.c
winsup/mingw/mingwex/math/ldexpl.c
winsup/mingw/mingwex/math/lgamma.c
winsup/mingw/mingwex/math/lgammaf.c
winsup/mingw/mingwex/math/lgammal.c
winsup/mingw/mingwex/math/llrint.c
winsup/mingw/mingwex/math/llrintf.c
winsup/mingw/mingwex/math/llrintl.c
winsup/mingw/mingwex/math/log10f.S
winsup/mingw/mingwex/math/log10l.S
winsup/mingw/mingwex/math/log1p.S
winsup/mingw/mingwex/math/log1pf.S
winsup/mingw/mingwex/math/log1pl.S
winsup/mingw/mingwex/math/log2.S
winsup/mingw/mingwex/math/log2f.S
winsup/mingw/mingwex/math/log2l.S
winsup/mingw/mingwex/math/logb.c
winsup/mingw/mingwex/math/logbf.c
winsup/mingw/mingwex/math/logbl.c
winsup/mingw/mingwex/math/logf.S
winsup/mingw/mingwex/math/logl.S
winsup/mingw/mingwex/math/lrint.c
winsup/mingw/mingwex/math/lrintf.c
winsup/mingw/mingwex/math/lrintl.c
winsup/mingw/mingwex/math/lround_generic.c
winsup/mingw/mingwex/math/modff.c
winsup/mingw/mingwex/math/modfl.c
winsup/mingw/mingwex/math/nearbyint.S
winsup/mingw/mingwex/math/nearbyintf.S
winsup/mingw/mingwex/math/nearbyintl.S
winsup/mingw/mingwex/math/nextafterf.c
winsup/mingw/mingwex/math/nextafterl.c
winsup/mingw/mingwex/math/nexttoward.c
winsup/mingw/mingwex/math/nexttowardf.c
winsup/mingw/mingwex/math/pow.c
winsup/mingw/mingwex/math/powf.c
winsup/mingw/mingwex/math/powi.c
winsup/mingw/mingwex/math/powif.c
winsup/mingw/mingwex/math/powil.c
winsup/mingw/mingwex/math/powl.c
winsup/mingw/mingwex/math/remainder.S
winsup/mingw/mingwex/math/remainderf.S
winsup/mingw/mingwex/math/remainderl.S
winsup/mingw/mingwex/math/remquo.S
winsup/mingw/mingwex/math/remquof.S
winsup/mingw/mingwex/math/remquol.S
winsup/mingw/mingwex/math/rint.c
winsup/mingw/mingwex/math/rintf.c
winsup/mingw/mingwex/math/rintl.c
winsup/mingw/mingwex/math/round_generic.c
winsup/mingw/mingwex/math/round_internal.h
winsup/mingw/mingwex/math/s_erf.c
winsup/mingw/mingwex/math/scalbn.S
winsup/mingw/mingwex/math/scalbnf.S
winsup/mingw/mingwex/math/scalbnl.S
winsup/mingw/mingwex/math/sf_erf.c
winsup/mingw/mingwex/math/signbit.c
winsup/mingw/mingwex/math/signbitf.c
winsup/mingw/mingwex/math/signbitl.c
winsup/mingw/mingwex/math/sinf.S
winsup/mingw/mingwex/math/sinhf.c
winsup/mingw/mingwex/math/sinhl.c
winsup/mingw/mingwex/math/sinl.S
winsup/mingw/mingwex/math/sqrtf.c
winsup/mingw/mingwex/math/sqrtl.c
winsup/mingw/mingwex/math/tanf.S
winsup/mingw/mingwex/math/tanhf.c
winsup/mingw/mingwex/math/tanhl.c
winsup/mingw/mingwex/math/tanl.S
winsup/mingw/mingwex/math/tgamma.c
winsup/mingw/mingwex/math/tgammaf.c
winsup/mingw/mingwex/math/tgammal.c
winsup/mingw/mingwex/math/trunc.c
winsup/mingw/mingwex/math/truncf.c
winsup/mingw/mingwex/math/truncl.c
winsup/mingw/mingwex/mb_wc_common.h
winsup/mingw/mingwex/mbrtowc.c
winsup/mingw/mingwex/mbsinit.c
winsup/mingw/mingwex/mingw-aligned-malloc.c
winsup/mingw/mingwex/mingw-fseek.c
winsup/mingw/mingwex/sitest.c
winsup/mingw/mingwex/stdio/fopen64.c
winsup/mingw/mingwex/stdio/fprintf.c
winsup/mingw/mingwex/stdio/fseeko64.c
winsup/mingw/mingwex/stdio/ftello64.c
winsup/mingw/mingwex/stdio/lseek64.c
winsup/mingw/mingwex/stdio/pformat.c
winsup/mingw/mingwex/stdio/pformat.h
winsup/mingw/mingwex/stdio/printf.c
winsup/mingw/mingwex/stdio/snprintf.c
winsup/mingw/mingwex/stdio/snwprintf.c
winsup/mingw/mingwex/stdio/sprintf.c
winsup/mingw/mingwex/stdio/vfprintf.c
winsup/mingw/mingwex/stdio/vfscanf.c
winsup/mingw/mingwex/stdio/vfwscanf.c
winsup/mingw/mingwex/stdio/vprintf.c
winsup/mingw/mingwex/stdio/vscanf.c
winsup/mingw/mingwex/stdio/vsnprintf.c
winsup/mingw/mingwex/stdio/vsnwprintf.c
winsup/mingw/mingwex/stdio/vsprintf.c
winsup/mingw/mingwex/stdio/vsscanf.c
winsup/mingw/mingwex/stdio/vswscanf.c
winsup/mingw/mingwex/stdio/vwscanf.c
winsup/mingw/mingwex/strtoimax.c
winsup/mingw/mingwex/strtoumax.c
winsup/mingw/mingwex/tdelete.c
winsup/mingw/mingwex/testwmem.c
winsup/mingw/mingwex/tfind.c
winsup/mingw/mingwex/tsearch.c
winsup/mingw/mingwex/tst-aligned-malloc.c
winsup/mingw/mingwex/twalk.c
winsup/mingw/mingwex/ulltoa.c
winsup/mingw/mingwex/ulltow.c
winsup/mingw/mingwex/usleep.c
winsup/mingw/mingwex/wcrtomb.c
winsup/mingw/mingwex/wcstof.c
winsup/mingw/mingwex/wcstoimax.c
winsup/mingw/mingwex/wcstold.c
winsup/mingw/mingwex/wcstoumax.c
winsup/mingw/mingwex/wctob.c
winsup/mingw/mingwex/wctrans.c
winsup/mingw/mingwex/wctype.c
winsup/mingw/mingwex/wdirent.c
winsup/mingw/mingwex/wmemchr.c
winsup/mingw/mingwex/wmemcmp.c
winsup/mingw/mingwex/wmemcpy.c
winsup/mingw/mingwex/wmemmove.c
winsup/mingw/mingwex/wmemset.c
winsup/mingw/mingwex/wtoll.c
winsup/mingw/mkinstalldirs
winsup/mingw/moldname.def.in
winsup/mingw/msvcrt.def.in
winsup/mingw/mthr.c
winsup/mingw/mthr_init.c
winsup/mingw/mthr_stub.c
winsup/mingw/ofmt_stub.s
winsup/mingw/profile/COPYING
winsup/mingw/profile/CYGWIN_LICENSE
winsup/mingw/profile/Makefile.in
winsup/mingw/profile/aclocal.m4
winsup/mingw/profile/configure
winsup/mingw/profile/configure.in
winsup/mingw/profile/gcrt0.c
winsup/mingw/profile/gmon.c
winsup/mingw/profile/gmon.h
winsup/mingw/profile/mcount.c
winsup/mingw/profile/profil.c
winsup/mingw/profile/profil.h
winsup/mingw/profile/profile.h
winsup/mingw/pseudo-reloc-list.c
winsup/mingw/pseudo-reloc.c
winsup/mingw/readme.txt
winsup/mingw/samples/dirent/jamfile
winsup/mingw/samples/dirent/test.c
winsup/mingw/samples/dirent/wtest.c
winsup/mingw/samples/dlltest/dll.c
winsup/mingw/samples/dlltest/dll.def
winsup/mingw/samples/dlltest/dll.h
winsup/mingw/samples/dlltest/exe.c
winsup/mingw/samples/dlltest/exe.exp
winsup/mingw/samples/dlltest/expexe.c
winsup/mingw/samples/dlltest/expexe.def
winsup/mingw/samples/dlltest/jamfile
winsup/mingw/samples/dlltest/loaddll.c
winsup/mingw/samples/dlltest/loadexe.c
winsup/mingw/samples/dlltest/readme.txt
winsup/mingw/samples/dlltest/silly.cpp
winsup/mingw/samples/dlltest/silly.def
winsup/mingw/samples/dlltest/silly.exp
winsup/mingw/samples/dlltest/silly.h
winsup/mingw/samples/dlltest/sillydll.cpp
winsup/mingw/samples/filehand/filehand.c
winsup/mingw/samples/filehand/jamfile
winsup/mingw/samples/filehand/junk.txt
winsup/mingw/samples/fixargv/fixargv.c
winsup/mingw/samples/fixargv/fixargv.h
winsup/mingw/samples/fixargv/readme.txt
winsup/mingw/samples/fmode/all.c
winsup/mingw/samples/fmode/jamfile
winsup/mingw/samples/fmode/readme.txt
winsup/mingw/samples/fmode/test.c
winsup/mingw/samples/fmode/test2.c
winsup/mingw/samples/globbing/glob.c
winsup/mingw/samples/globbing/jamfile
winsup/mingw/samples/globbing/noglob.c
winsup/mingw/samples/globbing/readme.txt
winsup/mingw/samples/print/jamfile
winsup/mingw/samples/print/prntest.c
winsup/mingw/samples/seh/eh3.c
winsup/mingw/samples/seh/exutil.c
winsup/mingw/samples/seh/exutil.def
winsup/mingw/samples/seh/exutil.h
winsup/mingw/samples/seh/jamfile
winsup/mingw/samples/seh/sehfix.c
winsup/mingw/samples/seh/sehsub.c
winsup/mingw/samples/seh/sehtest.c
winsup/mingw/samples/simpledll/dll.c
winsup/mingw/samples/simpledll/dll.cpp
winsup/mingw/samples/simpledll/dll.def
winsup/mingw/samples/simpledll/exe.c
winsup/mingw/samples/simpledll/jamfile
winsup/mingw/samples/simpledll/makedll.bat
winsup/mingw/samples/test/jamfile
winsup/mingw/samples/test/test.c
winsup/mingw/samples/wintest/jamfile
winsup/mingw/samples/wintest/test.c
winsup/mingw/strcasecmp.c
winsup/mingw/strncasecmp.c
winsup/mingw/test_headers.c
winsup/mingw/toascii.c
winsup/mingw/txtmode.c
winsup/mingw/wcscmpi.c
winsup/testsuite/ChangeLog
winsup/testsuite/Makefile.in
winsup/testsuite/README
winsup/testsuite/aclocal.m4
winsup/testsuite/config/default.exp
winsup/testsuite/configure
winsup/testsuite/configure.in
winsup/testsuite/cygrun.c
winsup/testsuite/libltp/include/dataascii.h
winsup/testsuite/libltp/include/databin.h
winsup/testsuite/libltp/include/file_lock.h
winsup/testsuite/libltp/include/forker.h
winsup/testsuite/libltp/include/open_flags.h
winsup/testsuite/libltp/include/pattern.h
winsup/testsuite/libltp/include/random_range.h
winsup/testsuite/libltp/include/rmobj.h
winsup/testsuite/libltp/include/search_path.h
winsup/testsuite/libltp/include/str_to_bytes.h
winsup/testsuite/libltp/include/string_to_tokens.h
winsup/testsuite/libltp/include/test.h
winsup/testsuite/libltp/include/tlibio.h
winsup/testsuite/libltp/include/usctest.h
winsup/testsuite/libltp/include/write_log.h
winsup/testsuite/libltp/lib/dataascii.c
winsup/testsuite/libltp/lib/databin.c
winsup/testsuite/libltp/lib/datapid.c
winsup/testsuite/libltp/lib/forker.c
winsup/testsuite/libltp/lib/get_high_address.c
winsup/testsuite/libltp/lib/libtestsuite.c
winsup/testsuite/libltp/lib/open_flags.c
winsup/testsuite/libltp/lib/parse_opts.c
winsup/testsuite/libltp/lib/pattern.c
winsup/testsuite/libltp/lib/rmobj.c
winsup/testsuite/libltp/lib/search_path.c
winsup/testsuite/libltp/lib/str_to_bytes.c
winsup/testsuite/libltp/lib/string_to_tokens.c
winsup/testsuite/libltp/lib/tst_res.c
winsup/testsuite/libltp/lib/tst_sig.c
winsup/testsuite/libltp/lib/tst_tmpdir.c
winsup/testsuite/libltp/lib/write_log.c
winsup/testsuite/winsup.api/checksignal.c
winsup/testsuite/winsup.api/crlf.c
winsup/testsuite/winsup.api/cygload.cc
winsup/testsuite/winsup.api/cygload.exp
winsup/testsuite/winsup.api/cygload.h
winsup/testsuite/winsup.api/devdsp.c
winsup/testsuite/winsup.api/devdsp_okay.h
winsup/testsuite/winsup.api/devzero.c
winsup/testsuite/winsup.api/iospeed.c
winsup/testsuite/winsup.api/known_bugs.tcl
winsup/testsuite/winsup.api/ltp/access01.c
winsup/testsuite/winsup.api/ltp/access03.c
winsup/testsuite/winsup.api/ltp/access04.c
winsup/testsuite/winsup.api/ltp/access05.c
winsup/testsuite/winsup.api/ltp/alarm01.c
winsup/testsuite/winsup.api/ltp/alarm02.c
winsup/testsuite/winsup.api/ltp/alarm03.c
winsup/testsuite/winsup.api/ltp/alarm07.c
winsup/testsuite/winsup.api/ltp/asyncio02.c
winsup/testsuite/winsup.api/ltp/chdir02.c
winsup/testsuite/winsup.api/ltp/chdir04.c
winsup/testsuite/winsup.api/ltp/chmod01.c
winsup/testsuite/winsup.api/ltp/chmod02.c
winsup/testsuite/winsup.api/ltp/chown01.c
winsup/testsuite/winsup.api/ltp/close01.c
winsup/testsuite/winsup.api/ltp/close02.c
winsup/testsuite/winsup.api/ltp/close08.c
winsup/testsuite/winsup.api/ltp/creat01.c
winsup/testsuite/winsup.api/ltp/creat03.c
winsup/testsuite/winsup.api/ltp/creat09.c
winsup/testsuite/winsup.api/ltp/dup01.c
winsup/testsuite/winsup.api/ltp/dup02.c
winsup/testsuite/winsup.api/ltp/dup03.c
winsup/testsuite/winsup.api/ltp/dup04.c
winsup/testsuite/winsup.api/ltp/dup05.c
winsup/testsuite/winsup.api/ltp/execl01.c
winsup/testsuite/winsup.api/ltp/execle01.c
winsup/testsuite/winsup.api/ltp/execlp01.c
winsup/testsuite/winsup.api/ltp/execv01.c
winsup/testsuite/winsup.api/ltp/execve01.c
winsup/testsuite/winsup.api/ltp/execvp01.c
winsup/testsuite/winsup.api/ltp/exit01.c
winsup/testsuite/winsup.api/ltp/exit02.c
winsup/testsuite/winsup.api/ltp/fchdir01.c
winsup/testsuite/winsup.api/ltp/fchdir02.c
winsup/testsuite/winsup.api/ltp/fchmod01.c
winsup/testsuite/winsup.api/ltp/fchown01.c
winsup/testsuite/winsup.api/ltp/fcntl02.c
winsup/testsuite/winsup.api/ltp/fcntl03.c
winsup/testsuite/winsup.api/ltp/fcntl04.c
winsup/testsuite/winsup.api/ltp/fcntl05.c
winsup/testsuite/winsup.api/ltp/fcntl07.c
winsup/testsuite/winsup.api/ltp/fcntl07B.c
winsup/testsuite/winsup.api/ltp/fcntl08.c
winsup/testsuite/winsup.api/ltp/fcntl09.c
winsup/testsuite/winsup.api/ltp/fcntl10.c
winsup/testsuite/winsup.api/ltp/fork01.c
winsup/testsuite/winsup.api/ltp/fork02.c
winsup/testsuite/winsup.api/ltp/fork03.c
winsup/testsuite/winsup.api/ltp/fork04.c
winsup/testsuite/winsup.api/ltp/fork06.c
winsup/testsuite/winsup.api/ltp/fork07.c
winsup/testsuite/winsup.api/ltp/fork09.c
winsup/testsuite/winsup.api/ltp/fork10.c
winsup/testsuite/winsup.api/ltp/fork11.c
winsup/testsuite/winsup.api/ltp/fpathconf01.c
winsup/testsuite/winsup.api/ltp/fstat01.c
winsup/testsuite/winsup.api/ltp/fstat02.c
winsup/testsuite/winsup.api/ltp/fstat03.c
winsup/testsuite/winsup.api/ltp/fstat04.c
winsup/testsuite/winsup.api/ltp/fsync01.c
winsup/testsuite/winsup.api/ltp/ftruncate01.c
winsup/testsuite/winsup.api/ltp/ftruncate02.c
winsup/testsuite/winsup.api/ltp/ftruncate03.c
winsup/testsuite/winsup.api/ltp/getegid01.c
winsup/testsuite/winsup.api/ltp/geteuid01.c
winsup/testsuite/winsup.api/ltp/getgid01.c
winsup/testsuite/winsup.api/ltp/getgid02.c
winsup/testsuite/winsup.api/ltp/getgid03.c
winsup/testsuite/winsup.api/ltp/getgroups01.c
winsup/testsuite/winsup.api/ltp/getgroups02.c
winsup/testsuite/winsup.api/ltp/gethostid01.c
winsup/testsuite/winsup.api/ltp/gethostname01.c
winsup/testsuite/winsup.api/ltp/getpgid01.c
winsup/testsuite/winsup.api/ltp/getpgid02.c
winsup/testsuite/winsup.api/ltp/getpgrp01.c
winsup/testsuite/winsup.api/ltp/getpid01.c
winsup/testsuite/winsup.api/ltp/getpid02.c
winsup/testsuite/winsup.api/ltp/getppid01.c
winsup/testsuite/winsup.api/ltp/getppid02.c
winsup/testsuite/winsup.api/ltp/getuid01.c
winsup/testsuite/winsup.api/ltp/getuid02.c
winsup/testsuite/winsup.api/ltp/getuid03.c
winsup/testsuite/winsup.api/ltp/kill01.c
winsup/testsuite/winsup.api/ltp/kill02.c
winsup/testsuite/winsup.api/ltp/kill03.c
winsup/testsuite/winsup.api/ltp/kill04.c
winsup/testsuite/winsup.api/ltp/kill09.c
winsup/testsuite/winsup.api/ltp/link02.c
winsup/testsuite/winsup.api/ltp/link03.c
winsup/testsuite/winsup.api/ltp/link04.c
winsup/testsuite/winsup.api/ltp/link05.c
winsup/testsuite/winsup.api/ltp/lseek01.c
winsup/testsuite/winsup.api/ltp/lseek02.c
winsup/testsuite/winsup.api/ltp/lseek03.c
winsup/testsuite/winsup.api/ltp/lseek04.c
winsup/testsuite/winsup.api/ltp/lseek05.c
winsup/testsuite/winsup.api/ltp/lseek06.c
winsup/testsuite/winsup.api/ltp/lseek07.c
winsup/testsuite/winsup.api/ltp/lseek08.c
winsup/testsuite/winsup.api/ltp/lseek09.c
winsup/testsuite/winsup.api/ltp/lseek10.c
winsup/testsuite/winsup.api/ltp/lstat02.c
winsup/testsuite/winsup.api/ltp/mkdir01.c
winsup/testsuite/winsup.api/ltp/mkdir08.c
winsup/testsuite/winsup.api/ltp/mknod01.c
winsup/testsuite/winsup.api/ltp/mmap001.c
winsup/testsuite/winsup.api/ltp/mmap02.c
winsup/testsuite/winsup.api/ltp/mmap03.c
winsup/testsuite/winsup.api/ltp/mmap04.c
winsup/testsuite/winsup.api/ltp/mmap05.c
winsup/testsuite/winsup.api/ltp/mmap06.c
winsup/testsuite/winsup.api/ltp/mmap07.c
winsup/testsuite/winsup.api/ltp/mmap08.c
winsup/testsuite/winsup.api/ltp/munmap01.c
winsup/testsuite/winsup.api/ltp/munmap02.c
winsup/testsuite/winsup.api/ltp/nice05.c
winsup/testsuite/winsup.api/ltp/open02.c
winsup/testsuite/winsup.api/ltp/open03.c
winsup/testsuite/winsup.api/ltp/pathconf01.c
winsup/testsuite/winsup.api/ltp/pause01.c
winsup/testsuite/winsup.api/ltp/pipe01.c
winsup/testsuite/winsup.api/ltp/pipe08.c
winsup/testsuite/winsup.api/ltp/pipe09.c
winsup/testsuite/winsup.api/ltp/pipe10.c
winsup/testsuite/winsup.api/ltp/pipe11.c
winsup/testsuite/winsup.api/ltp/poll01.c
winsup/testsuite/winsup.api/ltp/read01.c
winsup/testsuite/winsup.api/ltp/read04.c
winsup/testsuite/winsup.api/ltp/readdir01.c
winsup/testsuite/winsup.api/ltp/readlink01.c
winsup/testsuite/winsup.api/ltp/readlink02.c
winsup/testsuite/winsup.api/ltp/readlink03.c
winsup/testsuite/winsup.api/ltp/rename01.c
winsup/testsuite/winsup.api/ltp/rename02.c
winsup/testsuite/winsup.api/ltp/rename08.c
winsup/testsuite/winsup.api/ltp/rename10.c
winsup/testsuite/winsup.api/ltp/rmdir01.c
winsup/testsuite/winsup.api/ltp/rmdir04.c
winsup/testsuite/winsup.api/ltp/rmdir05.c
winsup/testsuite/winsup.api/ltp/sbrk01.c
winsup/testsuite/winsup.api/ltp/select01.c
winsup/testsuite/winsup.api/ltp/select02.c
winsup/testsuite/winsup.api/ltp/select03.c
winsup/testsuite/winsup.api/ltp/setgid01.c
winsup/testsuite/winsup.api/ltp/setgroups01.c
winsup/testsuite/winsup.api/ltp/setpgid01.c
winsup/testsuite/winsup.api/ltp/setregid01.c
winsup/testsuite/winsup.api/ltp/setreuid01.c
winsup/testsuite/winsup.api/ltp/setuid01.c
winsup/testsuite/winsup.api/ltp/setuid02.c
winsup/testsuite/winsup.api/ltp/signal03.c
winsup/testsuite/winsup.api/ltp/stat01.c
winsup/testsuite/winsup.api/ltp/stat02.c
winsup/testsuite/winsup.api/ltp/stat03.c
winsup/testsuite/winsup.api/ltp/stat05.c
winsup/testsuite/winsup.api/ltp/stat06.c
winsup/testsuite/winsup.api/ltp/symlink01.c
winsup/testsuite/winsup.api/ltp/symlink02.c
winsup/testsuite/winsup.api/ltp/symlink03.c
winsup/testsuite/winsup.api/ltp/symlink04.c
winsup/testsuite/winsup.api/ltp/symlink05.c
winsup/testsuite/winsup.api/ltp/sync01.c
winsup/testsuite/winsup.api/ltp/sync02.c
winsup/testsuite/winsup.api/ltp/time01.c
winsup/testsuite/winsup.api/ltp/time02.c
winsup/testsuite/winsup.api/ltp/times01.c
winsup/testsuite/winsup.api/ltp/times02.c
winsup/testsuite/winsup.api/ltp/times03.c
winsup/testsuite/winsup.api/ltp/truncate01.c
winsup/testsuite/winsup.api/ltp/truncate02.c
winsup/testsuite/winsup.api/ltp/ulimit01.c
winsup/testsuite/winsup.api/ltp/umask01.c
winsup/testsuite/winsup.api/ltp/umask02.c
winsup/testsuite/winsup.api/ltp/umask03.c
winsup/testsuite/winsup.api/ltp/uname01.c
winsup/testsuite/winsup.api/ltp/unlink05.c
winsup/testsuite/winsup.api/ltp/unlink06.c
winsup/testsuite/winsup.api/ltp/unlink07.c
winsup/testsuite/winsup.api/ltp/unlink08.c
winsup/testsuite/winsup.api/ltp/vfork01.c
winsup/testsuite/winsup.api/ltp/wait02.c
winsup/testsuite/winsup.api/ltp/wait401.c
winsup/testsuite/winsup.api/ltp/wait402.c
winsup/testsuite/winsup.api/ltp/write01.c
winsup/testsuite/winsup.api/ltp/write02.c
winsup/testsuite/winsup.api/ltp/write03.c
winsup/testsuite/winsup.api/mmaptest01.c
winsup/testsuite/winsup.api/mmaptest02.c
winsup/testsuite/winsup.api/mmaptest03.c
winsup/testsuite/winsup.api/mmaptest04.c
winsup/testsuite/winsup.api/msgtest.c
winsup/testsuite/winsup.api/nullgetcwd.c
winsup/testsuite/winsup.api/pthread/cancel1.c
winsup/testsuite/winsup.api/pthread/cancel10.c
winsup/testsuite/winsup.api/pthread/cancel11.c
winsup/testsuite/winsup.api/pthread/cancel12.c
winsup/testsuite/winsup.api/pthread/cancel2.c
winsup/testsuite/winsup.api/pthread/cancel3.c
winsup/testsuite/winsup.api/pthread/cancel4.c
winsup/testsuite/winsup.api/pthread/cancel5.c
winsup/testsuite/winsup.api/pthread/cancel6.c
winsup/testsuite/winsup.api/pthread/cancel7.c
winsup/testsuite/winsup.api/pthread/cancel8.c
winsup/testsuite/winsup.api/pthread/cancel9.c
winsup/testsuite/winsup.api/pthread/cleanup2.c
winsup/testsuite/winsup.api/pthread/cleanup3.c
winsup/testsuite/winsup.api/pthread/condvar1.c
winsup/testsuite/winsup.api/pthread/condvar2.c
winsup/testsuite/winsup.api/pthread/condvar2_1.c
winsup/testsuite/winsup.api/pthread/condvar3.c
winsup/testsuite/winsup.api/pthread/condvar3_1.c
winsup/testsuite/winsup.api/pthread/condvar3_2.c
winsup/testsuite/winsup.api/pthread/condvar3_3.c
winsup/testsuite/winsup.api/pthread/condvar4.c
winsup/testsuite/winsup.api/pthread/condvar5.c
winsup/testsuite/winsup.api/pthread/condvar6.c
winsup/testsuite/winsup.api/pthread/condvar7.c
winsup/testsuite/winsup.api/pthread/condvar8.c
winsup/testsuite/winsup.api/pthread/condvar9.c
winsup/testsuite/winsup.api/pthread/count1.c
winsup/testsuite/winsup.api/pthread/create1.c
winsup/testsuite/winsup.api/pthread/create2.c
winsup/testsuite/winsup.api/pthread/equal1.c
winsup/testsuite/winsup.api/pthread/exit1.c
winsup/testsuite/winsup.api/pthread/exit2.c
winsup/testsuite/winsup.api/pthread/exit3.c
winsup/testsuite/winsup.api/pthread/inherit1.c
winsup/testsuite/winsup.api/pthread/join0.c
winsup/testsuite/winsup.api/pthread/join1.c
winsup/testsuite/winsup.api/pthread/join2.c
winsup/testsuite/winsup.api/pthread/mainthreadexits.c
winsup/testsuite/winsup.api/pthread/mutex1.c
winsup/testsuite/winsup.api/pthread/mutex1d.c
winsup/testsuite/winsup.api/pthread/mutex1e.c
winsup/testsuite/winsup.api/pthread/mutex1n.c
winsup/testsuite/winsup.api/pthread/mutex1r.c
winsup/testsuite/winsup.api/pthread/mutex2.c
winsup/testsuite/winsup.api/pthread/mutex3.c
winsup/testsuite/winsup.api/pthread/mutex4.c
winsup/testsuite/winsup.api/pthread/mutex5.c
winsup/testsuite/winsup.api/pthread/mutex6d.c
winsup/testsuite/winsup.api/pthread/mutex6e.c
winsup/testsuite/winsup.api/pthread/mutex6n.c
winsup/testsuite/winsup.api/pthread/mutex6r.c
winsup/testsuite/winsup.api/pthread/mutex7.c
winsup/testsuite/winsup.api/pthread/mutex7d.c
winsup/testsuite/winsup.api/pthread/mutex7e.c
winsup/testsuite/winsup.api/pthread/mutex7n.c
winsup/testsuite/winsup.api/pthread/mutex7r.c
winsup/testsuite/winsup.api/pthread/mutex8e.c
winsup/testsuite/winsup.api/pthread/mutex8n.c
winsup/testsuite/winsup.api/pthread/mutex8r.c
winsup/testsuite/winsup.api/pthread/once1.c
winsup/testsuite/winsup.api/pthread/priority1.c
winsup/testsuite/winsup.api/pthread/priority2.c
winsup/testsuite/winsup.api/pthread/rwlock1.c
winsup/testsuite/winsup.api/pthread/rwlock2.c
winsup/testsuite/winsup.api/pthread/rwlock3.c
winsup/testsuite/winsup.api/pthread/rwlock4.c
winsup/testsuite/winsup.api/pthread/rwlock5.c
winsup/testsuite/winsup.api/pthread/rwlock6.c
winsup/testsuite/winsup.api/pthread/rwlock7.c
winsup/testsuite/winsup.api/pthread/self1.c
winsup/testsuite/winsup.api/pthread/self2.c
winsup/testsuite/winsup.api/pthread/test.h
winsup/testsuite/winsup.api/pthread/threadidafterfork.c
winsup/testsuite/winsup.api/pthread/tsd1.c
winsup/testsuite/winsup.api/resethand.c
winsup/testsuite/winsup.api/samples/sample-fail.c
winsup/testsuite/winsup.api/samples/sample-miscompile.c
winsup/testsuite/winsup.api/samples/sample-pass.c
winsup/testsuite/winsup.api/semtest.c
winsup/testsuite/winsup.api/shmtest.c
winsup/testsuite/winsup.api/sigchld.c
winsup/testsuite/winsup.api/signal-into-win32-api.c
winsup/testsuite/winsup.api/systemcall.c
winsup/testsuite/winsup.api/user_malloc.c
winsup/testsuite/winsup.api/waitpid.c
winsup/testsuite/winsup.api/winsup.exp
winsup/utils/COPYING.dumper
winsup/utils/ChangeLog
winsup/utils/ChangeLog-2000
winsup/utils/Makefile.in
winsup/utils/aclocal.m4
winsup/utils/bloda.cc
winsup/utils/configure
winsup/utils/configure.in
winsup/utils/cygcheck.cc
winsup/utils/cygpath.cc
winsup/utils/dump_setup.cc
winsup/utils/dumper.cc
winsup/utils/dumper.h
winsup/utils/getfacl.c
winsup/utils/kill.cc
winsup/utils/mingw
winsup/utils/mkgroup.c
winsup/utils/mkpasswd.c
winsup/utils/module_info.cc
winsup/utils/mount.cc
winsup/utils/parse_pe.cc
winsup/utils/passwd.c
winsup/utils/path.cc
winsup/utils/path.h
winsup/utils/ps.cc
winsup/utils/regtool.cc
winsup/utils/setfacl.c
winsup/utils/setmetamode.c
winsup/utils/ssp.c
winsup/utils/ssp.txt
winsup/utils/strace.cc
winsup/utils/testsuite.cc
winsup/utils/testsuite.h
winsup/utils/umount.cc
winsup/utils/utils.sgml
winsup/w32api/CONTRIBUTIONS
winsup/w32api/ChangeLog
winsup/w32api/Makefile.in
winsup/w32api/README.w32api
winsup/w32api/TODO
winsup/w32api/aclocal.m4
winsup/w32api/config.guess
winsup/w32api/config.sub
winsup/w32api/configure
winsup/w32api/configure.in
winsup/w32api/include/GL/gl.h
winsup/w32api/include/GL/glext.h
winsup/w32api/include/GL/glu.h
winsup/w32api/include/accctrl.h
winsup/w32api/include/aclapi.h
winsup/w32api/include/aclui.h
winsup/w32api/include/adsprop.h
winsup/w32api/include/afxres.h
winsup/w32api/include/amaudio.h
winsup/w32api/include/amvideo.h
winsup/w32api/include/audevcod.h
winsup/w32api/include/aviriff.h
winsup/w32api/include/aygshell.h
winsup/w32api/include/basetsd.h
winsup/w32api/include/basetyps.h
winsup/w32api/include/bdatypes.h
winsup/w32api/include/cderr.h
winsup/w32api/include/cguid.h
winsup/w32api/include/cmnquery.h
winsup/w32api/include/comcat.h
winsup/w32api/include/commctrl.h
winsup/w32api/include/commdlg.h
winsup/w32api/include/control.h
winsup/w32api/include/cpl.h
winsup/w32api/include/cplext.h
winsup/w32api/include/custcntl.h
winsup/w32api/include/dbt.h
winsup/w32api/include/dde.h
winsup/w32api/include/ddeml.h
winsup/w32api/include/ddk/atm.h
winsup/w32api/include/ddk/batclass.h
winsup/w32api/include/ddk/cfg.h
winsup/w32api/include/ddk/cfgmgr32.h
winsup/w32api/include/ddk/d4drvif.h
winsup/w32api/include/ddk/d4iface.h
winsup/w32api/include/ddk/ddkmapi.h
winsup/w32api/include/ddk/hidclass.h
winsup/w32api/include/ddk/hidpi.h
winsup/w32api/include/ddk/hidsdi.h
winsup/w32api/include/ddk/hidusage.h
winsup/w32api/include/ddk/kbdmou.h
winsup/w32api/include/ddk/mcd.h
winsup/w32api/include/ddk/miniport.h
winsup/w32api/include/ddk/minitape.h
winsup/w32api/include/ddk/mountdev.h
winsup/w32api/include/ddk/mountmgr.h
winsup/w32api/include/ddk/ndis.h
winsup/w32api/include/ddk/ndisguid.h
winsup/w32api/include/ddk/ndistapi.h
winsup/w32api/include/ddk/ndiswan.h
winsup/w32api/include/ddk/netevent.h
winsup/w32api/include/ddk/netpnp.h
winsup/w32api/include/ddk/newdev.h
winsup/w32api/include/ddk/ntapi.h
winsup/w32api/include/ddk/ntdd8042.h
winsup/w32api/include/ddk/ntddbeep.h
winsup/w32api/include/ddk/ntddcdrm.h
winsup/w32api/include/ddk/ntddcdvd.h
winsup/w32api/include/ddk/ntddchgr.h
winsup/w32api/include/ddk/ntdddisk.h
winsup/w32api/include/ddk/ntddk.h
winsup/w32api/include/ddk/ntddkbd.h
winsup/w32api/include/ddk/ntddmou.h
winsup/w32api/include/ddk/ntddndis.h
winsup/w32api/include/ddk/ntddpar.h
winsup/w32api/include/ddk/ntddpcm.h
winsup/w32api/include/ddk/ntddscsi.h
winsup/w32api/include/ddk/ntddser.h
winsup/w32api/include/ddk/ntddstor.h
winsup/w32api/include/ddk/ntddtape.h
winsup/w32api/include/ddk/ntddtdi.h
winsup/w32api/include/ddk/ntddvdeo.h
winsup/w32api/include/ddk/ntddvol.h
winsup/w32api/include/ddk/ntifs.h
winsup/w32api/include/ddk/ntpoapi.h
winsup/w32api/include/ddk/ntstatus.h
winsup/w32api/include/ddk/parallel.h
winsup/w32api/include/ddk/pfhook.h
winsup/w32api/include/ddk/poclass.h
winsup/w32api/include/ddk/scsi.h
winsup/w32api/include/ddk/scsiscan.h
winsup/w32api/include/ddk/scsiwmi.h
winsup/w32api/include/ddk/smbus.h
winsup/w32api/include/ddk/srb.h
winsup/w32api/include/ddk/storport.h
winsup/w32api/include/ddk/tdi.h
winsup/w32api/include/ddk/tdiinfo.h
winsup/w32api/include/ddk/tdikrnl.h
winsup/w32api/include/ddk/tdistat.h
winsup/w32api/include/ddk/tvout.h
winsup/w32api/include/ddk/upssvc.h
winsup/w32api/include/ddk/usb.h
winsup/w32api/include/ddk/usb100.h
winsup/w32api/include/ddk/usbcamdi.h
winsup/w32api/include/ddk/usbdi.h
winsup/w32api/include/ddk/usbioctl.h
winsup/w32api/include/ddk/usbiodef.h
winsup/w32api/include/ddk/usbscan.h
winsup/w32api/include/ddk/usbuser.h
winsup/w32api/include/ddk/video.h
winsup/w32api/include/ddk/videoagp.h
winsup/w32api/include/ddk/win2k.h
winsup/w32api/include/ddk/winddi.h
winsup/w32api/include/ddk/winddk.h
winsup/w32api/include/ddk/winnt4.h
winsup/w32api/include/ddk/winxp.h
winsup/w32api/include/ddk/ws2san.h
winsup/w32api/include/ddk/xfilter.h
winsup/w32api/include/devguid.h
winsup/w32api/include/dhcpcsdk.h
winsup/w32api/include/directx/d3d9.h
winsup/w32api/include/directx/d3d9caps.h
winsup/w32api/include/directx/d3d9types.h
winsup/w32api/include/directx/dxerr8.h
winsup/w32api/include/directx/dxerr9.h
winsup/w32api/include/dlgs.h
winsup/w32api/include/docobj.h
winsup/w32api/include/dsadmin.h
winsup/w32api/include/dsclient.h
winsup/w32api/include/dsgetdc.h
winsup/w32api/include/dshow.h
winsup/w32api/include/dsquery.h
winsup/w32api/include/dsrole.h
winsup/w32api/include/dvdevcod.h
winsup/w32api/include/dvdmedia.h
winsup/w32api/include/edevdefs.h
winsup/w32api/include/errorrep.h
winsup/w32api/include/errors.h
winsup/w32api/include/evcode.h
winsup/w32api/include/exdisp.h
winsup/w32api/include/exdispid.h
winsup/w32api/include/fltdefs.h
winsup/w32api/include/httpext.h
winsup/w32api/include/icm.h
winsup/w32api/include/idispids.h
winsup/w32api/include/il21dec.h
winsup/w32api/include/imagehlp.h
winsup/w32api/include/imm.h
winsup/w32api/include/initguid.h
winsup/w32api/include/intshcut.h
winsup/w32api/include/ipexport.h
winsup/w32api/include/iphlpapi.h
winsup/w32api/include/ipifcons.h
winsup/w32api/include/ipinfoid.h
winsup/w32api/include/iprtrmib.h
winsup/w32api/include/iptypes.h
winsup/w32api/include/ipxconst.h
winsup/w32api/include/ipxrtdef.h
winsup/w32api/include/ipxtfflt.h
winsup/w32api/include/isguids.h
winsup/w32api/include/ks.h
winsup/w32api/include/ksmedia.h
winsup/w32api/include/largeint.h
winsup/w32api/include/lm.h
winsup/w32api/include/lmaccess.h
winsup/w32api/include/lmalert.h
winsup/w32api/include/lmapibuf.h
winsup/w32api/include/lmat.h
winsup/w32api/include/lmaudit.h
winsup/w32api/include/lmbrowsr.h
winsup/w32api/include/lmchdev.h
winsup/w32api/include/lmconfig.h
winsup/w32api/include/lmcons.h
winsup/w32api/include/lmerr.h
winsup/w32api/include/lmerrlog.h
winsup/w32api/include/lmmsg.h
winsup/w32api/include/lmremutl.h
winsup/w32api/include/lmrepl.h
winsup/w32api/include/lmserver.h
winsup/w32api/include/lmshare.h
winsup/w32api/include/lmsname.h
winsup/w32api/include/lmstats.h
winsup/w32api/include/lmsvc.h
winsup/w32api/include/lmuse.h
winsup/w32api/include/lmuseflg.h
winsup/w32api/include/lmwksta.h
winsup/w32api/include/lzexpand.h
winsup/w32api/include/mapi.h
winsup/w32api/include/mciavi.h
winsup/w32api/include/mcx.h
winsup/w32api/include/mgm.h
winsup/w32api/include/mgmtapi.h
winsup/w32api/include/mlang.h
winsup/w32api/include/mmreg.h
winsup/w32api/include/mmsystem.h
winsup/w32api/include/mpegtype.h
winsup/w32api/include/mprapi.h
winsup/w32api/include/mq.h
winsup/w32api/include/msacm.h
winsup/w32api/include/mshtml.h
winsup/w32api/include/mswsock.h
winsup/w32api/include/nb30.h
winsup/w32api/include/nddeapi.h
winsup/w32api/include/nspapi.h
winsup/w32api/include/ntdef.h
winsup/w32api/include/ntdll.h
winsup/w32api/include/ntdsapi.h
winsup/w32api/include/ntdsbcli.h
winsup/w32api/include/ntldap.h
winsup/w32api/include/ntsecapi.h
winsup/w32api/include/ntsecpkg.h
winsup/w32api/include/oaidl.h
winsup/w32api/include/objbase.h
winsup/w32api/include/objfwd.h
winsup/w32api/include/objidl.h
winsup/w32api/include/objsafe.h
winsup/w32api/include/objsel.h
winsup/w32api/include/ocidl.h
winsup/w32api/include/odbcinst.h
winsup/w32api/include/ole.h
winsup/w32api/include/ole2.h
winsup/w32api/include/ole2ver.h
winsup/w32api/include/oleacc.h
winsup/w32api/include/oleauto.h
winsup/w32api/include/olectl.h
winsup/w32api/include/olectlid.h
winsup/w32api/include/oledlg.h
winsup/w32api/include/oleidl.h
winsup/w32api/include/pbt.h
winsup/w32api/include/poppack.h
winsup/w32api/include/powrprof.h
winsup/w32api/include/prsht.h
winsup/w32api/include/psapi.h
winsup/w32api/include/pshpack1.h
winsup/w32api/include/pshpack2.h
winsup/w32api/include/pshpack4.h
winsup/w32api/include/pshpack8.h
winsup/w32api/include/qedit.h
winsup/w32api/include/rapi.h
winsup/w32api/include/ras.h
winsup/w32api/include/rasdlg.h
winsup/w32api/include/raserror.h
winsup/w32api/include/rassapi.h
winsup/w32api/include/reason.h
winsup/w32api/include/regstr.h
winsup/w32api/include/richedit.h
winsup/w32api/include/richole.h
winsup/w32api/include/routprot.h
winsup/w32api/include/rpc.h
winsup/w32api/include/rpcdce.h
winsup/w32api/include/rpcdce2.h
winsup/w32api/include/rpcdcep.h
winsup/w32api/include/rpcndr.h
winsup/w32api/include/rpcnsi.h
winsup/w32api/include/rpcnsip.h
winsup/w32api/include/rpcnterr.h
winsup/w32api/include/rpcproxy.h
winsup/w32api/include/rtutils.h
winsup/w32api/include/schannel.h
winsup/w32api/include/schnlsp.h
winsup/w32api/include/scrnsave.h
winsup/w32api/include/sddl.h
winsup/w32api/include/secext.h
winsup/w32api/include/security.h
winsup/w32api/include/servprov.h
winsup/w32api/include/setupapi.h
winsup/w32api/include/shellapi.h
winsup/w32api/include/shldisp.h
winsup/w32api/include/shlguid.h
winsup/w32api/include/shlobj.h
winsup/w32api/include/shlwapi.h
winsup/w32api/include/snmp.h
winsup/w32api/include/specstrings.h
winsup/w32api/include/sql.h
winsup/w32api/include/sqlext.h
winsup/w32api/include/sqltypes.h
winsup/w32api/include/sqlucode.h
winsup/w32api/include/sspi.h
winsup/w32api/include/stm.h
winsup/w32api/include/strmif.h
winsup/w32api/include/subauth.h
winsup/w32api/include/svcguid.h
winsup/w32api/include/tlhelp32.h
winsup/w32api/include/tmschema.h
winsup/w32api/include/unknwn.h
winsup/w32api/include/userenv.h
winsup/w32api/include/usp10.h
winsup/w32api/include/uxtheme.h
winsup/w32api/include/vfw.h
winsup/w32api/include/vidcap.h
winsup/w32api/include/vmr9.h
winsup/w32api/include/vptype.h
winsup/w32api/include/w32api.h
winsup/w32api/include/winable.h
winsup/w32api/include/winbase.h
winsup/w32api/include/winber.h
winsup/w32api/include/wincon.h
winsup/w32api/include/wincrypt.h
winsup/w32api/include/windef.h
winsup/w32api/include/windns.h
winsup/w32api/include/windows.h
winsup/w32api/include/windowsx.h
winsup/w32api/include/winerror.h
winsup/w32api/include/wingdi.h
winsup/w32api/include/wininet.h
winsup/w32api/include/winioctl.h
winsup/w32api/include/winldap.h
winsup/w32api/include/winnetwk.h
winsup/w32api/include/winnls.h
winsup/w32api/include/winnt.h
winsup/w32api/include/winperf.h
winsup/w32api/include/winreg.h
winsup/w32api/include/winresrc.h
winsup/w32api/include/winsnmp.h
winsup/w32api/include/winsock.h
winsup/w32api/include/winsock2.h
winsup/w32api/include/winspool.h
winsup/w32api/include/winsvc.h
winsup/w32api/include/winuser.h
winsup/w32api/include/winver.h
winsup/w32api/include/ws2spi.h
winsup/w32api/include/ws2tcpip.h
winsup/w32api/include/wsahelp.h
winsup/w32api/include/wsipx.h
winsup/w32api/include/wsnetbs.h
winsup/w32api/include/wtsapi32.h
winsup/w32api/include/wtypes.h
winsup/w32api/include/xprtdefs.h
winsup/w32api/include/zmouse.h
winsup/w32api/install-sh
winsup/w32api/lib/Makefile.in
winsup/w32api/lib/aclui.def
winsup/w32api/lib/advapi32.def
winsup/w32api/lib/ativscp-uuid.c
winsup/w32api/lib/avicap32.def
winsup/w32api/lib/avifil32.def
winsup/w32api/lib/bthprops.def
winsup/w32api/lib/cap.def
winsup/w32api/lib/cguid-uuid.c
winsup/w32api/lib/comcat-uuid.c
winsup/w32api/lib/comctl32.def
winsup/w32api/lib/comdlg32.def
winsup/w32api/lib/crypt32.def
winsup/w32api/lib/ctl3d32.def
winsup/w32api/lib/ddk/Makefile.in
winsup/w32api/lib/ddk/apcups.def
winsup/w32api/lib/ddk/cfgmgr32.def
winsup/w32api/lib/ddk/dxapi.def
winsup/w32api/lib/ddk/hal.def
winsup/w32api/lib/ddk/hid.def
winsup/w32api/lib/ddk/hidparse.def
winsup/w32api/lib/ddk/mcd.def
winsup/w32api/lib/ddk/ndis.def
winsup/w32api/lib/ddk/newdev.def
winsup/w32api/lib/ddk/ntoskrnl.def
winsup/w32api/lib/ddk/scsiport.def
winsup/w32api/lib/ddk/tdi.def
winsup/w32api/lib/ddk/usbcamd.def
winsup/w32api/lib/ddk/usbcamd2.def
winsup/w32api/lib/ddk/videoprt.def
winsup/w32api/lib/ddk/win32k.def
winsup/w32api/lib/devguid.c
winsup/w32api/lib/dhcpcsvc.def
winsup/w32api/lib/directx/Makefile.in
winsup/w32api/lib/directx/d3d8.def
winsup/w32api/lib/directx/d3d9.def
winsup/w32api/lib/directx/d3dim.def
winsup/w32api/lib/directx/d3drm.def
winsup/w32api/lib/directx/d3dx8d.def
winsup/w32api/lib/directx/d3dx9d.def
winsup/w32api/lib/directx/d3dxof.def
winsup/w32api/lib/directx/ddraw.def
winsup/w32api/lib/directx/dinput.def
winsup/w32api/lib/directx/dinput8.def
winsup/w32api/lib/directx/dinput_joy.c
winsup/w32api/lib/directx/dinput_joy2.c
winsup/w32api/lib/directx/dinput_kbd.c
winsup/w32api/lib/directx/dinput_mouse.c
winsup/w32api/lib/directx/dinput_mouse2.c
winsup/w32api/lib/directx/dinput_private.h
winsup/w32api/lib/directx/dmoguids.c
winsup/w32api/lib/directx/dplayx.def
winsup/w32api/lib/directx/dpnaddr.def
winsup/w32api/lib/directx/dpnet.def
winsup/w32api/lib/directx/dpnlobby.def
winsup/w32api/lib/directx/dpvoice.def
winsup/w32api/lib/directx/dsetup.def
winsup/w32api/lib/directx/dsound.def
winsup/w32api/lib/directx/dxerr.c
winsup/w32api/lib/directx/dxerr8.c
winsup/w32api/lib/directx/dxerr8w.c
winsup/w32api/lib/directx/dxerr9.c
winsup/w32api/lib/directx/dxerr9w.c
winsup/w32api/lib/directx/dxguid.c
winsup/w32api/lib/directx/ksproxy.def
winsup/w32api/lib/directx/ksuser.c
winsup/w32api/lib/directx/ksuser.def
winsup/w32api/lib/directx/msdmo.def
winsup/w32api/lib/directx/strmiids.c
winsup/w32api/lib/directx/test.c
winsup/w32api/lib/dlcapi.def
winsup/w32api/lib/dnsapi.def
winsup/w32api/lib/docobj-uuid.c
winsup/w32api/lib/exdisp-uuid.c
winsup/w32api/lib/extras-uuid.c
winsup/w32api/lib/faultrep.def
winsup/w32api/lib/gdi32.def
winsup/w32api/lib/glaux.def
winsup/w32api/lib/glu32.def
winsup/w32api/lib/hlguids-uuid.c
winsup/w32api/lib/hlink-uuid.c
winsup/w32api/lib/icmui.def
winsup/w32api/lib/igmpagnt.def
winsup/w32api/lib/imagehlp.def
winsup/w32api/lib/imm32.def
winsup/w32api/lib/iphlpapi.def
winsup/w32api/lib/kernel32.def
winsup/w32api/lib/largeint.c
winsup/w32api/lib/lz32.def
winsup/w32api/lib/mapi32.def
winsup/w32api/lib/mfcuia32.def
winsup/w32api/lib/mgmtapi.def
winsup/w32api/lib/mlang-uuid.c
winsup/w32api/lib/mpr.def
winsup/w32api/lib/mprapi.def
winsup/w32api/lib/mqrt.def
winsup/w32api/lib/msacm32.def
winsup/w32api/lib/mscms.def
winsup/w32api/lib/mshtml-uuid.c
winsup/w32api/lib/msimg32.def
winsup/w32api/lib/msvcp60.def
winsup/w32api/lib/msvfw32.def
winsup/w32api/lib/mswsock.def
winsup/w32api/lib/msxml-uuid.c
winsup/w32api/lib/nddeapi.def
winsup/w32api/lib/netapi32.def
winsup/w32api/lib/ntdll.def
winsup/w32api/lib/oaidl-uuid.c
winsup/w32api/lib/objidl-uuid.c
winsup/w32api/lib/objsafe-uuid.c
winsup/w32api/lib/ocidl-uuid.c
winsup/w32api/lib/odbc32.def
winsup/w32api/lib/odbccp32.def
winsup/w32api/lib/ole32.def
winsup/w32api/lib/oleacc-uuid.c
winsup/w32api/lib/oleacc.def
winsup/w32api/lib/oleaut32.def
winsup/w32api/lib/olecli32.def
winsup/w32api/lib/olectlid-uuid.c
winsup/w32api/lib/oledlg.def
winsup/w32api/lib/oleidl-uuid.c
winsup/w32api/lib/olepro32.def
winsup/w32api/lib/olesvr32.def
winsup/w32api/lib/opengl32.def
winsup/w32api/lib/penwin32.def
winsup/w32api/lib/pkpd32.def
winsup/w32api/lib/power-uuid.c
winsup/w32api/lib/powrprof.def
winsup/w32api/lib/psapi.def
winsup/w32api/lib/quartz.def
winsup/w32api/lib/rapi.def
winsup/w32api/lib/rasapi32.def
winsup/w32api/lib/rasdlg.def
winsup/w32api/lib/res.rc
winsup/w32api/lib/rpcdce4.def
winsup/w32api/lib/rpcns4.def
winsup/w32api/lib/rpcrt4.def
winsup/w32api/lib/rtm.def
winsup/w32api/lib/rtutils.def
winsup/w32api/lib/scrnsave.c
winsup/w32api/lib/secur32.def
winsup/w32api/lib/servprov-uuid.c
winsup/w32api/lib/setupapi.def
winsup/w32api/lib/shell32.c
winsup/w32api/lib/shell32.def
winsup/w32api/lib/shfolder.def
winsup/w32api/lib/shlwapi.def
winsup/w32api/lib/snmpapi.def
winsup/w32api/lib/svrapi.def
winsup/w32api/lib/tapi32.def
winsup/w32api/lib/test.c
winsup/w32api/lib/th32.def
winsup/w32api/lib/thunk32.def
winsup/w32api/lib/unknwn-uuid.c
winsup/w32api/lib/url.def
winsup/w32api/lib/urlmon-uuid.c
winsup/w32api/lib/user32.def
winsup/w32api/lib/userenv.def
winsup/w32api/lib/usp10.def
winsup/w32api/lib/uxtheme.def
winsup/w32api/lib/vdmdbg.def
winsup/w32api/lib/version.def
winsup/w32api/lib/vfw32.mri
winsup/w32api/lib/win32spl.def
winsup/w32api/lib/wininet.def
winsup/w32api/lib/winmm.def
winsup/w32api/lib/winspool.def
winsup/w32api/lib/winstrm.def
winsup/w32api/lib/wldap32.def
winsup/w32api/lib/wow32.def
winsup/w32api/lib/ws2_32.c
winsup/w32api/lib/ws2_32.def
winsup/w32api/lib/wsnmp32.def
winsup/w32api/lib/wsock32.def
winsup/w32api/lib/wst.def
winsup/w32api/lib/wtsapi32.def
Diffstat (limited to 'winsup/w32api/include/ddk/ndis.h')
-rw-r--r-- | winsup/w32api/include/ddk/ndis.h | 5317 |
1 files changed, 0 insertions, 5317 deletions
diff --git a/winsup/w32api/include/ddk/ndis.h b/winsup/w32api/include/ddk/ndis.h deleted file mode 100644 index 2e61beaa1..000000000 --- a/winsup/w32api/include/ddk/ndis.h +++ /dev/null @@ -1,5317 +0,0 @@ -/* - * ndis.h - * - * Network Device Interface Specification definitions - * - * This file is part of the w32api package. - * - * Contributors: - * Created by Casper S. Hornstrup <chorns@users.sourceforge.net> - * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * DEFINES: i386 - Target platform is i386 - * _NDIS_ - Define only for NDIS library - * NDIS_MINIPORT_DRIVER - Define only for NDIS miniport drivers - * NDIS40 - Use NDIS 4.0 structures by default - * NDIS50 - Use NDIS 5.0 structures by default - * NDIS50_MINIPORT - Building NDIS 5.0 miniport driver - * NDIS51_MINIPORT - Building NDIS 5.1 miniport driver - */ -#ifndef __NDIS_H -#define __NDIS_H - -#if __GNUC__ >=3 -#pragma GCC system_header -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#include "ntddk.h" -#include "ntddndis.h" -#include "netpnp.h" -#include "netevent.h" -#include <winsock2.h> - -#if defined(_NDIS_) - #define NDISAPI DECLSPEC_EXPORT -#else - #define NDISAPI DECLSPEC_IMPORT -#endif - -#if defined(NDIS50_MINIPORT) -#ifndef NDIS50 -#define NDIS50 -#define NDIS_MINIPORT_MAJOR_VERSION 5 -#define NDIS_MINIPORT_MINOR_VERSION 0 -#endif -#endif /* NDIS50_MINIPORT */ - -#if defined(NDIS51_MINIPORT) -#ifndef NDIS51 -#define NDIS51 -#define NDIS_MINIPORT_MAJOR_VERSION 5 -#define NDIS_MINIPORT_MINOR_VERSION 1 -#endif -#endif /* NDIS51_MINIPORT */ - -/* NDIS 3.0 is default */ -#if !defined(NDIS30) || !defined(NDIS40) || !defined(NDIS50) || !defined(NDIS51) -#define NDIS30 -#endif /* !NDIS30 || !NDIS40 || !NDIS50 || !NDIS51 */ - -#if 1 -/* FIXME: */ -typedef PVOID QUEUED_CLOSE; -#endif - -typedef ULONG NDIS_OID, *PNDIS_OID; - -typedef struct _X_FILTER FDDI_FILTER, *PFDDI_FILTER; -typedef struct _X_FILTER TR_FILTER, *PTR_FILTER; -typedef struct _X_FILTER NULL_FILTER, *PNULL_FILTER; - -typedef struct _REFERENCE { - KSPIN_LOCK SpinLock; - USHORT ReferenceCount; - BOOLEAN Closing; -} REFERENCE, * PREFERENCE; - - -/* NDIS base types */ - -typedef struct _NDIS_SPIN_LOCK { - KSPIN_LOCK SpinLock; - KIRQL OldIrql; -} NDIS_SPIN_LOCK, * PNDIS_SPIN_LOCK; - -typedef struct _NDIS_EVENT { - KEVENT Event; -} NDIS_EVENT, *PNDIS_EVENT; - -typedef PVOID NDIS_HANDLE, *PNDIS_HANDLE; -typedef int NDIS_STATUS, *PNDIS_STATUS; - -typedef ANSI_STRING NDIS_ANSI_STRING, *PNDIS_ANSI_STRING; -typedef UNICODE_STRING NDIS_STRING, *PNDIS_STRING; - -typedef MDL NDIS_BUFFER, *PNDIS_BUFFER; -typedef ULONG NDIS_ERROR_CODE, *PNDIS_ERROR_CODE; - - -/* NDIS_STATUS constants */ -#define NDIS_STATUS_SUCCESS ((NDIS_STATUS)STATUS_SUCCESS) -#define NDIS_STATUS_PENDING ((NDIS_STATUS)STATUS_PENDING) -#define NDIS_STATUS_NOT_RECOGNIZED ((NDIS_STATUS)0x00010001L) -#define NDIS_STATUS_NOT_COPIED ((NDIS_STATUS)0x00010002L) -#define NDIS_STATUS_NOT_ACCEPTED ((NDIS_STATUS)0x00010003L) -#define NDIS_STATUS_CALL_ACTIVE ((NDIS_STATUS)0x00010007L) -#define NDIS_STATUS_ONLINE ((NDIS_STATUS)0x40010003L) -#define NDIS_STATUS_RESET_START ((NDIS_STATUS)0x40010004L) -#define NDIS_STATUS_RESET_END ((NDIS_STATUS)0x40010005L) -#define NDIS_STATUS_RING_STATUS ((NDIS_STATUS)0x40010006L) -#define NDIS_STATUS_CLOSED ((NDIS_STATUS)0x40010007L) -#define NDIS_STATUS_WAN_LINE_UP ((NDIS_STATUS)0x40010008L) -#define NDIS_STATUS_WAN_LINE_DOWN ((NDIS_STATUS)0x40010009L) -#define NDIS_STATUS_WAN_FRAGMENT ((NDIS_STATUS)0x4001000AL) -#define NDIS_STATUS_MEDIA_CONNECT ((NDIS_STATUS)0x4001000BL) -#define NDIS_STATUS_MEDIA_DISCONNECT ((NDIS_STATUS)0x4001000CL) -#define NDIS_STATUS_HARDWARE_LINE_UP ((NDIS_STATUS)0x4001000DL) -#define NDIS_STATUS_HARDWARE_LINE_DOWN ((NDIS_STATUS)0x4001000EL) -#define NDIS_STATUS_INTERFACE_UP ((NDIS_STATUS)0x4001000FL) -#define NDIS_STATUS_INTERFACE_DOWN ((NDIS_STATUS)0x40010010L) -#define NDIS_STATUS_MEDIA_BUSY ((NDIS_STATUS)0x40010011L) -#define NDIS_STATUS_MEDIA_SPECIFIC_INDICATION ((NDIS_STATUS)0x40010012L) -#define NDIS_STATUS_WW_INDICATION NDIS_STATUS_MEDIA_SPECIFIC_INDICATION -#define NDIS_STATUS_LINK_SPEED_CHANGE ((NDIS_STATUS)0x40010013L) -#define NDIS_STATUS_WAN_GET_STATS ((NDIS_STATUS)0x40010014L) -#define NDIS_STATUS_WAN_CO_FRAGMENT ((NDIS_STATUS)0x40010015L) -#define NDIS_STATUS_WAN_CO_LINKPARAMS ((NDIS_STATUS)0x40010016L) - -#define NDIS_STATUS_NOT_RESETTABLE ((NDIS_STATUS)0x80010001L) -#define NDIS_STATUS_SOFT_ERRORS ((NDIS_STATUS)0x80010003L) -#define NDIS_STATUS_HARD_ERRORS ((NDIS_STATUS)0x80010004L) -#define NDIS_STATUS_BUFFER_OVERFLOW ((NDIS_STATUS)STATUS_BUFFER_OVERFLOW) - -#define NDIS_STATUS_FAILURE ((NDIS_STATUS)STATUS_UNSUCCESSFUL) -#define NDIS_STATUS_RESOURCES ((NDIS_STATUS)STATUS_INSUFFICIENT_RESOURCES) -#define NDIS_STATUS_CLOSING ((NDIS_STATUS)0xC0010002L) -#define NDIS_STATUS_BAD_VERSION ((NDIS_STATUS)0xC0010004L) -#define NDIS_STATUS_BAD_CHARACTERISTICS ((NDIS_STATUS)0xC0010005L) -#define NDIS_STATUS_ADAPTER_NOT_FOUND ((NDIS_STATUS)0xC0010006L) -#define NDIS_STATUS_OPEN_FAILED ((NDIS_STATUS)0xC0010007L) -#define NDIS_STATUS_DEVICE_FAILED ((NDIS_STATUS)0xC0010008L) -#define NDIS_STATUS_MULTICAST_FULL ((NDIS_STATUS)0xC0010009L) -#define NDIS_STATUS_MULTICAST_EXISTS ((NDIS_STATUS)0xC001000AL) -#define NDIS_STATUS_MULTICAST_NOT_FOUND ((NDIS_STATUS)0xC001000BL) -#define NDIS_STATUS_REQUEST_ABORTED ((NDIS_STATUS)0xC001000CL) -#define NDIS_STATUS_RESET_IN_PROGRESS ((NDIS_STATUS)0xC001000DL) -#define NDIS_STATUS_CLOSING_INDICATING ((NDIS_STATUS)0xC001000EL) -#define NDIS_STATUS_NOT_SUPPORTED ((NDIS_STATUS)STATUS_NOT_SUPPORTED) -#define NDIS_STATUS_INVALID_PACKET ((NDIS_STATUS)0xC001000FL) -#define NDIS_STATUS_OPEN_LIST_FULL ((NDIS_STATUS)0xC0010010L) -#define NDIS_STATUS_ADAPTER_NOT_READY ((NDIS_STATUS)0xC0010011L) -#define NDIS_STATUS_ADAPTER_NOT_OPEN ((NDIS_STATUS)0xC0010012L) -#define NDIS_STATUS_NOT_INDICATING ((NDIS_STATUS)0xC0010013L) -#define NDIS_STATUS_INVALID_LENGTH ((NDIS_STATUS)0xC0010014L) -#define NDIS_STATUS_INVALID_DATA ((NDIS_STATUS)0xC0010015L) -#define NDIS_STATUS_BUFFER_TOO_SHORT ((NDIS_STATUS)0xC0010016L) -#define NDIS_STATUS_INVALID_OID ((NDIS_STATUS)0xC0010017L) -#define NDIS_STATUS_ADAPTER_REMOVED ((NDIS_STATUS)0xC0010018L) -#define NDIS_STATUS_UNSUPPORTED_MEDIA ((NDIS_STATUS)0xC0010019L) -#define NDIS_STATUS_GROUP_ADDRESS_IN_USE ((NDIS_STATUS)0xC001001AL) -#define NDIS_STATUS_FILE_NOT_FOUND ((NDIS_STATUS)0xC001001BL) -#define NDIS_STATUS_ERROR_READING_FILE ((NDIS_STATUS)0xC001001CL) -#define NDIS_STATUS_ALREADY_MAPPED ((NDIS_STATUS)0xC001001DL) -#define NDIS_STATUS_RESOURCE_CONFLICT ((NDIS_STATUS)0xC001001EL) -#define NDIS_STATUS_NO_CABLE ((NDIS_STATUS)0xC001001FL) - -#define NDIS_STATUS_INVALID_SAP ((NDIS_STATUS)0xC0010020L) -#define NDIS_STATUS_SAP_IN_USE ((NDIS_STATUS)0xC0010021L) -#define NDIS_STATUS_INVALID_ADDRESS ((NDIS_STATUS)0xC0010022L) -#define NDIS_STATUS_VC_NOT_ACTIVATED ((NDIS_STATUS)0xC0010023L) -#define NDIS_STATUS_DEST_OUT_OF_ORDER ((NDIS_STATUS)0xC0010024L) -#define NDIS_STATUS_VC_NOT_AVAILABLE ((NDIS_STATUS)0xC0010025L) -#define NDIS_STATUS_CELLRATE_NOT_AVAILABLE ((NDIS_STATUS)0xC0010026L) -#define NDIS_STATUS_INCOMPATABLE_QOS ((NDIS_STATUS)0xC0010027L) -#define NDIS_STATUS_AAL_PARAMS_UNSUPPORTED ((NDIS_STATUS)0xC0010028L) -#define NDIS_STATUS_NO_ROUTE_TO_DESTINATION ((NDIS_STATUS)0xC0010029L) - -#define NDIS_STATUS_TOKEN_RING_OPEN_ERROR ((NDIS_STATUS)0xC0011000L) -#define NDIS_STATUS_INVALID_DEVICE_REQUEST ((NDIS_STATUS)STATUS_INVALID_DEVICE_REQUEST) -#define NDIS_STATUS_NETWORK_UNREACHABLE ((NDIS_STATUS)STATUS_NETWORK_UNREACHABLE) - - -/* NDIS error codes for error logging */ - -#define NDIS_ERROR_CODE_RESOURCE_CONFLICT EVENT_NDIS_RESOURCE_CONFLICT -#define NDIS_ERROR_CODE_OUT_OF_RESOURCES EVENT_NDIS_OUT_OF_RESOURCE -#define NDIS_ERROR_CODE_HARDWARE_FAILURE EVENT_NDIS_HARDWARE_FAILURE -#define NDIS_ERROR_CODE_ADAPTER_NOT_FOUND EVENT_NDIS_ADAPTER_NOT_FOUND -#define NDIS_ERROR_CODE_INTERRUPT_CONNECT EVENT_NDIS_INTERRUPT_CONNECT -#define NDIS_ERROR_CODE_DRIVER_FAILURE EVENT_NDIS_DRIVER_FAILURE -#define NDIS_ERROR_CODE_BAD_VERSION EVENT_NDIS_BAD_VERSION -#define NDIS_ERROR_CODE_TIMEOUT EVENT_NDIS_TIMEOUT -#define NDIS_ERROR_CODE_NETWORK_ADDRESS EVENT_NDIS_NETWORK_ADDRESS -#define NDIS_ERROR_CODE_UNSUPPORTED_CONFIGURATION EVENT_NDIS_UNSUPPORTED_CONFIGURATION -#define NDIS_ERROR_CODE_INVALID_VALUE_FROM_ADAPTER EVENT_NDIS_INVALID_VALUE_FROM_ADAPTER -#define NDIS_ERROR_CODE_MISSING_CONFIGURATION_PARAMETER EVENT_NDIS_MISSING_CONFIGURATION_PARAMETER -#define NDIS_ERROR_CODE_BAD_IO_BASE_ADDRESS EVENT_NDIS_BAD_IO_BASE_ADDRESS -#define NDIS_ERROR_CODE_RECEIVE_SPACE_SMALL EVENT_NDIS_RECEIVE_SPACE_SMALL -#define NDIS_ERROR_CODE_ADAPTER_DISABLED EVENT_NDIS_ADAPTER_DISABLED - - -/* Memory allocation flags. Used by Ndis[Allocate|Free]Memory */ -#define NDIS_MEMORY_CONTIGUOUS 0x00000001 -#define NDIS_MEMORY_NONCACHED 0x00000002 - -/* NIC attribute flags. Used by NdisMSetAttributes(Ex) */ -#define NDIS_ATTRIBUTE_IGNORE_PACKET_TIMEOUT 0x00000001 -#define NDIS_ATTRIBUTE_IGNORE_REQUEST_TIMEOUT 0x00000002 -#define NDIS_ATTRIBUTE_IGNORE_TOKEN_RING_ERRORS 0x00000004 -#define NDIS_ATTRIBUTE_BUS_MASTER 0x00000008 -#define NDIS_ATTRIBUTE_INTERMEDIATE_DRIVER 0x00000010 -#define NDIS_ATTRIBUTE_DESERIALIZE 0x00000020 -#define NDIS_ATTRIBUTE_NO_HALT_ON_SUSPEND 0x00000040 -#define NDIS_ATTRIBUTE_SURPRISE_REMOVE_OK 0x00000080 -#define NDIS_ATTRIBUTE_NOT_CO_NDIS 0x00000100 -#define NDIS_ATTRIBUTE_USES_SAFE_BUFFER_APIS 0x00000200 - - -/* Lock */ - -typedef union _NDIS_RW_LOCK_REFCOUNT { - UINT RefCount; - UCHAR cacheLine[16]; -} NDIS_RW_LOCK_REFCOUNT; - -typedef struct _NDIS_RW_LOCK { - union { - struct { - KSPIN_LOCK SpinLock; - PVOID Context; - } s; - UCHAR Reserved[16]; - } u; - - NDIS_RW_LOCK_REFCOUNT RefCount[MAXIMUM_PROCESSORS]; -} NDIS_RW_LOCK, *PNDIS_RW_LOCK; - -typedef struct _LOCK_STATE { - USHORT LockState; - KIRQL OldIrql; -} LOCK_STATE, *PLOCK_STATE; - - - -/* Timer */ - -typedef VOID DDKAPI -(*PNDIS_TIMER_FUNCTION)( - /*IN*/ PVOID SystemSpecific1, - /*IN*/ PVOID FunctionContext, - /*IN*/ PVOID SystemSpecific2, - /*IN*/ PVOID SystemSpecific3); - -typedef struct _NDIS_TIMER { - KTIMER Timer; - KDPC Dpc; -} NDIS_TIMER, *PNDIS_TIMER; - - - -/* Hardware */ - -typedef CM_MCA_POS_DATA NDIS_MCA_POS_DATA, *PNDIS_MCA_POS_DATA; -typedef CM_EISA_SLOT_INFORMATION NDIS_EISA_SLOT_INFORMATION, *PNDIS_EISA_SLOT_INFORMATION; -typedef CM_EISA_FUNCTION_INFORMATION NDIS_EISA_FUNCTION_INFORMATION, *PNDIS_EISA_FUNCTION_INFORMATION; -typedef CM_PARTIAL_RESOURCE_LIST NDIS_RESOURCE_LIST, *PNDIS_RESOURCE_LIST; - -/* Hardware status codes (OID_GEN_HARDWARE_STATUS) */ -typedef enum _NDIS_HARDWARE_STATUS { - NdisHardwareStatusReady, - NdisHardwareStatusInitializing, - NdisHardwareStatusReset, - NdisHardwareStatusClosing, - NdisHardwareStatusNotReady -} NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS; - -/* OID_GEN_GET_TIME_CAPS */ -typedef struct _GEN_GET_TIME_CAPS { - ULONG Flags; - ULONG ClockPrecision; -} GEN_GET_TIME_CAPS, *PGEN_GET_TIME_CAPS; - -/* Flag bits */ -#define READABLE_LOCAL_CLOCK 0x00000001 -#define CLOCK_NETWORK_DERIVED 0x00000002 -#define CLOCK_PRECISION 0x00000004 -#define RECEIVE_TIME_INDICATION_CAPABLE 0x00000008 -#define TIMED_SEND_CAPABLE 0x00000010 -#define TIME_STAMP_CAPABLE 0x00000020 - -/* OID_GEN_GET_NETCARD_TIME */ -typedef struct _GEN_GET_NETCARD_TIME { - ULONGLONG ReadTime; -} GEN_GET_NETCARD_TIME, *PGEN_GET_NETCARD_TIME; - -/* NDIS driver medium (OID_GEN_MEDIA_SUPPORTED / OID_GEN_MEDIA_IN_USE) */ -typedef enum _NDIS_MEDIUM { - NdisMedium802_3, - NdisMedium802_5, - NdisMediumFddi, - NdisMediumWan, - NdisMediumLocalTalk, - NdisMediumDix, - NdisMediumArcnetRaw, - NdisMediumArcnet878_2, - NdisMediumAtm, - NdisMediumWirelessWan, - NdisMediumIrda, - NdisMediumBpc, - NdisMediumCoWan, - NdisMedium1394, - NdisMediumMax -} NDIS_MEDIUM, *PNDIS_MEDIUM; - -/* NDIS packet filter bits (OID_GEN_CURRENT_PACKET_FILTER) */ -#define NDIS_PACKET_TYPE_DIRECTED 0x00000001 -#define NDIS_PACKET_TYPE_MULTICAST 0x00000002 -#define NDIS_PACKET_TYPE_ALL_MULTICAST 0x00000004 -#define NDIS_PACKET_TYPE_BROADCAST 0x00000008 -#define NDIS_PACKET_TYPE_SOURCE_ROUTING 0x00000010 -#define NDIS_PACKET_TYPE_PROMISCUOUS 0x00000020 -#define NDIS_PACKET_TYPE_SMT 0x00000040 -#define NDIS_PACKET_TYPE_ALL_LOCAL 0x00000080 -#define NDIS_PACKET_TYPE_GROUP 0x00001000 -#define NDIS_PACKET_TYPE_ALL_FUNCTIONAL 0x00002000 -#define NDIS_PACKET_TYPE_FUNCTIONAL 0x00004000 -#define NDIS_PACKET_TYPE_MAC_FRAME 0x00008000 - -/* NDIS protocol option bits (OID_GEN_PROTOCOL_OPTIONS) */ -#define NDIS_PROT_OPTION_ESTIMATED_LENGTH 0x00000001 -#define NDIS_PROT_OPTION_NO_LOOPBACK 0x00000002 -#define NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT 0x00000004 - -/* NDIS MAC option bits (OID_GEN_MAC_OPTIONS) */ -#define NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA 0x00000001 -#define NDIS_MAC_OPTION_RECEIVE_SERIALIZED 0x00000002 -#define NDIS_MAC_OPTION_TRANSFERS_NOT_PEND 0x00000004 -#define NDIS_MAC_OPTION_NO_LOOPBACK 0x00000008 -#define NDIS_MAC_OPTION_FULL_DUPLEX 0x00000010 -#define NDIS_MAC_OPTION_EOTX_INDICATION 0x00000020 -#define NDIS_MAC_OPTION_8021P_PRIORITY 0x00000040 -#define NDIS_MAC_OPTION_RESERVED 0x80000000 - -/* State of the LAN media (OID_GEN_MEDIA_CONNECT_STATUS) */ -typedef enum _NDIS_MEDIA_STATE { - NdisMediaStateConnected, - NdisMediaStateDisconnected -} NDIS_MEDIA_STATE, *PNDIS_MEDIA_STATE; - -/* OID_GEN_SUPPORTED_GUIDS */ -typedef struct _NDIS_GUID { - GUID Guid; - union { - NDIS_OID Oid; - NDIS_STATUS Status; - } u; - ULONG Size; - ULONG Flags; -} NDIS_GUID, *PNDIS_GUID; - -#define NDIS_GUID_TO_OID 0x00000001 -#define NDIS_GUID_TO_STATUS 0x00000002 -#define NDIS_GUID_ANSI_STRING 0x00000004 -#define NDIS_GUID_UNICODE_STRING 0x00000008 -#define NDIS_GUID_ARRAY 0x00000010 - - -typedef struct _NDIS_PACKET_POOL { - NDIS_SPIN_LOCK SpinLock; - struct _NDIS_PACKET *FreeList; - UINT PacketLength; - UCHAR Buffer[1]; -} NDIS_PACKET_POOL, * PNDIS_PACKET_POOL; - -/* NDIS_PACKET_PRIVATE.Flags constants */ -#define fPACKET_CONTAINS_MEDIA_SPECIFIC_INFO 0x40 -#define fPACKET_ALLOCATED_BY_NDIS 0x80 - -typedef struct _NDIS_PACKET_PRIVATE { - UINT PhysicalCount; - UINT TotalLength; - PNDIS_BUFFER Head; - PNDIS_BUFFER Tail; - PNDIS_PACKET_POOL Pool; - UINT Count; - ULONG Flags; - BOOLEAN ValidCounts; - UCHAR NdisPacketFlags; - USHORT NdisPacketOobOffset; -} NDIS_PACKET_PRIVATE, * PNDIS_PACKET_PRIVATE; - -typedef struct _NDIS_PACKET { - NDIS_PACKET_PRIVATE Private; - _ANONYMOUS_UNION union { - _ANONYMOUS_STRUCT struct { - UCHAR MiniportReserved[2 * sizeof(PVOID)]; - UCHAR WrapperReserved[2 * sizeof(PVOID)]; - } DUMMYSTRUCTNAME; - _ANONYMOUS_STRUCT struct { - UCHAR MiniportReservedEx[3 * sizeof(PVOID)]; - UCHAR WrapperReservedEx[sizeof(PVOID)]; - } DUMMYSTRUCTNAME; - _ANONYMOUS_STRUCT struct { - UCHAR MacReserved[4 * sizeof(PVOID)]; - } DUMMYSTRUCTNAME; - } DUMMYUNIONNAME; - ULONG_PTR Reserved[2]; - UCHAR ProtocolReserved[1]; -} NDIS_PACKET, *PNDIS_PACKET, **PPNDIS_PACKET; - -typedef enum _NDIS_CLASS_ID { - NdisClass802_3Priority, - NdisClassWirelessWanMbxMailbox, - NdisClassIrdaPacketInfo, - NdisClassAtmAALInfo -} NDIS_CLASS_ID; - -typedef struct MediaSpecificInformation { - UINT NextEntryOffset; - NDIS_CLASS_ID ClassId; - UINT Size; - UCHAR ClassInformation[1]; -} MEDIA_SPECIFIC_INFORMATION; - -typedef struct _NDIS_PACKET_OOB_DATA { - _ANONYMOUS_UNION union { - ULONGLONG TimeToSend; - ULONGLONG TimeSent; - } DUMMYUNIONNAME; - ULONGLONG TimeReceived; - UINT HeaderSize; - UINT SizeMediaSpecificInfo; - PVOID MediaSpecificInformation; - NDIS_STATUS Status; -} NDIS_PACKET_OOB_DATA, *PNDIS_PACKET_OOB_DATA; - -typedef struct _NDIS_PM_PACKET_PATTERN { - ULONG Priority; - ULONG Reserved; - ULONG MaskSize; - ULONG PatternOffset; - ULONG PatternSize; - ULONG PatternFlags; -} NDIS_PM_PACKET_PATTERN, *PNDIS_PM_PACKET_PATTERN; - - -/* Request types used by NdisRequest */ -typedef enum _NDIS_REQUEST_TYPE { - NdisRequestQueryInformation, - NdisRequestSetInformation, - NdisRequestQueryStatistics, - NdisRequestOpen, - NdisRequestClose, - NdisRequestSend, - NdisRequestTransferData, - NdisRequestReset, - NdisRequestGeneric1, - NdisRequestGeneric2, - NdisRequestGeneric3, - NdisRequestGeneric4 -} NDIS_REQUEST_TYPE, *PNDIS_REQUEST_TYPE; - -typedef struct _NDIS_REQUEST { - UCHAR MacReserved[4 * sizeof(PVOID)]; - NDIS_REQUEST_TYPE RequestType; - union _DATA { - struct QUERY_INFORMATION { - NDIS_OID Oid; - PVOID InformationBuffer; - UINT InformationBufferLength; - UINT BytesWritten; - UINT BytesNeeded; - } QUERY_INFORMATION; - struct SET_INFORMATION { - NDIS_OID Oid; - PVOID InformationBuffer; - UINT InformationBufferLength; - UINT BytesRead; - UINT BytesNeeded; - } SET_INFORMATION; - } DATA; -#if (defined(NDIS50) || defined(NDIS51)) - UCHAR NdisReserved[9 * sizeof(PVOID)]; - union { - UCHAR CallMgrReserved[2 * sizeof(PVOID)]; - UCHAR ProtocolReserved[2 * sizeof(PVOID)]; - }; - UCHAR MiniportReserved[2 * sizeof(PVOID)]; -#endif -} NDIS_REQUEST, *PNDIS_REQUEST; - - - -/* Wide Area Networks definitions */ - -typedef struct _NDIS_WAN_PACKET { - LIST_ENTRY WanPacketQueue; - PUCHAR CurrentBuffer; - ULONG CurrentLength; - PUCHAR StartBuffer; - PUCHAR EndBuffer; - PVOID ProtocolReserved1; - PVOID ProtocolReserved2; - PVOID ProtocolReserved3; - PVOID ProtocolReserved4; - PVOID MacReserved1; - PVOID MacReserved2; - PVOID MacReserved3; - PVOID MacReserved4; -} NDIS_WAN_PACKET, *PNDIS_WAN_PACKET; - - - -/* DMA channel information */ - -typedef struct _NDIS_DMA_DESCRIPTION { - BOOLEAN DemandMode; - BOOLEAN AutoInitialize; - BOOLEAN DmaChannelSpecified; - DMA_WIDTH DmaWidth; - DMA_SPEED DmaSpeed; - ULONG DmaPort; - ULONG DmaChannel; -} NDIS_DMA_DESCRIPTION, *PNDIS_DMA_DESCRIPTION; - -typedef struct _NDIS_DMA_BLOCK { - PVOID MapRegisterBase; - KEVENT AllocationEvent; - PADAPTER_OBJECT SystemAdapterObject; - PVOID Miniport; - BOOLEAN InProgress; -} NDIS_DMA_BLOCK, *PNDIS_DMA_BLOCK; - - -/* Possible hardware architecture */ -typedef enum _NDIS_INTERFACE_TYPE { - NdisInterfaceInternal = Internal, - NdisInterfaceIsa = Isa, - NdisInterfaceEisa = Eisa, - NdisInterfaceMca = MicroChannel, - NdisInterfaceTurboChannel = TurboChannel, - NdisInterfacePci = PCIBus, - NdisInterfacePcMcia = PCMCIABus, - NdisInterfaceCBus = CBus, - NdisInterfaceMPIBus = MPIBus, - NdisInterfaceMPSABus = MPSABus, - NdisInterfaceProcessorInternal = ProcessorInternal, - NdisInterfaceInternalPowerBus = InternalPowerBus, - NdisInterfacePNPISABus = PNPISABus, - NdisInterfacePNPBus = PNPBus, - NdisMaximumInterfaceType -} NDIS_INTERFACE_TYPE, *PNDIS_INTERFACE_TYPE; - -#define NdisInterruptLevelSensitive LevelSensitive -#define NdisInterruptLatched Latched -typedef KINTERRUPT_MODE NDIS_INTERRUPT_MODE, *PNDIS_INTERRUPT_MODE; - - -typedef enum _NDIS_PARAMETER_TYPE { - NdisParameterInteger, - NdisParameterHexInteger, - NdisParameterString, - NdisParameterMultiString, - NdisParameterBinary -} NDIS_PARAMETER_TYPE, *PNDIS_PARAMETER_TYPE; - -typedef struct { - USHORT Length; - PVOID Buffer; -} BINARY_DATA; - -typedef struct _NDIS_CONFIGURATION_PARAMETER { - NDIS_PARAMETER_TYPE ParameterType; - union { - ULONG IntegerData; - NDIS_STRING StringData; - BINARY_DATA BinaryData; - } ParameterData; -} NDIS_CONFIGURATION_PARAMETER, *PNDIS_CONFIGURATION_PARAMETER; - - -typedef PHYSICAL_ADDRESS NDIS_PHYSICAL_ADDRESS, *PNDIS_PHYSICAL_ADDRESS; - -typedef struct _NDIS_PHYSICAL_ADDRESS_UNIT { - NDIS_PHYSICAL_ADDRESS PhysicalAddress; - UINT Length; -} NDIS_PHYSICAL_ADDRESS_UNIT, *PNDIS_PHYSICAL_ADDRESS_UNIT; - -typedef struct _NDIS_WAN_LINE_DOWN { - UCHAR RemoteAddress[6]; - UCHAR LocalAddress[6]; -} NDIS_WAN_LINE_DOWN, *PNDIS_WAN_LINE_DOWN; - -typedef struct _NDIS_WAN_LINE_UP { - ULONG LinkSpeed; - ULONG MaximumTotalSize; - NDIS_WAN_QUALITY Quality; - USHORT SendWindow; - UCHAR RemoteAddress[6]; - /*OUT*/ UCHAR LocalAddress[6]; - ULONG ProtocolBufferLength; - PUCHAR ProtocolBuffer; - USHORT ProtocolType; - NDIS_STRING DeviceName; -} NDIS_WAN_LINE_UP, *PNDIS_WAN_LINE_UP; - - -typedef VOID DDKAPI -(*ADAPTER_SHUTDOWN_HANDLER)( - /*IN*/ PVOID ShutdownContext); - - -typedef struct _OID_LIST OID_LIST, *POID_LIST; - -/* PnP state */ - -typedef enum _NDIS_PNP_DEVICE_STATE { - NdisPnPDeviceAdded, - NdisPnPDeviceStarted, - NdisPnPDeviceQueryStopped, - NdisPnPDeviceStopped, - NdisPnPDeviceQueryRemoved, - NdisPnPDeviceRemoved, - NdisPnPDeviceSurpriseRemoved -} NDIS_PNP_DEVICE_STATE; - -#define NDIS_DEVICE_NOT_STOPPABLE 0x00000001 -#define NDIS_DEVICE_NOT_REMOVEABLE 0x00000002 -#define NDIS_DEVICE_NOT_SUSPENDABLE 0x00000004 -#define NDIS_DEVICE_DISABLE_PM 0x00000008 -#define NDIS_DEVICE_DISABLE_WAKE_UP 0x00000010 -#define NDIS_DEVICE_DISABLE_WAKE_ON_RECONNECT 0x00000020 -#define NDIS_DEVICE_RESERVED 0x00000040 -#define NDIS_DEVICE_DISABLE_WAKE_ON_MAGIC_PACKET 0x00000080 -#define NDIS_DEVICE_DISABLE_WAKE_ON_PATTERN_MATCH 0x00000100 - - -/* OID_GEN_NETWORK_LAYER_ADDRESSES */ -typedef struct _NETWORK_ADDRESS { - USHORT AddressLength; - USHORT AddressType; - UCHAR Address[1]; -} NETWORK_ADDRESS, *PNETWORK_ADDRESS; - -typedef struct _NETWORK_ADDRESS_LIST { - LONG AddressCount; - USHORT AddressType; - NETWORK_ADDRESS Address[1]; -} NETWORK_ADDRESS_LIST, *PNETWORK_ADDRESS_LIST; - -/* Protocol types supported by NDIS */ -#define NDIS_PROTOCOL_ID_DEFAULT 0x00 -#define NDIS_PROTOCOL_ID_TCP_IP 0x02 -#define NDIS_PROTOCOL_ID_IPX 0x06 -#define NDIS_PROTOCOL_ID_NBF 0x07 -#define NDIS_PROTOCOL_ID_MAX 0x0F -#define NDIS_PROTOCOL_ID_MASK 0x0F - - -/* OID_GEN_TRANSPORT_HEADER_OFFSET */ -typedef struct _TRANSPORT_HEADER_OFFSET { - USHORT ProtocolType; - USHORT HeaderOffset; -} TRANSPORT_HEADER_OFFSET, *PTRANSPORT_HEADER_OFFSET; - - -/* OID_GEN_CO_LINK_SPEED / OID_GEN_CO_MINIMUM_LINK_SPEED */ -typedef struct _NDIS_CO_LINK_SPEED { - ULONG Outbound; - ULONG Inbound; -} NDIS_CO_LINK_SPEED, *PNDIS_CO_LINK_SPEED; - -typedef ULONG NDIS_AF, *PNDIS_AF; -#define CO_ADDRESS_FAMILY_Q2931 ((NDIS_AF)0x1) -#define CO_ADDRESS_FAMILY_PSCHED ((NDIS_AF)0x2) -#define CO_ADDRESS_FAMILY_L2TP ((NDIS_AF)0x3) -#define CO_ADDRESS_FAMILY_IRDA ((NDIS_AF)0x4) -#define CO_ADDRESS_FAMILY_1394 ((NDIS_AF)0x5) -#define CO_ADDRESS_FAMILY_PPP ((NDIS_AF)0x6) -#define CO_ADDRESS_FAMILY_TAPI ((NDIS_AF)0x800) -#define CO_ADDRESS_FAMILY_TAPI_PROXY ((NDIS_AF)0x801) - -#define CO_ADDRESS_FAMILY_PROXY 0x80000000 - -typedef struct { - NDIS_AF AddressFamily; - ULONG MajorVersion; - ULONG MinorVersion; -} CO_ADDRESS_FAMILY, *PCO_ADDRESS_FAMILY; - -typedef struct _CO_FLOW_PARAMETERS { - ULONG TokenRate; - ULONG TokenBucketSize; - ULONG PeakBandwidth; - ULONG Latency; - ULONG DelayVariation; - SERVICETYPE ServiceType; - ULONG MaxSduSize; - ULONG MinimumPolicedSize; -} CO_FLOW_PARAMETERS, *PCO_FLOW_PARAMETERS; - -typedef struct _CO_SPECIFIC_PARAMETERS { - ULONG ParamType; - ULONG Length; - UCHAR Parameters[1]; -} CO_SPECIFIC_PARAMETERS, *PCO_SPECIFIC_PARAMETERS; - -typedef struct _CO_CALL_MANAGER_PARAMETERS { - CO_FLOW_PARAMETERS Transmit; - CO_FLOW_PARAMETERS Receive; - CO_SPECIFIC_PARAMETERS CallMgrSpecific; -} CO_CALL_MANAGER_PARAMETERS, *PCO_CALL_MANAGER_PARAMETERS; - -/* CO_MEDIA_PARAMETERS.Flags constants */ -#define RECEIVE_TIME_INDICATION 0x00000001 -#define USE_TIME_STAMPS 0x00000002 -#define TRANSMIT_VC 0x00000004 -#define RECEIVE_VC 0x00000008 -#define INDICATE_ERRED_PACKETS 0x00000010 -#define INDICATE_END_OF_TX 0x00000020 -#define RESERVE_RESOURCES_VC 0x00000040 -#define ROUND_DOWN_FLOW 0x00000080 -#define ROUND_UP_FLOW 0x00000100 - -typedef struct _CO_MEDIA_PARAMETERS { - ULONG Flags; - ULONG ReceivePriority; - ULONG ReceiveSizeHint; - CO_SPECIFIC_PARAMETERS MediaSpecific; -} CO_MEDIA_PARAMETERS, *PCO_MEDIA_PARAMETERS; - -/* CO_CALL_PARAMETERS.Flags constants */ -#define PERMANENT_VC 0x00000001 -#define CALL_PARAMETERS_CHANGED 0x00000002 -#define QUERY_CALL_PARAMETERS 0x00000004 -#define BROADCAST_VC 0x00000008 -#define MULTIPOINT_VC 0x00000010 - -typedef struct _CO_CALL_PARAMETERS { - ULONG Flags; - PCO_CALL_MANAGER_PARAMETERS CallMgrParameters; - PCO_MEDIA_PARAMETERS MediaParameters; -} CO_CALL_PARAMETERS, *PCO_CALL_PARAMETERS; - -typedef struct _CO_SAP { - ULONG SapType; - ULONG SapLength; - UCHAR Sap[1]; -} CO_SAP, *PCO_SAP; - -typedef struct _NDIS_IPSEC_PACKET_INFO { - _ANONYMOUS_UNION union { - struct { - NDIS_HANDLE OffloadHandle; - NDIS_HANDLE NextOffloadHandle; - } Transmit; - struct { - ULONG SA_DELETE_REQ : 1; - ULONG CRYPTO_DONE : 1; - ULONG NEXT_CRYPTO_DONE : 1; - ULONG CryptoStatus; - } Receive; - } DUMMYUNIONNAME; -} NDIS_IPSEC_PACKET_INFO, *PNDIS_IPSEC_PACKET_INFO; - -/* NDIS_MAC_FRAGMENT.Errors constants */ -#define WAN_ERROR_CRC 0x00000001 -#define WAN_ERROR_FRAMING 0x00000002 -#define WAN_ERROR_HARDWAREOVERRUN 0x00000004 -#define WAN_ERROR_BUFFEROVERRUN 0x00000008 -#define WAN_ERROR_TIMEOUT 0x00000010 -#define WAN_ERROR_ALIGNMENT 0x00000020 - -typedef struct _NDIS_MAC_FRAGMENT { - NDIS_HANDLE NdisLinkContext; - ULONG Errors; -} NDIS_MAC_FRAGMENT, *PNDIS_MAC_FRAGMENT; - -typedef struct _NDIS_MAC_LINE_DOWN { - NDIS_HANDLE NdisLinkContext; -} NDIS_MAC_LINE_DOWN, *PNDIS_MAC_LINE_DOWN; - -typedef struct _NDIS_MAC_LINE_UP { - ULONG LinkSpeed; - NDIS_WAN_QUALITY Quality; - USHORT SendWindow; - NDIS_HANDLE ConnectionWrapperID; - NDIS_HANDLE NdisLinkHandle; - NDIS_HANDLE NdisLinkContext; -} NDIS_MAC_LINE_UP, *PNDIS_MAC_LINE_UP; - -typedef struct _NDIS_PACKET_8021Q_INFO { - _ANONYMOUS_UNION union { - struct { - UINT32 UserPriority : 3; - UINT32 CanonicalFormatId : 1; - UINT32 VlanId : 12; - UINT32 Reserved : 16; - } TagHeader; - PVOID Value; - } DUMMYUNIONNAME; -} NDIS_PACKET_8021Q_INFO, *PNDIS_PACKET_8021Q_INFO; - -typedef enum _NDIS_PER_PACKET_INFO { - TcpIpChecksumPacketInfo, - IpSecPacketInfo, - TcpLargeSendPacketInfo, - ClassificationHandlePacketInfo, - NdisReserved, - ScatterGatherListPacketInfo, - Ieee8021QInfo, - OriginalPacketInfo, - PacketCancelId, - MaxPerPacketInfo -} NDIS_PER_PACKET_INFO, *PNDIS_PER_PACKET_INFO; - -typedef struct _NDIS_PACKET_EXTENSION { - PVOID NdisPacketInfo[MaxPerPacketInfo]; -} NDIS_PACKET_EXTENSION, *PNDIS_PACKET_EXTENSION; - -/* - * PNDIS_PACKET - * NDIS_GET_ORIGINAL_PACKET( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_GET_ORIGINAL_PACKET(Packet) \ - NDIS_PER_PACKET_INFO_FROM_PACKET(Packet, OriginalPacketInfo) - -/* - * PVOID - * NDIS_GET_PACKET_CANCEL_ID( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_GET_PACKET_CANCEL_ID(Packet) \ - NDIS_PER_PACKET_INFO_FROM_PACKET(Packet, PacketCancelId) - -/* - * PNDIS_PACKET_EXTENSION - * NDIS_PACKET_EXTENSION_FROM_PACKET( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_PACKET_EXTENSION_FROM_PACKET(Packet) \ - ((PNDIS_PACKET_EXTENSION)((PUCHAR)(Packet) \ - + (Packet)->Private.NdisPacketOobOffset + sizeof(NDIS_PACKET_OOB_DATA))) - -/* - * PVOID - * NDIS_PER_PACKET_INFO_FROM_PACKET( - * IN OUT PNDIS_PACKET Packet, - * IN NDIS_PER_PACKET_INFO InfoType); - */ -#define NDIS_PER_PACKET_INFO_FROM_PACKET(Packet, InfoType) \ - ((PNDIS_PACKET_EXTENSION)((PUCHAR)(Packet) + (Packet)->Private.NdisPacketOobOffset \ - + sizeof(NDIS_PACKET_OOB_DATA)))->NdisPacketInfo[(InfoType)] - -/* - * VOID - * NDIS_SET_ORIGINAL_PACKET( - * IN OUT PNDIS_PACKET Packet, - * IN PNDIS_PACKET OriginalPacket); - */ -#define NDIS_SET_ORIGINAL_PACKET(Packet, OriginalPacket) \ - NDIS_PER_PACKET_INFO_FROM_PACKET(Packet, OriginalPacketInfo) = (OriginalPacket) - -/* - * VOID - * NDIS_SET_PACKET_CANCEL_ID( - * IN PNDIS_PACKET Packet - * IN ULONG_PTR CancelId); - */ -#define NDIS_SET_PACKET_CANCEL_ID(Packet, CancelId) \ - NDIS_PER_PACKET_INFO_FROM_PACKET(Packet, PacketCancelId) = (CancelId) - -typedef enum _NDIS_TASK { - TcpIpChecksumNdisTask, - IpSecNdisTask, - TcpLargeSendNdisTask, - MaxNdisTask -} NDIS_TASK, *PNDIS_TASK; - -typedef struct _NDIS_TASK_IPSEC { - struct { - ULONG AH_ESP_COMBINED; - ULONG TRANSPORT_TUNNEL_COMBINED; - ULONG V4_OPTIONS; - ULONG RESERVED; - } Supported; - - struct { - ULONG MD5 : 1; - ULONG SHA_1 : 1; - ULONG Transport : 1; - ULONG Tunnel : 1; - ULONG Send : 1; - ULONG Receive : 1; - } V4AH; - - struct { - ULONG DES : 1; - ULONG RESERVED : 1; - ULONG TRIPLE_DES : 1; - ULONG NULL_ESP : 1; - ULONG Transport : 1; - ULONG Tunnel : 1; - ULONG Send : 1; - ULONG Receive : 1; - } V4ESP; -} NDIS_TASK_IPSEC, *PNDIS_TASK_IPSEC; - -typedef enum _NDIS_ENCAPSULATION { - UNSPECIFIED_Encapsulation, - NULL_Encapsulation, - IEEE_802_3_Encapsulation, - IEEE_802_5_Encapsulation, - LLC_SNAP_ROUTED_Encapsulation, - LLC_SNAP_BRIDGED_Encapsulation -} NDIS_ENCAPSULATION; - -typedef struct _NDIS_ENCAPSULATION_FORMAT { - NDIS_ENCAPSULATION Encapsulation; - struct { - ULONG FixedHeaderSize : 1; - ULONG Reserved : 31; - } Flags; - ULONG EncapsulationHeaderSize; -} NDIS_ENCAPSULATION_FORMAT, *PNDIS_ENCAPSULATION_FORMAT; - -typedef struct _NDIS_TASK_OFFLOAD_HEADER -{ - ULONG Version; - ULONG Size; - ULONG Reserved; - UCHAR OffsetFirstTask; - NDIS_ENCAPSULATION_FORMAT EncapsulationFormat; -} NDIS_TASK_OFFLOAD_HEADER, *PNDIS_TASK_OFFLOAD_HEADER; - -typedef struct _NDIS_TASK_OFFLOAD { - ULONG Version; - ULONG Size; - NDIS_TASK Task; - ULONG OffsetNextTask; - ULONG TaskBufferLength; - UCHAR TaskBuffer[1]; -} NDIS_TASK_OFFLOAD, *PNDIS_TASK_OFFLOAD; - -/* NDIS_TASK_OFFLOAD_HEADER.Version constants */ -#define NDIS_TASK_OFFLOAD_VERSION 1 - -typedef struct _NDIS_TASK_TCP_IP_CHECKSUM { - struct { - ULONG IpOptionsSupported:1; - ULONG TcpOptionsSupported:1; - ULONG TcpChecksum:1; - ULONG UdpChecksum:1; - ULONG IpChecksum:1; - } V4Transmit; - - struct { - ULONG IpOptionsSupported : 1; - ULONG TcpOptionsSupported : 1; - ULONG TcpChecksum : 1; - ULONG UdpChecksum : 1; - ULONG IpChecksum : 1; - } V4Receive; - - struct { - ULONG IpOptionsSupported : 1; - ULONG TcpOptionsSupported : 1; - ULONG TcpChecksum : 1; - ULONG UdpChecksum : 1; - } V6Transmit; - - struct { - ULONG IpOptionsSupported : 1; - ULONG TcpOptionsSupported : 1; - ULONG TcpChecksum : 1; - ULONG UdpChecksum : 1; - } V6Receive; -} NDIS_TASK_TCP_IP_CHECKSUM, *PNDIS_TASK_TCP_IP_CHECKSUM; - -typedef struct _NDIS_TASK_TCP_LARGE_SEND { - ULONG Version; - ULONG MaxOffLoadSize; - ULONG MinSegmentCount; - BOOLEAN TcpOptions; - BOOLEAN IpOptions; -} NDIS_TASK_TCP_LARGE_SEND, *PNDIS_TASK_TCP_LARGE_SEND; - -typedef struct _NDIS_TCP_IP_CHECKSUM_PACKET_INFO { - _ANONYMOUS_UNION union { - struct { - ULONG NdisPacketChecksumV4 : 1; - ULONG NdisPacketChecksumV6 : 1; - ULONG NdisPacketTcpChecksum : 1; - ULONG NdisPacketUdpChecksum : 1; - ULONG NdisPacketIpChecksum : 1; - } Transmit; - - struct { - ULONG NdisPacketTcpChecksumFailed : 1; - ULONG NdisPacketUdpChecksumFailed : 1; - ULONG NdisPacketIpChecksumFailed : 1; - ULONG NdisPacketTcpChecksumSucceeded : 1; - ULONG NdisPacketUdpChecksumSucceeded : 1; - ULONG NdisPacketIpChecksumSucceeded : 1; - ULONG NdisPacketLoopback : 1; - } Receive; - ULONG Value; - } DUMMYUNIONNAME; -} NDIS_TCP_IP_CHECKSUM_PACKET_INFO, *PNDIS_TCP_IP_CHECKSUM_PACKET_INFO; - -typedef struct _NDIS_WAN_CO_FRAGMENT { - ULONG Errors; -} NDIS_WAN_CO_FRAGMENT, *PNDIS_WAN_CO_FRAGMENT; - -typedef struct _NDIS_WAN_FRAGMENT { - UCHAR RemoteAddress[6]; - UCHAR LocalAddress[6]; -} NDIS_WAN_FRAGMENT, *PNDIS_WAN_FRAGMENT; - -typedef struct _WAN_CO_LINKPARAMS { - ULONG TransmitSpeed; - ULONG ReceiveSpeed; - ULONG SendWindow; -} WAN_CO_LINKPARAMS, *PWAN_CO_LINKPARAMS; - - -/* Call Manager */ - -typedef VOID DDKAPI -(*CM_ACTIVATE_VC_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE CallMgrVcContext, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -typedef NDIS_STATUS DDKAPI -(*CM_ADD_PARTY_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrVcContext, - /*IN OUT*/ PCO_CALL_PARAMETERS CallParameters, - /*IN*/ NDIS_HANDLE NdisPartyHandle, - /*OUT*/ PNDIS_HANDLE CallMgrPartyContext); - -typedef NDIS_STATUS DDKAPI -(*CM_CLOSE_AF_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrAfContext); - -typedef NDIS_STATUS DDKAPI -(*CM_CLOSE_CALL_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrVcContext, - /*IN*/ NDIS_HANDLE CallMgrPartyContext /*OPTIONAL*/, - /*IN*/ PVOID CloseData /*OPTIONAL*/, - /*IN*/ UINT Size /*OPTIONAL*/); - -typedef NDIS_STATUS DDKAPI -(*CM_DEREG_SAP_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrSapContext); - -typedef VOID DDKAPI -(*CM_DEACTIVATE_VC_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE CallMgrVcContext); - -typedef NDIS_STATUS DDKAPI -(*CM_DROP_PARTY_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrPartyContext, - /*IN*/ PVOID CloseData /*OPTIONAL*/, - /*IN*/ UINT Size /*OPTIONAL*/); - -typedef VOID DDKAPI -(*CM_INCOMING_CALL_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE CallMgrVcContext, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -typedef NDIS_STATUS DDKAPI -(*CM_MAKE_CALL_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrVcContext, - /*IN OUT*/ PCO_CALL_PARAMETERS CallParameters, - /*IN*/ NDIS_HANDLE NdisPartyHandle /*OPTIONAL*/, - /*OUT*/ PNDIS_HANDLE CallMgrPartyContext /*OPTIONAL*/); - -typedef NDIS_STATUS DDKAPI -(*CM_MODIFY_CALL_QOS_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrVcContext, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -typedef NDIS_STATUS DDKAPI -(*CM_OPEN_AF_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrBindingContext, - /*IN*/ PCO_ADDRESS_FAMILY AddressFamily, - /*IN*/ NDIS_HANDLE NdisAfHandle, - /*OUT*/ PNDIS_HANDLE CallMgrAfContext); - -typedef NDIS_STATUS DDKAPI -(*CM_REG_SAP_HANDLER)( - /*IN*/ NDIS_HANDLE CallMgrAfContext, - /*IN*/ PCO_SAP Sap, - /*IN*/ NDIS_HANDLE NdisSapHandle, - /*OUT*/ PNDIS_HANDLE CallMgrSapContext); - -typedef NDIS_STATUS DDKAPI -(*CO_CREATE_VC_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolAfContext, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*OUT*/ PNDIS_HANDLE ProtocolVcContext); - -typedef NDIS_STATUS DDKAPI -(*CO_DELETE_VC_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolVcContext); - -typedef VOID DDKAPI -(*CO_REQUEST_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolAfContext /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE ProtocolVcContext /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE ProtocolPartyContext /*OPTIONAL*/, - /*IN*/ PNDIS_REQUEST NdisRequest); - -typedef NDIS_STATUS DDKAPI -(*CO_REQUEST_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolAfContext, - /*IN*/ NDIS_HANDLE ProtocolVcContext /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE ProtocolPartyContext /*OPTIONAL*/, - /*IN OUT*/ PNDIS_REQUEST NdisRequest); - -typedef struct _NDIS_CALL_MANAGER_CHARACTERISTICS { - UCHAR MajorVersion; - UCHAR MinorVersion; - USHORT Filler; - UINT Reserved; - CO_CREATE_VC_HANDLER CmCreateVcHandler; - CO_DELETE_VC_HANDLER CmDeleteVcHandler; - CM_OPEN_AF_HANDLER CmOpenAfHandler; - CM_CLOSE_AF_HANDLER CmCloseAfHandler; - CM_REG_SAP_HANDLER CmRegisterSapHandler; - CM_DEREG_SAP_HANDLER CmDeregisterSapHandler; - CM_MAKE_CALL_HANDLER CmMakeCallHandler; - CM_CLOSE_CALL_HANDLER CmCloseCallHandler; - CM_INCOMING_CALL_COMPLETE_HANDLER CmIncomingCallCompleteHandler; - CM_ADD_PARTY_HANDLER CmAddPartyHandler; - CM_DROP_PARTY_HANDLER CmDropPartyHandler; - CM_ACTIVATE_VC_COMPLETE_HANDLER CmActivateVcCompleteHandler; - CM_DEACTIVATE_VC_COMPLETE_HANDLER CmDeactivateVcCompleteHandler; - CM_MODIFY_CALL_QOS_HANDLER CmModifyCallQoSHandler; - CO_REQUEST_HANDLER CmRequestHandler; - CO_REQUEST_COMPLETE_HANDLER CmRequestCompleteHandler; -} NDIS_CALL_MANAGER_CHARACTERISTICS, *PNDIS_CALL_MANAGER_CHARACTERISTICS; - - - -/* Call Manager clients */ - -typedef VOID (*CL_OPEN_AF_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolAfContext, - /*IN*/ NDIS_HANDLE NdisAfHandle); - -typedef VOID DDKAPI -(*CL_CLOSE_AF_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolAfContext); - -typedef VOID DDKAPI -(*CL_REG_SAP_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolSapContext, - /*IN*/ PCO_SAP Sap, - /*IN*/ NDIS_HANDLE NdisSapHandle); - -typedef VOID DDKAPI -(*CL_DEREG_SAP_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolSapContext); - -typedef VOID DDKAPI -(*CL_MAKE_CALL_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN*/ NDIS_HANDLE NdisPartyHandle /*OPTIONAL*/, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -typedef VOID DDKAPI -(*CL_MODIFY_CALL_QOS_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -typedef VOID DDKAPI -(*CL_CLOSE_CALL_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN*/ NDIS_HANDLE ProtocolPartyContext /*OPTIONAL*/); - -typedef VOID DDKAPI -(*CL_ADD_PARTY_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolPartyContext, - /*IN*/ NDIS_HANDLE NdisPartyHandle, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -typedef VOID DDKAPI -(*CL_DROP_PARTY_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolPartyContext); - -typedef NDIS_STATUS DDKAPI -(*CL_INCOMING_CALL_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolSapContext, - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN OUT*/ PCO_CALL_PARAMETERS CallParameters); - -typedef VOID DDKAPI -(*CL_INCOMING_CALL_QOS_CHANGE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -typedef VOID DDKAPI -(*CL_INCOMING_CLOSE_CALL_HANDLER)( - /*IN*/ NDIS_STATUS CloseStatus, - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN*/ PVOID CloseData /*OPTIONAL*/, - /*IN*/ UINT Size /*OPTIONAL*/); - -typedef VOID DDKAPI -(*CL_INCOMING_DROP_PARTY_HANDLER)( - /*IN*/ NDIS_STATUS DropStatus, - /*IN*/ NDIS_HANDLE ProtocolPartyContext, - /*IN*/ PVOID CloseData /*OPTIONAL*/, - /*IN*/ UINT Size /*OPTIONAL*/); - -typedef VOID DDKAPI -(*CL_CALL_CONNECTED_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolVcContext); - - -typedef struct _NDIS_CLIENT_CHARACTERISTICS { - UCHAR MajorVersion; - UCHAR MinorVersion; - USHORT Filler; - UINT Reserved; - CO_CREATE_VC_HANDLER ClCreateVcHandler; - CO_DELETE_VC_HANDLER ClDeleteVcHandler; - CO_REQUEST_HANDLER ClRequestHandler; - CO_REQUEST_COMPLETE_HANDLER ClRequestCompleteHandler; - CL_OPEN_AF_COMPLETE_HANDLER ClOpenAfCompleteHandler; - CL_CLOSE_AF_COMPLETE_HANDLER ClCloseAfCompleteHandler; - CL_REG_SAP_COMPLETE_HANDLER ClRegisterSapCompleteHandler; - CL_DEREG_SAP_COMPLETE_HANDLER ClDeregisterSapCompleteHandler; - CL_MAKE_CALL_COMPLETE_HANDLER ClMakeCallCompleteHandler; - CL_MODIFY_CALL_QOS_COMPLETE_HANDLER ClModifyCallQoSCompleteHandler; - CL_CLOSE_CALL_COMPLETE_HANDLER ClCloseCallCompleteHandler; - CL_ADD_PARTY_COMPLETE_HANDLER ClAddPartyCompleteHandler; - CL_DROP_PARTY_COMPLETE_HANDLER ClDropPartyCompleteHandler; - CL_INCOMING_CALL_HANDLER ClIncomingCallHandler; - CL_INCOMING_CALL_QOS_CHANGE_HANDLER ClIncomingCallQoSChangeHandler; - CL_INCOMING_CLOSE_CALL_HANDLER ClIncomingCloseCallHandler; - CL_INCOMING_DROP_PARTY_HANDLER ClIncomingDropPartyHandler; - CL_CALL_CONNECTED_HANDLER ClCallConnectedHandler; -} NDIS_CLIENT_CHARACTERISTICS, *PNDIS_CLIENT_CHARACTERISTICS; - - -/* NDIS protocol structures */ - -/* Prototypes for NDIS 3.0 protocol characteristics */ - -typedef VOID DDKAPI -(*OPEN_ADAPTER_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_STATUS OpenErrorStatus); - -typedef VOID DDKAPI -(*CLOSE_ADAPTER_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ NDIS_STATUS Status); - -typedef VOID DDKAPI -(*RESET_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ NDIS_STATUS Status); - -typedef VOID DDKAPI -(*REQUEST_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ PNDIS_REQUEST NdisRequest, - /*IN*/ NDIS_STATUS Status); - -typedef VOID DDKAPI -(*STATUS_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ NDIS_STATUS GeneralStatus, - /*IN*/ PVOID StatusBuffer, - /*IN*/ UINT StatusBufferSize); - -typedef VOID DDKAPI -(*STATUS_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext); - -typedef VOID DDKAPI -(*SEND_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ PNDIS_PACKET Packet, - /*IN*/ NDIS_STATUS Status); - -typedef VOID DDKAPI -(*WAN_SEND_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ PNDIS_WAN_PACKET Packet, - /*IN*/ NDIS_STATUS Status); - -typedef VOID DDKAPI -(*TRANSFER_DATA_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ PNDIS_PACKET Packet, - /*IN*/ NDIS_STATUS Status, - /*IN*/ UINT BytesTransferred); - -typedef VOID DDKAPI -(*WAN_TRANSFER_DATA_COMPLETE_HANDLER)( - VOID); - - -typedef NDIS_STATUS DDKAPI -(*RECEIVE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ NDIS_HANDLE MacReceiveContext, - /*IN*/ PVOID HeaderBuffer, - /*IN*/ UINT HeaderBufferSize, - /*IN*/ PVOID LookAheadBuffer, - /*IN*/ UINT LookaheadBufferSize, - /*IN*/ UINT PacketSize); - -typedef NDIS_STATUS DDKAPI -(*WAN_RECEIVE_HANDLER)( - /*IN*/ NDIS_HANDLE NdisLinkHandle, - /*IN*/ PUCHAR Packet, - /*IN*/ ULONG PacketSize); - -typedef VOID DDKAPI -(*RECEIVE_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext); - - -/* Protocol characteristics for NDIS 3.0 protocols */ - -#define NDIS30_PROTOCOL_CHARACTERISTICS_S \ - UCHAR MajorNdisVersion; \ - UCHAR MinorNdisVersion; \ - _ANONYMOUS_UNION union { \ - UINT Reserved; \ - UINT Flags; \ - } DUMMYUNIONNAME; \ - OPEN_ADAPTER_COMPLETE_HANDLER OpenAdapterCompleteHandler; \ - CLOSE_ADAPTER_COMPLETE_HANDLER CloseAdapterCompleteHandler; \ - _ANONYMOUS_UNION union { \ - SEND_COMPLETE_HANDLER SendCompleteHandler; \ - WAN_SEND_COMPLETE_HANDLER WanSendCompleteHandler; \ - } DUMMYUNIONNAME2; \ - _ANONYMOUS_UNION union { \ - TRANSFER_DATA_COMPLETE_HANDLER TransferDataCompleteHandler; \ - WAN_TRANSFER_DATA_COMPLETE_HANDLER WanTransferDataCompleteHandler; \ - } DUMMYUNIONNAME3; \ - RESET_COMPLETE_HANDLER ResetCompleteHandler; \ - REQUEST_COMPLETE_HANDLER RequestCompleteHandler; \ - _ANONYMOUS_UNION union { \ - RECEIVE_HANDLER ReceiveHandler; \ - WAN_RECEIVE_HANDLER WanReceiveHandler; \ - } DUMMYUNIONNAME4; \ - RECEIVE_COMPLETE_HANDLER ReceiveCompleteHandler; \ - STATUS_HANDLER StatusHandler; \ - STATUS_COMPLETE_HANDLER StatusCompleteHandler; \ - NDIS_STRING Name; - -typedef struct _NDIS30_PROTOCOL_CHARACTERISTICS { - NDIS30_PROTOCOL_CHARACTERISTICS_S -} NDIS30_PROTOCOL_CHARACTERISTICS, *PNDIS30_PROTOCOL_CHARACTERISTICS; - - -/* Prototypes for NDIS 4.0 protocol characteristics */ - -typedef INT DDKAPI -(*RECEIVE_PACKET_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ PNDIS_PACKET Packet); - -typedef VOID DDKAPI -(*BIND_HANDLER)( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE BindContext, - /*IN*/ PNDIS_STRING DeviceName, - /*IN*/ PVOID SystemSpecific1, - /*IN*/ PVOID SystemSpecific2); - -typedef VOID DDKAPI -(*UNBIND_HANDLER)( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ NDIS_HANDLE UnbindContext); - -typedef NDIS_STATUS DDKAPI -(*PNP_EVENT_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ PNET_PNP_EVENT NetPnPEvent); - -typedef VOID DDKAPI -(*UNLOAD_PROTOCOL_HANDLER)( - VOID); - - -/* Protocol characteristics for NDIS 4.0 protocols */ - -#ifdef __cplusplus - -#define NDIS40_PROTOCOL_CHARACTERISTICS_S \ - NDIS30_PROTOCOL_CHARACTERISTICS Ndis30Chars; \ - RECEIVE_PACKET_HANDLER ReceivePacketHandler; \ - BIND_HANDLER BindAdapterHandler; \ - UNBIND_HANDLER UnbindAdapterHandler; \ - PNP_EVENT_HANDLER PnPEventHandler; \ - UNLOAD_PROTOCOL_HANDLER UnloadHandler; - -#else /* !__cplusplus */ - -#define NDIS40_PROTOCOL_CHARACTERISTICS_S \ - NDIS30_PROTOCOL_CHARACTERISTICS_S \ - RECEIVE_PACKET_HANDLER ReceivePacketHandler; \ - BIND_HANDLER BindAdapterHandler; \ - UNBIND_HANDLER UnbindAdapterHandler; \ - PNP_EVENT_HANDLER PnPEventHandler; \ - UNLOAD_PROTOCOL_HANDLER UnloadHandler; - -#endif /* __cplusplus */ - -typedef struct _NDIS40_PROTOCOL_CHARACTERISTICS { - NDIS40_PROTOCOL_CHARACTERISTICS_S -} NDIS40_PROTOCOL_CHARACTERISTICS, *PNDIS40_PROTOCOL_CHARACTERISTICS; - -/* Prototypes for NDIS 5.0 protocol characteristics */ - -typedef VOID DDKAPI -(*CO_SEND_COMPLETE_HANDLER)( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN*/ PNDIS_PACKET Packet); - -typedef VOID DDKAPI -(*CO_STATUS_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ NDIS_HANDLE ProtocolVcContext /*OPTIONAL*/, - /*IN*/ NDIS_STATUS GeneralStatus, - /*IN*/ PVOID StatusBuffer, - /*IN*/ UINT StatusBufferSize); - -typedef UINT DDKAPI -(*CO_RECEIVE_PACKET_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN*/ PNDIS_PACKET Packet); - -typedef VOID DDKAPI -(*CO_AF_REGISTER_NOTIFY_HANDLER)( - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ PCO_ADDRESS_FAMILY AddressFamily); - -#ifdef __cplusplus \ - -#define NDIS50_PROTOCOL_CHARACTERISTICS_S \ - NDIS40_PROTOCOL_CHARACTERISTICS Ndis40Chars; \ - PVOID ReservedHandlers[4]; \ - CO_SEND_COMPLETE_HANDLER CoSendCompleteHandler; \ - CO_STATUS_HANDLER CoStatusHandler; \ - CO_RECEIVE_PACKET_HANDLER CoReceivePacketHandler; \ - CO_AF_REGISTER_NOTIFY_HANDLER CoAfRegisterNotifyHandler; - -#else /* !__cplusplus */ - -#define NDIS50_PROTOCOL_CHARACTERISTICS_S \ - NDIS40_PROTOCOL_CHARACTERISTICS_S \ - PVOID ReservedHandlers[4]; \ - CO_SEND_COMPLETE_HANDLER CoSendCompleteHandler; \ - CO_STATUS_HANDLER CoStatusHandler; \ - CO_RECEIVE_PACKET_HANDLER CoReceivePacketHandler; \ - CO_AF_REGISTER_NOTIFY_HANDLER CoAfRegisterNotifyHandler; - -#endif /* !__cplusplus */ - -typedef struct _NDIS50_PROTOCOL_CHARACTERISTICS { - NDIS50_PROTOCOL_CHARACTERISTICS_S -} NDIS50_PROTOCOL_CHARACTERISTICS, *PNDIS50_PROTOCOL_CHARACTERISTICS; - -#if defined(NDIS50) || defined(NDIS51) -typedef struct _NDIS_PROTOCOL_CHARACTERISTICS { - NDIS50_PROTOCOL_CHARACTERISTICS_S; -} NDIS_PROTOCOL_CHARACTERISTICS, *PNDIS_PROTOCOL_CHARACTERISTICS; -#elif defined(NDIS40) -typedef struct _NDIS_PROTOCOL_CHARACTERISTICS { - NDIS40_PROTOCOL_CHARACTERISTICS_S; -} NDIS_PROTOCOL_CHARACTERISTICS, *PNDIS_PROTOCOL_CHARACTERISTICS; -#elif defined(NDIS30) -typedef struct _NDIS_PROTOCOL_CHARACTERISTICS { - NDIS30_PROTOCOL_CHARACTERISTICS_S -} NDIS_PROTOCOL_CHARACTERISTICS, *PNDIS_PROTOCOL_CHARACTERISTICS; -#else -#error Define an NDIS version -#endif /* NDIS30 */ - - - -/* Buffer management routines */ - -NDISAPI -VOID -DDKAPI -NdisAllocateBuffer( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_BUFFER *Buffer, - /*IN*/ NDIS_HANDLE PoolHandle, - /*IN*/ PVOID VirtualAddress, - /*IN*/ UINT Length); - - -NDISAPI -VOID -DDKAPI -NdisAllocateBufferPool( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_HANDLE PoolHandle, - /*IN*/ UINT NumberOfDescriptors); - -NDISAPI -VOID -DDKAPI -NdisAllocatePacket( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_PACKET *Packet, - /*IN*/ NDIS_HANDLE PoolHandle); - -NDISAPI -VOID -DDKAPI -NdisAllocatePacketPool( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_HANDLE PoolHandle, - /*IN*/ UINT NumberOfDescriptors, - /*IN*/ UINT ProtocolReservedLength); - -#define PROTOCOL_RESERVED_SIZE_IN_PACKET (4 * sizeof(PVOID)) - -NDISAPI -VOID -DDKAPI -NdisCopyBuffer( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_BUFFER *Buffer, - /*IN*/ NDIS_HANDLE PoolHandle, - /*IN*/ PVOID MemoryDescriptor, - /*IN*/ UINT Offset, - /*IN*/ UINT Length); - -NDISAPI -VOID -DDKAPI -NdisCopyFromPacketToPacket( - /*IN*/ PNDIS_PACKET Destination, - /*IN*/ UINT DestinationOffset, - /*IN*/ UINT BytesToCopy, - /*IN*/ PNDIS_PACKET Source, - /*IN*/ UINT SourceOffset, - /*OUT*/ PUINT BytesCopied); - -NDISAPI -VOID -DDKAPI -NdisDprAllocatePacket( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_PACKET *Packet, - /*IN*/ NDIS_HANDLE PoolHandle); - -NDISAPI -VOID -DDKAPI -NdisDprAllocatePacketNonInterlocked( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_PACKET *Packet, - /*IN*/ NDIS_HANDLE PoolHandle); - -NDISAPI -VOID -DDKAPI -NdisDprFreePacket( - /*IN*/ PNDIS_PACKET Packet); - -NDISAPI -VOID -DDKAPI -NdisDprFreePacketNonInterlocked( - /*IN*/ PNDIS_PACKET Packet); - -NDISAPI -VOID -DDKAPI -NdisFreeBufferPool( - /*IN*/ NDIS_HANDLE PoolHandle); - -NDISAPI -VOID -DDKAPI -NdisFreePacket( - /*IN*/ PNDIS_PACKET Packet); - -NDISAPI -VOID -DDKAPI -NdisFreePacketPool( - /*IN*/ NDIS_HANDLE PoolHandle); - -NDISAPI -VOID -DDKAPI -NdisReturnPackets( - /*IN*/ PNDIS_PACKET *PacketsToReturn, - /*IN*/ UINT NumberOfPackets); - -NDISAPI -VOID -DDKAPI -NdisUnchainBufferAtBack( - /*IN OUT*/ PNDIS_PACKET Packet, - /*OUT*/ PNDIS_BUFFER *Buffer); - -NDISAPI -VOID -DDKAPI -NdisUnchainBufferAtFront( - /*IN OUT*/ PNDIS_PACKET Packet, - /*OUT*/ PNDIS_BUFFER *Buffer); - -NDISAPI -VOID -DDKAPI -NdisAdjustBufferLength( - /*IN*/ PNDIS_BUFFER Buffer, - /*IN*/ UINT Length); - -NDISAPI -ULONG -DDKAPI -NdisBufferLength( - /*IN*/ PNDIS_BUFFER Buffer); - -NDISAPI -PVOID -DDKAPI -NdisBufferVirtualAddress( - /*IN*/ PNDIS_BUFFER Buffer); - -NDISAPI -ULONG -DDKAPI -NDIS_BUFFER_TO_SPAN_PAGES( - /*IN*/ PNDIS_BUFFER Buffer); - -NDISAPI -VOID -DDKAPI -NdisFreeBuffer( - /*IN*/ PNDIS_BUFFER Buffer); - -NDISAPI -VOID -DDKAPI -NdisGetBufferPhysicalArraySize( - /*IN*/ PNDIS_BUFFER Buffer, - /*OUT*/ PUINT ArraySize); - -NDISAPI -VOID -DDKAPI -NdisGetFirstBufferFromPacket( - /*IN*/ PNDIS_PACKET _Packet, - /*OUT*/ PNDIS_BUFFER *_FirstBuffer, - /*OUT*/ PVOID *_FirstBufferVA, - /*OUT*/ PUINT _FirstBufferLength, - /*OUT*/ PUINT _TotalBufferLength); - -NDISAPI -VOID -DDKAPI -NdisQueryBuffer( - /*IN*/ PNDIS_BUFFER Buffer, - /*OUT*/ PVOID *VirtualAddress /*OPTIONAL*/, - /*OUT*/ PUINT Length); - -NDISAPI -VOID -DDKAPI -NdisQueryBufferOffset( - /*IN*/ PNDIS_BUFFER Buffer, - /*OUT*/ PUINT Offset, - /*OUT*/ PUINT Length); - -NDISAPI -VOID -DDKAPI -NdisFreeBuffer( - /*IN*/ PNDIS_BUFFER Buffer); - - -/* - * VOID - * NdisGetBufferPhysicalArraySize( - * IN PNDIS_BUFFER Buffer, - * OUT PUINT ArraySize); - */ -#define NdisGetBufferPhysicalArraySize(Buffer, \ - ArraySize) \ -{ \ - (*(ArraySize) = NDIS_BUFFER_TO_SPAN_PAGES(Buffer)) \ -} - - -/* - * VOID - * NdisGetFirstBufferFromPacket( - * IN PNDIS_PACKET _Packet, - * OUT PNDIS_BUFFER * _FirstBuffer, - * OUT PVOID * _FirstBufferVA, - * OUT PUINT _FirstBufferLength, - * OUT PUINT _TotalBufferLength) - */ -#define NdisGetFirstBufferFromPacket(_Packet, \ - _FirstBuffer, \ - _FirstBufferVA, \ - _FirstBufferLength, \ - _TotalBufferLength) \ -{ \ - PNDIS_BUFFER _Buffer; \ - \ - _Buffer = (_Packet)->Private.Head; \ - *(_FirstBuffer) = _Buffer; \ - if (_Buffer != NULL) \ - { \ - *(_FirstBufferVA) = MmGetSystemAddressForMdl(_Buffer); \ - *(_FirstBufferLength) = MmGetMdlByteCount(_Buffer); \ - _Buffer = _Buffer->Next; \ - *(_TotalBufferLength) = *(_FirstBufferLength); \ - while (_Buffer != NULL) { \ - *(_TotalBufferLength) += MmGetMdlByteCount(_Buffer); \ - _Buffer = _Buffer->Next; \ - } \ - } \ - else \ - { \ - *(_FirstBufferVA) = 0; \ - *(_FirstBufferLength) = 0; \ - *(_TotalBufferLength) = 0; \ - } \ -} - -/* - * VOID - * NdisGetFirstBufferFromPacketSafe( - * IN PNDIS_PACKET _Packet, - * OUT PNDIS_BUFFER * _FirstBuffer, - * OUT PVOID * _FirstBufferVA, - * OUT PUINT _FirstBufferLength, - * OUT PUINT _TotalBufferLength), - * IN MM_PAGE_PRIORITY _Priority) - */ -#define NdisGetFirstBufferFromPacketSafe(_Packet, \ - _FirstBuffer, \ - _FirstBufferVA, \ - _FirstBufferLength, \ - _TotalBufferLength, \ - _Priority) \ -{ \ - PNDIS_BUFFER _Buffer; \ - \ - _Buffer = (_Packet)->Private.Head; \ - *(_FirstBuffer) = _Buffer; \ - if (_Buffer != NULL) \ - { \ - *(_FirstBufferVA) = MmGetSystemAddressForMdlSafe(_Buffer, _Priority); \ - *(_FirstBufferLength) = MmGetMdlByteCount(_Buffer); \ - _Buffer = _Buffer->Next; \ - *(_TotalBufferLength) = *(_FirstBufferLength); \ - while (_Buffer != NULL) { \ - *(_TotalBufferLength) += MmGetMdlByteCount(_Buffer); \ - _Buffer = _Buffer->Next; \ - } \ - } \ - else \ - { \ - *(_FirstBufferVA) = 0; \ - *(_FirstBufferLength) = 0; \ - *(_TotalBufferLength) = 0; \ - } \ -} - -/* - * VOID - * NdisQueryBuffer( - * IN PNDIS_BUFFER Buffer, - * OUT PVOID *VirtualAddress OPTIONAL, - * OUT PUINT Length) - */ -#define NdisQueryBuffer(Buffer, \ - VirtualAddress, \ - Length) \ -{ \ - if (VirtualAddress) \ - *((PVOID*)VirtualAddress) = MmGetSystemAddressForMdl(Buffer); \ - \ - *((PUINT)Length) = MmGetMdlByteCount(Buffer); \ -} - - -/* - * VOID - * NdisQueryBufferOffset( - * IN PNDIS_BUFFER Buffer, - * OUT PUINT Offset, - * OUT PUINT Length); - */ -#define NdisQueryBufferOffset(Buffer, \ - Offset, \ - Length) \ -{ \ - *((PUINT)Offset) = MmGetMdlByteOffset(Buffer); \ - *((PUINT)Length) = MmGetMdlByteCount(Buffer); \ -} - - -/* - * PVOID - * NDIS_BUFFER_LINKAGE( - * IN PNDIS_BUFFER Buffer); - */ -#define NDIS_BUFFER_LINKAGE(Buffer)(Buffer)->Next; - - -/* - * VOID - * NdisChainBufferAtBack( - * IN OUT PNDIS_PACKET Packet, - * IN OUT PNDIS_BUFFER Buffer) - */ -#define NdisChainBufferAtBack(Packet, \ - Buffer) \ -{ \ - PNDIS_BUFFER NdisBuffer = (Buffer); \ - \ - while (NdisBuffer->Next != NULL) \ - NdisBuffer = NdisBuffer->Next; \ - \ - NdisBuffer->Next = NULL; \ - \ - if ((Packet)->Private.Head != NULL) \ - (Packet)->Private.Tail->Next = (Buffer); \ - else \ - (Packet)->Private.Head = (Buffer); \ - \ - (Packet)->Private.Tail = NdisBuffer; \ - (Packet)->Private.ValidCounts = FALSE; \ -} - - -/* - * VOID - * NdisChainBufferAtFront( - * IN OUT PNDIS_PACKET Packet, - * IN OUT PNDIS_BUFFER Buffer) - */ -#define NdisChainBufferAtFront(Packet, \ - Buffer) \ -{ \ - PNDIS_BUFFER _NdisBuffer = (Buffer); \ - \ - while (_NdisBuffer->Next != NULL) \ - _NdisBuffer = _NdisBuffer->Next; \ - \ - if ((Packet)->Private.Head == NULL) \ - (Packet)->Private.Tail = _NdisBuffer; \ - \ - _NdisBuffer->Next = (Packet)->Private.Head; \ - (Packet)->Private.Head = (Buffer); \ - (Packet)->Private.ValidCounts = FALSE; \ -} - - -/* - * VOID - * NdisGetNextBuffer( - * IN PNDIS_BUFFER CurrentBuffer, - * OUT PNDIS_BUFFER * NextBuffer) - */ -#define NdisGetNextBuffer(CurrentBuffer, \ - NextBuffer) \ -{ \ - *(NextBuffer) = (CurrentBuffer)->Next; \ -} - - -/* - * UINT - * NdisGetPacketFlags( - * IN PNDIS_PACKET Packet); - */ -#define NdisGetPacketFlags(Packet)(Packet)->Private.Flags; - - -/* - * VOID - * NdisClearPacketFlags( - * IN PNDIS_PACKET Packet, - * IN UINT Flags); - */ -#define NdisClearPacketFlags(Packet, Flags) \ - (Packet)->Private.Flags &= ~(Flags) - - -/* - * VOID - * NDIS_GET_PACKET_MEDIA_SPECIFIC_INFO( - * IN PNDIS_PACKET Packet, - * IN PPVOID pMediaSpecificInfo, - * IN PUINT pSizeMediaSpecificInfo); - */ -#define NDIS_GET_PACKET_MEDIA_SPECIFIC_INFO(_Packet, \ - _pMediaSpecificInfo, \ - _pSizeMediaSpecificInfo) \ -{ \ - if (!((_Packet)->Private.NdisPacketFlags & fPACKET_ALLOCATED_BY_NDIS) || \ - !((_Packet)->Private.NdisPacketFlags & fPACKET_CONTAINS_MEDIA_SPECIFIC_INFO)) \ - { \ - *(_pMediaSpecificInfo) = NULL; \ - *(_pSizeMediaSpecificInfo) = 0; \ - } \ - else \ - { \ - *(_pMediaSpecificInfo) = ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->MediaSpecificInformation; \ - *(_pSizeMediaSpecificInfo) = ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->SizeMediaSpecificInfo; \ - } \ -} - - -/* - * ULONG - * NDIS_GET_PACKET_PROTOCOL_TYPE( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_GET_PACKET_PROTOCOL_TYPE(_Packet) \ - ((_Packet)->Private.Flags & NDIS_PROTOCOL_ID_MASK) - -/* - * ULONG - * NDIS_GET_PACKET_HEADER_SIZE( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_GET_PACKET_HEADER_SIZE(_Packet) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->HeaderSize - - -/* - * NDIS_STATUS - * NDIS_GET_PACKET_STATUS( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_GET_PACKET_STATUS(_Packet) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->Status - - -/* - * ULONGLONG - * NDIS_GET_PACKET_TIME_RECEIVED( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_GET_PACKET_TIME_RECEIVED(_Packet) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->TimeReceived - - -/* - * ULONGLONG - * NDIS_GET_PACKET_TIME_SENT( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_GET_PACKET_TIME_SENT(_Packet) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->TimeSent - - -/* - * ULONGLONG - * NDIS_GET_PACKET_TIME_TO_SEND( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_GET_PACKET_TIME_TO_SEND(_Packet) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->TimeToSend - - -/* - * PNDIS_PACKET_OOB_DATA - * NDIS_OOB_DATA_FROM_PACKET( - * IN PNDIS_PACKET Packet); - */ -#define NDIS_OOB_DATA_FROM_PACKET(_Packet) \ - (PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset) - - -/* - * VOID - * NdisQueryPacket( - * IN PNDIS_PACKET Packet, - * OUT PUINT PhysicalBufferCount OPTIONAL, - * OUT PUINT BufferCount OPTIONAL, - * OUT PNDIS_BUFFER *FirstBuffer OPTIONAL, - * OUT PUINT TotalPacketLength OPTIONAL); - */ -#define NdisQueryPacket(Packet, \ - PhysicalBufferCount, \ - BufferCount, \ - FirstBuffer, \ - TotalPacketLength) \ -{ \ - if (FirstBuffer) \ - *((PNDIS_BUFFER*)FirstBuffer) = (Packet)->Private.Head; \ - if ((TotalPacketLength) || (BufferCount) || (PhysicalBufferCount)) \ - { \ - if (!(Packet)->Private.ValidCounts) { \ - UINT _Offset; \ - UINT _PacketLength; \ - PNDIS_BUFFER _NdisBuffer; \ - UINT _PhysicalBufferCount = 0; \ - UINT _TotalPacketLength = 0; \ - UINT _Count = 0; \ - \ - for (_NdisBuffer = (Packet)->Private.Head; \ - _NdisBuffer != (PNDIS_BUFFER)NULL; \ - _NdisBuffer = _NdisBuffer->Next) \ - { \ - _PhysicalBufferCount += NDIS_BUFFER_TO_SPAN_PAGES(_NdisBuffer); \ - NdisQueryBufferOffset(_NdisBuffer, &_Offset, &_PacketLength); \ - _TotalPacketLength += _PacketLength; \ - _Count++; \ - } \ - (Packet)->Private.PhysicalCount = _PhysicalBufferCount; \ - (Packet)->Private.TotalLength = _TotalPacketLength; \ - (Packet)->Private.Count = _Count; \ - (Packet)->Private.ValidCounts = TRUE; \ - } \ - \ - if (PhysicalBufferCount) \ - *((PUINT)PhysicalBufferCount) = (Packet)->Private.PhysicalCount; \ - \ - if (BufferCount) \ - *((PUINT)BufferCount) = (Packet)->Private.Count; \ - \ - if (TotalPacketLength) \ - *((PUINT)TotalPacketLength) = (Packet)->Private.TotalLength; \ - } \ -} - -/* - * VOID - * NdisQueryPacketLength( - * IN PNDIS_PACKET Packet, - * OUT PUINT PhysicalBufferCount OPTIONAL, - * OUT PUINT BufferCount OPTIONAL, - * OUT PNDIS_BUFFER *FirstBuffer OPTIONAL, - * OUT PUINT TotalPacketLength OPTIONAL); - */ -#define NdisQueryPacketLength(Packet, \ - TotalPacketLength) \ -{ \ - if ((TotalPacketLength)) \ - { \ - if (!(Packet)->Private.ValidCounts) { \ - UINT _Offset; \ - UINT _PacketLength; \ - PNDIS_BUFFER _NdisBuffer; \ - UINT _PhysicalBufferCount = 0; \ - UINT _TotalPacketLength = 0; \ - UINT _Count = 0; \ - \ - for (_NdisBuffer = (Packet)->Private.Head; \ - _NdisBuffer != (PNDIS_BUFFER)NULL; \ - _NdisBuffer = _NdisBuffer->Next) \ - { \ - _PhysicalBufferCount += NDIS_BUFFER_TO_SPAN_PAGES(_NdisBuffer); \ - NdisQueryBufferOffset(_NdisBuffer, &_Offset, &_PacketLength); \ - _TotalPacketLength += _PacketLength; \ - _Count++; \ - } \ - (Packet)->Private.PhysicalCount = _PhysicalBufferCount; \ - (Packet)->Private.TotalLength = _TotalPacketLength; \ - (Packet)->Private.Count = _Count; \ - (Packet)->Private.ValidCounts = TRUE; \ - } \ - \ - if (TotalPacketLength) \ - *((PUINT)TotalPacketLength) = (Packet)->Private.TotalLength; \ - } \ -} - - -/* - * VOID - * NdisRecalculatePacketCounts( - * IN OUT PNDIS_PACKET Packet); - */ -#define NdisRecalculatePacketCounts(Packet) \ -{ \ - PNDIS_BUFFER _Buffer = (Packet)->Private.Head; \ - if (_Buffer != NULL) \ - { \ - while (_Buffer->Next != NULL) \ - { \ - ´_Buffer = _Buffer->Next; \ - } \ - (Packet)->Private.Tail = _Buffer; \ - } \ - (Packet)->Private.ValidCounts = FALSE; \ -} - - -/* - * VOID - * NdisReinitializePacket( - * IN OUT PNDIS_PACKET Packet); - */ -#define NdisReinitializePacket(Packet) \ -{ \ - (Packet)->Private.Head = (PNDIS_BUFFER)NULL; \ - (Packet)->Private.ValidCounts = FALSE; \ -} - - -/* - * VOID - * NdisSetPacketFlags( - * IN PNDIS_PACKET Packet, - * IN UINT Flags); - */ -#define NdisSetPacketFlags(Packet, Flags) \ - (Packet)->Private.Flags |= (Flags); - - -/* - * VOID - * NDIS_SET_PACKET_HEADER_SIZE( - * IN PNDIS_PACKET Packet, - * IN UINT HdrSize); - */ -#define NDIS_SET_PACKET_HEADER_SIZE(_Packet, _HdrSize) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->HeaderSize = (_HdrSize) - - -/* - * VOID - * NDIS_SET_PACKET_MEDIA_SPECIFIC_INFO( - * IN PNDIS_PACKET Packet, - * IN PVOID MediaSpecificInfo, - * IN UINT SizeMediaSpecificInfo); - */ -#define NDIS_SET_PACKET_MEDIA_SPECIFIC_INFO(_Packet, \ - _MediaSpecificInfo, \ - _SizeMediaSpecificInfo) \ -{ \ - if ((_Packet)->Private.NdisPacketFlags & fPACKET_ALLOCATED_BY_NDIS) \ - { \ - (_Packet)->Private.NdisPacketFlags |= fPACKET_CONTAINS_MEDIA_SPECIFIC_INFO; \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->MediaSpecificInformation = \ - (_MediaSpecificInfo); \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->SizeMediaSpecificInfo = \ - (_SizeMediaSpecificInfo); \ - } \ -} - - -/* - * VOID - * NDIS_SET_PACKET_STATUS( - * IN PNDIS_PACKET Packet, - * IN NDIS_STATUS Status); - */ -#define NDIS_SET_PACKET_STATUS(_Packet, _Status) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->Status = (_Status) - - -/* - * VOID - * NDIS_SET_PACKET_TIME_RECEIVED( - * IN PNDIS_PACKET Packet, - * IN ULONGLONG TimeReceived); - */ -#define NDIS_SET_PACKET_TIME_RECEIVED(_Packet, _TimeReceived) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->TimeReceived = (_TimeReceived) - - -/* - * VOID - * NDIS_SET_PACKET_TIME_SENT( - * IN PNDIS_PACKET Packet, - * IN ULONGLONG TimeSent); - */ -#define NDIS_SET_PACKET_TIME_SENT(_Packet, _TimeSent) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->TimeSent = (_TimeSent) - - -/* - * VOID - * NDIS_SET_PACKET_TIME_TO_SEND( - * IN PNDIS_PACKET Packet, - * IN ULONGLONG TimeToSend); - */ -#define NDIS_SET_PACKET_TIME_TO_SEND(_Packet, _TimeToSend) \ - ((PNDIS_PACKET_OOB_DATA)((PUCHAR)(_Packet) + \ - (_Packet)->Private.NdisPacketOobOffset))->TimeToSend = (_TimeToSend) - - -/* - * VOID - * NdisSetSendFlags( - * IN PNDIS_PACKET Packet, - * IN UINT Flags); - */ -#define NdisSetSendFlags(_Packet,_Flags)(_Packet)->Private.Flags = (_Flags) - - - -/* Memory management routines */ - -/* - * VOID - * NdisCreateLookaheadBufferFromSharedMemory( - * IN PVOID pSharedMemory, - * IN UINT LookaheadLength, - * OUT PVOID *pLookaheadBuffer) - */ -#define NdisCreateLookaheadBufferFromSharedMemory(_pSharedMemory, \ - _LookaheadLength, \ - _pLookaheadBuffer) \ - ((*(_pLookaheadBuffer)) = (_pSharedMemory)) - -/* - * VOID - * NdisDestroyLookaheadBufferFromSharedMemory( - * IN PVOID pLookaheadBuffer) - */ -#define NdisDestroyLookaheadBufferFromSharedMemory(_pLookaheadBuffer) - -#if defined(i386) - -/* - * VOID - * NdisMoveFromMappedMemory( - * OUT PVOID Destination, - * IN PVOID Source, - * IN ULONG Length); - */ -#define NdisMoveFromMappedMemory(Destination, Source, Length) \ - NdisMoveMappedMemory(Destination, Source, Length) - -/* - * VOID - * NdisMoveMappedMemory( - * OUT PVOID Destination, - * IN PVOID Source, - * IN ULONG Length); - */ -#define NdisMoveMappedMemory(Destination, Source, Length) \ - RtlCopyMemory(Destination, Source, Length) - -/* - * VOID - * NdisMoveToMappedMemory( - * OUT PVOID Destination, - * IN PVOID Source, - * IN ULONG Length); - */ -#define NdisMoveToMappedMemory(Destination, Source, Length) \ - NdisMoveMappedMemory(Destination, Source, Length) - -#endif /* i386 */ - -/* - * VOID - * NdisMUpdateSharedMemory( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN ULONG Length, - * IN PVOID VirtualAddress, - * IN NDIS_PHYSICAL_ADDRESS PhysicalAddress); - */ -#define NdisMUpdateSharedMemory(_H, _L, _V, _P) \ - NdisUpdateSharedMemory(_H, _L, _V, _P) - -NDISAPI -NDIS_STATUS -DDKAPI -NdisAllocateMemory( - /*OUT*/ PVOID *VirtualAddress, - /*IN*/ UINT Length, - /*IN*/ UINT MemoryFlags, - /*IN*/ NDIS_PHYSICAL_ADDRESS HighestAcceptableAddress); - -NDISAPI -VOID -DDKAPI -NdisFreeMemory( - /*IN*/ PVOID VirtualAddress, - /*IN*/ UINT Length, - /*IN*/ UINT MemoryFlags); - -NDISAPI -VOID -DDKAPI -NdisImmediateReadSharedMemory( - /*IN*/ NDIS_HANDLE WrapperConfigurationContext, - /*IN*/ ULONG SharedMemoryAddress, - /*OUT*/ PUCHAR Buffer, - /*IN*/ ULONG Length); - -NDISAPI -VOID -DDKAPI -NdisImmediateWriteSharedMemory( - /*IN*/ NDIS_HANDLE WrapperConfigurationContext, - /*IN*/ ULONG SharedMemoryAddress, - /*IN*/ PUCHAR Buffer, - /*IN*/ ULONG Length); - -NDISAPI -VOID -DDKAPI -NdisMAllocateSharedMemory( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ ULONG Length, - /*IN*/ BOOLEAN Cached, - /*OUT*/ PVOID *VirtualAddress, - /*OUT*/ PNDIS_PHYSICAL_ADDRESS PhysicalAddress); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMAllocateSharedMemoryAsync( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ ULONG Length, - /*IN*/ BOOLEAN Cached, - /*IN*/ PVOID Context); - -#if defined(NDIS50) - -#define NdisUpdateSharedMemory(NdisAdapterHandle, \ - Length, \ - VirtualAddress, \ - PhysicalAddress) - -#else - -NDISAPI -VOID -DDKAPI -NdisUpdateSharedMemory( - /*IN*/ NDIS_HANDLE NdisAdapterHandle, - /*IN*/ ULONG Length, - /*IN*/ PVOID VirtualAddress, - /*IN*/ NDIS_PHYSICAL_ADDRESS PhysicalAddress); - -#endif /* defined(NDIS50) */ - -/* - * ULONG - * NdisGetPhysicalAddressHigh( - * IN NDIS_PHYSICAL_ADDRESS PhysicalAddress); - */ -#define NdisGetPhysicalAddressHigh(PhysicalAddress) \ - ((PhysicalAddress).HighPart) - -/* - * VOID - * NdisSetPhysicalAddressHigh( - * IN NDIS_PHYSICAL_ADDRESS PhysicalAddress, - * IN ULONG Value); - */ -#define NdisSetPhysicalAddressHigh(PhysicalAddress, Value) \ - ((PhysicalAddress).HighPart) = (Value) - -/* - * ULONG - * NdisGetPhysicalAddressLow( - * IN NDIS_PHYSICAL_ADDRESS PhysicalAddress); - */ -#define NdisGetPhysicalAddressLow(PhysicalAddress) \ - ((PhysicalAddress).LowPart) - - -/* - * VOID - * NdisSetPhysicalAddressLow( - * IN NDIS_PHYSICAL_ADDRESS PhysicalAddress, - * IN ULONG Value); - */ -#define NdisSetPhysicalAddressLow(PhysicalAddress, Value) \ - ((PhysicalAddress).LowPart) = (Value) - -/* - * VOID - * NDIS_PHYSICAL_ADDRESS_CONST( - * IN ULONG Low, - * IN LONG High); - */ -#define NDIS_PHYSICAL_ADDRESS_CONST(Low, High) \ - { {(ULONG)(Low), (LONG)(High)} } - -/* - * ULONG - * NdisEqualMemory( - * IN CONST VOID *Source1, - * IN CONST VOID *Source2, - * IN ULONG Length); - */ -#define NdisEqualMemory(Source1, Source2, Length) \ - RtlEqualMemory(Source1, Source2, Length) - -/* - * VOID - * NdisFillMemory( - * IN PVOID Destination, - * IN ULONG Length, - * IN UCHAR Fill); - */ -#define NdisFillMemory(Destination, Length, Fill) \ - RtlFillMemory(Destination, Length, Fill) - -/* - * VOID - * NdisZeroMappedMemory( - * IN PVOID Destination, - * IN ULONG Length); - */ -#define NdisZeroMappedMemory(Destination, Length) \ - RtlZeroMemory(Destination, Length) - -/* - * VOID - * NdisMoveMemory( - * OUT PVOID Destination, - * IN PVOID Source, - * IN ULONG Length); - */ -#define NdisMoveMemory(Destination, Source, Length) \ - RtlCopyMemory(Destination, Source, Length) - - -/* - * VOID - * NdisRetrieveUlong( - * IN PULONG DestinationAddress, - * IN PULONG SourceAddress); - */ -#define NdisRetrieveUlong(DestinationAddress, SourceAddress) \ - RtlRetrieveUlong(DestinationAddress, SourceAddress) - - -/* - * VOID - * NdisStoreUlong( - * IN PULONG DestinationAddress, - * IN ULONG Value); - */ -#define NdisStoreUlong(DestinationAddress, Value) \ - RtlStoreUlong(DestinationAddress, Value) - - -/* - * VOID - * NdisZeroMemory( - * IN PVOID Destination, - * IN ULONG Length) - */ -#define NdisZeroMemory(Destination, Length) \ - RtlZeroMemory(Destination, Length) - - - -/* Configuration routines */ - -NDISAPI -VOID -DDKAPI -NdisOpenConfiguration( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_HANDLE ConfigurationHandle, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext); - -NDISAPI -VOID -DDKAPI -NdisReadNetworkAddress( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PVOID *NetworkAddress, - /*OUT*/ PUINT NetworkAddressLength, - /*IN*/ NDIS_HANDLE ConfigurationHandle); - -NDISAPI -VOID -DDKAPI -NdisReadEisaSlotInformation( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext, - /*OUT*/ PUINT SlotNumber, - /*OUT*/ PNDIS_EISA_FUNCTION_INFORMATION EisaData); - -NDISAPI -VOID -DDKAPI -NdisReadEisaSlotInformationEx( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext, - /*OUT*/ PUINT SlotNumber, - /*OUT*/ PNDIS_EISA_FUNCTION_INFORMATION *EisaData, - /*OUT*/ PUINT NumberOfFunctions); - -NDISAPI -ULONG -DDKAPI -NdisReadPciSlotInformation( - /*IN*/ NDIS_HANDLE NdisAdapterHandle, - /*IN*/ ULONG SlotNumber, - /*IN*/ ULONG Offset, - /*IN*/ PVOID Buffer, - /*IN*/ ULONG Length); - -NDISAPI -ULONG -DDKAPI -NdisWritePciSlotInformation( - /*IN*/ NDIS_HANDLE NdisAdapterHandle, - /*IN*/ ULONG SlotNumber, - /*IN*/ ULONG Offset, - /*IN*/ PVOID Buffer, - /*IN*/ ULONG Length); - - - -/* String management routines */ - -NDISAPI -NDIS_STATUS -DDKAPI -NdisAnsiStringToUnicodeString( - /*IN OUT*/ PNDIS_STRING DestinationString, - /*IN*/ PNDIS_ANSI_STRING SourceString); - -/* - * BOOLEAN - * NdisEqualString( - * IN PNDIS_STRING String1, - * IN PNDIS_STRING String2, - * IN BOOLEAN CaseInsensitive); - */ -#define NdisEqualString(_String1, _String2, _CaseInsensitive) \ - RtlEqualUnicodeString(_String1, _String2, _CaseInsensitive) - -NDISAPI -VOID -DDKAPI -NdisInitAnsiString( - /*IN OUT*/ PNDIS_ANSI_STRING DestinationString, - /*IN*/ PCSTR SourceString); - -NDISAPI -VOID -DDKAPI -NdisInitUnicodeString( - /*IN OUT*/ PNDIS_STRING DestinationString, - /*IN*/ PCWSTR SourceString); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisUnicodeStringToAnsiString( - /*IN OUT*/ PNDIS_ANSI_STRING DestinationString, - /*IN*/ PNDIS_STRING SourceString); - -#define NdisFreeString(_s) NdisFreeMemory((_s).Buffer, (_s).MaximumLength, 0) -#define NdisPrintString(_s) DbgPrint("%ls", (_s).Buffer) - - -/* Spin lock reoutines */ - -/* - * VOID - * NdisAllocateSpinLock( - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisAllocateSpinLock(_SpinLock) \ - KeInitializeSpinLock(&(_SpinLock)->SpinLock) - -/* - * VOID - * NdisFreeSpinLock( - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisFreeSpinLock(_SpinLock) - -/* - * VOID - * NdisAcquireSpinLock( - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisAcquireSpinLock(_SpinLock) \ - KeAcquireSpinLock(&(_SpinLock)->SpinLock, &(_SpinLock)->OldIrql) - -/* - * VOID - * NdisReleaseSpinLock( - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisReleaseSpinLock(_SpinLock) \ - KeReleaseSpinLock(&(_SpinLock)->SpinLock, (_SpinLock)->OldIrql) - -/* - * VOID - * NdisDprAcquireSpinLock( - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisDprAcquireSpinLock(_SpinLock) \ -{ \ - KeAcquireSpinLockAtDpcLevel(&(_SpinLock)->SpinLock); \ - (_SpinLock)->OldIrql = DISPATCH_LEVEL; \ -} - -/* - * VOID - * NdisDprReleaseSpinLock( - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisDprReleaseSpinLock(_SpinLock) \ - KeReleaseSpinLockFromDpcLevel(&(_SpinLock)->SpinLock) - - - -/* I/O routines */ - -/* - * VOID - * NdisRawReadPortBufferUchar( - * IN ULONG Port, - * OUT PUCHAR Buffer, - * IN ULONG Length); - */ -#define NdisRawReadPortBufferUchar(Port, Buffer, Length) \ - READ_PORT_BUFFER_UCHAR((PUCHAR)(Port), (PUCHAR)(Buffer), (Length)) - -/* - * VOID - * NdisRawReadPortBufferUlong( - * IN ULONG Port, - * OUT PULONG Buffer, - * IN ULONG Length); - */ -#define NdisRawReadPortBufferUlong(Port, Buffer, Length) \ - READ_PORT_BUFFER_ULONG((PULONG)(Port), (PULONG)(Buffer), (Length)) - -/* - * VOID - * NdisRawReadPortBufferUshort( - * IN ULONG Port, - * OUT PUSHORT Buffer, - * IN ULONG Length); - */ -#define NdisRawReadPortBufferUshort(Port, Buffer, Length) \ - READ_PORT_BUFFER_USHORT((PUSHORT)(Port), (PUSHORT)(Buffer), (Length)) - - -/* - * VOID - * NdisRawReadPortUchar( - * IN ULONG Port, - * OUT PUCHAR Data); - */ -#define NdisRawReadPortUchar(Port, Data) \ - *(Data) = READ_PORT_UCHAR((PUCHAR)(Port)) - -/* - * VOID - * NdisRawReadPortUlong( - * IN ULONG Port, - * OUT PULONG Data); - */ -#define NdisRawReadPortUlong(Port, Data) \ - *(Data) = READ_PORT_ULONG((PULONG)(Port)) - -/* - * VOID - * NdisRawReadPortUshort( - * IN ULONG Port, - * OUT PUSHORT Data); - */ -#define NdisRawReadPortUshort(Port, Data) \ - *(Data) = READ_PORT_USHORT((PUSHORT)(Port)) - - -/* - * VOID - * NdisRawWritePortBufferUchar( - * IN ULONG Port, - * IN PUCHAR Buffer, - * IN ULONG Length); - */ -#define NdisRawWritePortBufferUchar(Port, Buffer, Length) \ - WRITE_PORT_BUFFER_UCHAR((PUCHAR)(Port), (PUCHAR)(Buffer), (Length)) - -/* - * VOID - * NdisRawWritePortBufferUlong( - * IN ULONG Port, - * IN PULONG Buffer, - * IN ULONG Length); - */ -#define NdisRawWritePortBufferUlong(Port, Buffer, Length) \ - WRITE_PORT_BUFFER_ULONG((PULONG)(Port), (PULONG)(Buffer), (Length)) - -/* - * VOID - * NdisRawWritePortBufferUshort( - * IN ULONG Port, - * IN PUSHORT Buffer, - * IN ULONG Length); - */ -#define NdisRawWritePortBufferUshort(Port, Buffer, Length) \ - WRITE_PORT_BUFFER_USHORT((PUSHORT)(Port), (PUSHORT)(Buffer), (Length)) - - -/* - * VOID - * NdisRawWritePortUchar( - * IN ULONG Port, - * IN UCHAR Data); - */ -#define NdisRawWritePortUchar(Port, Data) \ - WRITE_PORT_UCHAR((PUCHAR)(Port), (UCHAR)(Data)) - -/* - * VOID - * NdisRawWritePortUlong( - * IN ULONG Port, - * IN ULONG Data); - */ -#define NdisRawWritePortUlong(Port, Data) \ - WRITE_PORT_ULONG((PULONG)(Port), (ULONG)(Data)) - -/* - * VOID - * NdisRawWritePortUshort( - * IN ULONG Port, - * IN USHORT Data); - */ -#define NdisRawWritePortUshort(Port, Data) \ - WRITE_PORT_USHORT((PUSHORT)(Port), (USHORT)(Data)) - - -/* - * VOID - * NdisReadRegisterUchar( - * IN PUCHAR Register, - * OUT PUCHAR Data); - */ -#define NdisReadRegisterUchar(Register, Data) \ - *(Data) = *(Register) - -/* - * VOID - * NdisReadRegisterUlong( - * IN PULONG Register, - * OUT PULONG Data); - */ -#define NdisReadRegisterUlong(Register, Data) \ - *(Data) = *(Register) - -/* - * VOID - * NdisReadRegisterUshort( - * IN PUSHORT Register, - * OUT PUSHORT Data); - */ -#define NdisReadRegisterUshort(Register, Data) \ - *(Data) = *(Register) - -/* - * VOID - * NdisReadRegisterUchar( - * IN PUCHAR Register, - * IN UCHAR Data); - */ -#define NdisWriteRegisterUchar(Register, Data) \ - WRITE_REGISTER_UCHAR((Register), (Data)) - -/* - * VOID - * NdisReadRegisterUlong( - * IN PULONG Register, - * IN ULONG Data); - */ -#define NdisWriteRegisterUlong(Register, Data) \ - WRITE_REGISTER_ULONG((Register), (Data)) - -/* - * VOID - * NdisReadRegisterUshort( - * IN PUSHORT Register, - * IN USHORT Data); - */ -#define NdisWriteRegisterUshort(Register, Data) \ - WRITE_REGISTER_USHORT((Register), (Data)) - - -/* Linked lists */ - -/* - * VOID - * NdisInitializeListHead( - * IN PLIST_ENTRY ListHead); - */ -#define NdisInitializeListHead(_ListHead) \ - InitializeListHead(_ListHead) - -/* - * PLIST_ENTRY - * NdisInterlockedInsertHeadList( - * IN PLIST_ENTRY ListHead, - * IN PLIST_ENTRY ListEntry, - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisInterlockedInsertHeadList(_ListHead, _ListEntry, _SpinLock) \ - ExInterlockedInsertHeadList(_ListHead, _ListEntry, &(_SpinLock)->SpinLock) - -/* - * PLIST_ENTRY - * NdisInterlockedInsertTailList( - * IN PLIST_ENTRY ListHead, - * IN PLIST_ENTRY ListEntry, - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisInterlockedInsertTailList(_ListHead, _ListEntry, _SpinLock) \ - ExInterlockedInsertTailList(_ListHead, _ListEntry, &(_SpinLock)->SpinLock) - -/* - * PLIST_ENTRY - * NdisInterlockedRemoveHeadList( - * IN PLIST_ENTRY ListHead, - * IN PNDIS_SPIN_LOCK SpinLock); -*/ -#define NdisInterlockedRemoveHeadList(_ListHead, _SpinLock) \ - ExInterlockedRemoveHeadList(_ListHead, &(_SpinLock)->SpinLock) - -/* - * VOID - * NdisInitializeSListHead( - * IN PSLIST_HEADER SListHead); - */ -#define NdisInitializeSListHead(SListHead) ExInitializeSListHead(SListHead) - -/* - * USHORT NdisQueryDepthSList( - * IN PSLIST_HEADER SListHead); - */ -#define NdisQueryDepthSList(SListHead) ExQueryDepthSList(SListHead) - - - -/* Interlocked routines */ - -/* - * LONG - * NdisInterlockedDecrement( - * IN PLONG Addend); - */ -#define NdisInterlockedDecrement(Addend) InterlockedDecrement(Addend) - -/* - * LONG - * NdisInterlockedIncrement( - * IN PLONG Addend); - */ -#define NdisInterlockedIncrement(Addend) InterlockedIncrement(Addend) - -/* - * VOID - * NdisInterlockedAddUlong( - * IN PULONG Addend, - * IN ULONG Increment, - * IN PNDIS_SPIN_LOCK SpinLock); - */ -#define NdisInterlockedAddUlong(_Addend, _Increment, _SpinLock) \ - ExInterlockedAddUlong(_Addend, _Increment, &(_SpinLock)->SpinLock) - - - -/* Miscellaneous routines */ - -NDISAPI -VOID -DDKAPI -NdisCloseConfiguration( - /*IN*/ NDIS_HANDLE ConfigurationHandle); - -NDISAPI -VOID -DDKAPI -NdisReadConfiguration( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_CONFIGURATION_PARAMETER *ParameterValue, - /*IN*/ NDIS_HANDLE ConfigurationHandle, - /*IN*/ PNDIS_STRING Keyword, - /*IN*/ NDIS_PARAMETER_TYPE ParameterType); - -NDISAPI -VOID -DDKAPI -NdisWriteConfiguration( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext, - /*IN*/ PNDIS_STRING Keyword, - /*IN*/ PNDIS_CONFIGURATION_PARAMETER *ParameterValue); - -NDISAPI -VOID -DDKCDECLAPI -NdisWriteErrorLogEntry( - /*IN*/ NDIS_HANDLE NdisAdapterHandle, - /*IN*/ NDIS_ERROR_CODE ErrorCode, - /*IN*/ ULONG NumberOfErrorValues, - /*IN*/ ...); - -/* - * VOID - * NdisStallExecution( - * IN UINT MicrosecondsToStall) - */ -#define NdisStallExecution KeStallExecutionProcessor - -/* - * VOID - * NdisGetCurrentSystemTime( - * IN PLARGE_INTEGER pSystemTime); - */ -#define NdisGetCurrentSystemTime KeQuerySystemTime - -NDISAPI -VOID -DDKAPI -NdisGetCurrentProcessorCpuUsage( - /*OUT*/ PULONG pCpuUsage); - - - -/* NDIS helper macros */ - -/* - * VOID - * NDIS_INIT_FUNCTION(FunctionName) - */ -#define NDIS_INIT_FUNCTION(FunctionName) \ - alloc_text(init, FunctionName) - -/* - * VOID - * NDIS_PAGABLE_FUNCTION(FunctionName) - */ -#define NDIS_PAGEABLE_FUNCTION(FunctionName) \ - alloc_text(page, FunctionName) - -#define NDIS_PAGABLE_FUNCTION NDIS_PAGEABLE_FUNCTION - - -/* NDIS 4.0 extensions */ - -NDISAPI -VOID -DDKAPI -NdisMFreeSharedMemory( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ ULONG Length, - /*IN*/ BOOLEAN Cached, - /*IN*/ PVOID VirtualAddress, - /*IN*/ NDIS_PHYSICAL_ADDRESS PhysicalAddress); - -NDISAPI -VOID -DDKAPI -NdisMWanIndicateReceive( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_HANDLE NdisLinkContext, - /*IN*/ PUCHAR PacketBuffer, - /*IN*/ UINT PacketSize); - -#define NdisMIndicateReceivePacket(_handle, _packets, _number) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(_handle))->PacketIndicateHandler)(_handle, _packets, _number); \ -} - -NDISAPI -VOID -DDKAPI -NdisMWanIndicateReceiveComplete( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -NDISAPI -VOID -DDKAPI -NdisMWanSendComplete( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ PNDIS_WAN_PACKET Packet, - /*IN*/ NDIS_STATUS Status); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisPciAssignResources( - /*IN*/ NDIS_HANDLE NdisMacHandle, - /*IN*/ NDIS_HANDLE NdisWrapperHandle, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext, - /*IN*/ ULONG SlotNumber, - /*OUT*/ PNDIS_RESOURCE_LIST *AssignedResources); - - -/* NDIS 5.0 extensions */ - -NDISAPI -VOID -DDKAPI -NdisAcquireReadWriteLock( - /*IN*/ PNDIS_RW_LOCK Lock, - /*IN*/ BOOLEAN fWrite, - /*IN*/ PLOCK_STATE LockState); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisAllocateMemoryWithTag( - /*OUT*/ PVOID *VirtualAddress, - /*IN*/ UINT Length, - /*IN*/ ULONG Tag); - -NDISAPI -VOID -DDKAPI -NdisAllocatePacketPoolEx( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_HANDLE PoolHandle, - /*IN*/ UINT NumberOfDescriptors, - /*IN*/ UINT NumberOfOverflowDescriptors, - /*IN*/ UINT ProtocolReservedLength); - -NDISAPI -VOID -DDKAPI -NdisCompletePnPEvent( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ PNET_PNP_EVENT NetPnPEvent); - -NDISAPI -VOID -DDKAPI -NdisGetCurrentProcessorCounts( - /*OUT*/ PULONG pIdleCount, - /*OUT*/ PULONG pKernelAndUser, - /*OUT*/ PULONG pIndex); - -NDISAPI -VOID -DDKAPI -NdisGetDriverHandle( - /*IN*/ PNDIS_HANDLE NdisBindingHandle, - /*OUT*/ PNDIS_HANDLE NdisDriverHandle); - -NDISAPI -PNDIS_PACKET -DDKAPI -NdisGetReceivedPacket( - /*IN*/ PNDIS_HANDLE NdisBindingHandle, - /*IN*/ PNDIS_HANDLE MacContext); - -NDISAPI -VOID -DDKAPI -NdisGetSystemUptime( - /*OUT*/ PULONG pSystemUpTime); - -NDISAPI -VOID -DDKAPI -NdisInitializeReadWriteLock( - /*IN*/ PNDIS_RW_LOCK Lock); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMDeregisterDevice( - /*IN*/ NDIS_HANDLE NdisDeviceHandle); - -NDISAPI -VOID -DDKAPI -NdisMGetDeviceProperty( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN OUT*/ PDEVICE_OBJECT *PhysicalDeviceObject /*OPTIONAL*/, - /*IN OUT*/ PDEVICE_OBJECT *FunctionalDeviceObject /*OPTIONAL*/, - /*IN OUT*/ PDEVICE_OBJECT *NextDeviceObject /*OPTIONAL*/, - /*IN OUT*/ PCM_RESOURCE_LIST *AllocatedResources /*OPTIONAL*/, - /*IN OUT*/ PCM_RESOURCE_LIST *AllocatedResourcesTranslated /*OPTIONAL*/); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMInitializeScatterGatherDma( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ BOOLEAN Dma64BitAddresses, - /*IN*/ ULONG MaximumPhysicalMapping); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMPromoteMiniport( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMQueryAdapterInstanceName( - /*OUT*/ PNDIS_STRING AdapterInstanceName, - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMRegisterDevice( - /*IN*/ NDIS_HANDLE NdisWrapperHandle, - /*IN*/ PNDIS_STRING DeviceName, - /*IN*/ PNDIS_STRING SymbolicName, - /*IN*/ PDRIVER_DISPATCH MajorFunctions[], - /*OUT*/ PDEVICE_OBJECT *pDeviceObject, - /*OUT*/ NDIS_HANDLE *NdisDeviceHandle); - -NDISAPI -VOID -DDKAPI -NdisMRegisterUnloadHandler( - /*IN*/ NDIS_HANDLE NdisWrapperHandle, - /*IN*/ PDRIVER_UNLOAD UnloadHandler); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMRemoveMiniport( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMSetMiniportSecondary( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_HANDLE PrimaryMiniportAdapterHandle); - -NDISAPI -VOID -DDKAPI -NdisOpenConfigurationKeyByIndex( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ConfigurationHandle, - /*IN*/ ULONG Index, - /*OUT*/ PNDIS_STRING KeyName, - /*OUT*/ PNDIS_HANDLE KeyHandle); - -NDISAPI -VOID -DDKAPI -NdisOpenConfigurationKeyByName( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE ConfigurationHandle, - /*IN*/ PNDIS_STRING SubKeyName, - /*OUT*/ PNDIS_HANDLE SubKeyHandle); - -NDISAPI -UINT -DDKAPI -NdisPacketPoolUsage( - /*IN*/ NDIS_HANDLE PoolHandle); - -NTOSAPI -VOID -DDKAPI -NdisSetPacketPoolProtocolId( - /*IN*/ NDIS_HANDLE PacketPoolHandle, - /*IN*/ UINT ProtocolId); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisQueryAdapterInstanceName( - /*OUT*/ PNDIS_STRING AdapterInstanceName, - /*IN*/ NDIS_HANDLE NdisBindingHandle); - -NDISAPI -ULONG -DDKAPI -NdisReadPcmciaAttributeMemory( - /*IN*/ NDIS_HANDLE NdisAdapterHandle, - /*IN*/ ULONG Offset, - /*IN*/ PVOID Buffer, - /*IN*/ ULONG Length); - -NDISAPI -VOID -DDKAPI -NdisReleaseReadWriteLock( - /*IN*/ PNDIS_RW_LOCK Lock, - /*IN*/ PLOCK_STATE LockState); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisWriteEventLogEntry( - /*IN*/ PVOID LogHandle, - /*IN*/ NDIS_STATUS EventCode, - /*IN*/ ULONG UniqueEventValue, - /*IN*/ USHORT NumStrings, - /*IN*/ PVOID StringsList /*OPTIONAL*/, - /*IN*/ ULONG DataSize, - /*IN*/ PVOID Data /*OPTIONAL*/); - -NDISAPI -ULONG -DDKAPI -NdisWritePcmciaAttributeMemory( - /*IN*/ NDIS_HANDLE NdisAdapterHandle, - /*IN*/ ULONG Offset, - /*IN*/ PVOID Buffer, - /*IN*/ ULONG Length); - - -/* Connectionless services */ - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClAddParty( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ NDIS_HANDLE ProtocolPartyContext, - /*IN OUT*/ PCO_CALL_PARAMETERS CallParameters, - /*OUT*/ PNDIS_HANDLE NdisPartyHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClCloseAddressFamily( - /*IN*/ NDIS_HANDLE NdisAfHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClCloseCall( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ NDIS_HANDLE NdisPartyHandle /*OPTIONAL*/, - /*IN*/ PVOID Buffer /*OPTIONAL*/, - /*IN*/ UINT Size); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClDeregisterSap( - /*IN*/ NDIS_HANDLE NdisSapHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClDropParty( - /*IN*/ NDIS_HANDLE NdisPartyHandle, - /*IN*/ PVOID Buffer /*OPTIONAL*/, - /*IN*/ UINT Size); - -NDISAPI -VOID -DDKAPI -NdisClIncomingCallComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClMakeCall( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN OUT*/ PCO_CALL_PARAMETERS CallParameters, - /*IN*/ NDIS_HANDLE ProtocolPartyContext /*OPTIONAL*/, - /*OUT*/ PNDIS_HANDLE NdisPartyHandle /*OPTIONAL*/); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClModifyCallQoS( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClOpenAddressFamily( - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ PCO_ADDRESS_FAMILY AddressFamily, - /*IN*/ NDIS_HANDLE ProtocolAfContext, - /*IN*/ PNDIS_CLIENT_CHARACTERISTICS ClCharacteristics, - /*IN*/ UINT SizeOfClCharacteristics, - /*OUT*/ PNDIS_HANDLE NdisAfHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisClRegisterSap( - /*IN*/ NDIS_HANDLE NdisAfHandle, - /*IN*/ NDIS_HANDLE ProtocolSapContext, - /*IN*/ PCO_SAP Sap, - /*OUT*/ PNDIS_HANDLE NdisSapHandle); - - -/* Call Manager services */ - -NDISAPI -NDIS_STATUS -DDKAPI -NdisCmActivateVc( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN OUT*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -VOID -DDKAPI -NdisCmAddPartyComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisPartyHandle, - /*IN*/ NDIS_HANDLE CallMgrPartyContext /*OPTIONAL*/, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -VOID -DDKAPI -NdisCmCloseAddressFamilyComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisAfHandle); - -NDISAPI -VOID -DDKAPI -NdisCmCloseCallComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ NDIS_HANDLE NdisPartyHandle /*OPTIONAL*/); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisCmDeactivateVc( - /*IN*/ NDIS_HANDLE NdisVcHandle); - -NDISAPI -VOID -DDKAPI -NdisCmDeregisterSapComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisSapHandle); - -NDISAPI -VOID -DDKAPI -NdisCmDispatchCallConnected( - /*IN*/ NDIS_HANDLE NdisVcHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisCmDispatchIncomingCall( - /*IN*/ NDIS_HANDLE NdisSapHandle, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -VOID -DDKAPI -NdisCmDispatchIncomingCallQoSChange( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -VOID -DDKAPI -NdisCmDispatchIncomingCloseCall( - /*IN*/ NDIS_STATUS CloseStatus, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PVOID Buffer /*OPTIONAL*/, - /*IN*/ UINT Size); - -NDISAPI -VOID -DDKAPI -NdisCmDispatchIncomingDropParty( - /*IN*/ NDIS_STATUS DropStatus, - /*IN*/ NDIS_HANDLE NdisPartyHandle, - /*IN*/ PVOID Buffer /*OPTIONAL*/, - /*IN*/ UINT Size); - -NDISAPI -VOID -DDKAPI -NdisCmDropPartyComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisPartyHandle); - -NDISAPI -VOID -DDKAPI -NdisCmMakeCallComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ NDIS_HANDLE NdisPartyHandle /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE CallMgrPartyContext /*OPTIONAL*/, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -VOID -DDKAPI -NdisCmModifyCallQoSComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -VOID -DDKAPI -NdisCmOpenAddressFamilyComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisAfHandle, - /*IN*/ NDIS_HANDLE CallMgrAfContext); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisCmRegisterAddressFamily( - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ PCO_ADDRESS_FAMILY AddressFamily, - /*IN*/ PNDIS_CALL_MANAGER_CHARACTERISTICS CmCharacteristics, - /*IN*/ UINT SizeOfCmCharacteristics); - -NDISAPI -VOID -DDKAPI -NdisCmRegisterSapComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisSapHandle, - /*IN*/ NDIS_HANDLE CallMgrSapContext); - - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMCmActivateVc( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMCmCreateVc( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_HANDLE NdisAfHandle, - /*IN*/ NDIS_HANDLE MiniportVcContext, - /*OUT*/ PNDIS_HANDLE NdisVcHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMCmDeactivateVc( - /*IN*/ NDIS_HANDLE NdisVcHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMCmDeleteVc( - /*IN*/ NDIS_HANDLE NdisVcHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMCmRegisterAddressFamily( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ PCO_ADDRESS_FAMILY AddressFamily, - /*IN*/ PNDIS_CALL_MANAGER_CHARACTERISTICS CmCharacteristics, - /*IN*/ UINT SizeOfCmCharacteristics); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMCmRequest( - /*IN*/ NDIS_HANDLE NdisAfHandle, - /*IN*/ NDIS_HANDLE NdisVcHandle /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE NdisPartyHandle /*OPTIONAL*/, - /*IN OUT*/ PNDIS_REQUEST NdisRequest); - - -/* Connection-oriented services */ - -NDISAPI -NDIS_STATUS -DDKAPI -NdisCoCreateVc( - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ NDIS_HANDLE NdisAfHandle /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE ProtocolVcContext, - /*IN OUT*/ PNDIS_HANDLE NdisVcHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisCoDeleteVc( - /*IN*/ NDIS_HANDLE NdisVcHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisCoRequest( - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ NDIS_HANDLE NdisAfHandle /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE NdisVcHandle /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE NdisPartyHandle /*OPTIONAL*/, - /*IN OUT*/ PNDIS_REQUEST NdisRequest); - -NDISAPI -VOID -DDKAPI -NdisCoRequestComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisAfHandle, - /*IN*/ NDIS_HANDLE NdisVcHandle /*OPTIONAL*/, - /*IN*/ NDIS_HANDLE NdisPartyHandle /*OPTIONAL*/, - /*IN*/ PNDIS_REQUEST NdisRequest); - -NDISAPI -VOID -DDKAPI -NdisCoSendPackets( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PPNDIS_PACKET PacketArray, - /*IN*/ UINT NumberOfPackets); - -NDISAPI -VOID -DDKAPI -NdisMCoActivateVcComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PCO_CALL_PARAMETERS CallParameters); - -NDISAPI -VOID -DDKAPI -NdisMCoDeactivateVcComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisVcHandle); - -NDISAPI -VOID -DDKAPI -NdisMCoIndicateReceivePacket( - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PPNDIS_PACKET PacketArray, - /*IN*/ UINT NumberOfPackets); - -NDISAPI -VOID -DDKAPI -NdisMCoIndicateStatus( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_HANDLE NdisVcHandle /*OPTIONAL*/, - /*IN*/ NDIS_STATUS GeneralStatus, - /*IN*/ PVOID StatusBuffer /*OPTIONAL*/, - /*IN*/ ULONG StatusBufferSize); - -NDISAPI -VOID -DDKAPI -NdisMCoReceiveComplete( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -NDISAPI -VOID -DDKAPI -NdisMCoRequestComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ PNDIS_REQUEST Request); - -NDISAPI -VOID -DDKAPI -NdisMCoSendComplete( - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*IN*/ PNDIS_PACKET Packet); - - -/* NDIS 5.0 extensions for intermediate drivers */ - -NDISAPI -VOID -DDKAPI -NdisIMAssociateMiniport( - /*IN*/ NDIS_HANDLE DriverHandle, - /*IN*/ NDIS_HANDLE ProtocolHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisIMCancelInitializeDeviceInstance( - /*IN*/ NDIS_HANDLE DriverHandle, - /*IN*/ PNDIS_STRING DeviceInstance); - -NDISAPI -VOID -DDKAPI -NdisIMCopySendCompletePerPacketInfo( - /*IN*/ PNDIS_PACKET DstPacket, - /*IN*/ PNDIS_PACKET SrcPacket); - -NDISAPI -VOID -DDKAPI -NdisIMCopySendPerPacketInfo( - /*IN*/ PNDIS_PACKET DstPacket, - /*IN*/ PNDIS_PACKET SrcPacket); - -NDISAPI -VOID -DDKAPI -NdisIMDeregisterLayeredMiniport( - /*IN*/ NDIS_HANDLE DriverHandle); - -NDISAPI -NDIS_HANDLE -DDKAPI -NdisIMGetBindingContext( - /*IN*/ NDIS_HANDLE NdisBindingHandle); - -NDISAPI -NDIS_HANDLE -DDKAPI -NdisIMGetDeviceContext( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisIMInitializeDeviceInstanceEx( - /*IN*/ NDIS_HANDLE DriverHandle, - /*IN*/ PNDIS_STRING DriverInstance, - /*IN*/ NDIS_HANDLE DeviceContext /*OPTIONAL*/); - -NDISAPI -PSINGLE_LIST_ENTRY -DDKAPI -NdisInterlockedPopEntrySList( - /*IN*/ PSLIST_HEADER ListHead, - /*IN*/ PKSPIN_LOCK Lock); - -NDISAPI -PSINGLE_LIST_ENTRY -DDKAPI -NdisInterlockedPushEntrySList( - /*IN*/ PSLIST_HEADER ListHead, - /*IN*/ PSINGLE_LIST_ENTRY ListEntry, - /*IN*/ PKSPIN_LOCK Lock); - -NDISAPI -VOID -DDKAPI -NdisQueryBufferSafe( - /*IN*/ PNDIS_BUFFER Buffer, - /*OUT*/ PVOID *VirtualAddress /*OPTIONAL*/, - /*OUT*/ PUINT Length, - /*IN*/ UINT Priority); - - -/* Prototypes for NDIS_MINIPORT_CHARACTERISTICS */ - -typedef BOOLEAN DDKAPI -(*W_CHECK_FOR_HANG_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext); - -typedef VOID DDKAPI -(*W_DISABLE_INTERRUPT_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext); - -typedef VOID DDKAPI -(*W_ENABLE_INTERRUPT_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext); - -typedef VOID DDKAPI -(*W_HALT_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext); - -typedef VOID DDKAPI -(*W_HANDLE_INTERRUPT_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext); - -typedef NDIS_STATUS DDKAPI -(*W_INITIALIZE_HANDLER)( - /*OUT*/ PNDIS_STATUS OpenErrorStatus, - /*OUT*/ PUINT SelectedMediumIndex, - /*IN*/ PNDIS_MEDIUM MediumArray, - /*IN*/ UINT MediumArraySize, - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext); - -typedef VOID DDKAPI -(*W_ISR_HANDLER)( - /*OUT*/ PBOOLEAN InterruptRecognized, - /*OUT*/ PBOOLEAN QueueMiniportHandleInterrupt, - /*IN*/ NDIS_HANDLE MiniportAdapterContext); - -typedef NDIS_STATUS DDKAPI -(*W_QUERY_INFORMATION_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ NDIS_OID Oid, - /*IN*/ PVOID InformationBuffer, - /*IN*/ ULONG InformationBufferLength, - /*OUT*/ PULONG BytesWritten, - /*OUT*/ PULONG BytesNeeded); - -typedef NDIS_STATUS DDKAPI -(*W_RECONFIGURE_HANDLER)( - /*OUT*/ PNDIS_STATUS OpenErrorStatus, - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext); - -typedef NDIS_STATUS DDKAPI -(*W_RESET_HANDLER)( - /*OUT*/ PBOOLEAN AddressingReset, - /*IN*/ NDIS_HANDLE MiniportAdapterContext); - -typedef NDIS_STATUS DDKAPI -(*W_SEND_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ PNDIS_PACKET Packet, - /*IN*/ UINT Flags); - -typedef NDIS_STATUS DDKAPI -(*WM_SEND_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ NDIS_HANDLE NdisLinkHandle, - /*IN*/ PNDIS_WAN_PACKET Packet); - -typedef NDIS_STATUS DDKAPI -(*W_SET_INFORMATION_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ NDIS_OID Oid, - /*IN*/ PVOID InformationBuffer, - /*IN*/ ULONG InformationBufferLength, - /*OUT*/ PULONG BytesRead, - /*OUT*/ PULONG BytesNeeded); - -typedef NDIS_STATUS DDKAPI -(*W_TRANSFER_DATA_HANDLER)( - /*OUT*/ PNDIS_PACKET Packet, - /*OUT*/ PUINT BytesTransferred, - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ NDIS_HANDLE MiniportReceiveContext, - /*IN*/ UINT ByteOffset, - /*IN*/ UINT BytesToTransfer); - -typedef NDIS_STATUS DDKAPI -(*WM_TRANSFER_DATA_HANDLER)( - VOID); - - -/* NDIS structures available only to miniport drivers */ - -#define NDIS30_MINIPORT_CHARACTERISTICS_S \ - UCHAR MajorNdisVersion; \ - UCHAR MinorNdisVersion; \ - UINT Reserved; \ - W_CHECK_FOR_HANG_HANDLER CheckForHangHandler; \ - W_DISABLE_INTERRUPT_HANDLER DisableInterruptHandler; \ - W_ENABLE_INTERRUPT_HANDLER EnableInterruptHandler; \ - W_HALT_HANDLER HaltHandler; \ - W_HANDLE_INTERRUPT_HANDLER HandleInterruptHandler; \ - W_INITIALIZE_HANDLER InitializeHandler; \ - W_ISR_HANDLER ISRHandler; \ - W_QUERY_INFORMATION_HANDLER QueryInformationHandler; \ - W_RECONFIGURE_HANDLER ReconfigureHandler; \ - W_RESET_HANDLER ResetHandler; \ - _ANONYMOUS_UNION union { \ - W_SEND_HANDLER SendHandler; \ - WM_SEND_HANDLER WanSendHandler; \ - } _UNION_NAME(u1); \ - W_SET_INFORMATION_HANDLER SetInformationHandler; \ - _ANONYMOUS_UNION union { \ - W_TRANSFER_DATA_HANDLER TransferDataHandler; \ - WM_TRANSFER_DATA_HANDLER WanTransferDataHandler; \ - } _UNION_NAME(u2); - -typedef struct _NDIS30_MINIPORT_CHARACTERISTICS { - NDIS30_MINIPORT_CHARACTERISTICS_S -} NDIS30_MINIPORT_CHARACTERISTICS, *PSNDIS30_MINIPORT_CHARACTERISTICS; - - -/* Extensions for NDIS 4.0 miniports */ - -typedef VOID DDKAPI -(*W_SEND_PACKETS_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ PPNDIS_PACKET PacketArray, - /*IN*/ UINT NumberOfPackets); - -typedef VOID DDKAPI -(*W_RETURN_PACKET_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ PNDIS_PACKET Packet); - -typedef VOID DDKAPI -(*W_ALLOCATE_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ PVOID VirtualAddress, - /*IN*/ PNDIS_PHYSICAL_ADDRESS PhysicalAddress, - /*IN*/ ULONG Length, - /*IN*/ PVOID Context); - -#ifdef __cplusplus - -#define NDIS40_MINIPORT_CHARACTERISTICS_S \ - NDIS30_MINIPORT_CHARACTERISTICS Ndis30Chars; \ - W_RETURN_PACKET_HANDLER ReturnPacketHandler; \ - W_SEND_PACKETS_HANDLER SendPacketsHandler; \ - W_ALLOCATE_COMPLETE_HANDLER AllocateCompleteHandler; - -#else /* !__cplusplus */ - -#define NDIS40_MINIPORT_CHARACTERISTICS_S \ - NDIS30_MINIPORT_CHARACTERISTICS_S \ - W_RETURN_PACKET_HANDLER ReturnPacketHandler; \ - W_SEND_PACKETS_HANDLER SendPacketsHandler; \ - W_ALLOCATE_COMPLETE_HANDLER AllocateCompleteHandler; - -#endif /* !__cplusplus */ - -typedef struct _NDIS40_MINIPORT_CHARACTERISTICS { - NDIS40_MINIPORT_CHARACTERISTICS_S -} NDIS40_MINIPORT_CHARACTERISTICS, *PNDIS40_MINIPORT_CHARACTERISTICS; - - -/* Extensions for NDIS 5.0 miniports */ - -typedef NDIS_STATUS DDKAPI -(*W_CO_CREATE_VC_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ NDIS_HANDLE NdisVcHandle, - /*OUT*/ PNDIS_HANDLE MiniportVcContext); - -typedef NDIS_STATUS DDKAPI -(*W_CO_DELETE_VC_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportVcContext); - -typedef NDIS_STATUS DDKAPI -(*W_CO_ACTIVATE_VC_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportVcContext, - /*IN OUT*/ PCO_CALL_PARAMETERS CallParameters); - -typedef NDIS_STATUS DDKAPI -(*W_CO_DEACTIVATE_VC_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportVcContext); - -typedef VOID DDKAPI -(*W_CO_SEND_PACKETS_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportVcContext, - /*IN*/ PPNDIS_PACKET PacketArray, - /*IN*/ UINT NumberOfPackets); - -typedef NDIS_STATUS DDKAPI -(*W_CO_REQUEST_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ NDIS_HANDLE MiniportVcContext /*OPTIONAL*/, - /*IN OUT*/ PNDIS_REQUEST NdisRequest); - -#ifdef __cplusplus - -#define NDIS50_MINIPORT_CHARACTERISTICS_S \ - NDIS40_MINIPORT_CHARACTERISTICS Ndis40Chars; \ - W_CO_CREATE_VC_HANDLER CoCreateVcHandler; \ - W_CO_DELETE_VC_HANDLER CoDeleteVcHandler; \ - W_CO_ACTIVATE_VC_HANDLER CoActivateVcHandler; \ - W_CO_DEACTIVATE_VC_HANDLER CoDeactivateVcHandler; \ - W_CO_SEND_PACKETS_HANDLER CoSendPacketsHandler; \ - W_CO_REQUEST_HANDLER CoRequestHandler; - -#else /* !__cplusplus */ - -#define NDIS50_MINIPORT_CHARACTERISTICS_S \ - NDIS40_MINIPORT_CHARACTERISTICS_S \ - W_CO_CREATE_VC_HANDLER CoCreateVcHandler; \ - W_CO_DELETE_VC_HANDLER CoDeleteVcHandler; \ - W_CO_ACTIVATE_VC_HANDLER CoActivateVcHandler; \ - W_CO_DEACTIVATE_VC_HANDLER CoDeactivateVcHandler; \ - W_CO_SEND_PACKETS_HANDLER CoSendPacketsHandler; \ - W_CO_REQUEST_HANDLER CoRequestHandler; - -#endif /* !__cplusplus */ - -typedef struct _NDIS50_MINIPORT_CHARACTERISTICS { - NDIS50_MINIPORT_CHARACTERISTICS_S -} NDIS50_MINIPORT_CHARACTERISTICS, *PSNDIS50_MINIPORT_CHARACTERISTICS; - - -/* Extensions for NDIS 5.1 miniports */ - -typedef VOID DDKAPI -(*W_CANCEL_SEND_PACKETS_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ PVOID CancelId); - - -#if defined(NDIS51) -typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS50_MINIPORT_CHARACTERISTICS_S -} NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; -#elif defined(NDIS50) -typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS50_MINIPORT_CHARACTERISTICS_S -} NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; -#elif defined(NDIS40) -typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS40_MINIPORT_CHARACTERISTICS_S -} NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; -#elif defined(NDIS30) -typedef struct _NDIS_MINIPORT_CHARACTERISTICS { - NDIS30_MINIPORT_CHARACTERISTICS_S -} NDIS_MINIPORT_CHARACTERISTICS, *PNDIS_MINIPORT_CHARACTERISTICS; -#endif /* NDIS30 */ - - -typedef NDIS_STATUS DDKAPI -(*SEND_HANDLER)( - /*IN*/ NDIS_HANDLE MacBindingHandle, - /*IN*/ PNDIS_PACKET Packet); - -typedef NDIS_STATUS DDKAPI -(*TRANSFER_DATA_HANDLER)( - /*IN*/ NDIS_HANDLE MacBindingHandle, - /*IN*/ NDIS_HANDLE MacReceiveContext, - /*IN*/ UINT ByteOffset, - /*IN*/ UINT BytesToTransfer, - /*OUT*/ PNDIS_PACKET Packet, - /*OUT*/ PUINT BytesTransferred); - -typedef NDIS_STATUS DDKAPI -(*RESET_HANDLER)( - /*IN*/ NDIS_HANDLE MacBindingHandle); - -typedef NDIS_STATUS DDKAPI -(*REQUEST_HANDLER)( - /*IN*/ NDIS_HANDLE MacBindingHandle, - /*IN*/ PNDIS_REQUEST NdisRequest); - - - -/* Structures available only to full MAC drivers */ - -typedef BOOLEAN DDKAPI -(*PNDIS_INTERRUPT_SERVICE)( - /*IN*/ PVOID InterruptContext); - -typedef VOID DDKAPI -(*PNDIS_DEFERRED_PROCESSING)( - /*IN*/ PVOID SystemSpecific1, - /*IN*/ PVOID InterruptContext, - /*IN*/ PVOID SystemSpecific2, - /*IN*/ PVOID SystemSpecific3); - - - -typedef struct _NDIS_MINIPORT_BLOCK NDIS_MINIPORT_BLOCK, *PNDIS_MINIPORT_BLOCK; -typedef struct _NDIS_PROTOCOL_BLOCK NDIS_PROTOCOL_BLOCK, *PNDIS_PROTOCOL_BLOCK; -typedef struct _NDIS_OPEN_BLOCK NDIS_OPEN_BLOCK, *PNDIS_OPEN_BLOCK; -typedef struct _NDIS_M_DRIVER_BLOCK NDIS_M_DRIVER_BLOCK, *PNDIS_M_DRIVER_BLOCK; -typedef struct _NDIS_AF_LIST NDIS_AF_LIST, *PNDIS_AF_LIST; - - -typedef struct _NDIS_MINIPORT_INTERRUPT { - PKINTERRUPT InterruptObject; - KSPIN_LOCK DpcCountLock; - PVOID MiniportIdField; - W_ISR_HANDLER MiniportIsr; - W_HANDLE_INTERRUPT_HANDLER MiniportDpc; - KDPC InterruptDpc; - PNDIS_MINIPORT_BLOCK Miniport; - UCHAR DpcCount; - BOOLEAN Filler1; - KEVENT DpcsCompletedEvent; - BOOLEAN SharedInterrupt; - BOOLEAN IsrRequested; -} NDIS_MINIPORT_INTERRUPT, *PNDIS_MINIPORT_INTERRUPT; - -typedef struct _NDIS_MINIPORT_TIMER { - KTIMER Timer; - KDPC Dpc; - PNDIS_TIMER_FUNCTION MiniportTimerFunction; - PVOID MiniportTimerContext; - PNDIS_MINIPORT_BLOCK Miniport; - struct _NDIS_MINIPORT_TIMER *NextDeferredTimer; -} NDIS_MINIPORT_TIMER, *PNDIS_MINIPORT_TIMER; - -typedef struct _NDIS_INTERRUPT { - PKINTERRUPT InterruptObject; - KSPIN_LOCK DpcCountLock; - PNDIS_INTERRUPT_SERVICE MacIsr; - PNDIS_DEFERRED_PROCESSING MacDpc; - KDPC InterruptDpc; - PVOID InterruptContext; - UCHAR DpcCount; - BOOLEAN Removing; - KEVENT DpcsCompletedEvent; -} NDIS_INTERRUPT, *PNDIS_INTERRUPT; - - -typedef struct _MAP_REGISTER_ENTRY { - PVOID MapRegister; - BOOLEAN WriteToDevice; -} MAP_REGISTER_ENTRY, *PMAP_REGISTER_ENTRY; - - -typedef enum _NDIS_WORK_ITEM_TYPE { - NdisWorkItemRequest, - NdisWorkItemSend, - NdisWorkItemReturnPackets, - NdisWorkItemResetRequested, - NdisWorkItemResetInProgress, - NdisWorkItemHalt, - NdisWorkItemSendLoopback, - NdisWorkItemMiniportCallback, - NdisMaxWorkItems -} NDIS_WORK_ITEM_TYPE, *PNDIS_WORK_ITEM_TYPE; - -#define NUMBER_OF_WORK_ITEM_TYPES NdisMaxWorkItems -#define NUMBER_OF_SINGLE_WORK_ITEMS 6 - -typedef struct _NDIS_MINIPORT_WORK_ITEM { - SINGLE_LIST_ENTRY Link; - NDIS_WORK_ITEM_TYPE WorkItemType; - PVOID WorkItemContext; -} NDIS_MINIPORT_WORK_ITEM, *PNDIS_MINIPORT_WORK_ITEM; - - -typedef struct _NDIS_BIND_PATHS { - UINT Number; - NDIS_STRING Paths[1]; -} NDIS_BIND_PATHS, *PNDIS_BIND_PATHS; - -#define DECLARE_UNKNOWN_STRUCT(BaseName) \ - typedef struct _##BaseName BaseName, *P##BaseName; - -#define DECLARE_UNKNOWN_PROTOTYPE(Name) \ - typedef VOID (*(Name))(VOID); - -#define ETH_LENGTH_OF_ADDRESS 6 - -DECLARE_UNKNOWN_STRUCT(ETH_BINDING_INFO) - -DECLARE_UNKNOWN_PROTOTYPE(ETH_ADDRESS_CHANGE) -DECLARE_UNKNOWN_PROTOTYPE(ETH_FILTER_CHANGE) -DECLARE_UNKNOWN_PROTOTYPE(ETH_DEFERRED_CLOSE) - -typedef struct _ETH_FILTER { - PNDIS_SPIN_LOCK Lock; - CHAR (*MCastAddressBuf)[ETH_LENGTH_OF_ADDRESS]; - struct _NDIS_MINIPORT_BLOCK *Miniport; - UINT CombinedPacketFilter; - PETH_BINDING_INFO OpenList; - ETH_ADDRESS_CHANGE AddressChangeAction; - ETH_FILTER_CHANGE FilterChangeAction; - ETH_DEFERRED_CLOSE CloseAction; - UINT MaxMulticastAddresses; - UINT NumAddresses; - UCHAR AdapterAddress[ETH_LENGTH_OF_ADDRESS]; - UINT OldCombinedPacketFilter; - CHAR (*OldMCastAddressBuf)[ETH_LENGTH_OF_ADDRESS]; - UINT OldNumAddresses; - PETH_BINDING_INFO DirectedList; - PETH_BINDING_INFO BMList; - PETH_BINDING_INFO MCastSet; -#if defined(_NDIS_) - UINT NumOpens; - PVOID BindListLock; -#endif -} ETH_FILTER, *PETH_FILTER; - -typedef VOID DDKAPI -(*ETH_RCV_COMPLETE_HANDLER)( - /*IN*/ PETH_FILTER Filter); - -typedef VOID DDKAPI -(*ETH_RCV_INDICATE_HANDLER)( - /*IN*/ PETH_FILTER Filter, - /*IN*/ NDIS_HANDLE MacReceiveContext, - /*IN*/ PCHAR Address, - /*IN*/ PVOID HeaderBuffer, - /*IN*/ UINT HeaderBufferSize, - /*IN*/ PVOID LookaheadBuffer, - /*IN*/ UINT LookaheadBufferSize, - /*IN*/ UINT PacketSize); - -typedef VOID DDKAPI -(*FDDI_RCV_COMPLETE_HANDLER)( - /*IN*/ PFDDI_FILTER Filter); - -typedef VOID DDKAPI -(*FDDI_RCV_INDICATE_HANDLER)( - /*IN*/ PFDDI_FILTER Filter, - /*IN*/ NDIS_HANDLE MacReceiveContext, - /*IN*/ PCHAR Address, - /*IN*/ UINT AddressLength, - /*IN*/ PVOID HeaderBuffer, - /*IN*/ UINT HeaderBufferSize, - /*IN*/ PVOID LookaheadBuffer, - /*IN*/ UINT LookaheadBufferSize, - /*IN*/ UINT PacketSize); - -typedef VOID DDKAPI -(*FILTER_PACKET_INDICATION_HANDLER)( - /*IN*/ NDIS_HANDLE Miniport, - /*IN*/ PPNDIS_PACKET PacketArray, - /*IN*/ UINT NumberOfPackets); - -typedef VOID DDKAPI -(*TR_RCV_COMPLETE_HANDLER)( - /*IN*/ PTR_FILTER Filter); - -typedef VOID DDKAPI -(*TR_RCV_INDICATE_HANDLER)( - /*IN*/ PTR_FILTER Filter, - /*IN*/ NDIS_HANDLE MacReceiveContext, - /*IN*/ PVOID HeaderBuffer, - /*IN*/ UINT HeaderBufferSize, - /*IN*/ PVOID LookaheadBuffer, - /*IN*/ UINT LookaheadBufferSize, - /*IN*/ UINT PacketSize); - -typedef VOID DDKAPI -(*WAN_RCV_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_HANDLE NdisLinkContext); - -typedef VOID DDKAPI -(*WAN_RCV_HANDLER)( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_HANDLE NdisLinkContext, - /*IN*/ PUCHAR Packet, - /*IN*/ ULONG PacketSize); - -typedef VOID DDKFASTAPI -(*NDIS_M_DEQUEUE_WORK_ITEM)( - /*IN*/ PNDIS_MINIPORT_BLOCK Miniport, - /*IN*/ NDIS_WORK_ITEM_TYPE WorkItemType, - /*OUT*/ PVOID *WorkItemContext); - -typedef NDIS_STATUS DDKFASTAPI -(*NDIS_M_QUEUE_NEW_WORK_ITEM)( - /*IN*/ PNDIS_MINIPORT_BLOCK Miniport, - /*IN*/ NDIS_WORK_ITEM_TYPE WorkItemType, - /*IN*/ PVOID WorkItemContext); - -typedef NDIS_STATUS DDKFASTAPI -(*NDIS_M_QUEUE_WORK_ITEM)( - /*IN*/ PNDIS_MINIPORT_BLOCK Miniport, - /*IN*/ NDIS_WORK_ITEM_TYPE WorkItemType, - /*IN*/ PVOID WorkItemContext); - -typedef VOID DDKAPI -(*NDIS_M_REQ_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_STATUS Status); - -typedef VOID DDKAPI -(*NDIS_M_RESET_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_STATUS Status, - /*IN*/ BOOLEAN AddressingReset); - -typedef VOID DDKAPI -(*NDIS_M_SEND_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ PNDIS_PACKET Packet, - /*IN*/ NDIS_STATUS Status); - -typedef VOID DDKAPI -(*NDIS_M_SEND_RESOURCES_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -typedef BOOLEAN DDKFASTAPI -(*NDIS_M_START_SENDS)( - /*IN*/ PNDIS_MINIPORT_BLOCK Miniport); - -typedef VOID DDKAPI -(*NDIS_M_STATUS_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportHandle, - /*IN*/ NDIS_STATUS GeneralStatus, - /*IN*/ PVOID StatusBuffer, - /*IN*/ UINT StatusBufferSize); - -typedef VOID DDKAPI -(*NDIS_M_STS_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -typedef VOID DDKAPI -(*NDIS_M_TD_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ PNDIS_PACKET Packet, - /*IN*/ NDIS_STATUS Status, - /*IN*/ UINT BytesTransferred); - -typedef VOID (DDKAPI *NDIS_WM_SEND_COMPLETE_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ PVOID Packet, - /*IN*/ NDIS_STATUS Status); - - -#if ARCNET - -#define ARC_SEND_BUFFERS 8 -#define ARC_HEADER_SIZE 4 - -typedef struct _NDIS_ARC_BUF { - NDIS_HANDLE ArcnetBufferPool; - PUCHAR ArcnetLookaheadBuffer; - UINT NumFree; - ARC_BUFFER_LIST ArcnetBuffers[ARC_SEND_BUFFERS]; -} NDIS_ARC_BUF, *PNDIS_ARC_BUF; - -#endif /* ARCNET */ - -#define NDIS_MINIPORT_WORK_QUEUE_SIZE 10 - -typedef struct _NDIS_LOG { - PNDIS_MINIPORT_BLOCK Miniport; - KSPIN_LOCK LogLock; - PIRP Irp; - UINT TotalSize; - UINT CurrentSize; - UINT InPtr; - UINT OutPtr; - UCHAR LogBuf[1]; -} NDIS_LOG, *PNDIS_LOG; - -typedef struct _FILTERDBS { - _ANONYMOUS_UNION union { - PETH_FILTER EthDB; - PNULL_FILTER NullDB; - } DUMMYUNIONNAME; - PTR_FILTER TrDB; - PFDDI_FILTER FddiDB; -#if ARCNET - PARC_FILTER ArcDB; -#else /* !ARCNET */ - PVOID XXXDB; -#endif /* !ARCNET */ -} FILTERDBS, *PFILTERDBS; - - -struct _NDIS_MINIPORT_BLOCK { - PVOID Signature; - PNDIS_MINIPORT_BLOCK NextMiniport; - PNDIS_M_DRIVER_BLOCK DriverHandle; - NDIS_HANDLE MiniportAdapterContext; - UNICODE_STRING MiniportName; - PNDIS_BIND_PATHS BindPaths; - NDIS_HANDLE OpenQueue; - REFERENCE Ref; - NDIS_HANDLE DeviceContext; - UCHAR Padding1; - UCHAR LockAcquired; - UCHAR PmodeOpens; - UCHAR AssignedProcessor; - KSPIN_LOCK Lock; - PNDIS_REQUEST MediaRequest; - PNDIS_MINIPORT_INTERRUPT Interrupt; - ULONG Flags; - ULONG PnPFlags; - LIST_ENTRY PacketList; - PNDIS_PACKET FirstPendingPacket; - PNDIS_PACKET ReturnPacketsQueue; - ULONG RequestBuffer; - PVOID SetMCastBuffer; - PNDIS_MINIPORT_BLOCK PrimaryMiniport; - PVOID WrapperContext; - PVOID BusDataContext; - ULONG PnPCapabilities; - PCM_RESOURCE_LIST Resources; - NDIS_TIMER WakeUpDpcTimer; - UNICODE_STRING BaseName; - UNICODE_STRING SymbolicLinkName; - ULONG CheckForHangSeconds; - USHORT CFHangTicks; - USHORT CFHangCurrentTick; - NDIS_STATUS ResetStatus; - NDIS_HANDLE ResetOpen; - FILTERDBS FilterDbs; - FILTER_PACKET_INDICATION_HANDLER PacketIndicateHandler; - NDIS_M_SEND_COMPLETE_HANDLER SendCompleteHandler; - NDIS_M_SEND_RESOURCES_HANDLER SendResourcesHandler; - NDIS_M_RESET_COMPLETE_HANDLER ResetCompleteHandler; - NDIS_MEDIUM MediaType; - ULONG BusNumber; - NDIS_INTERFACE_TYPE BusType; - NDIS_INTERFACE_TYPE AdapterType; - PDEVICE_OBJECT DeviceObject; - PDEVICE_OBJECT PhysicalDeviceObject; - PDEVICE_OBJECT NextDeviceObject; - PMAP_REGISTER_ENTRY MapRegisters; - PNDIS_AF_LIST CallMgrAfList; - PVOID MiniportThread; - PVOID SetInfoBuf; - USHORT SetInfoBufLen; - USHORT MaxSendPackets; - NDIS_STATUS FakeStatus; - PVOID LockHandler; - PUNICODE_STRING pAdapterInstanceName; - PNDIS_MINIPORT_TIMER TimerQueue; - UINT MacOptions; - PNDIS_REQUEST PendingRequest; - UINT MaximumLongAddresses; - UINT MaximumShortAddresses; - UINT CurrentLookahead; - UINT MaximumLookahead; - W_HANDLE_INTERRUPT_HANDLER HandleInterruptHandler; - W_DISABLE_INTERRUPT_HANDLER DisableInterruptHandler; - W_ENABLE_INTERRUPT_HANDLER EnableInterruptHandler; - W_SEND_PACKETS_HANDLER SendPacketsHandler; - NDIS_M_START_SENDS DeferredSendHandler; - ETH_RCV_INDICATE_HANDLER EthRxIndicateHandler; - TR_RCV_INDICATE_HANDLER TrRxIndicateHandler; - FDDI_RCV_INDICATE_HANDLER FddiRxIndicateHandler; - ETH_RCV_COMPLETE_HANDLER EthRxCompleteHandler; - TR_RCV_COMPLETE_HANDLER TrRxCompleteHandler; - FDDI_RCV_COMPLETE_HANDLER FddiRxCompleteHandler; - NDIS_M_STATUS_HANDLER StatusHandler; - NDIS_M_STS_COMPLETE_HANDLER StatusCompleteHandler; - NDIS_M_TD_COMPLETE_HANDLER TDCompleteHandler; - NDIS_M_REQ_COMPLETE_HANDLER QueryCompleteHandler; - NDIS_M_REQ_COMPLETE_HANDLER SetCompleteHandler; - NDIS_WM_SEND_COMPLETE_HANDLER WanSendCompleteHandler; - WAN_RCV_HANDLER WanRcvHandler; - WAN_RCV_COMPLETE_HANDLER WanRcvCompleteHandler; -#if defined(_NDIS_) - PNDIS_MINIPORT_BLOCK NextGlobalMiniport; - SINGLE_LIST_ENTRY WorkQueue[NUMBER_OF_WORK_ITEM_TYPES]; - SINGLE_LIST_ENTRY SingleWorkItems[NUMBER_OF_SINGLE_WORK_ITEMS]; - UCHAR SendFlags; - UCHAR TrResetRing; - UCHAR ArcnetAddress; - UCHAR XState; - _ANONYMOUS_UNION union { -#if ARCNET - PNDIS_ARC_BUF ArcBuf; -#endif - PVOID BusInterface; - } DUMMYUNIONNAME; - PNDIS_LOG Log; - ULONG SlotNumber; - PCM_RESOURCE_LIST AllocatedResources; - PCM_RESOURCE_LIST AllocatedResourcesTranslated; - SINGLE_LIST_ENTRY PatternList; - NDIS_PNP_CAPABILITIES PMCapabilities; - DEVICE_CAPABILITIES DeviceCaps; - ULONG WakeUpEnable; - DEVICE_POWER_STATE CurrentDevicePowerState; - PIRP pIrpWaitWake; - SYSTEM_POWER_STATE WaitWakeSystemState; - LARGE_INTEGER VcIndex; - KSPIN_LOCK VcCountLock; - LIST_ENTRY WmiEnabledVcs; - PNDIS_GUID pNdisGuidMap; - PNDIS_GUID pCustomGuidMap; - USHORT VcCount; - USHORT cNdisGuidMap; - USHORT cCustomGuidMap; - USHORT CurrentMapRegister; - PKEVENT AllocationEvent; - USHORT BaseMapRegistersNeeded; - USHORT SGMapRegistersNeeded; - ULONG MaximumPhysicalMapping; - NDIS_TIMER MediaDisconnectTimer; - USHORT MediaDisconnectTimeOut; - USHORT InstanceNumber; - NDIS_EVENT OpenReadyEvent; - NDIS_PNP_DEVICE_STATE PnPDeviceState; - NDIS_PNP_DEVICE_STATE OldPnPDeviceState; - PGET_SET_DEVICE_DATA SetBusData; - PGET_SET_DEVICE_DATA GetBusData; - KDPC DeferredDpc; -#if 0 - /* FIXME: */ - NDIS_STATS NdisStats; -#else - ULONG NdisStats; -#endif - PNDIS_PACKET IndicatedPacket[MAXIMUM_PROCESSORS]; - PKEVENT RemoveReadyEvent; - PKEVENT AllOpensClosedEvent; - PKEVENT AllRequestsCompletedEvent; - ULONG InitTimeMs; - NDIS_MINIPORT_WORK_ITEM WorkItemBuffer[NUMBER_OF_SINGLE_WORK_ITEMS]; - PDMA_ADAPTER SystemAdapterObject; - ULONG DriverVerifyFlags; - POID_LIST OidList; - USHORT InternalResetCount; - USHORT MiniportResetCount; - USHORT MediaSenseConnectCount; - USHORT MediaSenseDisconnectCount; - PNDIS_PACKET *xPackets; - ULONG UserModeOpenReferences; - _ANONYMOUS_UNION union { - PVOID SavedSendHandler; - PVOID SavedWanSendHandler; - } DUMMYUNIONNAME2; - PVOID SavedSendPacketsHandler; - PVOID SavedCancelSendPacketsHandler; - W_SEND_PACKETS_HANDLER WSendPacketsHandler; - ULONG MiniportAttributes; - PDMA_ADAPTER SavedSystemAdapterObject; - USHORT NumOpens; - USHORT CFHangXTicks; - ULONG RequestCount; - ULONG IndicatedPacketsCount; - ULONG PhysicalMediumType; - PNDIS_REQUEST LastRequest; - LONG DmaAdapterRefCount; - PVOID FakeMac; - ULONG LockDbg; - ULONG LockDbgX; - PVOID LockThread; - ULONG InfoFlags; - KSPIN_LOCK TimerQueueLock; - PKEVENT ResetCompletedEvent; - PKEVENT QueuedBindingCompletedEvent; - PKEVENT DmaResourcesReleasedEvent; - FILTER_PACKET_INDICATION_HANDLER SavedPacketIndicateHandler; - ULONG RegisteredInterrupts; - PNPAGED_LOOKASIDE_LIST SGListLookasideList; - ULONG ScatterGatherListSize; -#endif /* _NDIS_ */ -}; - - -/* Handler prototypes for NDIS_OPEN_BLOCK */ - -typedef NDIS_STATUS (DDKAPI *WAN_SEND_HANDLER)( - /*IN*/ NDIS_HANDLE MacBindingHandle, - /*IN*/ NDIS_HANDLE LinkHandle, - /*IN*/ PVOID Packet); - -/* NDIS 4.0 extension */ - -typedef VOID (DDKAPI *SEND_PACKETS_HANDLER)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ PPNDIS_PACKET PacketArray, - /*IN*/ UINT NumberOfPackets); - - -typedef struct _NDIS_COMMON_OPEN_BLOCK { - PVOID MacHandle; - NDIS_HANDLE BindingHandle; - PNDIS_MINIPORT_BLOCK MiniportHandle; - PNDIS_PROTOCOL_BLOCK ProtocolHandle; - NDIS_HANDLE ProtocolBindingContext; - PNDIS_OPEN_BLOCK MiniportNextOpen; - PNDIS_OPEN_BLOCK ProtocolNextOpen; - NDIS_HANDLE MiniportAdapterContext; - BOOLEAN Reserved1; - BOOLEAN Reserved2; - BOOLEAN Reserved3; - BOOLEAN Reserved4; - PNDIS_STRING BindDeviceName; - KSPIN_LOCK Reserved5; - PNDIS_STRING RootDeviceName; - _ANONYMOUS_UNION union { - SEND_HANDLER SendHandler; - WAN_SEND_HANDLER WanSendHandler; - } DUMMYUNIONNAME; - TRANSFER_DATA_HANDLER TransferDataHandler; - SEND_COMPLETE_HANDLER SendCompleteHandler; - TRANSFER_DATA_COMPLETE_HANDLER TransferDataCompleteHandler; - RECEIVE_HANDLER ReceiveHandler; - RECEIVE_COMPLETE_HANDLER ReceiveCompleteHandler; - WAN_RECEIVE_HANDLER WanReceiveHandler; - REQUEST_COMPLETE_HANDLER RequestCompleteHandler; - RECEIVE_PACKET_HANDLER ReceivePacketHandler; - SEND_PACKETS_HANDLER SendPacketsHandler; - RESET_HANDLER ResetHandler; - REQUEST_HANDLER RequestHandler; - RESET_COMPLETE_HANDLER ResetCompleteHandler; - STATUS_HANDLER StatusHandler; - STATUS_COMPLETE_HANDLER StatusCompleteHandler; -#if defined(_NDIS_) - ULONG Flags; - ULONG References; - KSPIN_LOCK SpinLock; - NDIS_HANDLE FilterHandle; - ULONG ProtocolOptions; - USHORT CurrentLookahead; - USHORT ConnectDampTicks; - USHORT DisconnectDampTicks; - W_SEND_HANDLER WSendHandler; - W_TRANSFER_DATA_HANDLER WTransferDataHandler; - W_SEND_PACKETS_HANDLER WSendPacketsHandler; - W_CANCEL_SEND_PACKETS_HANDLER CancelSendPacketsHandler; - ULONG WakeUpEnable; - PKEVENT CloseCompleteEvent; - QUEUED_CLOSE QC; - ULONG AfReferences; - PNDIS_OPEN_BLOCK NextGlobalOpen; -#endif /* _NDIS_ */ -} NDIS_COMMON_OPEN_BLOCK; - -struct _NDIS_OPEN_BLOCK -{ - NDIS_COMMON_OPEN_BLOCK NdisCommonOpenBlock; -#if defined(_NDIS_) - struct _NDIS_OPEN_CO - { - struct _NDIS_CO_AF_BLOCK * NextAf; - W_CO_CREATE_VC_HANDLER MiniportCoCreateVcHandler; - W_CO_REQUEST_HANDLER MiniportCoRequestHandler; - CO_CREATE_VC_HANDLER CoCreateVcHandler; - CO_DELETE_VC_HANDLER CoDeleteVcHandler; - PVOID CmActivateVcCompleteHandler; - PVOID CmDeactivateVcCompleteHandler; - PVOID CoRequestCompleteHandler; - LIST_ENTRY ActiveVcHead; - LIST_ENTRY InactiveVcHead; - LONG PendingAfNotifications; - PKEVENT AfNotifyCompleteEvent; - }; -#endif /* _NDIS_ */ -}; - - - -/* Routines for NDIS miniport drivers */ - -NTOSAPI -VOID -DDKAPI -NdisMInitializeTimer( - /*IN*/ /*OUT*/ PNDIS_MINIPORT_TIMER Timer, - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ PNDIS_TIMER_FUNCTION TimerFunction, - /*IN*/ PVOID FunctionContext); - -NTOSAPI -VOID -DDKAPI -NdisMSetPeriodicTimer( - /*IN*/ PNDIS_MINIPORT_TIMER Timer, - /*IN*/ UINT MillisecondsPeriod); - -NTOSAPI -VOID -DDKAPI -NdisMCancelTimer( - /*IN*/ PNDIS_MINIPORT_TIMER Timer, - /*OUT*/ PBOOLEAN TimerCancelled); - -NDISAPI -VOID -DDKAPI -NdisInitializeWrapper( - /*OUT*/ PNDIS_HANDLE NdisWrapperHandle, - /*IN*/ PVOID SystemSpecific1, - /*IN*/ PVOID SystemSpecific2, - /*IN*/ PVOID SystemSpecific3); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMAllocateMapRegisters( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ UINT DmaChannel, - /*IN*/ BOOLEAN Dma32BitAddresses, - /*IN*/ ULONG PhysicalMapRegistersNeeded, - /*IN*/ ULONG MaximumPhysicalMapping); - -/* - * VOID - * NdisMArcIndicateReceive( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN PUCHAR HeaderBuffer, - * IN PUCHAR DataBuffer, - * IN UINT Length); - */ -#define NdisMArcIndicateReceive(MiniportAdapterHandle, \ - HeaderBuffer, \ - DataBuffer, \ - Length) \ -{ \ - ArcFilterDprIndicateReceive( \ - (((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->FilterDbs.ArcDB), \ - (HeaderBuffer), \ - (DataBuffer), \ - (Length)); \ -} - -/* - * VOID - * NdisMArcIndicateReceiveComplete( - * IN NDIS_HANDLE MiniportAdapterHandle); - */ -#define NdisMArcIndicateReceiveComplete(MiniportAdapterHandle) \ -{ \ - if (((PNDIS_MINIPORT_BLOCK)MiniportAdapterHandle)->EthDB) \ - { \ - NdisMEthIndicateReceiveComplete(_H); \ - } \ - \ - ArcFilterDprIndicateReceiveComplete( \ - ((PNDIS_MINIPORT_BLOCK)MiniportAdapterHandle)->ArcDB); \ -} - -NDISAPI -VOID -DDKAPI -NdisMCloseLog( - /*IN*/ NDIS_HANDLE LogHandle); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMCreateLog( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ UINT Size, - /*OUT*/ PNDIS_HANDLE LogHandle); - -NDISAPI -VOID -DDKAPI -NdisMDeregisterAdapterShutdownHandler( - /*IN*/ NDIS_HANDLE MiniportHandle); - -NDISAPI -VOID -DDKAPI -NdisMDeregisterInterrupt( - /*IN*/ PNDIS_MINIPORT_INTERRUPT Interrupt); - -NDISAPI -VOID -DDKAPI -NdisMDeregisterIoPortRange( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ UINT InitialPort, - /*IN*/ UINT NumberOfPorts, - /*IN*/ PVOID PortOffset); - -/* - * VOID - * NdisMEthIndicateReceive( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN NDIS_HANDLE MiniportReceiveContext, - * IN PVOID HeaderBuffer, - * IN UINT HeaderBufferSize, - * IN PVOID LookaheadBuffer, - * IN UINT LookaheadBufferSize, - * IN UINT PacketSize); - */ -#define NdisMEthIndicateReceive(MiniportAdapterHandle, \ - MiniportReceiveContext, \ - HeaderBuffer, \ - HeaderBufferSize, \ - LookaheadBuffer, \ - LookaheadBufferSize, \ - PacketSize) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->EthRxIndicateHandler)( \ - (((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->FilterDbs.EthDB), \ - (MiniportReceiveContext), \ - (HeaderBuffer), \ - (HeaderBuffer), \ - (HeaderBufferSize), \ - (LookaheadBuffer), \ - (LookaheadBufferSize), \ - (PacketSize)); \ -} - -/* - * VOID - * NdisMEthIndicateReceiveComplete( - * IN NDIS_HANDLE MiniportAdapterHandle); - */ -#define NdisMEthIndicateReceiveComplete(MiniportAdapterHandle) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->EthRxCompleteHandler)( \ - ((PNDIS_MINIPORT_BLOCK)MiniportAdapterHandle)->FilterDbs.EthDB); \ -} - -/* - * VOID - * NdisMFddiIndicateReceive( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN NDIS_HANDLE MiniportReceiveContext, - * IN PVOID HeaderBuffer, - * IN UINT HeaderBufferSize, - * IN PVOID LookaheadBuffer, - * IN UINT LookaheadBufferSize, - * IN UINT PacketSize); - */ -#define NdisMFddiIndicateReceive(MiniportAdapterHandle, \ - MiniportReceiveContext, \ - HeaderBuffer, \ - HeaderBufferSize, \ - LookaheadBuffer, \ - LookaheadBufferSize, \ - PacketSize) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->FddiRxIndicateHandler)( \ - (((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->FilterDbs.FddiDB), \ - (MiniportReceiveContext), \ - (PUCHAR)(HeaderBuffer) + 1, \ - (((*(PUCHAR*)(HeaderBuffer)) & 0x40) ? \ - FDDI_LENGTH_OF_LONG_ADDRESS : \ - FDDI_LENGTH_OF_SHORT_ADDRESS), \ - (HeaderBuffer), \ - (HeaderBufferSize), \ - (LookaheadBuffer), \ - (LookaheadBufferSize), \ - (PacketSize)); \ -} - - - -/* - * VOID - * NdisMFddiIndicateReceiveComplete( - * IN NDIS_HANDLE MiniportAdapterHandle); - */ -#define NdisMFddiIndicateReceiveComplete(MiniportAdapterHandle) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->FddiRxCompleteHandler)( \ - ((PNDIS_MINIPORT_BLOCK)MiniportAdapterHandle)->FilterDbs.FddiDB); \ -} - -NDISAPI -VOID -DDKAPI -NdisMFlushLog( - /*IN*/ NDIS_HANDLE LogHandle); - -NDISAPI -VOID -DDKAPI -NdisMFreeMapRegisters( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle); - -/* - * VOID - * NdisMIndicateStatus( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN NDIS_STATUS GeneralStatus, - * IN PVOID StatusBuffer, - * IN UINT StatusBufferSize); - */ - -#define NdisMIndicateStatus(MiniportAdapterHandle, \ - GeneralStatus, StatusBuffer, StatusBufferSize) \ - (*((PNDIS_MINIPORT_BLOCK)(_M))->StatusHandler)( \ - MiniportAdapterHandle, GeneralStatus, StatusBuffer, StatusBufferSize) - -/* - * VOID - * NdisMIndicateStatusComplete( - * IN NDIS_HANDLE MiniportAdapterHandle); - */ -#define NdisMIndicateStatusComplete(MiniportAdapterHandle) \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->StatusCompleteHandler)( \ - MiniportAdapterHandle) - -/* - * VOID - * NdisMInitializeWrapper( - * OUT PNDIS_HANDLE NdisWrapperHandle, - * IN PVOID SystemSpecific1, - * IN PVOID SystemSpecific2, - * IN PVOID SystemSpecific3); - */ -#define NdisMInitializeWrapper(NdisWrapperHandle, \ - SystemSpecific1, \ - SystemSpecific2, \ - SystemSpecific3) \ - NdisInitializeWrapper((NdisWrapperHandle), \ - (SystemSpecific1), \ - (SystemSpecific2), \ - (SystemSpecific3)) - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMMapIoSpace( - /*OUT*/ PVOID *VirtualAddress, - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_PHYSICAL_ADDRESS PhysicalAddress, - /*IN*/ UINT Length); - -/* - * VOID - * NdisMQueryInformationComplete( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN NDIS_STATUS Status); - */ -#define NdisMQueryInformationComplete(MiniportAdapterHandle, Status) \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->QueryCompleteHandler)(MiniportAdapterHandle, Status) - -NDISAPI -VOID -DDKAPI -NdisMRegisterAdapterShutdownHandler( - /*IN*/ NDIS_HANDLE MiniportHandle, - /*IN*/ PVOID ShutdownContext, - /*IN*/ ADAPTER_SHUTDOWN_HANDLER ShutdownHandler); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMRegisterInterrupt( - /*OUT*/ PNDIS_MINIPORT_INTERRUPT Interrupt, - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ UINT InterruptVector, - /*IN*/ UINT InterruptLevel, - /*IN*/ BOOLEAN RequestIsr, - /*IN*/ BOOLEAN SharedInterrupt, - /*IN*/ NDIS_INTERRUPT_MODE InterruptMode); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMRegisterIoPortRange( - /*OUT*/ PVOID *PortOffset, - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ UINT InitialPort, - /*IN*/ UINT NumberOfPorts); - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMRegisterMiniport( - /*IN*/ NDIS_HANDLE NdisWrapperHandle, - /*IN*/ PNDIS_MINIPORT_CHARACTERISTICS MiniportCharacteristics, - /*IN*/ UINT CharacteristicsLength); - - -#if !defined(_NDIS_) - -/* - * VOID - * NdisMResetComplete( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN NDIS_STATUS Status, - * IN BOOLEAN AddressingReset); - */ -#define NdisMResetComplete(MiniportAdapterHandle, \ - Status, \ - AddressingReset) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->ResetCompleteHandler)( \ - MiniportAdapterHandle, Status, AddressingReset); \ -} - -/* - * VOID - * NdisMSendComplete( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN PNDIS_PACKET Packet, - * IN NDIS_STATUS Status); - */ -#define NdisMSendComplete(MiniportAdapterHandle, \ - Packet, \ - Status) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->SendCompleteHandler)( \ - MiniportAdapterHandle, Packet, Status); \ -} - -/* - * VOID - * NdisMSendResourcesAvailable( - * IN NDIS_HANDLE MiniportAdapterHandle); - */ -#define NdisMSendResourcesAvailable(MiniportAdapterHandle) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->SendResourcesHandler)( \ - MiniportAdapterHandle); \ -} - -/* - * VOID - * NdisMTransferDataComplete( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN PNDIS_PACKET Packet, - * IN NDIS_STATUS Status, - * IN UINT BytesTransferred); - */ -#define NdisMTransferDataComplete(MiniportAdapterHandle, \ - Packet, \ - Status, \ - BytesTransferred) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->TDCompleteHandler)( \ - MiniportAdapterHandle, Packet, Status, BytesTransferred) \ -} - -#endif /* !_NDIS_ */ - - -/* - * VOID - * NdisMSetAttributes( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN NDIS_HANDLE MiniportAdapterContext, - * IN BOOLEAN BusMaster, - * IN NDIS_INTERFACE_TYPE AdapterType); - */ -#define NdisMSetAttributes(MiniportAdapterHandle, \ - MiniportAdapterContext, \ - BusMaster, \ - AdapterType) \ - NdisMSetAttributesEx(MiniportAdapterHandle, \ - MiniportAdapterContext, \ - 0, \ - (BusMaster) ? NDIS_ATTRIBUTE_BUS_MASTER : 0, \ - AdapterType) - -NDISAPI -VOID -DDKAPI -NdisMSetAttributesEx( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ UINT CheckForHangTimeInSeconds /*OPTIONAL*/, - /*IN*/ ULONG AttributeFlags, - /*IN*/ NDIS_INTERFACE_TYPE AdapterType); - -/* - * VOID - * NdisMSetInformationComplete( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN NDIS_STATUS Status); - */ -#define NdisMSetInformationComplete(MiniportAdapterHandle, \ - Status) \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->SetCompleteHandler)( \ - MiniportAdapterHandle, Status) - -NDISAPI -VOID -DDKAPI -NdisMSleep( - /*IN*/ ULONG MicrosecondsToSleep); - -NDISAPI -BOOLEAN -DDKAPI -NdisMSynchronizeWithInterrupt( - /*IN*/ PNDIS_MINIPORT_INTERRUPT Interrupt, - /*IN*/ PVOID SynchronizeFunction, - /*IN*/ PVOID SynchronizeContext); - -/* - * VOID - * NdisMTrIndicateReceive( - * IN NDIS_HANDLE MiniportAdapterHandle, - * IN NDIS_HANDLE MiniportReceiveContext, - * IN PVOID HeaderBuffer, - * IN UINT HeaderBufferSize, - * IN PVOID LookaheadBuffer, - * IN UINT LookaheadBufferSize, - * IN UINT PacketSize); - */ -#define NdisMTrIndicateReceive(MiniportAdapterHandle, \ - MiniportReceiveContext, \ - HeaderBuffer, \ - HeaderBufferSize, \ - LookaheadBuffer, \ - LookaheadBufferSize, \ - PacketSize) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->TrRxIndicateHandler)( \ - (((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->FilterDbs.TrDB), \ - (MiniportReceiveContext), \ - (HeaderBuffer), \ - (HeaderBuffer), \ - (HeaderBufferSize), \ - (LookaheadBuffer), \ - (LookaheadBufferSize), \ - (PacketSize)); \ -} - -/* - * VOID - * NdisMTrIndicateReceiveComplete( - * IN NDIS_HANDLE MiniportAdapterHandle); - */ -#define NdisMTrIndicateReceiveComplete(MiniportAdapterHandle) \ -{ \ - (*((PNDIS_MINIPORT_BLOCK)(MiniportAdapterHandle))->TrRxCompleteHandler)( \ - ((PNDIS_MINIPORT_BLOCK)MiniportAdapterHandle)->FilterDbs.TrDB); \ -} - -NDISAPI -NDIS_STATUS -DDKAPI -NdisMWriteLogData( - /*IN*/ NDIS_HANDLE LogHandle, - /*IN*/ PVOID LogBuffer, - /*IN*/ UINT LogBufferSize); - -NDISAPI -VOID -DDKAPI -NdisMQueryAdapterResources( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext, - /*OUT*/ PNDIS_RESOURCE_LIST ResourceList, - /*IN OUT*/ PUINT BufferSize); - -NDISAPI -VOID -DDKAPI -NdisTerminateWrapper( - /*IN*/ NDIS_HANDLE NdisWrapperHandle, - /*IN*/ PVOID SystemSpecific); - -NDISAPI -VOID -DDKAPI -NdisMUnmapIoSpace( - /*IN*/ NDIS_HANDLE MiniportAdapterHandle, - /*IN*/ PVOID VirtualAddress, - /*IN*/ UINT Length); - - - -/* NDIS intermediate miniport structures */ - -typedef VOID (DDKAPI *W_MINIPORT_CALLBACK)( - /*IN*/ NDIS_HANDLE MiniportAdapterContext, - /*IN*/ PVOID CallbackContext); - - - -/* Routines for intermediate miniport drivers */ - -NDISAPI -NDIS_STATUS -DDKAPI -NdisIMDeInitializeDeviceInstance( - /*IN*/ NDIS_HANDLE NdisMiniportHandle); - -/* - * NDIS_STATUS - * NdisIMInitializeDeviceInstance( - * IN NDIS_HANDLE DriverHandle, - * IN PNDIS_STRING DeviceInstance); - */ -#define NdisIMInitializeDeviceInstance(DriverHandle, DeviceInstance) \ - NdisIMInitializeDeviceInstanceEx(DriverHandle, DeviceInstance, NULL) - -NDISAPI -NDIS_STATUS -DDKAPI -NdisIMRegisterLayeredMiniport( - /*IN*/ NDIS_HANDLE NdisWrapperHandle, - /*IN*/ PNDIS_MINIPORT_CHARACTERISTICS MiniportCharacteristics, - /*IN*/ UINT CharacteristicsLength, - /*OUT*/ PNDIS_HANDLE DriverHandle); - - -/* Functions obsoleted by NDIS 5.0 */ - -NDISAPI -VOID -DDKAPI -NdisFreeDmaChannel( - /*IN*/ PNDIS_HANDLE NdisDmaHandle); - -NDISAPI -VOID -DDKAPI -NdisSetupDmaTransfer( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ PNDIS_HANDLE NdisDmaHandle, - /*IN*/ PNDIS_BUFFER Buffer, - /*IN*/ ULONG Offset, - /*IN*/ ULONG Length, - /*IN*/ BOOLEAN WriteToDevice); - -NDISAPI -NTSTATUS -DDKAPI -NdisUpcaseUnicodeString( - /*OUT*/ PUNICODE_STRING DestinationString, - /*IN*/ PUNICODE_STRING SourceString); - - -/* Routines for NDIS protocol drivers */ - -NDISAPI -VOID -DDKAPI -NdisRequest( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ PNDIS_REQUEST NdisRequest); - -NDISAPI -VOID -DDKAPI -NdisReset( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisBindingHandle); - -NDISAPI -VOID -DDKAPI -NdisSend( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ PNDIS_PACKET Packet); - -NDISAPI -VOID -DDKAPI -NdisSendPackets( - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ PPNDIS_PACKET PacketArray, - /*IN*/ UINT NumberOfPackets); - -NDISAPI -VOID -DDKAPI -NdisTransferData( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisBindingHandle, - /*IN*/ NDIS_HANDLE MacReceiveContext, - /*IN*/ UINT ByteOffset, - /*IN*/ UINT BytesToTransfer, - /*IN OUT*/ PNDIS_PACKET Packet, - /*OUT*/ PUINT BytesTransferred); - -NDISAPI -VOID -DDKAPI -NdisCloseAdapter( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisBindingHandle); - -NDISAPI -VOID -DDKAPI -NdisCompleteBindAdapter( - /*IN*/ NDIS_HANDLE BindAdapterContext, - /*IN*/ NDIS_STATUS Status, - /*IN*/ NDIS_STATUS OpenStatus); - -NDISAPI -VOID -DDKAPI -NdisCompleteUnbindAdapter( - /*IN*/ NDIS_HANDLE UnbindAdapterContext, - /*IN*/ NDIS_STATUS Status); - -NDISAPI -VOID -DDKAPI -NdisDeregisterProtocol( - /*OUT*/ PNDIS_STATUS Status, - /*IN*/ NDIS_HANDLE NdisProtocolHandle); - -NDISAPI -VOID -DDKAPI -NdisOpenAdapter( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_STATUS OpenErrorStatus, - /*OUT*/ PNDIS_HANDLE NdisBindingHandle, - /*OUT*/ PUINT SelectedMediumIndex, - /*IN*/ PNDIS_MEDIUM MediumArray, - /*IN*/ UINT MediumArraySize, - /*IN*/ NDIS_HANDLE NdisProtocolHandle, - /*IN*/ NDIS_HANDLE ProtocolBindingContext, - /*IN*/ PNDIS_STRING AdapterName, - /*IN*/ UINT OpenOptions, - /*IN*/ PSTRING AddressingInformation); - -NDISAPI -VOID -DDKAPI -NdisOpenProtocolConfiguration( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_HANDLE ConfigurationHandle, - /*IN*/ PNDIS_STRING ProtocolSection); - -NDISAPI -VOID -DDKAPI -NdisRegisterProtocol( - /*OUT*/ PNDIS_STATUS Status, - /*OUT*/ PNDIS_HANDLE NdisProtocolHandle, - /*IN*/ PNDIS_PROTOCOL_CHARACTERISTICS ProtocolCharacteristics, - /*IN*/ UINT CharacteristicsLength); - -/* Obsoleted in Windows XP */ - -/* Prototypes for NDIS_MAC_CHARACTERISTICS */ - -typedef NDIS_STATUS (*OPEN_ADAPTER_HANDLER)( - /*OUT*/ PNDIS_STATUS OpenErrorStatus, - /*OUT*/ NDIS_HANDLE *MacBindingHandle, - /*OUT*/ PUINT SelectedMediumIndex, - /*IN*/ PNDIS_MEDIUM MediumArray, - /*IN*/ UINT MediumArraySize, - /*IN*/ NDIS_HANDLE NdisBindingContext, - /*IN*/ NDIS_HANDLE MacAdapterContext, - /*IN*/ UINT OpenOptions, - /*IN*/ PSTRING AddressingInformation /*OPTIONAL*/); - -typedef NDIS_STATUS (DDKAPI *CLOSE_ADAPTER_HANDLER)( - /*IN*/ NDIS_HANDLE MacBindingHandle); - -typedef NDIS_STATUS (DDKAPI *WAN_TRANSFER_DATA_HANDLER)( - VOID); - -typedef NDIS_STATUS (DDKAPI *QUERY_GLOBAL_STATISTICS_HANDLER)( - /*IN*/ NDIS_HANDLE MacAdapterContext, - /*IN*/ PNDIS_REQUEST NdisRequest); - -typedef VOID (DDKAPI *UNLOAD_MAC_HANDLER)( - /*IN*/ NDIS_HANDLE MacMacContext); - -typedef NDIS_STATUS (DDKAPI *ADD_ADAPTER_HANDLER)( - /*IN*/ NDIS_HANDLE MacMacContext, - /*IN*/ NDIS_HANDLE WrapperConfigurationContext, - /*IN*/ PNDIS_STRING AdapterName); - -typedef VOID (*REMOVE_ADAPTER_HANDLER)( - /*IN*/ NDIS_HANDLE MacAdapterContext); - -typedef struct _NDIS_MAC_CHARACTERISTICS { - UCHAR MajorNdisVersion; - UCHAR MinorNdisVersion; - UINT Reserved; - OPEN_ADAPTER_HANDLER OpenAdapterHandler; - CLOSE_ADAPTER_HANDLER CloseAdapterHandler; - SEND_HANDLER SendHandler; - TRANSFER_DATA_HANDLER TransferDataHandler; - RESET_HANDLER ResetHandler; - REQUEST_HANDLER RequestHandler; - QUERY_GLOBAL_STATISTICS_HANDLER QueryGlobalStatisticsHandler; - UNLOAD_MAC_HANDLER UnloadMacHandler; - ADD_ADAPTER_HANDLER AddAdapterHandler; - REMOVE_ADAPTER_HANDLER RemoveAdapterHandler; - NDIS_STRING Name; -} NDIS_MAC_CHARACTERISTICS, *PNDIS_MAC_CHARACTERISTICS; - -typedef NDIS_MAC_CHARACTERISTICS NDIS_WAN_MAC_CHARACTERISTICS; -typedef NDIS_WAN_MAC_CHARACTERISTICS *PNDIS_WAN_MAC_CHARACTERISTICS; - -#ifdef __cplusplus -} -#endif - -#endif /* __NDIS_H */ - -/* EOF */ |