hush: fix potential buffer overflow on NOMMU
[oweals/busybox.git] / TODO
diff --git a/TODO b/TODO
index cd2aa0e875473314b4e2600339af1588499172c0..9be1b07e20bc60a0636b920376bd740760c983d0 100644 (file)
--- a/TODO
+++ b/TODO
@@ -6,11 +6,8 @@ do one of these bounce an email off the person it's listed under to see if they
 have any suggestions how they plan to go about it, and to minimize conflicts
 between your work and theirs.  But otherwise, all of these are fair game.
 
-Rob Landley suggested these:
-  Add a libbb/platform.c
-    Implement fdprintf() for platforms that haven't got one.
-    Implement bb_realpath() that can handle NULL on non-glibc.
-    Cleanup bb_asprintf()
+Rob Landley suggested this:
+  Implement bb_realpath() that can handle NULL on non-glibc.
 
   Remove obsolete _() wrapper crud for internationalization we don't do.
   Figure out where we need utf8 support, and add it.
@@ -271,7 +268,8 @@ Minor stuff:
   in_ether duplicated in network/{interface,ifconfig}.c
 ---
   unify progress_meter. wget, flash_eraseall, pipe_progress, fbsplash, setfiles.
-
+---
+   support start-stop-daemon -d <chdir-path>
 
 Code cleanup:
 
@@ -320,6 +318,29 @@ vdprintf() -> similar sized functionality
 
 Unicode work needed:
 
+Unicode support uses libc multibyte functions if LOCALE_SUPPORT is on
+(in this case, the code will also support many more encodings),
+or uses a limited subset of re-implemented multibyte functions
+which only understand "one byte == one char" and unicode.
+This is useful if you build against uclibc with locale support disabled.
+
+Unicode-dependent applets must call check_unicode_in_env() when they
+begin executing.
+
+Applet code may conditionalize on FEATURE_ASSUME_UNICODE
+in order to use more efficient code if unicode support is not requested.
+
+Available functions (if you need more, implement them in libbb/unicode.c
+so that they work without LOCALE_SUPPORT too):
+
+int bb_mbstrlen(str) - multibyte-aware strlen
+size_t mbstowcs(wdest, src, n)
+size_t wcstombs(dest, wsrc, n)
+size_t wcrtomb(str, wc, wstate)
+int iswspace(wc)
+int iswalnum(wc)
+int iswpunct(wc)
+
 Applets which only need to align columns on screen correctly:
 
 ls - already done, use source as an example