Index: uspace/lib/c/include/str.h
===================================================================
--- uspace/lib/c/include/str.h	(revision 8fd04ba9de8b0b695c51d4153b3aa9b219370399)
+++ uspace/lib/c/include/str.h	(revision a33f0a6ce7a627f4c6fcdb892ee61a9214fbbed3)
@@ -1,4 +1,5 @@
 /*
  * Copyright (c) 2005 Martin Decky
+ * Copyright (c) 2011 Oleg Romanenko
  * All rights reserved.
  *
@@ -71,4 +72,5 @@
 extern bool ascii_check(wchar_t ch);
 extern bool chr_check(wchar_t ch);
+extern bool wstr_is_ascii(const wchar_t *wstr);
 
 extern int str_cmp(const char *s1, const char *s2);
@@ -79,11 +81,16 @@
 extern void str_append(char *dest, size_t size, const char *src);
 
+extern int wstr_to_str(char *dest, size_t size, const wchar_t *src);
 extern int spascii_to_str(char *dest, size_t size, const uint8_t *src, size_t n);
 extern void wstr_to_str(char *dest, size_t size, const wchar_t *src);
 extern char *wstr_to_astr(const wchar_t *src);
-extern void str_to_wstr(wchar_t *dest, size_t dlen, const char *src);
+extern int str_to_wstr(wchar_t *dest, size_t dlen, const char *src);
+extern int utf16_to_str(char *dest, size_t size, const uint16_t *src);
+extern int str_to_utf16(uint16_t *dest, size_t size, const char *src);
 
 extern char *str_chr(const char *str, wchar_t ch);
 extern char *str_rchr(const char *str, wchar_t ch);
+extern wchar_t *wstr_chr(const wchar_t *wstr, wchar_t ch);
+extern wchar_t *wstr_rchr(const wchar_t *wstr, wchar_t ch);
 
 extern bool wstr_linsert(wchar_t *str, wchar_t ch, size_t pos, size_t max_pos);
@@ -92,4 +99,7 @@
 extern char *str_dup(const char *);
 extern char *str_ndup(const char *, size_t max_size);
+
+extern void str_reverse(char* begin, char* end);
+extern int size_t_str(size_t value, int base, char* str, size_t size);
 
 extern int str_uint64(const char *, char **, unsigned int, bool, uint64_t *);
