diff --git a/libc/stdio/stdio.cpp b/libc/stdio/stdio.cpp
index b4b2a36..d627556 100644
--- a/libc/stdio/stdio.cpp
+++ b/libc/stdio/stdio.cpp
@@ -940,11 +940,21 @@
   return __vfprintf(fp, fmt, ap);
 }
 
+int vfscanf(FILE* fp, const char* fmt, va_list ap) {
+  ScopedFileLock sfl(fp);
+  return __svfscanf(fp, fmt, ap);
+}
+
 int vfwprintf(FILE* fp, const wchar_t* fmt, va_list ap) {
   ScopedFileLock sfl(fp);
   return __vfwprintf(fp, fmt, ap);
 }
 
+int vfwscanf(FILE* fp, const wchar_t* fmt, va_list ap) {
+  ScopedFileLock sfl(fp);
+  return __vfwscanf(fp, fmt, ap);
+}
+
 int vprintf(const char* fmt, va_list ap) {
   return vfprintf(stdout, fmt, ap);
 }
diff --git a/libc/stdio/vfscanf.c b/libc/stdio/vfscanf.c
index c09132f..853e0cf 100644
--- a/libc/stdio/vfscanf.c
+++ b/libc/stdio/vfscanf.c
@@ -838,12 +838,3 @@
   }
   /* NOTREACHED */
 }
-
-int vfscanf(FILE* fp, const char* fmt0, __va_list ap) {
-  int r;
-
-  FLOCKFILE(fp);
-  r = __svfscanf(fp, fmt0, ap);
-  FUNLOCKFILE(fp);
-  return (r);
-}
diff --git a/libc/stdio/vfwscanf.c b/libc/stdio/vfwscanf.c
index bbe534c..206f4a2 100644
--- a/libc/stdio/vfwscanf.c
+++ b/libc/stdio/vfwscanf.c
@@ -654,12 +654,3 @@
   return (nassigned);
 }
 #pragma GCC diagnostic pop
-
-int vfwscanf(FILE* __restrict fp, const wchar_t* __restrict fmt, __va_list ap) {
-  int r;
-
-  FLOCKFILE(fp);
-  r = __vfwscanf(fp, fmt, ap);
-  FUNLOCKFILE(fp);
-  return (r);
-}
