Add fileno_unlocked to support thread sanitizer.

Bug: 25392375
Change-Id: If3f92a0e08a53f4b59e01397e8efa307d8572349
diff --git a/libc/include/stdio.h b/libc/include/stdio.h
index 1df4b54..fd653d9 100644
--- a/libc/include/stdio.h
+++ b/libc/include/stdio.h
@@ -270,6 +270,7 @@
 void clearerr_unlocked(FILE*);
 int feof_unlocked(FILE*);
 int ferror_unlocked(FILE*);
+int fileno_unlocked(FILE*);
 
 /*
  * Stdio function-access interface.
diff --git a/libc/libc.arm.map b/libc/libc.arm.map
index bc68fc0..b632d3b 100644
--- a/libc/libc.arm.map
+++ b/libc/libc.arm.map
@@ -1310,6 +1310,7 @@
     __pwrite_chk;
     __pwrite64_chk;
     __write_chk;
+    fileno_unlocked;
     getgrgid_r;
     getgrnam_r;
     preadv;
diff --git a/libc/libc.arm64.map b/libc/libc.arm64.map
index a58b757..38023e5 100644
--- a/libc/libc.arm64.map
+++ b/libc/libc.arm64.map
@@ -1156,6 +1156,7 @@
     __pwrite_chk;
     __pwrite64_chk;
     __write_chk;
+    fileno_unlocked;
     getgrgid_r;
     getgrnam_r;
     preadv;
diff --git a/libc/libc.map.txt b/libc/libc.map.txt
index 418d4cf..c378456 100644
--- a/libc/libc.map.txt
+++ b/libc/libc.map.txt
@@ -1337,6 +1337,7 @@
     __pwrite_chk;
     __pwrite64_chk;
     __write_chk;
+    fileno_unlocked;
     getgrgid_r;
     getgrnam_r;
     preadv;
diff --git a/libc/libc.mips.map b/libc/libc.mips.map
index 0c69c19..23123dc 100644
--- a/libc/libc.mips.map
+++ b/libc/libc.mips.map
@@ -1273,6 +1273,7 @@
     __pwrite_chk;
     __pwrite64_chk;
     __write_chk;
+    fileno_unlocked;
     getgrgid_r;
     getgrnam_r;
     preadv;
diff --git a/libc/libc.mips64.map b/libc/libc.mips64.map
index a58b757..38023e5 100644
--- a/libc/libc.mips64.map
+++ b/libc/libc.mips64.map
@@ -1156,6 +1156,7 @@
     __pwrite_chk;
     __pwrite64_chk;
     __write_chk;
+    fileno_unlocked;
     getgrgid_r;
     getgrnam_r;
     preadv;
diff --git a/libc/libc.x86.map b/libc/libc.x86.map
index 544ee13..f13ffb0 100644
--- a/libc/libc.x86.map
+++ b/libc/libc.x86.map
@@ -1271,6 +1271,7 @@
     __pwrite_chk;
     __pwrite64_chk;
     __write_chk;
+    fileno_unlocked;
     getgrgid_r;
     getgrnam_r;
     preadv;
diff --git a/libc/libc.x86_64.map b/libc/libc.x86_64.map
index a58b757..38023e5 100644
--- a/libc/libc.x86_64.map
+++ b/libc/libc.x86_64.map
@@ -1156,6 +1156,7 @@
     __pwrite_chk;
     __pwrite64_chk;
     __write_chk;
+    fileno_unlocked;
     getgrgid_r;
     getgrnam_r;
     preadv;
diff --git a/libc/stdio/stdio_ext.cpp b/libc/stdio/stdio_ext.cpp
index fea44f6..310076a 100644
--- a/libc/stdio/stdio_ext.cpp
+++ b/libc/stdio/stdio_ext.cpp
@@ -99,3 +99,7 @@
 int ferror_unlocked(FILE* fp) {
   return __sferror(fp);
 }
+
+int fileno_unlocked(FILE* fp) {
+  return __sfileno(fp);
+}