]>
git.meshlink.io Git - meshlink/log
Saverio Proto [Wed, 21 May 2014 17:29:04 +0000 (19:29 +0200)]
meshlinkapp: fix compiler warnings
Saverio Proto [Wed, 21 May 2014 16:55:54 +0000 (18:55 +0200)]
Drop old invitation.[ch]
Guus Sliepen [Thu, 15 May 2014 15:53:54 +0000 (17:53 +0200)]
Make sure meshlink_stop() works as advertised.
At least on Linux, one way to signal a sleeping select() call in
the thread is to call shutdown() on the listening sockets. A subsequent
accept() returns EINVAL, we use that as a cue to shut down the main
loop.
Guus Sliepen [Wed, 14 May 2014 21:36:24 +0000 (23:36 +0200)]
Ensure everything compiles with -Wall without giving warnings.
Mostly by using void pointers for opaque objects and removing unused variables.
Guus Sliepen [Wed, 14 May 2014 21:06:23 +0000 (23:06 +0200)]
Fix a filedescriptor leak.
Found by cppcheck.
Guus Sliepen [Wed, 14 May 2014 21:00:05 +0000 (23:00 +0200)]
Don't forget about the channel library.
Guus Sliepen [Wed, 14 May 2014 20:57:44 +0000 (22:57 +0200)]
Update the TODO list.
Guus Sliepen [Mon, 12 May 2014 18:00:23 +0000 (20:00 +0200)]
Call receive_cb() when there is data for the application.
Guus Sliepen [Mon, 12 May 2014 17:53:54 +0000 (19:53 +0200)]
Call node_status_cb() whenever a node goes up or down.
Guus Sliepen [Mon, 12 May 2014 17:49:25 +0000 (19:49 +0200)]
Implement meshlink_get_all_nodes().
Guus Sliepen [Mon, 12 May 2014 17:44:51 +0000 (19:44 +0200)]
Add /who command to chat example to test meshlink_get_node() and meshlink_get_all_nodes().
Guus Sliepen [Sun, 11 May 2014 22:24:15 +0000 (00:24 +0200)]
Immediately try connecting to the mesh after a succesful join.
Guus Sliepen [Sun, 11 May 2014 22:15:06 +0000 (00:15 +0200)]
Don't generate a new ECDSA key in finalize_join().
Guus Sliepen [Sun, 11 May 2014 22:05:47 +0000 (00:05 +0200)]
Don't change the port in finalize_join().
We already have a working port thanks to meshlink_open().
Guus Sliepen [Sun, 11 May 2014 21:46:16 +0000 (23:46 +0200)]
Fix filename generation, remove need for meshlink_conf and meshlink_hosts in meshlink_handle_t.
Guus Sliepen [Sun, 11 May 2014 21:33:11 +0000 (23:33 +0200)]
Make sure the SPTSP connection get set up properly during a join.
Guus Sliepen [Sun, 11 May 2014 20:31:29 +0000 (22:31 +0200)]
No need to create confbase in meshlink_join().
Guus Sliepen [Sun, 11 May 2014 20:16:34 +0000 (22:16 +0200)]
Fix a format string error.
Guus Sliepen [Sun, 11 May 2014 20:01:47 +0000 (22:01 +0200)]
Split purging old invitations and refreshing the invitation key to its own function.
Guus Sliepen [Wed, 7 May 2014 21:49:36 +0000 (23:49 +0200)]
Small fixes to let meshlink_join() make a connection.
Guus Sliepen [Wed, 7 May 2014 21:27:05 +0000 (23:27 +0200)]
Fix compiler warnings, which also pointed out some errors.
Most of them were fixed by adding missing #includes and rearranging functions.
Guus Sliepen [Wed, 7 May 2014 21:23:22 +0000 (23:23 +0200)]
Use void pointers to opaque buffers, fix indentation.
Guus Sliepen [Wed, 7 May 2014 21:05:56 +0000 (23:05 +0200)]
Fix return value of meshlink_join().
Guus Sliepen [Wed, 7 May 2014 20:56:12 +0000 (22:56 +0200)]
get_my_name() is not necessary, mesh->self->name is always avaiable.
Guus Sliepen [Wed, 7 May 2014 20:50:19 +0000 (22:50 +0200)]
Fix return value of meshlink_invite().
Guus Sliepen [Wed, 7 May 2014 20:43:25 +0000 (22:43 +0200)]
Don't dereference a NULL pointer.
Saverio Proto [Tue, 6 May 2014 15:42:14 +0000 (17:42 +0200)]
Moved necessary code to implement meshlink_invite
Saverio Proto [Sat, 3 May 2014 08:56:44 +0000 (10:56 +0200)]
Moved 12 static variables to the meshlink_handle_t handle. Correctly passing the handle to the finalize_join function (invitation protocol)
Saverio Proto [Thu, 1 May 2014 08:15:56 +0000 (10:15 +0200)]
Add comments with notes
Saverio Proto [Wed, 30 Apr 2014 14:25:29 +0000 (16:25 +0200)]
Implemented meshlink_join - Preliminary changes to port the invite protocol to meshlink.
Guus Sliepen [Mon, 28 Apr 2014 14:26:05 +0000 (16:26 +0200)]
Put brackets around IPv6 addresses in invitation URL, even if there is no port number.
Guus Sliepen [Sat, 26 Apr 2014 15:06:42 +0000 (17:06 +0200)]
Stop using the global variable mesh in most of the rest of the code.
Guus Sliepen [Sat, 26 Apr 2014 09:39:56 +0000 (11:39 +0200)]
Stop using global variable mesh in net_packet.c.
Guus Sliepen [Sat, 26 Apr 2014 08:50:27 +0000 (10:50 +0200)]
Stop using global variable mesh in net.c.
Guus Sliepen [Sat, 26 Apr 2014 08:33:35 +0000 (10:33 +0200)]
Remove reload_configuration().
This was only useful for tinc, where the admin could change the configuration
files while tincd was running. With MeshLink, everything should be done via the
API.
Guus Sliepen [Sat, 26 Apr 2014 08:30:19 +0000 (10:30 +0200)]
Stop using global variable mesh in net_socket.[ch].
Guus Sliepen [Sat, 26 Apr 2014 08:12:33 +0000 (10:12 +0200)]
Stop using global variable mesh in net_setup.[ch].
Guus Sliepen [Sat, 26 Apr 2014 08:00:37 +0000 (10:00 +0200)]
Stop using global variable mesh in conf.[ch].
Guus Sliepen [Sat, 26 Apr 2014 07:39:56 +0000 (09:39 +0200)]
Remove temporary global variable "loop".
Guus Sliepen [Sat, 26 Apr 2014 07:38:55 +0000 (09:38 +0200)]
Remove global variable "now".
Guus Sliepen [Sat, 26 Apr 2014 07:28:56 +0000 (09:28 +0200)]
Remove global variables from the event loop code.
Everything is now in a struct event_loop_t, which is now also in
meshlink_handle_t. To make the transition easier, there is a temporary global
event_loop_t *loop.
Saverio Proto [Thu, 24 Apr 2014 14:21:36 +0000 (16:21 +0200)]
Dejavu: Use snprintf() instead of xasprintf() when generating filenames
Saverio Proto [Thu, 24 Apr 2014 14:06:30 +0000 (16:06 +0200)]
remove libmeshlink files
Saverio Proto [Thu, 24 Apr 2014 14:02:50 +0000 (16:02 +0200)]
Use snprintf() instead of xasprintf() when generating filenames
Guus Sliepen [Thu, 24 Apr 2014 14:04:34 +0000 (16:04 +0200)]
Only export symbols that start with meshlink_.
We don't want to pollute the global namespace with all our internal functions.
Saverio Proto [Thu, 24 Apr 2014 13:06:30 +0000 (15:06 +0200)]
Move pinginterval pingtimeout and maxtimeout to mesh
Guus Sliepen [Thu, 24 Apr 2014 07:41:55 +0000 (09:41 +0200)]
Move initial configuration setup from meshlinkapp.c to meshlink.c.
Guus Sliepen [Thu, 24 Apr 2014 07:19:08 +0000 (09:19 +0200)]
Update meshlinkapp.c.
Guus Sliepen [Thu, 24 Apr 2014 07:18:25 +0000 (09:18 +0200)]
Move code from libmeshlink.c into the new functions in meshlink.c.
Guus Sliepen [Thu, 24 Apr 2014 06:50:35 +0000 (08:50 +0200)]
Remove bypass_security.
Saverio Proto [Wed, 23 Apr 2014 22:11:36 +0000 (00:11 +0200)]
Untested changes to meshlinkapp to make the tree compile
Saverio Proto [Wed, 23 Apr 2014 22:09:37 +0000 (00:09 +0200)]
Fix undefined reference to mesh in libmeshlink.so
Saverio Proto [Wed, 23 Apr 2014 22:01:01 +0000 (00:01 +0200)]
Adjust the callback to meshlink_receive_cb_t
Saverio Proto [Wed, 23 Apr 2014 21:54:14 +0000 (23:54 +0200)]
Move bypass_security to mesh
Saverio Proto [Wed, 23 Apr 2014 21:21:08 +0000 (23:21 +0200)]
The name errno conflicts with the real errno: ‘__errno_location’ declared as a function
Guus Sliepen [Wed, 23 Apr 2014 16:43:24 +0000 (18:43 +0200)]
Fix MTU probes.
Guus Sliepen [Tue, 22 Apr 2014 20:30:45 +0000 (22:30 +0200)]
Start of a TODO file.
Guus Sliepen [Mon, 21 Apr 2014 21:41:12 +0000 (23:41 +0200)]
Move debug_level to mesh.
Guus Sliepen [Mon, 21 Apr 2014 21:35:09 +0000 (23:35 +0200)]
Remove unused logging functionality.
Just log to stderr for now. In the future we will use the callback provided by
the application.
Guus Sliepen [Mon, 21 Apr 2014 21:29:36 +0000 (23:29 +0200)]
Really stop using cipher.h and digest.h.
Guus Sliepen [Mon, 21 Apr 2014 21:25:40 +0000 (23:25 +0200)]
Move node_udp_cache, everyone and invitation_key to mesh.
Guus Sliepen [Mon, 21 Apr 2014 21:25:14 +0000 (23:25 +0200)]
Remove header files we don't use anymore.
Guus Sliepen [Mon, 21 Apr 2014 21:16:56 +0000 (23:16 +0200)]
Move listen_sockets to mesh.
Guus Sliepen [Mon, 21 Apr 2014 21:13:39 +0000 (23:13 +0200)]
Move localdiscovery variables to mesh.
Guus Sliepen [Mon, 21 Apr 2014 21:08:57 +0000 (23:08 +0200)]
Remove key expiry timer.
This is something that should be done at the SPTPS layer.
Guus Sliepen [Mon, 21 Apr 2014 20:50:03 +0000 (22:50 +0200)]
Move proxy variables to mesh.
Guus Sliepen [Mon, 21 Apr 2014 20:26:41 +0000 (22:26 +0200)]
Move several variables to mesh.
In particular: confbase, contradicting_add_edge, contradicting_del_edge,
sleeptime, last_config_check, pingtimer, periodictimer.
Guus Sliepen [Mon, 21 Apr 2014 19:11:58 +0000 (21:11 +0200)]
Move config_tree to mesh->config.
Guus Sliepen [Mon, 21 Apr 2014 19:05:36 +0000 (21:05 +0200)]
Move outgoing_list to mesh->outgoings.
Guus Sliepen [Mon, 21 Apr 2014 19:04:13 +0000 (21:04 +0200)]
Move connection_list to mesh->connections.
Guus Sliepen [Mon, 21 Apr 2014 19:00:21 +0000 (21:00 +0200)]
Move node_tree to mesh->nodes.
Guus Sliepen [Mon, 21 Apr 2014 18:57:14 +0000 (20:57 +0200)]
Move edge_weight_tree to mesh->edges.
Guus Sliepen [Mon, 21 Apr 2014 18:55:14 +0000 (20:55 +0200)]
Move myself to mesh->self.
Guus Sliepen [Mon, 21 Apr 2014 18:49:28 +0000 (20:49 +0200)]
Temporarily add a global meshlink_handle_t *mesh.
This helps keeping the compiler happy while we refactor the global variables
into meshlink_handle_t one by one.
Guus Sliepen [Mon, 21 Apr 2014 18:28:54 +0000 (20:28 +0200)]
Clarify the behaviour of meshlink_open(), _start(), _stop() and _close().
Guus Sliepen [Mon, 21 Apr 2014 18:28:06 +0000 (20:28 +0200)]
Start of implementation of meshlink_open().
Guus Sliepen [Mon, 21 Apr 2014 18:27:21 +0000 (20:27 +0200)]
Fix a typo.
Guus Sliepen [Mon, 21 Apr 2014 18:11:47 +0000 (20:11 +0200)]
Move definition of sockaddr_t to its own header, remove length_t.
This reduces the horrible interdependencies of the header files, most
notably that of net.h.
Guus Sliepen [Mon, 21 Apr 2014 17:27:55 +0000 (19:27 +0200)]
Rename variable handle to mesh.
Guus Sliepen [Mon, 21 Apr 2014 17:20:35 +0000 (19:20 +0200)]
Use "struct foo_t *" instead of "foo_t *" in .h files.
Guus Sliepen [Sat, 19 Apr 2014 15:33:59 +0000 (17:33 +0200)]
Start moving the implementation of the public part of the API to meshlink.c.
For now it just contains stubs for all the public functions.
Guus Sliepen [Sat, 19 Apr 2014 14:33:29 +0000 (16:33 +0200)]
No global variables: move meshlink_errno and _errstr to meshlink_handle_t.
Guus Sliepen [Sat, 19 Apr 2014 14:25:58 +0000 (16:25 +0200)]
Add meshlink_internal.h containing the private parts of the public API.
Guus Sliepen [Sat, 19 Apr 2014 14:24:48 +0000 (16:24 +0200)]
Update the chat example and the public API.
In particular, add a callback for notifying the application of node status
changes, and one for passing log messages.
Guus Sliepen [Sat, 19 Apr 2014 13:39:06 +0000 (15:39 +0200)]
Add an example chat program.
This one doesn't compile yet, but it illustrates how we want to use MeshLink in
a more realistic application.
Guus Sliepen [Sat, 19 Apr 2014 11:58:16 +0000 (13:58 +0200)]
Remove autogenerated Makefile.
Guus Sliepen [Sat, 19 Apr 2014 11:56:42 +0000 (13:56 +0200)]
Build meshlinkapp using automake.
This also ensures the resulting "binary" can find the shared library that is in
the src/ directory, no need for hacks.
Guus Sliepen [Sat, 19 Apr 2014 11:49:31 +0000 (13:49 +0200)]
Renamed meshlink-sample/ to examples/.
Guus Sliepen [Sat, 19 Apr 2014 11:31:28 +0000 (13:31 +0200)]
Remove most platform-specific checks.
We just keep HAVE_LINUX and HAVE_MINGW around for now.
Guus Sliepen [Sat, 19 Apr 2014 11:28:18 +0000 (13:28 +0200)]
Remove unused functions and #includes.
Guus Sliepen [Sat, 19 Apr 2014 11:07:35 +0000 (13:07 +0200)]
Add meshlink.h, containing only the public API.
This header file contains only the public MeshLink API, documented using
Doxygen. All functions and types are prefixed with meshlink_, and almost all of
the functions now take a meshlink_handle_t * argument, so that one can have
multiple instances of MeshLink running simultaneously, and there will be no
global variables.
Guus Sliepen [Fri, 18 Apr 2014 19:16:59 +0000 (21:16 +0200)]
Remove legacy Ethernet header from vpn_packet_t, add a flag for PMTU probes.
Guus Sliepen [Fri, 18 Apr 2014 18:59:53 +0000 (20:59 +0200)]
Remove some unused types and #defines.
Guus Sliepen [Fri, 18 Apr 2014 18:23:17 +0000 (20:23 +0200)]
Remove forwarding_mode, broadcast_mode, directonly, priorityinheritance, macexpire and pcap.
Guus Sliepen [Fri, 18 Apr 2014 18:17:42 +0000 (20:17 +0200)]
Get rid of routing_mode.
Guus Sliepen [Fri, 18 Apr 2014 15:36:13 +0000 (17:36 +0200)]
Remove most of the configuration options.
The default values should work fine in any case, and if we want to keep some
options configurable, the application will set that through the API, not by
editing configuration files.
Guus Sliepen [Fri, 18 Apr 2014 12:58:49 +0000 (14:58 +0200)]
Describe the layout and contents of the configuration files.
Basically, we just need Name, Port, public and private keys, and Addresses.
Saverio Proto [Thu, 17 Apr 2014 22:19:30 +0000 (00:19 +0200)]
Merge remote-tracking branch 'origin/master' into saverio
Guus Sliepen [Thu, 17 Apr 2014 22:18:10 +0000 (00:18 +0200)]
Add missing crypto.c.
Saverio Proto [Thu, 17 Apr 2014 22:06:18 +0000 (00:06 +0200)]
Revert "Guus please check this, I had to fix because my sptps where randomly failing for Unknown IP version"
This reverts commit
67103e5e08616983a9b81b88695c3c4cc38cc9ab .