Scan all descriptors when checking for fastboot

For Linux, the USB code was only looking at the first
descriptor when searching for the fastboot interface
which caused some devices to not be found.

Also clarify some code by using the actual USB structures
instead of void or char pointers.

Change-Id: I9e4871c4d477ac10ba75bb17a955f176809af289
Signed-off-by: Patrick Tjin <pattjin@google.com>
Move unlink("/dev/.booting") until after filesystems are mounted.

Move the unlink out of init.c and into init.rc, so that the file
will be removed after all the filesystems with firmware are up.

Change-Id: I7442df2042cc2788d0301f00e3c2fba7d6e0e1c7
Merge "Move unlink("/dev/.booting") until after filesystems are mounted."
am e07d77e4: Use <sys/prctl.h> instead of <linux/prctl.h>.

* commit 'e07d77e422b328f0b7e8a542e99989dab8c95dac':
  Use <sys/prctl.h> instead of <linux/prctl.h>.
am 913613a5: am ecba4dc0: am 85dfe988: am 796fccb8: Merge "Fix environment variable assignment in init"

* commit '913613a51dc57c001f00eb81752a8de43883a16e':
am 719dda65: am 7fc37b54: am ad806908: am 755df295: Merge "logd: test: disable kernel LOGGER"

* commit '719dda65d71b121b609e0890dee2a70d585cb92b':
am dddb191c: am 3aad8796: am 895d6747: am 7a8420ec: Merge "fix duplicated grep usage printing"

* commit 'dddb191cba408e44c5b974b52040b934fa3de14b':
am 9d6dfd63: am c785caa4: am 802943ab: am 8098114c: Merge "Sync with upstream grep."

* commit '9d6dfd63c919eaf9333d794524b33d8743452946':
am 06ca5fad: am 611dceec: am ce61f74f: am 56cbd19b: Merge "Fix build."

* commit '06ca5fadbdb2f2f97895a43cf4e866b9f25ea008':
am b53af3f6: am 4b9f899b: am e6b0c566: am 981dcd79: Merge "Add comment to discourage use of cutils/atomic.h."

* commit 'b53af3f60f3d6a9b1557f2891183c3322ec3aa14':
am e60eb623: Merge "Representation of channel masks for position assignment and index assignment"

* commit 'e60eb623845b6809657b18ea068a0b93f052fa0c':
  Representation of channel masks for position assignment and index assignment
am ebf9f8f1: Merge "Move unlink("/dev/.booting") until after filesystems are mounted."

* commit 'ebf9f8f1e87c5eeb667c4169f7d5c9626e1811c9':
  Move unlink("/dev/.booting") until after filesystems are mounted.
am c6ac2793: am ebf9f8f1: Merge "Move unlink("/dev/.booting") until after filesystems are mounted."

* commit 'c6ac27937c632b00836ad72c83c9e7a640030aff':
  Move unlink("/dev/.booting") until after filesystems are mounted.
am 960df97c: Add install-multiple to adb.

* commit '960df97c2356f5a804d3ef87fe49f788d7ecdfaf':
  Add install-multiple to adb.
am fd0f3908: Merge "Move unlink("/dev/.booting") until after filesystems are mounted." into lmp-dev

* commit 'fd0f390869962fb314e39983155372b31be6ff92':
  Move unlink("/dev/.booting") until after filesystems are mounted.
am 1404e654: Merge "Fix 64-bit builds." into lmp-dev

* commit '1404e6547265c50b85262436f8275c80750c6808':
  Fix 64-bit builds.
am a5e65d86: Allow sticky transform to be set in ANativeWindow.

* commit 'a5e65d86a2a07997b92f83cfac2f0ee37feeee6f':
  Allow sticky transform to be set in ANativeWindow.
Add SIGFPE to crasher.

Bug: 3399996
Change-Id: I115caf846a47f57984c1b1844104e37d29e6f24e
Merge "Add SIGFPE to crasher."
am 71bbc678: Fix the build in clang

* commit '71bbc6789fb6750d8fddda0a3ff9a87f09a32c74':
  Fix the build in clang