Date: Tue, 19 Apr 2005 22:48:48 -0600 From: Scott Long <scottl@samsco.org> To: "Daniel O'Connor" <doconnor@gsoft.com.au> Cc: current@freebsd.org Subject: Re: New driver loading scheme for Project Evil, need input Message-ID: <4265DF30.8010001@samsco.org> In-Reply-To: <200504201221.39355.doconnor@gsoft.com.au> References: <20050419225640.7B92816A4CF@hub.freebsd.org> <200504201221.39355.doconnor@gsoft.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
Daniel O'Connor wrote: > On Wed, 20 Apr 2005 08:26, Bill Paul wrote: > >>The objcopy(1) trick basically produces an ELF file that has the >>Windows .SYS file encapsulated with in it. Two symbols are created >>to denote the start end end of the image so that it can be loaded later. >>The windrv_stub.o module linked with the Windows image provides a >>small FreeBSD modevent handler that hooks the driver into Project >>Evil and eventually causes a bus-reprobe. This means that all you >>have to do is kldload this one module into the kernel, and presto! >>a new ndisX networking interface appears. > > > What about if you want to use >1 NDIS driver? How will it avoid symbol name > collisions? > > >>The end result is that installing a Windows driver should be as simple >>as: >> >>- run the script >>- give it your foo.inf and foo.sys files when it asks you >>- it spits out a foo_sys.ko module and you kldload it >>- the end > > > Sounds much nicer :) > > >>You still end up needing the C compiler, objcopy, ndiscvt and (optionally) >>iconv, but the script automates the use of all these tooks and explains >>to the user what's going on while it's working. > > > It's certainly simpler than the current state of afairs and unless the kernel > NDIS grows the ability to directly read .sys & .inf files from your disk > (which would be very cool :) it's about a simple as it's going to get.. > > >>- What should the script be called? wintobsd.sh sounds kind of lame. > > > encappe > win2elf > pe2elf > necronomicon? Scott
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4265DF30.8010001>