authfs: fd_server to expose local FD via binder interface

fd_server provides a binder service (currently local binder since remote
binder is not ready). The server starts with FDs specified in the
command line flags (and supposedly opened FDs passed from the parent
process).

fd_server is supposed to run in Android to provide backing file to
authfs.

Test: # Start the server to serve the file. Read from the client.
      adb shell 'exec
      9</system/bin/sh
      8</data/local/tmp/input.4m
      7</data/local/tmp/input.4m.merkle_dump
      6</data/local/tmp/input.4m.fsv_sig
      fd_server --ro-fds 9 --ro-fds 8:7:6'`
Bug: 171280169
Change-Id: Ide68f23d7177b726ffd48ef960276bd8cf5e5846
diff --git a/authfs/fd_server/Android.bp b/authfs/fd_server/Android.bp
new file mode 100644
index 0000000..1099fd9
--- /dev/null
+++ b/authfs/fd_server/Android.bp
@@ -0,0 +1,12 @@
+rust_binary {
+    name: "fd_server",
+    srcs: ["src/main.rs"],
+    rustlibs: [
+        "authfs_aidl_interface-rust",
+        "libanyhow",
+        "libbinder_rs",
+        "libclap",
+        "liblibc",
+        "liblog_rust",
+    ],
+}