diff --git a/TODO b/TODO
index 24941de..0da3553 100644
--- a/TODO
+++ b/TODO
@@ -1,78 +1,188 @@
 
 			   Quagga TODO list
-                             2004/11/24
+                             2013-03-29
 
-zebra:
 
-o Pointopoint address configuration.
-o Multiple (alias) address configuration for the interface when kernel
-  support it [just starting].
-o improve rtnetlink to handle sequence number tracking and reconciliation
-  and resyncs.
-o Add support for valid and preferred lifetimes to IPv6 addresses 
-o proper support for (at least) 1-level recursive routes
-o Ability to set src on routes, where systems support it.
-o Ability to apply route-maps to daemon route updates.
+This is the Quagga primary TODO list.  It is on git because that way changes
+pass through the usual process just like code does, therefore they will have
+the same visibility.
 
-bgpd:
+If you are working on something beyond a simple fix, to avoid double work it
+is a good idea to submit a patch to this TODO list when you are starting,
+listing what you're doing.  Also, as others may have done just that, check
+the list before starting.
 
-o BGP TCP MD5 authentication by password command.
-o HUP signal support (reload configuration file).
-o BGP multi-path extension
-o move FSM state to be per-connection, not per-peer.
-o Add support for internal and minimum-metric MED setting
+Google Summer of Code 2013 note:  this list double-serves as idea list for the
+Summer of Code.  Ideas considered suitable for students are marked with a star
+after the number, like this: "[Q999*] achieve world peace".  They will also
+have extended descriptions.  Nevertheless, if you'd like to do something else,
+just write a mail to the mailing list: quagga-dev@lists.quagga.net
 
-ripd:
+"GSoC-Mentors:" listings are preliminary at this point.
 
-o Multipath support.
+
+Overall
+=======
+
+[Q000] improve unit test architecture
+
+[Q001] kick invalid runtime tests from configure.ac, use list of supported
+		OSes and their APIs instead.
+	Priority: low
+	State: patch half-done 2013-03-29 David Lamparter
+
+[Q002*] clean up zebra IPC, remove code duplication, align to common API
+	Priority: high
+	GSoC-Mentors: David Lamparter, Christian Franke
+
+	Quagga posesses an IPC mechanism to exchange route information among
+	the different daemons and Zebra, the kernel-interface.  This mechanism
+	is implemented in libzebra, but is currently used in all sorts of
+	different ways in the individual protocol daemons.  Also, in the future
+	the entire protocol needs to be redone in an extensible way, so we're
+	able to support MPLS, BFD, Multi-Topology/Instance, VRFs, ...
+
+	This TODO entry only refers to the first-step API cleanup.  All the
+	daemons need to use a single, well-defined libzebra API.  Only after
+	this has been addressed can we look upon changing the protocol itself,
+	since by then it will be encapsulated inside libzebra.
+
+[Q003] add multi-instance / multi-topology support to the individual protocols
+
+[Q004] MPLS support
+	State: work in progress 2013-03-29 Renato Westphal, Timo Teräs
+
+[Q005] BFD support
+	State: two old implementations exist, contact Hasso Tepper
+
+
+library
+=======
+
+[L000] improve route_table speed, eg strided lookups for common prefix depths.
+
+[L001] ipv6 addresses need concept of valid/preferred
+
+[L002] implement a generic daemon access/control protocol (eg D-Bus like?
+		simplified SNMP-a-like?  NETCONF?)
+
+[L003] extend vty command definitions to allow them to be self-documenting
+		i18n command help strings
+
+[L004] create a common libspf (for ospfd, ospf6d and possibly isisd and more).
+		cf. TODO item [O000] for the ospfd/ospf6d specific variant
+
+[L005] stabilise the API (possibly including symbol/library versioning voodoo)
+
+[L006] Document the exported API (DocBook/Doxygen?)
+
+[LE00] incorporate library changes from Euro-IX branch, except threading
+
+[LE01] incorporate threading library support from Euro-IX branch
+
+
+zebra
+=====
+
+[Z000] Pointopoint address configuration.
+	Priority: low
+	State: patch done & tested 2013-03-29 David Lamparter
+
+[Z001] Add support for valid and preferred lifetimes to IPv6 addresses
+
+[Z002] proper support for (at least) 1-level recursive routes
+	Priority: high
+
+[Z003] Ability to set src on routes, where systems support it.
+
+[Z004] Ability to apply route-maps to daemon route updates.
+
+
+bgpd
+====
+
+[B000] HUP signal support (reload configuration file).
+
+[B001] BGP multi-path extension, relaxed mode
+	Priority: medium
+
+[B002] move FSM state to be per-connection, not per-peer.
+
+[B003] Add support for internal and minimum-metric MED setting
+
+
+ripd
+====
+
+[R000] Multipath support.
+
+
+ospfd/ospf6d
+============
+
+[O000] move SPF to common code
+
+[O001] extend code sharing between ospfd and ospf6d beyond SPF
+
+[O002*] OSPF testing replay tool
+	Priority: medium
+	GSoC-Mentors: Martin Winter, Christian Franke, David Lamparter
+
+	In order to extensively test OSPF implementations, a tool to fake an
+	OSPF neighbor is immensely useful.  This tool needs to be capable of
+	forming an adjacency and pushing LSAs to the device to be tested.  To
+	maintain the adjacency, some minimal state tracking is useful.
+
+	In total, the tool needs to form an adjacency, read and push LSAs, and
+	output received LSAs.  Additional tools to generate LSAs from
+	specifications as well as verify received LSA correctness can then be
+	built on top of that.
+
+	The tool needs to support IPv4 and IPv6, possibly split into 2 tools
+	with some code sharing.
 
 ospfd:
 
-o Rewrite the incremental RT update code.
-o Demand circuits.
-o Multiple instances.
-o OSPF MIB [SNMP get is amost finished].
-o HUP signal treatment.
-o Fragment Oversized LSAs 
-o move SPF to common code
-o NSSA priority rules (RFC3101 2.4)
-o Type-7 address ranges (RFC3101 2.2)
-o Originating Type-7 default into area (RFC3101 2.7)
+[O400] Demand circuits.
+	Priority: very low
+
+[O401] Multiple instances.
+	Priority: medium
+
+[O402] HUP signal treatment.
+	Priority: medium
+	State: patch on ML needs review 2012-06-04 Mattias Walström
 
 ospf6d:
 
-o move SPF to common code
-o add router-id lookups
+[O600] fix ospf6d in general
+	Priority: high
+	State: patches tickling in from Cumulus Networks 2013-03-29 Dinesh Dutt
 
-isisd:
+isisd
+=====
 
-o finish SPF
-o select nearest L2 when running SPF for L1
-o remove the routes when holding time for nexthop expires
-o redistribution
-o autosummary
+[I000] reassess isisd TODO
 
-o Mesh groups (RFC2973)
-o Crypto authentication (RFC3567)
+[I001*] IS-IS testing replay tool
+	Priority: medium
+	GSoC-Mentors: Martin Winter, Christian Franke, David Lamparter
 
-lib:
-o improve route_table speed, eg strided lookups for common prefix depths.
-o improve hash tables, eg auto-growing hash tables
-o move performance sensitive users of hashes over to jhash
-o clean up linked lists
-o ipv6 addresses need concept of valid/preferred
-o implement a generic daemon access/control protocol (eg D-Bus like? 
-  simplified SNMP-a-like?)
-o merge SPF code from ospfd and ospf6d into a common libspf
-o depends-on(generic A/C protocol) move snmp to seperate daemon
-o extend command definitions to allow them to be self-documenting
-o i18n command help strings
-o Document the exported API (DocBook/Doxygen?)
+	see [O002*].
 
-vtysh:
-o untangle readline specific bits
-o add a vtyd with a vty (ie telnet) frontend (as opposed to readline)
-o depends-on(generic A/C protocol) use such
-o better AAA support than just PAM, eg krb5, SASL, LDAP..
-                        -----------------------------
+[I002] Mesh groups (RFC2973)
+
+[I003] Crypto authentication (RFC3567)
+
+
+vtysh
+=====
+
+[V000] untangle readline specific bits
+
+[V001] add a vtyd with a vty (ie telnet) frontend (as opposed to readline)
+
+[V002] (=> [L002]) use daemon control protocol
+
+[V003] better AAA support than just PAM, eg krb5, SASL, LDAP...
 
