authfs: Support RPC binder

This change adds a new flag --rpc-binder to authfs, and --cid to
fd_server. The flag allows both to communicate through vsock. The
capability of local binder is kept for now (and still the default),
but can be removed later.

The change relies on the newly introduced libbinder_rpc_unstable.so
and the corresponding bindgen, in order to access the unstable API from
Rust.

Also, add authfs and libbinder_rpc_unstable to microdroid.

Bug: 190547489
Bug: 189947807
Test: [Android shell] sh -c 'exec 9<>/data/local/tmp/output \
          /apex/com.android.virt/bin/fd_server --rw-fds 9 --rpc-binder'
      [VM shell] /apex/com.android.virt/bin/authfs \
          /data/local/tmp --cid 2 --remote-new-rw-file 9:9
      [VM shell 2] ps -A > /data/local/tmp/9
      [Android shell] cat /data/local/tmp/output  # see correct data
Change-Id: I200f746aa4078508a0f0d2498a1525bb898a6e3b
diff --git a/microdroid/Android.bp b/microdroid/Android.bp
index 4f0d17a..174916b 100644
--- a/microdroid/Android.bp
+++ b/microdroid/Android.bp
@@ -101,7 +101,11 @@
         lib64: {
             deps: [
                 "apkdmverity",
+                "authfs",
                 "zipfuse",
+
+                // TODO(b/184872979): Needed by authfs. Remove once the Rust API is created.
+                "libbinder_rpc_unstable",
             ],
         },
     },