]> git.meshlink.io Git - meshlink/log
meshlink
9 years agoAdded configure option to set UTCP_DEBUG.
Aaron Krebs [Thu, 30 Oct 2014 13:00:22 +0000 (14:00 +0100)]
Added configure option to set UTCP_DEBUG.

9 years agoChanged C++ channel API to use member functions.
Aaron Krebs [Wed, 29 Oct 2014 12:55:53 +0000 (13:55 +0100)]
Changed C++ channel API to use member functions.

9 years agoapple compatibility
Niklas Hofmann [Mon, 27 Oct 2014 05:47:56 +0000 (06:47 +0100)]
apple compatibility

9 years agowindows compatibility
Niklas Hofmann [Sat, 25 Oct 2014 20:17:51 +0000 (22:17 +0200)]
windows compatibility

9 years agoupdate to new catta, removal of libuuid dependency
Niklas Hofmann [Sat, 25 Oct 2014 15:47:59 +0000 (17:47 +0200)]
update to new catta, removal of libuuid dependency

9 years agoConfigure autotools to install public header files.
Aaron Krebs [Wed, 1 Oct 2014 12:26:24 +0000 (14:26 +0200)]
Configure autotools to install public header files.

9 years agoFix README stuff to compile correctly catta
Saverio Proto [Tue, 26 Aug 2014 12:31:48 +0000 (14:31 +0200)]
Fix README stuff to compile correctly catta

9 years agorename of avahi to catta
Niklas Hofmann [Fri, 22 Aug 2014 08:34:20 +0000 (10:34 +0200)]
rename of avahi to catta

9 years ago2nd approach again: class meshlink::mesh has the handle as member, not as base class.
Lars [Mon, 18 Aug 2014 13:40:43 +0000 (15:40 +0200)]
2nd approach again: class meshlink::mesh has the handle as member, not as base class.

Conflicts:
src/meshlink++.h

9 years agoindent with TAB, align with SPACEs
Lars [Mon, 18 Aug 2014 12:37:48 +0000 (14:37 +0200)]
indent with TAB, align with SPACEs

9 years agoFix path in README.catta
Saverio Proto [Sun, 17 Aug 2014 11:03:52 +0000 (13:03 +0200)]
Fix path in README.catta

9 years agolink to catta instead of avahi
Niklas Hofmann [Fri, 15 Aug 2014 10:54:00 +0000 (12:54 +0200)]
link to catta instead of avahi

9 years agosubmodule catta added
Niklas Hofmann [Fri, 15 Aug 2014 10:10:30 +0000 (12:10 +0200)]
submodule catta added

Conflicts:
.gitmodules

9 years agoremove avahi
Niklas Hofmann [Fri, 15 Aug 2014 10:00:57 +0000 (12:00 +0200)]
remove avahi

9 years agoAdd a function to set the default white/blacklisting behaviour.
Guus Sliepen [Tue, 16 Dec 2014 13:51:36 +0000 (14:51 +0100)]
Add a function to set the default white/blacklisting behaviour.

This function should be called right after meshlink_open(), and will
apply the default white/blacklist setting to newly learned nodes.
The status can later be changed using the meshlink_whitelist() and
meshlink_blacklist() functions.

9 years agoAdd a function to change a configuration file on disk.
Guus Sliepen [Tue, 16 Dec 2014 13:50:42 +0000 (14:50 +0100)]
Add a function to change a configuration file on disk.

9 years agoClean up UTCP connections when stopping the mesh.
Guus Sliepen [Sat, 1 Nov 2014 14:57:42 +0000 (15:57 +0100)]
Clean up UTCP connections when stopping the mesh.

9 years agoTake the global lock in meshlink_channel_send().
Guus Sliepen [Sat, 1 Nov 2014 13:24:41 +0000 (14:24 +0100)]
Take the global lock in meshlink_channel_send().

9 years agoAdd argument validation to the channels API.
Guus Sliepen [Sat, 1 Nov 2014 13:24:00 +0000 (14:24 +0100)]
Add argument validation to the channels API.

9 years agoRegister channel poll callback to notify when a channel has succesfully opened.
Guus Sliepen [Fri, 31 Oct 2014 08:11:49 +0000 (09:11 +0100)]
Register channel poll callback to notify when a channel has succesfully opened.

9 years agoCall utcp_timeout() once every iteration of the event loop.
Guus Sliepen [Fri, 31 Oct 2014 08:10:23 +0000 (09:10 +0100)]
Call utcp_timeout() once every iteration of the event loop.

9 years agoFix definition of mesh::set_channel_accept_cb() and _poll_cb().
Guus Sliepen [Fri, 31 Oct 2014 07:27:34 +0000 (08:27 +0100)]
Fix definition of mesh::set_channel_accept_cb() and _poll_cb().

9 years agoUpdate TODO list.
Guus Sliepen [Sat, 25 Oct 2014 18:18:54 +0000 (20:18 +0200)]
Update TODO list.

9 years agoAdd a poll callback to channels.
Guus Sliepen [Wed, 1 Oct 2014 17:36:58 +0000 (19:36 +0200)]
Add a poll callback to channels.

The callback is called whenever the a call to meshlink_channel_send()
will accept a non-zero number of bytes.

9 years agoEnsure receive_cb and utcp structures have been properly initialized after setting...
Guus Sliepen [Sun, 14 Sep 2014 15:49:09 +0000 (17:49 +0200)]
Ensure receive_cb and utcp structures have been properly initialized after setting channel_accept_cb.

This allows the channels example to initiate a chat from one side only.

9 years agoChannels can now actually be opened.
Guus Sliepen [Sun, 14 Sep 2014 15:27:24 +0000 (17:27 +0200)]
Channels can now actually be opened.

It still requires both sides to call channel_open(), because otherwise utcp_init() is not called
on the receiving side.

9 years agoBuild the channels example.
Guus Sliepen [Sun, 14 Sep 2014 15:24:44 +0000 (17:24 +0200)]
Build the channels example.

9 years agoAdd devclass argument to calls to meshlink_open() in all tests.
Guus Sliepen [Sat, 13 Sep 2014 14:56:50 +0000 (16:56 +0200)]
Add devclass argument to calls to meshlink_open() in all tests.

9 years agoUpdate .gitignore files.
Guus Sliepen [Sat, 13 Sep 2014 14:22:10 +0000 (16:22 +0200)]
Update .gitignore files.

9 years agoFix queue handling in meshlink_send().
Guus Sliepen [Sat, 13 Sep 2014 14:09:11 +0000 (16:09 +0200)]
Fix queue handling in meshlink_send().

We need to copy the data from the application *here*. To avoid multiple copies, prepare the
whole vpn_packet_t in meshlink_send(), so meshlink_send_from_queue() only has to dequeue
and call route(). We also don't need to take the mesh_mutex, since the only information we
use is the name of ourself and the destination node, which is guaranteed to be stable.

9 years agoAdd an example chat program that uses the channels API.
Guus Sliepen [Fri, 5 Sep 2014 21:14:40 +0000 (23:14 +0200)]
Add an example chat program that uses the channels API.

9 years agomanynodes: put a prefix di graph json files because with LXC many machines write...
Saverio Proto [Fri, 5 Sep 2014 16:58:29 +0000 (18:58 +0200)]
manynodes: put a prefix di graph json files because with LXC many machines write into the same folder

9 years agomanynodes: export the graph always from node 0
Saverio Proto [Mon, 1 Sep 2014 06:31:09 +0000 (08:31 +0200)]
manynodes: export the graph always from node 0

9 years agomanynodes: add few backbone nodes and many portable nodes to make tests
Saverio Proto [Thu, 28 Aug 2014 13:18:00 +0000 (15:18 +0200)]
manynodes: add few backbone nodes and many portable nodes to make tests

9 years agomanynodes: implement stop command
Saverio Proto [Thu, 28 Aug 2014 13:17:15 +0000 (15:17 +0200)]
manynodes: implement stop command

9 years agoKeep private members out of the "public" meshlink structs.
Guus Sliepen [Fri, 22 Aug 2014 09:11:46 +0000 (11:11 +0200)]
Keep private members out of the "public" meshlink structs.

9 years agoUpdate to latest commit of UTCP.
Guus Sliepen [Fri, 22 Aug 2014 09:03:54 +0000 (11:03 +0200)]
Update to latest commit of UTCP.

9 years agoMerge branch 'channels'
Guus Sliepen [Fri, 22 Aug 2014 08:58:47 +0000 (10:58 +0200)]
Merge branch 'channels'

Conflicts:
.gitmodules
src/node.h

9 years agomeshlink_export: correctly export the mutex
Saverio Proto [Thu, 21 Aug 2014 16:51:37 +0000 (18:51 +0200)]
meshlink_export: correctly export the mutex

9 years agoDeleting variable defined but not used
Saverio Proto [Thu, 21 Aug 2014 16:33:31 +0000 (18:33 +0200)]
Deleting variable defined but not used

9 years agomanynodes: implemented /select to be able to select the node that will execute the...
Saverio Proto [Tue, 19 Aug 2014 14:17:20 +0000 (16:17 +0200)]
manynodes: implemented /select to be able to select the node that will execute the console commands
by default node0 will be executing the commands
doing /select 1 for example, the node 1 will execute the console commands

9 years agomanynodes: do not add localhost as node's address
Saverio Proto [Mon, 18 Aug 2014 15:35:56 +0000 (17:35 +0200)]
manynodes: do not add localhost as node's address

9 years agoDont learn localhost and IPv6 link local with AVAHI
Saverio Proto [Sun, 17 Aug 2014 13:15:57 +0000 (15:15 +0200)]
Dont learn localhost and IPv6 link local with AVAHI

9 years agoInvitation protocol: correctly initialize and reset mesh->thedatalen after join is...
Saverio Proto [Sun, 17 Aug 2014 11:01:37 +0000 (13:01 +0200)]
Invitation protocol: correctly initialize and reset mesh->thedatalen after join is finished

9 years agoRevert "Fixed a bug in the invitation code that prevented correct working of the...
Saverio Proto [Sun, 17 Aug 2014 10:17:45 +0000 (12:17 +0200)]
Revert "Fixed a bug in the invitation code that prevented correct working of the feature after the second call of /join"

This reverts commit 1b233d4c868011ec98b668d2d7fca576d921b8b6.

9 years agoFixed a bug in the invitation code that prevented correct working of the feature...
Saverio Proto [Thu, 14 Aug 2014 13:48:32 +0000 (15:48 +0200)]
Fixed a bug in the invitation code that prevented correct working of the feature after the second call of /join

The second time /join was called the correct name in meshlink.conf was not updated.

It appeared a wrong ConnectTo statement in the hosts/name file

9 years agofinalize_join: close file descriptor before return
Saverio Proto [Thu, 14 Aug 2014 08:16:08 +0000 (10:16 +0200)]
finalize_join: close file descriptor before return

9 years agobugfix handle case where count(edges) = 0
Niklas Hofmann [Thu, 14 Aug 2014 08:18:52 +0000 (10:18 +0200)]
bugfix handle case where count(edges) = 0

9 years agostart graph export timer via command line paramter in manynodes example
Niklas Hofmann [Wed, 13 Aug 2014 19:30:53 +0000 (21:30 +0200)]
start graph export timer via command line paramter in manynodes example

9 years agograph export timer for manynodes example
Niklas Hofmann [Wed, 13 Aug 2014 19:17:37 +0000 (21:17 +0200)]
graph export timer for manynodes example

9 years agodevtools added
Niklas Hofmann [Wed, 13 Aug 2014 18:15:12 +0000 (20:15 +0200)]
devtools added

9 years agojson export of node and edge structure
Niklas Hofmann [Wed, 13 Aug 2014 17:50:29 +0000 (19:50 +0200)]
json export of node and edge structure

9 years agowarning added to code comment
Niklas Hofmann [Wed, 13 Aug 2014 15:37:27 +0000 (17:37 +0200)]
warning added to code comment

9 years ago"last successfull connect" introduced
Niklas Hofmann [Wed, 13 Aug 2014 15:02:28 +0000 (17:02 +0200)]
"last successfull connect" introduced

9 years agovarious connect order bugfixes; storing / reading devclass bugfix
Niklas Hofmann [Wed, 13 Aug 2014 14:52:47 +0000 (16:52 +0200)]
various connect order bugfixes; storing / reading devclass bugfix

9 years agolocks in discovery code
Niklas Hofmann [Wed, 13 Aug 2014 11:49:30 +0000 (13:49 +0200)]
locks in discovery code

9 years agoMerge branch 'mesh_topology_output' into roles
Niklas Hofmann [Wed, 13 Aug 2014 11:30:16 +0000 (13:30 +0200)]
Merge branch 'mesh_topology_output' into roles

9 years agofixing comparison expression
Niklas Hofmann [Wed, 13 Aug 2014 07:27:05 +0000 (09:27 +0200)]
fixing comparison expression

9 years agoFix segfault when two nodes that just joined a mesh want to autoconnect to each other.
Guus Sliepen [Tue, 12 Aug 2014 20:03:32 +0000 (22:03 +0200)]
Fix segfault when two nodes that just joined a mesh want to autoconnect to each other.

In this case, we have not exchanged public keys yet. That should not be
a problem, but we blindly pass a NULL pointer to sptps_start() in this
case which blindly dereferences it. Fix sptps_start() by making sure no
arguments are NULL, and teach MeshLink to exchange keys between
reachable nodes when it tries to make a meta-connection.

9 years agocreate a new connection only in case there is none
Niklas Hofmann [Tue, 12 Aug 2014 15:34:50 +0000 (17:34 +0200)]
create a new connection only in case there is none

9 years agofixed some potentially nasty memory issues
Niklas Hofmann [Tue, 12 Aug 2014 14:40:41 +0000 (16:40 +0200)]
fixed some potentially nasty memory issues

9 years agoasserts added to make sure devclass is valid
Niklas Hofmann [Tue, 12 Aug 2014 09:52:02 +0000 (11:52 +0200)]
asserts added to make sure devclass is valid

9 years agoRemoved references to HAVE_STRUCT_SOCKADDR_STORAGE.
Aaron Krebs [Tue, 12 Aug 2014 09:43:35 +0000 (11:43 +0200)]
Removed references to HAVE_STRUCT_SOCKADDR_STORAGE.

Enforced sockaddr_storage support in configure.ac

9 years agoconverging auto connect algorithm
Niklas Hofmann [Tue, 12 Aug 2014 03:32:22 +0000 (05:32 +0200)]
converging auto connect algorithm

9 years agoChanged meshlink_get_all_edges_state to re-use memory.
Aaron Krebs [Mon, 11 Aug 2014 10:13:25 +0000 (12:13 +0200)]
Changed meshlink_get_all_edges_state to re-use memory.

9 years agoFinished sockaddr_t to sockaddr_storage copy on meshlink_edge_t.
Aaron Krebs [Mon, 11 Aug 2014 08:56:58 +0000 (10:56 +0200)]
Finished sockaddr_t to sockaddr_storage copy on meshlink_edge_t.

9 years agoImplemented API function to capture mesh edges.
Aaron Krebs [Sat, 9 Aug 2014 20:05:34 +0000 (22:05 +0200)]
Implemented API function to capture mesh edges.

9 years agoRemoved extern keyword.
Aaron Krebs [Sat, 9 Aug 2014 17:38:03 +0000 (19:38 +0200)]
Removed extern keyword.

9 years agoadded log info
Niklas Hofmann [Sat, 9 Aug 2014 18:14:01 +0000 (20:14 +0200)]
added log info

9 years agofixed missing unlock
Niklas Hofmann [Sat, 9 Aug 2014 17:34:12 +0000 (19:34 +0200)]
fixed missing unlock

9 years agoReplaced node_mutex with mesh_mutex.
Aaron Krebs [Sat, 9 Aug 2014 15:54:56 +0000 (17:54 +0200)]
Replaced node_mutex with mesh_mutex.

This reverses the mutex use; instead of locking when modifying nodes,
we unlock when not modifying the mesh. Any API functions that wish
to use the mesh must aquire the lock first.

TODO: Currently there is a deadlock problem, and the discovery thread is not
cleanly handled yet.

9 years agofix in log message
Niklas Hofmann [Sat, 9 Aug 2014 16:45:29 +0000 (18:45 +0200)]
fix in log message

9 years agofix arith exception, log messages for autoconnect code
Niklas Hofmann [Sat, 9 Aug 2014 16:42:02 +0000 (18:42 +0200)]
fix arith exception, log messages for autoconnect code

9 years agoclass based connect behaviour
Niklas Hofmann [Sat, 9 Aug 2014 16:26:35 +0000 (18:26 +0200)]
class based connect behaviour

9 years agoexplicit declaration of node_write_dclass
Niklas Hofmann [Sat, 9 Aug 2014 14:38:52 +0000 (16:38 +0200)]
explicit declaration of node_write_dclass

9 years agoMerge branch 'everbase' into roles
Niklas Hofmann [Sat, 9 Aug 2014 14:35:26 +0000 (16:35 +0200)]
Merge branch 'everbase' into roles

9 years agopersistence of DeviceClass
Niklas Hofmann [Sat, 9 Aug 2014 14:34:43 +0000 (16:34 +0200)]
persistence of DeviceClass

9 years agonet_packet: trivial, adjust to logger to DEBUG
Saverio Proto [Sat, 9 Aug 2014 14:27:10 +0000 (16:27 +0200)]
net_packet: trivial, adjust to logger to DEBUG

9 years agomanynodes example: trivial, change debug levels
Saverio Proto [Sat, 9 Aug 2014 14:26:16 +0000 (16:26 +0200)]
manynodes example: trivial, change debug levels

9 years agoDon't crash when the log callback gets a NULL mesh.
Guus Sliepen [Sat, 9 Aug 2014 13:36:00 +0000 (15:36 +0200)]
Don't crash when the log callback gets a NULL mesh.

9 years agoMerge branch 'everbase' of chicago.everbase.net:meshlink/meshlink into everbase
Guus Sliepen [Sat, 9 Aug 2014 13:31:43 +0000 (15:31 +0200)]
Merge branch 'everbase' of chicago.everbase.net:meshlink/meshlink into everbase

9 years agoRestart UDP key exchange after PingTimeout if it didn't work.
Guus Sliepen [Sat, 9 Aug 2014 13:31:00 +0000 (15:31 +0200)]
Restart UDP key exchange after PingTimeout if it didn't work.

9 years agoroute avahi log to meshlink log
Niklas Hofmann [Sat, 9 Aug 2014 12:49:53 +0000 (14:49 +0200)]
route avahi log to meshlink log

9 years agolog level adjustments
Niklas Hofmann [Sat, 9 Aug 2014 12:05:25 +0000 (14:05 +0200)]
log level adjustments

9 years agoMerge branch 'roles' into everbase
Niklas Hofmann [Sat, 9 Aug 2014 10:09:37 +0000 (12:09 +0200)]
Merge branch 'roles' into everbase

9 years agocleanup of entry group in discovery_stop
Niklas Hofmann [Sat, 9 Aug 2014 10:08:48 +0000 (12:08 +0200)]
cleanup of entry group in discovery_stop

9 years agoexample manynodes: send test messages only to other nodes and not to ourselfs
Saverio Proto [Sat, 9 Aug 2014 10:06:53 +0000 (12:06 +0200)]
example manynodes: send test messages only to other nodes and not to ourselfs

9 years agodclass transfer while adding edges improved
Niklas Hofmann [Sat, 9 Aug 2014 10:02:55 +0000 (12:02 +0200)]
dclass transfer while adding edges improved

9 years agomanynodes example: improved logging
Saverio Proto [Sat, 9 Aug 2014 09:19:24 +0000 (11:19 +0200)]
manynodes example: improved logging

9 years agoFix packet length check in sptps_receive_data_datagram().
Guus Sliepen [Sat, 9 Aug 2014 09:56:59 +0000 (11:56 +0200)]
Fix packet length check in sptps_receive_data_datagram().

9 years agoADD EDGE fixed
Niklas Hofmann [Sat, 9 Aug 2014 09:50:31 +0000 (11:50 +0200)]
ADD EDGE fixed

9 years agofixed port byte order
Niklas Hofmann [Sat, 9 Aug 2014 09:46:10 +0000 (11:46 +0200)]
fixed port byte order

9 years agoMerge branch 'everbase' into roles
Niklas Hofmann [Sat, 9 Aug 2014 09:29:35 +0000 (11:29 +0200)]
Merge branch 'everbase' into roles

9 years agodclass support within the edge protocol
Niklas Hofmann [Sat, 9 Aug 2014 09:28:57 +0000 (11:28 +0200)]
dclass support within the edge protocol

9 years agointroduction of dclass and use as source for weight of edges
Niklas Hofmann [Sat, 9 Aug 2014 08:21:51 +0000 (10:21 +0200)]
introduction of dclass and use as source for weight of edges

9 years agoMerge branch 'discovery' of chicago.everbase.net:meshlink/meshlink into everbase
Guus Sliepen [Sat, 9 Aug 2014 08:21:00 +0000 (10:21 +0200)]
Merge branch 'discovery' of chicago.everbase.net:meshlink/meshlink into everbase

9 years agoFix buffer overflow in meshlink_hint_address().
Guus Sliepen [Sat, 9 Aug 2014 08:00:05 +0000 (10:00 +0200)]
Fix buffer overflow in meshlink_hint_address().

9 years agoFinish implementation of log callbacks.
Guus Sliepen [Fri, 8 Aug 2014 15:43:50 +0000 (17:43 +0200)]
Finish implementation of log callbacks.

9 years agoMerge branch 'discovery' into everbase
Niklas Hofmann [Fri, 8 Aug 2014 15:01:07 +0000 (17:01 +0200)]
Merge branch 'discovery' into everbase

9 years agoallow multiple instances of avahi
Niklas Hofmann [Fri, 8 Aug 2014 15:00:32 +0000 (17:00 +0200)]
allow multiple instances of avahi