diff --git a/TODO b/TODO
index e75103cd..0653f76a 100644
--- a/TODO
+++ b/TODO
@@ -2,6 +2,12 @@ A (slightly) ordered set of tasks for crosstool-NG. Written in a cryptic languag
 
 -- Alexey Neyman (@stilor)
 
+[ ] test-packages.sh
+  [ ] FTP URLs always succeed in verification (wget bug) - how to work around?
+  [ ] new function - refresh/renumber patches
+[ ] templates (bootstrap)
+  [ ] #!foreach xxx if-changed yyy to avoid unnecessary 'default' lines
+  [ ] relevant pattern for Linaro releases - tie to the major version
 [ ] new packages
   [ ] config.guess
   [ ] gnulib
diff --git a/maintainer/test-packages.sh b/maintainer/test-packages.sh
index 7a19651d..26caaf8e 100755
--- a/maintainer/test-packages.sh
+++ b/maintainer/test-packages.sh
@@ -92,7 +92,11 @@ check_pkg_urls()
         CT_DoStep EXTRA "Looking for ${archive_filename}${e}"
         for m in ${mirrors}; do
             url="${m}/${archive_filename}${e}"
-            mh="${m#*://}"
+            case "${url}" in
+            # WGET always returns success for FTP URLs in spider mode :(
+            ftp://*) CT_DoLog DEBUG "Skipping '${url}': FTP not supported"; continue;;
+            esac
+            mh="${url#*://}"
             mh="${mh%%[:/]*}"
             if [ -n "${mirror_status[${mh}]}" ]; then
                 CT_DoLog DEBUG "Skipping '${url}': already found on this host at '${mirror_status[${mh}]}'"