Commit fd7219c8 authored by Jake Howard's avatar Jake Howard
Browse files

added basic function for checking and calculating hash (Need to work out how to do this though!

parent e622a619
......@@ -18,10 +18,11 @@ namespace USB_Lockdown
internal static void beginAuthentication()
{
deviceScan.calculateHash();
Thread deviceScanner = new Thread(deviceScan.scanDevices);
deviceScanner.Join(); //the thread will exit when a valid drive has been found
//code here to unlock computer and
//code here to unlock computer and stuff
}
}
class deviceScan
......@@ -29,14 +30,21 @@ namespace USB_Lockdown
internal static DriveInfo validDrive;
internal static DriveInfo[] driveListing;
private static bool driveFound = false;
internal static string originalHash;
internal static void calculateHash()
{
//decide how to do this!
}
internal static void scanDevices()
{
while (!driveFound) {
driveListing = DriveInfo.GetDrives();
foreach (DriveInfo currentDrive in driveListing)
{
try { string driveName = currentDrive.VolumeLabel; string driveLabel = currentDrive.Name; }
catch { }
if (File.Exists(currentDrive.Name + "\\LockDown.config")) // the first check for a valid drive. Could be something else, but this is a lightweight test to be done first!
{
if (driveValidate(currentDrive)) //runs the full validation of the drive
......@@ -51,10 +59,26 @@ namespace USB_Lockdown
}
internal static bool driveValidate(DriveInfo drive){
if (!checkHash(drive)) {
return false;
}
return true;
}
private static bool checkHash(DriveInfo drive)
{
string fileName = drive.Name + "";
if (!File.Exists(fileName)) { return false; }
using (BinaryReader reader = new BinaryReader(File.Open(fileName, FileMode.Open)))
{
string hashFromDrive = reader.ReadString();
if (hashFromDrive != )
}
return true;
}
internal static void resetValues()
{
validDrive = null;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment