Index: uspace/lib/c/generic/io/snprintf.c
===================================================================
--- uspace/lib/c/generic/io/snprintf.c	(revision 777832ee6e5de48216dba17868b414e69ad4542d)
+++ uspace/lib/c/generic/io/snprintf.c	(revision 296890f3fa17c85aea7be46fe09298847901f160)
@@ -35,5 +35,4 @@
 #include <stdarg.h>
 #include <stdio.h>
-#include <io/printf_core.h>
 
 /** Print formatted to the given buffer with limited size.
Index: uspace/lib/c/generic/stdio/sprintf.c
===================================================================
--- uspace/lib/c/generic/stdio/sprintf.c	(revision 296890f3fa17c85aea7be46fe09298847901f160)
+++ uspace/lib/c/generic/stdio/sprintf.c	(revision 296890f3fa17c85aea7be46fe09298847901f160)
@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) 2018 Jiri Svoboda
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ * - The name of the author may not be used to endorse or promote products
+ *   derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/** @addtogroup libc
+ * @{
+ */
+/** @file
+ */
+
+#include <stdarg.h>
+#include <stdint.h>
+#include <stdio.h>
+
+/** Print formatted to string.
+ *
+ * This function is unsafe, thus it is marked as deprecated. It should never
+ * be used in native HelenOS code.
+ *
+ * @param str Buffer to write to
+ * @param fmt Format string
+ *
+ * @return Number of characters printed on success, negative value on failure
+ */
+int sprintf(char *s, const char *fmt, ...)
+{
+	int rc;
+
+	va_list args;
+	va_start(args, fmt);
+	rc = vsnprintf(s, SIZE_MAX, fmt, args);
+	va_end(args);
+
+	return rc;
+}
+
+/** @}
+ */
Index: uspace/lib/c/generic/stdio/vsprintf.c
===================================================================
--- uspace/lib/c/generic/stdio/vsprintf.c	(revision 296890f3fa17c85aea7be46fe09298847901f160)
+++ uspace/lib/c/generic/stdio/vsprintf.c	(revision 296890f3fa17c85aea7be46fe09298847901f160)
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2018 Jiri Svoboda
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ * - The name of the author may not be used to endorse or promote products
+ *   derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/** @addtogroup libc
+ * @{
+ */
+/** @file
+ */
+
+#include <stdarg.h>
+#include <stdint.h>
+#include <stdio.h>
+
+/** Print formatted to string with arguments passed as va_list.
+ *
+ * This function is unsafe, thus it is marked as deprecated. It should never
+ * be used in native HelenOS code.
+ *
+ * @param str Buffer to write to
+ * @param fmt Format string
+ * @param ap Arguments
+ *
+ * @return Number of characters printed on success, negative value on failure
+ */
+int vsprintf(char *s, const char *fmt, va_list ap)
+{
+	return vsnprintf(s, SIZE_MAX, fmt, args);
+}
+
+/** @}
+ */
Index: uspace/lib/c/include/stdio.h
===================================================================
--- uspace/lib/c/include/stdio.h	(revision 777832ee6e5de48216dba17868b414e69ad4542d)
+++ uspace/lib/c/include/stdio.h	(revision 296890f3fa17c85aea7be46fe09298847901f160)
@@ -84,4 +84,5 @@
 extern int fgetc(FILE *);
 extern char *fgets(char *, int, FILE *);
+extern char *gets(char *, size_t) __attribute__((deprecated));
 
 extern int getchar(void);
@@ -114,7 +115,11 @@
 extern int vasprintf(char **, const char *, va_list);
 extern int asprintf(char **, const char *, ...)
-#endif
     _HELENOS_PRINTF_ATTRIBUTE(2, 3);
+#endif
 extern int vsnprintf(char *, size_t, const char *, va_list);
+
+extern int sprintf(char *, const char *, ...)
+    __attribute__((deprecated)) _HELENOS_PRINTF_ATTRIBUTE(2, 3);
+extern int vsprintf(char *, const char *, va_list) __attribute__((deprecated));
 
 /* Formatted input */
@@ -159,6 +164,4 @@
 #define _IOLBF 1
 #define _IOFBF 2
-
-extern char *gets(char *, size_t);
 
 #endif
Index: uspace/lib/posix/include/posix/stdio.h
===================================================================
--- uspace/lib/posix/include/posix/stdio.h	(revision 777832ee6e5de48216dba17868b414e69ad4542d)
+++ uspace/lib/posix/include/posix/stdio.h	(revision 296890f3fa17c85aea7be46fe09298847901f160)
@@ -66,7 +66,4 @@
     _HELENOS_PRINTF_ATTRIBUTE(2, 3);
 extern int vdprintf(int fildes, const char *__restrict__ format, va_list ap);
-extern int sprintf(char *__restrict__ s, const char *__restrict__ format, ...)
-    _HELENOS_PRINTF_ATTRIBUTE(2, 3);
-extern int vsprintf(char *__restrict__ s, const char *__restrict__ format, va_list ap);
 
 /* File Locking */
Index: uspace/lib/posix/src/stdio.c
===================================================================
--- uspace/lib/posix/src/stdio.c	(revision 777832ee6e5de48216dba17868b414e69ad4542d)
+++ uspace/lib/posix/src/stdio.c	(revision 296890f3fa17c85aea7be46fe09298847901f160)
@@ -278,35 +278,4 @@
 
 /**
- * Print formatted output to the string.
- *
- * @param s Output string.
- * @param format Format description.
- * @return Either the number of printed characters (excluding null byte) or
- *     negative value on error.
- */
-int sprintf(char *s, const char *restrict format, ...)
-{
-	va_list list;
-	va_start(list, format);
-	int result = vsprintf(s, format, list);
-	va_end(list);
-	return result;
-}
-
-/**
- * Print formatted output to the string.
- *
- * @param s Output string.
- * @param format Format description.
- * @param ap Print arguments.
- * @return Either the number of printed characters (excluding null byte) or
- *     negative value on error.
- */
-int vsprintf(char *s, const char *restrict format, va_list ap)
-{
-	return vsnprintf(s, INT_MAX, format, ap);
-}
-
-/**
  * Acquire file stream for the thread.
  *
