]> git.meshlink.io Git - meshlink/log
meshlink
10 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

10 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

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

10 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

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

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

10 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

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

10 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

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

10 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.

10 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

10 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

10 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

10 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

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

10 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.

10 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.

10 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.

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

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

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

10 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.

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

10 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

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

10 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

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

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

10 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

10 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

10 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.

10 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

10 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.

10 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

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

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

10 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

10 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

10 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

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

10 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().

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

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

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

10 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

10 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

10 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

10 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().

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

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

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

10 years agomanynodes example: committed /test command to test if it is possible to succefully...
Saverio Proto [Fri, 8 Aug 2014 14:16:20 +0000 (14:16 +0000)]
manynodes example: committed /test command to test if it is possible to succefully deliver data among the nodes

10 years agoMerge branch 'discovery' into everbase
Niklas Hofmann [Fri, 8 Aug 2014 14:12:41 +0000 (16:12 +0200)]
Merge branch 'discovery' into everbase

10 years agoOnly start discovery once per process.
Guus Sliepen [Fri, 8 Aug 2014 14:09:11 +0000 (16:09 +0200)]
Only start discovery once per process.

Starting multiple Avahi threads in one process will fail with one of the
threads triggering an assert(), thus killing the process. It's not
critical that Avahi runs, so make sure we only start one.

10 years agoFix a compiler warning.
Guus Sliepen [Fri, 8 Aug 2014 14:09:01 +0000 (16:09 +0200)]
Fix a compiler warning.

10 years agoTXT record bugfix
Niklas Hofmann [Fri, 8 Aug 2014 14:08:23 +0000 (16:08 +0200)]
TXT record bugfix

10 years agoMerge branch 'everbase' into discovery
Niklas Hofmann [Fri, 8 Aug 2014 13:22:32 +0000 (15:22 +0200)]
Merge branch 'everbase' into discovery

10 years agoexample manynodes fixed to use meshlink_join
Saverio Proto [Fri, 8 Aug 2014 13:17:37 +0000 (13:17 +0000)]
example manynodes fixed to use meshlink_join

10 years agomanynodes chat example: use a prefix for nodes names so that is possible to run multi...
Saverio Proto [Fri, 8 Aug 2014 12:40:15 +0000 (12:40 +0000)]
manynodes chat example: use a prefix for nodes names so that is possible to run multiple instances of this example on multiple hosts and link them together

10 years agoMake sure the tests compile again.
Guus Sliepen [Fri, 8 Aug 2014 13:13:49 +0000 (15:13 +0200)]
Make sure the tests compile again.

10 years agoDon't link with -lavahi-client, we only need the avahi-core.
Guus Sliepen [Fri, 8 Aug 2014 13:04:46 +0000 (15:04 +0200)]
Don't link with -lavahi-client, we only need the avahi-core.

10 years agoMerge branch 'everbase' of chicago.everbase.net:meshlink/meshlink into everbase
Niklas Hofmann [Fri, 8 Aug 2014 12:33:39 +0000 (14:33 +0200)]
Merge branch 'everbase' of chicago.everbase.net:meshlink/meshlink into everbase

10 years agoMerge branch 'discovery' into everbase
Niklas Hofmann [Fri, 8 Aug 2014 12:32:03 +0000 (14:32 +0200)]
Merge branch 'discovery' into everbase

Conflicts:
examples/chatpp.cc
src/meshlink++.h
src/meshlink.c

10 years agosptps: split error conditions handling
Saverio Proto [Fri, 8 Aug 2014 11:46:18 +0000 (11:46 +0000)]
sptps: split error conditions handling

10 years agochanged name of SRV record to fingerprint
Niklas Hofmann [Fri, 8 Aug 2014 12:00:35 +0000 (14:00 +0200)]
changed name of SRV record to fingerprint

10 years agoMSG_NOSIGNAL option in send() will prevent SIGPIPE
Saverio Proto [Fri, 8 Aug 2014 11:18:42 +0000 (11:18 +0000)]
MSG_NOSIGNAL option in send() will prevent SIGPIPE

10 years agoChat example: Trivial, fix return in void function
Saverio Proto [Fri, 8 Aug 2014 11:05:55 +0000 (11:05 +0000)]
Chat example: Trivial, fix return in void function

10 years agocheck result of malloc
Niklas Hofmann [Fri, 8 Aug 2014 10:40:17 +0000 (12:40 +0200)]
check result of malloc

10 years agoappname added, which is used by mdns as part of the service type
Niklas Hofmann [Fri, 8 Aug 2014 10:35:05 +0000 (12:35 +0200)]
appname added, which is used by mdns as part of the service type

10 years agoTest whether UDP communication is working.
Guus Sliepen [Fri, 8 Aug 2014 10:00:41 +0000 (12:00 +0200)]
Test whether UDP communication is working.

10 years agoHandle io_t's being deleted out of order while going through loop->ios.
Guus Sliepen [Fri, 8 Aug 2014 09:59:39 +0000 (11:59 +0200)]
Handle io_t's being deleted out of order while going through loop->ios.

10 years agoActually implement sptps_verify_datagram(), so try_mac() works.
Guus Sliepen [Fri, 8 Aug 2014 09:52:13 +0000 (11:52 +0200)]
Actually implement sptps_verify_datagram(), so try_mac() works.

10 years agouse uuid for hostname and service name, because we exchange all important information...
Niklas Hofmann [Fri, 8 Aug 2014 09:05:17 +0000 (11:05 +0200)]
use uuid for hostname and service name, because we exchange all important information via service type and TXT record

10 years agouses publish_no_reverse flag of avahi
Niklas Hofmann [Fri, 8 Aug 2014 08:33:12 +0000 (10:33 +0200)]
uses publish_no_reverse flag of avahi

10 years agoMake sure outgoing->mesh is set.
Guus Sliepen [Fri, 8 Aug 2014 08:01:39 +0000 (10:01 +0200)]
Make sure outgoing->mesh is set.

This caused a segmentation fault when cancelling outgoing connections.

10 years agocode cleanup; noptr fix
Niklas Hofmann [Thu, 7 Aug 2014 17:01:58 +0000 (19:01 +0200)]
code cleanup; noptr fix

10 years agoRemove references to port 655 from MeshLink.
Guus Sliepen [Thu, 7 Aug 2014 16:33:08 +0000 (18:33 +0200)]
Remove references to port 655 from MeshLink.

First of all, port 655 is officially registered as the port for tinc,
not for any other application. Second, applications built on top of
MeshLink will probably run as non-root, and so cannot bind to ports
lower than 1024 anyway.

- Never try binding to port 655 when setting up a new node.
- Always require a valid port number when making connections.

10 years agoSpeed up making outgoing connections.
Guus Sliepen [Thu, 7 Aug 2014 15:47:58 +0000 (17:47 +0200)]
Speed up making outgoing connections.

- Immediately fire the periodic_handler() when the main loop starts.
- Use a very short timeout if we haven't made enough real and pending
  connections yet to fill the autoconnect budget.

This basically means we immediately start up to 3 outgoing connections
to different nodes.

10 years agoRemove debug messages from meshlink_queue.h.
Guus Sliepen [Thu, 7 Aug 2014 15:01:50 +0000 (17:01 +0200)]
Remove debug messages from meshlink_queue.h.

10 years agoAllow meshlink_start() to work after meshlink_stop().
Guus Sliepen [Thu, 7 Aug 2014 14:27:43 +0000 (16:27 +0200)]
Allow meshlink_start() to work after meshlink_stop().

The way the MeshLink thread is signaled that it has to quit using
meshlink_stop() is by shutting down one of the listening sockets.
However, it has to be repaired to allow meshlink_start() to work again.

Maybe not the prettiest solution.

10 years agoCall meshlink_stop before meshlink_join in the chat program
Saverio Proto [Thu, 7 Aug 2014 14:18:38 +0000 (14:18 +0000)]
Call meshlink_stop before meshlink_join in the chat program

10 years agoAfter killing meshlink thread update the bool status threadstarted
Saverio Proto [Thu, 7 Aug 2014 13:04:18 +0000 (15:04 +0200)]
After killing meshlink thread update the bool status threadstarted

10 years agoAdd a public API for the thread-safe message queue.
Guus Sliepen [Thu, 7 Aug 2014 13:41:16 +0000 (15:41 +0200)]
Add a public API for the thread-safe message queue.

10 years agoRemove .dirstamp file.
Guus Sliepen [Thu, 7 Aug 2014 12:34:37 +0000 (14:34 +0200)]
Remove .dirstamp file.

It absolutely does not belong in the repository.

10 years agoes compiliert, aber failed immernoch. :-( was ist da los???
Lars [Sun, 3 Aug 2014 23:31:42 +0000 (01:31 +0200)]
es compiliert, aber failed immernoch. :-( was ist da los???

10 years agoobject-oriented interface 1st durchstich, incl. chat program adopted. :-)
Lars [Sun, 3 Aug 2014 23:25:12 +0000 (01:25 +0200)]
object-oriented interface 1st durchstich, incl. chat program adopted. :-)

10 years agoFix compiler warnings in manynodes.c.
Guus Sliepen [Thu, 31 Jul 2014 15:18:08 +0000 (17:18 +0200)]
Fix compiler warnings in manynodes.c.

10 years agoCheck return value of fread() when reading from /dev/urandom.
Guus Sliepen [Thu, 31 Jul 2014 15:13:21 +0000 (17:13 +0200)]
Check return value of fread() when reading from /dev/urandom.

10 years agowe might have to think about locking in case we call meshlink-methods - todo added
Niklas Hofmann [Thu, 31 Jul 2014 01:26:59 +0000 (03:26 +0200)]
we might have to think about locking in case we call meshlink-methods - todo added

10 years agoignore unknown address types (just in case)
Niklas Hofmann [Thu, 31 Jul 2014 01:21:53 +0000 (03:21 +0200)]
ignore unknown address types (just in case)

10 years agoa first mdns discovery implementation
Niklas Hofmann [Thu, 31 Jul 2014 01:08:06 +0000 (03:08 +0200)]
a first mdns discovery implementation

10 years agoMerge branch 'address_hint_api' into discovery
Niklas Hofmann [Wed, 30 Jul 2014 23:51:55 +0000 (01:51 +0200)]
Merge branch 'address_hint_api' into discovery

10 years agoavahi mdns integration
Niklas Hofmann [Wed, 30 Jul 2014 23:44:43 +0000 (01:44 +0200)]
avahi mdns integration

10 years agoMerge remote-tracking branch 'origin/everbase' into discovery
Niklas Hofmann [Wed, 30 Jul 2014 22:40:28 +0000 (00:40 +0200)]
Merge remote-tracking branch 'origin/everbase' into discovery

10 years agoavahi mdns skeleton
Niklas Hofmann [Wed, 30 Jul 2014 22:39:39 +0000 (00:39 +0200)]
avahi mdns skeleton

10 years agoAdd meshlink_get_fingerprint().
Guus Sliepen [Wed, 30 Jul 2014 16:18:09 +0000 (18:18 +0200)]
Add meshlink_get_fingerprint().

This function returns a (fingerprint of a) node's public key in
printable ASCII.

10 years agoFree memory.
Aaron Krebs [Wed, 30 Jul 2014 16:04:17 +0000 (18:04 +0200)]
Free memory.

10 years agoImplemented meshlink_hint_address().
Aaron Krebs [Wed, 30 Jul 2014 15:44:58 +0000 (17:44 +0200)]
Implemented meshlink_hint_address().

10 years agoUtility functions to get string representation of sockaddr components.
Aaron Krebs [Wed, 30 Jul 2014 15:44:23 +0000 (17:44 +0200)]
Utility functions to get string representation of sockaddr components.