tftpd: options -c (allow _new_ files to be uploaded) and -u USER
[oweals/busybox.git] / TODO
diff --git a/TODO b/TODO
index f18e0ec2df5e960f64d5b1416ab280bd2ed624c5..fa9a2078dd9b0033ccb227a1b3abf30cf7c1e07d 100644 (file)
--- a/TODO
+++ b/TODO
@@ -7,27 +7,21 @@ 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 <rob@landley.net>:
-  Add BB_NOMMU to platform.h and migrate __uClinux__ tests to that.
-    #if defined __UCLIBC__ && !defined __ARCH_USE_MMU__
   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()
 
-  Migrate calloc() and bb_calloc() occurrences to bb_xzalloc().
   Remove obsolete _() wrapper crud for internationalization we don't do.
   Figure out where we need utf8 support, and add it.
 
   sh
-    The command shell situation is a big mess.  We have three or four different
+    The command shell situation is a big mess.  We have three different
     shells that don't really share any code, and the "standalone shell" doesn't
     work all that well (especially not in a chroot environment), due to apps not
-    being reentrant.  I'm writing a new shell (bbsh) to unify the various
-    shells and configurably add the minimal set of bash features people
-    actually use.  The hardest part is it has to configure down as small as
-    lash while providing lash's features.  The rest is easy in comparison.
-  bzip2
-    Compression-side support.
+    being reentrant.
+    lash is phased out. hush can be configured down to be nearly as small,
+    but less buggy :)
   init
     General cleanup (should use ENABLE_FEATURE_INIT_SYSLOG and ENABLE_FEATURE_INIT_DEBUG).
   depmod
@@ -35,13 +29,6 @@ Rob Landley <rob@landley.net>:
     use of the depmod.pl (perl is to bloated for most embedded setups) and or orig
     modutils. The orig depmod is rather pointless to have to add to a firmware image
     in when we already have a insmod/rmmod and friends.
-  Unify base64 handling.
-    There's base64 encoding and decoding going on in:
-      networking/wget.c:base64enc()
-      coreutils/uudecode.c:read_base64()
-      coreutils/uuencode.c:tbl_base64[]
-      networking/httpd.c:decodeBase64()
-    And probably elsewhere.  That needs to be unified into libbb functions.
   Do a SUSv3 audit
     Look at the full Single Unix Specification version 3 (available online at
     "http://www.opengroup.org/onlinepubs/009695399/nfindex.html") and
@@ -118,8 +105,6 @@ Rob Landley <rob@landley.net>:
 
 
 Bernhard Fischer <busybox@busybox.net> suggests to look at these:
-  Makefile stuff:
-    make -j is broken. klibc make infrastructure (vda?)
   New debug options:
     -Wlarger-than-127
     Cleanup any big users
@@ -135,9 +120,6 @@ Bernhard Fischer <busybox@busybox.net> suggests to look at these:
 
 As yet unclaimed:
 
-----
-find
-  doesn't understand (), lots of susv3 stuff.
 ----
 diff
   Make sure we handle empty files properly:
@@ -166,8 +148,19 @@ man
 ar
   Write support?
 ---
-crond
-  turn FEATURE_DEBUG_OPT into ENABLE_FEATURE_CROND_DEBUG_OPT
+stty / catv
+  stty's visible() function and catv's guts are identical. Merge them into
+  an appropriate libbb function.
+---
+struct suffix_mult
+  Several duplicate users of: grep -r "1024\*1024" * -B2 -A1
+  Merge to a single size_suffixes[] in libbb.
+  Users: head tail od_bloaty hexdump and (partially as it wouldn't hurt) svlogd
+---
+tail
+  ./busybox tail -f foo.c~ TODO
+  should not print fmt=header_fmt for subsequent date >> TODO; i.e. only
+  fmt+ if another (not the current) file did change
 
 Architectural issues:
 
@@ -295,22 +288,18 @@ Minor stuff:
   -> fprintf(stderr, "unalias: %s not found\n", *argptr);
 ---
   possible code duplication ingroup() and is_a_group_member()
----
-  unify itoa: netstat.c, hush.c, lash.c, msh.c
-  Put one single, robust version into e.g. safe_strtol.c
 ---
   Move __get_hz() to a better place and (re)use it in route.c, ash.c, msh.c
 ---
+  See grep -r strtod
+  Alot of duplication that wants cleanup.
+---
 
 
 Code cleanup:
 
 Replace deprecated functions.
 
-bzero() -> memset()
----
-sigblock(), siggetmask(), sigsetmask(), sigmask() -> sigprocmask et al
 ---
 vdprintf() -> similar sized functionality
 ---
-