X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=TODO;h=210c2a3f0419d51c50b584eabd82e7c1e9ff19b4;hb=refs%2Fheads%2Finvite-protocol;hp=d6a6df4455a1c7e09b195233dd3a6275424372a0;hpb=42e01abd54bd36ee84a45a2b646cfa27034de8d1;p=meshlink diff --git a/TODO b/TODO index d6a6df44..210c2a3f 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,24 @@ -TODO LIST +TODO list for MeshLink +---------------------- -* Think of new things to do. +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().