| Index: init | 
| diff --git a/init b/init | 
| index b812fc15557037a30a4cdd2a2c2223082b35918c..52cd73b17528842b66637d47fec4b3a8f5a882c4 100644 | 
| --- a/init | 
| +++ b/init | 
| @@ -9,7 +9,6 @@ | 
|  | 
| # USB card partition and mount point. | 
| USB_DEVS="sdb3 sdc3 mmcblk1p3" | 
| -USB_SHIM_DEVS="sdb1 sdc1 mmcblk1p1" | 
| USB_MNT=/usb | 
| REAL_USB_DEV= | 
| DM_NAME= | 
| @@ -25,10 +24,6 @@ LOG_FILE="/log/recovery.log" | 
| TPM_B_LOCKED= | 
| TPM_PP_LOCKED= | 
|  | 
| -# Developer script to run | 
| -SHIM_SCRIPT="$STATEFUL_MNT/userdir/runme" | 
| -SHIM_VBLOCK="$STATEFUL_MNT/userdir/runme.vblock" | 
| - | 
| KERN_B_VBLOCK="$STATEFUL_MNT/vmlinuz_hd.vblock" | 
| REAL_KERN_B_HASH= | 
|  | 
| @@ -175,32 +170,6 @@ find_developer_root() { | 
| return 0 | 
| } | 
|  | 
| -# If this kernel image has been placed on a drive with only a | 
| -# stateful partition, root detection will rightly fail.  However, | 
| -# we can still run a developer supplied script so we will pretend | 
| -# stateful is the root (USB_DEV). | 
| -find_shim_root() { | 
| -  # Lock the TPM prior to using an untrusted root. | 
| -  lock_tpm || return 1 | 
| -  plog "\nSearching for an alternate recovery image . . ." | 
| -  dlog -n "Waiting for $USB_SHIM_DEVS to appear" | 
| -  for try in $(seq 20); do | 
| -    plog " ." | 
| -    for dev in $USB_SHIM_DEVS; do | 
| -      if [ -b "/dev/${dev}" ]; then | 
| -        USB_DEV="/dev/${dev}" | 
| -        REAL_USB_DEV="$USB_DEV" | 
| -        dlog "Found $USB_DEV" | 
| -        set_unofficial_root || on_error | 
| -        mount_usb || return 1 | 
| -        return 0 | 
| -      fi | 
| -    done | 
| -    sleep 1 | 
| -  done | 
| -  return 1 | 
| -} | 
| - | 
| # If we have a verified recovery root, ensure all blocks are valid before | 
| # handing it off to the installer. | 
| validate_recovery_root() { | 
| @@ -429,50 +398,6 @@ check_key_or_wait() { | 
| return 0 | 
| } | 
|  | 
| -# Never returns on success. | 
| -attempt_shim_script() { | 
| -  # TODO(wad) Add static root of trust validation then remove the next line. | 
| -  #           http://crosbug/8390 | 
| -  is_developer_mode || return 1 | 
| - | 
| -  # Now we will either install a colocated Chromium OS image by | 
| -  # checking the keys on KERN-B against any on disk (KERN-[ABC]) | 
| -  # or by checking a signed script on stateful. | 
| -  dlog "Checking for a shim script . . ." | 
| -  [ -x "$SHIM_SCRIPT" ] || return 1 | 
| -  [ -f "$SHIM_VBLOCK" ] || return 1 | 
| -  log "Shim script and signing file found!" | 
| - | 
| -  plog "Verifying the signature on the script . . ." | 
| -  # Extract pubkey and check signature | 
| -  if ! dev_sign_file --verify "$SHIM_SCRIPT" \ | 
| -                     --vblock "$SHIM_VBLOCK" \ | 
| -                     --keyblock /tmp/shim.keyblock; then | 
| -    log " failed." | 
| -  fi | 
| -  log " done." | 
| - | 
| -  # If we're not in developer mode, this will be terminal on failure. | 
| -  check_key_or_wait /tmp/shim.keyblock | 
| - | 
| -  # Run the user supplied script. It is done in the current environment | 
| -  # to avoid needing anything other than the script/program on the partition. | 
| -  log "Executing shim script . . ." | 
| - | 
| -  dlog "calling $SHIM_SCRIPT with exec" | 
| -  # Fix up the input/output | 
| -  stop_log_file | 
| -  set +x | 
| -  exec &> "$TTY_PATH"1 | 
| -  exec < "$TTY_PATH"1 | 
| -  # Call the script! | 
| -  exec "$SHIM_SCRIPT" | 
| - | 
| -  # Never reached. | 
| -  save_log_file | 
| -  return 0 | 
| -} | 
| - | 
| get_kern_b_device() { | 
| # TODO(wad) By changing boot priority, could we end up | 
| # checking the recovery image or the recovery image could not | 
| @@ -616,16 +541,7 @@ recover_system() { | 
| dlog "Beginning system recovery from $source" | 
|  | 
| recovery_wait | 
| - | 
| -  if is_unofficial_root; then | 
| -    dlog "Attempting to use shim  . . ." | 
| -    # Mounting read only so a journal is not needed. | 
| -    # If it fails, we can still proceed on a normal recovery path. | 
| -    mount -n -o ro -t ext2 "$STATE_DEV" "$STATEFUL_MNT" | 
| -    attempt_shim_script  # never returns on success. | 
| -    umount "$STATEFUL_MNT" | 
| -  fi | 
| - | 
| + | 
| # If we're not running a developer script then we're either | 
| # installing a developer image or an official one. If we're | 
| # in normal recovery mode, then we require that the KERN-B | 
| @@ -746,7 +662,7 @@ main() { | 
| log "" | 
| fi | 
|  | 
| -  if find_official_root || find_developer_root || find_shim_root; then | 
| +  if find_official_root || find_developer_root; then | 
| log " found." | 
| else | 
| log " not found." | 
| @@ -783,7 +699,7 @@ main() { | 
| # Chrome OS recovery kernel. | 
| if ! validate_recovery_root; then | 
| is_developer_mode || on_error | 
| -    find_developer_root || find_shim_root || on_error | 
| +    find_developer_root || on_error | 
| log " found." | 
| # This logic is duplicated to avoid double validating factory media.  It | 
| # will only be hit if a verified root can be mounted but is actually not | 
|  |