[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Mac securedrv help..



Hey guys I posted this message all over AOL, CIS, Fido and UseNet.  I'd
like to post it on here as well.  If you happen to know someone who has
written disk drive device drivers for the mac, please forward this to
them so that I can write something like SecureDrive for the Mac. :-)

(I've already written some vastly cool, vastly portable code thatprovides
much much more than an encrypted drive!)  I will make a FREE no-frills
crypto-drive available (only in the USA of course...) but there will
also be something along the lines of a shareware crypto-stacker with
data compression and encryption.  I've written most of the compressor
related code already, and tried to keep it fairly portable...  This
should give eDisk, Stacker, and x2 a bit of healthy competition. :-)
(It will be VERY low cost compared to them.)


Hey there, I tried to get a printed copy of InsideMac:Devices, however it
won't be published for a while.  In the mean time, I printed out some of
the relevent chapters from the beta version on the   d e v e l o p
bookmark cd...

I'm trying to write a disk device driver that will be loaded from an
application (after the Mac is started up, and INITs have loaded.)  I
already have code that installs a driver in this manner.  I've looked at
the SCSI C/ASM sample code on the CD...  But, here are some questions I
still have:

Is it okay for my driver to call FSRead FSWrite from its Prime routine?
(It will be reading from a file or writing to a file.)

Do I have to make the driver asynchronous?  If not, how do I tell the OS
that it isn't async?  If yes (or if asynch is better) how do I write such
a beast?  The demo SCSI driver is synchronous, however I hear that the new
AV macs use asynch drivers.  Would an async driver work on older Macs?
Would a non-async driver work on an AV Mac?

Where can I get sample code for an Async disk driver?  All I need is
basically a bit of a source code skeleton that I can stick in
READ_A_BLOCK, WRITE_A_BLOCK, Initialize, and Shutdown functions...

Also, a MAJOR thing, how do I set the sector/block size of a disk device
driver such as the one I'm writing?  I understand that 512 bytes seems to
be the size in general.  I also understand that the Mac clusters sectors
together if the drive is larger than 65535 sectors because of the pointers
it uses.   (I'd like to be able to use 512, 1024, 4096, or even upto 32K
sectors in my driver, but if 512 is the normal it's not too big a deal...)

I have written most of the routines that this driver needs, but I need a
working, good skeleton of a driver, and as the warnings on the SCSI sample
code indicate, I don't trust it. :-)

Thanks.
(if you'd like to email me the replies instead, my internet address is:
  [email protected].  This is preferred since I generally get
  to the photon machine more often...)

---------On countless worlds the earth shakes as the forces of Chaos
strive to gain control.  Whilst they unleash their devastating weaponry upon
their foes there is no time for peace - only Eternal War.