]> git.meshlink.io Git - meshlink/blobdiff - TODO
Immediately try connecting to the mesh after a succesful join.
[meshlink] / TODO
diff --git a/TODO b/TODO
index 226e2713749327b476254c2b9db72e30d9a616fe..210c2a3f0419d51c50b584eabd82e7c1e9ff19b4 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,27 +1,24 @@
-TODO LIST
-
-Goals for 1.0 release:
-
-* Check Solaris port
-* Check FreeBSD port again
-* Check TCPonly and IndirectData
-
-* Check different linux architectures (x86, alpha and sparc32 done)
-* Store private key in a separate file (done, 1 dec 2000)
-* Sanity checks on configuration directory (mostly done)
-* Use efficient tree algorithms instead of linked lists (done)
-* Reenable queues for delayed packets (done)
-* Merge documentation files (SECURITY, INSTALL, PROTOCOL) into tinc.texi (done)
-* Different authentication scheme (done)
-* Add randomness to packet headers and PING/PONG requests (done)
-
-Goals for future releases:
-
-* Compression
-* Routing by MAC/switching (allows for more than only IPv4)
-* Broadcast/multicast
-* Windowing, chaffing, scattering, background noise
-* ABC protocol (superscalabilty)
-* Proxy ARP
-* Easy setup scripts (graphical?)
-* Threading
+TODO list for MeshLink
+----------------------
+
+Refactoring: getting rid of global variables. Ultimately, no global variables
+should be used by the library (if possible). Tinc uses quite a lot of global
+variables. Refactoring this should go into steps:
+
+* Temporarily create a global meshlink_handle_t *mesh (done)
+* Move global variables to meshlink_handle_t (partially done)
+  - This means moving the declaration from the old .h file to meshlink_internal.h inside meshlink_handle_t
+  - Then doing sed 's/variable/mesh->&/g' *.c -i, and running make to check for any errors
+
+After that is completed:
+
+* Add meshlink_handle_t *mesh as the first argument to functions that need it
+
+Then:
+
+* Write code for all the functions in meshlink.c (some can be moved from libmeshlink.c)
+
+Other tasks:
+
+* Use snprintf() instead of xasprintf() when generating filenames
+  - Use char filename[PATH_MAX] on the stack. No more need to free().