Debian packaging of the u3 tool to control the special features of a U3 USB flash disk

Evgeni Golov 5665ef141d Import upstream version 0.3 15 年 前
doc 5665ef141d Import upstream version 0.3 15 年 前
src 5665ef141d Import upstream version 0.3 15 年 前
AUTHORS 957bed6bdd Import upstream version 0.0~svn5 15 年 前
COPYING 957bed6bdd Import upstream version 0.0~svn5 15 年 前
ChangeLog 5665ef141d Import upstream version 0.3 15 年 前
INSTALL 1af1eeca5e Import upstream version 0.2 15 年 前
Makefile.am 1af1eeca5e Import upstream version 0.2 15 年 前
Makefile.in 5665ef141d Import upstream version 0.3 15 年 前
NEWS 1af1eeca5e Import upstream version 0.2 15 年 前
README 1af1eeca5e Import upstream version 0.2 15 年 前
TODO 5665ef141d Import upstream version 0.3 15 年 前
aclocal.m4 5665ef141d Import upstream version 0.3 15 年 前
compile 1af1eeca5e Import upstream version 0.2 15 年 前
config.guess 5665ef141d Import upstream version 0.3 15 年 前
config.h.in 5665ef141d Import upstream version 0.3 15 年 前
config.sub 5665ef141d Import upstream version 0.3 15 年 前
configure 5665ef141d Import upstream version 0.3 15 年 前
configure.ac 5665ef141d Import upstream version 0.3 15 年 前
depcomp 1af1eeca5e Import upstream version 0.2 15 年 前
install-sh 1af1eeca5e Import upstream version 0.2 15 年 前
missing 1af1eeca5e Import upstream version 0.2 15 年 前

README

Description:
-----------
u3-tool is a tool for unlocking and configuring U3 smart USB Flash devices.

Main features:
- Change CD partition size and Replace CD image
- (de-)secure data partition
- Unlock secured data partition

Supported device:
----------------
In theory all U3 USB flash devices should be supported. A list of U3 compatible devices can be obtained from http://www.U3.com.

The software is currently tested with the following drives:
* Sandisk Cruzer Micro U3 512Mb
* Sandisk Cruzer Micro U3 4Gb
* Verbatim Store 'N Go 1Gb

Selecting a subsystem:
---------------------
U3-Tool can utilize a number of subsystems to access the USB drive. Which one to use depends on you Operating system and version.

- sg
The sg subsystem uses the Linux SCSI Generic interface to communicate with the device. The big advantage of this subsystem is that the u3-tool can issue commands to the device while the device is under control of the usb-storage Linux subsystem. This means that u3-tool can be used without having to unmount the volume or unassociate the device from any kernel drivers. Big disadvantage is that the sg system on older kernels(<2.6.22??) don't allow all commands to be executed.
When building on Unix the 'u3-tool' executable uses this subsystem.

- LibUSB
The LibUSB subsystem uses LibUSB to send raw USB commands to the device. The advantage of this subsystem is that LibUSB should work on all Linux kernels >= 2.4, and should even work other operating systems.
However... For LibUSB to be able send commands to the USB device it needs exclusive access to the device. This requires the Linux usb-storage system, which makes the device available as disk to the end-user, to release the device. So effectively this means that you can't use the device as disk and use U3-tool at the same time.
When building on Unix the 'u3-tool-usb' executable uses this subsystem.

- spt
The spt subsystem uses Microsoft Windows SCSI pass through interface to communicate with the device. This is similar to the sg subsystem, with the difference that this is Windows specific.
When building on Windows the 'u3-tool.exe' executable uses this subsystem.

So what subsystem do you need to use? Simply said:
- Microsoft Windows --> spt subsystem
- Linux >2.6.21? --> sg subsystem
- Linux <=2.6.21? --> LibUSB
- Other OS(BSD/Mac OS?) --> LibUSB, but hasn't been tested

Compilation:
------------
If you have downloaded the source:
- On Linux/Unix see INSTALL for instructions.
- On Windows you need the mingw32 compiler. Type 'make -f Makefile.win' in the src/ directory. Or open the u3_tool.dev file with Bloodshed's Dev-C++(http://www.bloodshed.net/devcpp.html).