|  | @@ -35,10 +35,11 @@ KEY_FRAGMENTS=3
 | 
	
		
			
			| 35 | 35 |  FRAGMENTS_DIR=$USB_MOUNT/.gnupg_fragments
 | 
	
		
			
			| 36 | 36 |  MY_USERNAME=$USER
 | 
	
		
			
			| 37 | 37 |  MASTER_DRIVE="no"
 | 
	
		
			
			|  | 38 | +FORMAT="no"
 | 
	
		
			
			| 38 | 39 |  
 | 
	
		
			
			| 39 | 40 |  function show_help {
 | 
	
		
			
			| 40 | 41 |      echo ''
 | 
	
		
			
			| 41 |  | -    echo 'freedombone-keydrive -u [username] -d [device, eg. sdb] --master [yes/no] -n [no of fragments]'
 | 
	
		
			
			|  | 42 | +    echo 'freedombone-keydrive -u [username] -d [device, eg. sdb] --master [yes/no] -n [no of fragments] --format [yes/no]'
 | 
	
		
			
			| 42 | 43 |      echo ''
 | 
	
		
			
			| 43 | 44 |      exit 0
 | 
	
		
			
			| 44 | 45 |  }
 | 
	
	
		
			
			|  | @@ -67,6 +68,10 @@ case $key in
 | 
	
		
			
			| 67 | 68 |      shift
 | 
	
		
			
			| 68 | 69 |      KEY_FRAGMENTS=$1
 | 
	
		
			
			| 69 | 70 |      ;;
 | 
	
		
			
			|  | 71 | +    -f|--format)
 | 
	
		
			
			|  | 72 | +    shift
 | 
	
		
			
			|  | 73 | +    FORMAT="yes"
 | 
	
		
			
			|  | 74 | +    ;;
 | 
	
		
			
			| 70 | 75 |      *)
 | 
	
		
			
			| 71 | 76 |      # unknown option
 | 
	
		
			
			| 72 | 77 |      ;;
 | 
	
	
		
			
			|  | @@ -97,6 +102,29 @@ if [ -f /dev/mapper/encrypted_usb ]; then
 | 
	
		
			
			| 97 | 102 |    rm -rf /dev/mapper/encrypted_usb
 | 
	
		
			
			| 98 | 103 |  fi
 | 
	
		
			
			| 99 | 104 |  cryptsetup luksClose encrypted_usb
 | 
	
		
			
			|  | 105 | +
 | 
	
		
			
			|  | 106 | +# optionally format the drive
 | 
	
		
			
			|  | 107 | +if [[ $FORMAT == "yes" ]]; then
 | 
	
		
			
			|  | 108 | +  echo "Formatting ${USB_DRIVE::-1} as LUKS"
 | 
	
		
			
			|  | 109 | +  cryptsetup -y -v luksFormat ${USB_DRIVE::-1}
 | 
	
		
			
			|  | 110 | +  if [ ! "$?" = "0" ]; then
 | 
	
		
			
			|  | 111 | +      exit 36823
 | 
	
		
			
			|  | 112 | +  fi
 | 
	
		
			
			|  | 113 | +  cryptsetup luksOpen ${USB_DRIVE::-1} encrypted_usb
 | 
	
		
			
			|  | 114 | +  if [ ! "$?" = "0" ]; then
 | 
	
		
			
			|  | 115 | +      exit 37232
 | 
	
		
			
			|  | 116 | +  fi
 | 
	
		
			
			|  | 117 | +  mkfs.ext4 /dev/mapper/encrypted_usb
 | 
	
		
			
			|  | 118 | +  if [ ! "$?" = "0" ]; then
 | 
	
		
			
			|  | 119 | +      exit 73218
 | 
	
		
			
			|  | 120 | +  fi
 | 
	
		
			
			|  | 121 | +  cryptsetup luksClose encrypted_usb
 | 
	
		
			
			|  | 122 | +  if [ -f /dev/mapper/encrypted_usb ]; then
 | 
	
		
			
			|  | 123 | +      rm -rf /dev/mapper/encrypted_usb
 | 
	
		
			
			|  | 124 | +  fi
 | 
	
		
			
			|  | 125 | +  echo 'Format completed'
 | 
	
		
			
			|  | 126 | +fi
 | 
	
		
			
			|  | 127 | +
 | 
	
		
			
			| 100 | 128 |  cryptsetup luksOpen $USB_DRIVE encrypted_usb
 | 
	
		
			
			| 101 | 129 |  if [ "$?" = "0" ]; then
 | 
	
		
			
			| 102 | 130 |    USB_DRIVE=/dev/mapper/encrypted_usb
 |