144 Commits

Author SHA1 Message Date
Neil Alexander
315aadae06
Rename help to list 2018-11-26 17:51:30 +00:00
Neil Alexander
8239989c36
Send box_pub_key with getSessions, getDHT, getSwitchPeers and getPeers 2018-11-26 17:38:02 +00:00
Neil Alexander
5b10af7399
Rename key to box_pub_key in admin socket for consistency 2018-11-26 17:34:26 +00:00
Arceliar
0ec6207e05 better response format and yggdrasilctl printing 2018-11-25 18:25:31 -06:00
Arceliar
a34ca40594 use a buffered channel to avoid races, and run gofmt 2018-11-25 17:59:36 -06:00
Arceliar
12e635f946 adjust dhtPing response so 'nodes' defaults to an empty list instead of null 2018-11-25 16:16:06 -06:00
Arceliar
d520a8a1d5 refactor dht code to call arbitrary callbacks instead of only searches.checkDHTRes, and add admin API fuction to dhtPing a node (with an optional target NodeID) 2018-11-25 16:10:32 -06:00
Arceliar
6d0e40045a cleanup/fixes from go vet 2018-11-22 21:41:16 -06:00
Arceliar
4870a2e149 removeSourceSubnet and removeRoute via the admin api 2018-11-22 21:30:56 -06:00
Arceliar
5953027411 switch from []byte to boxPubKey in ckr code, and start adding admin functions for existing code (yggdrasilctl.go still needs pretty printing support for the responses to the new get functions) 2018-11-21 00:10:20 -06:00
Neil Alexander
fc5a5830aa
Merge pull request #203 from Arceliar/chord
Chord
2018-11-14 20:13:42 +00:00
Neil Alexander
aab0502a4a
Remove friendlyname traces, preserve endpoints 2018-10-21 23:20:14 +01:00
Neil Alexander
a1b72c16d8
Some attempt at exchanging session metadata over the wire (broken) 2018-10-21 22:58:27 +01:00
Neil Alexander
b809adf981
Add FriendlyName option, show friendly name and real endpoint in admin socket/yggdrasilctl 2018-10-21 17:57:48 +01:00
Arceliar
f3ec8c5b37 fix admin dht function, more cleanup, and slowly throttle back dht traffic when idle 2018-10-20 17:58:54 -05:00
Arceliar
03a88fe304 Try using a chord-like DHT instead of a kad-like one, work in progress, but it compiles at least 2018-10-20 14:48:07 -05:00
Neil Alexander
69cd736112
Show queue capacity in getSwitchQueues 2018-09-27 16:19:47 +01:00
Neil Alexander
0b1a6611fd
Identify switchport for queue based on coords in stream ID 2018-09-27 15:05:45 +01:00
Neil Alexander
8113b4cc22
Update comments 2018-09-27 14:20:52 +01:00
Neil Alexander
b530916044
Show information about individual active queues 2018-09-27 12:14:55 +01:00
Neil Alexander
2674e1cb8b
Merge remote-tracking branch 'origin/develop' into getswitchqueues 2018-09-27 11:03:59 +01:00
Neil Alexander
f57567ea56
Add getSwitchQueues 2018-09-27 10:53:19 +01:00
Arceliar
7e3426ba93
Merge pull request #182 from yggdrasil-network/source-interface
Support adding peers on specific interfaces
2018-09-26 07:48:55 -05:00
Neil Alexander
3f8a4ab17d
Add bytes_sent and bytes_recvd to getSwitchPorts 2018-09-25 17:59:01 +01:00
Neil Alexander
b368421dbd
Fix addPeer to make interface= optional 2018-09-25 17:13:35 +01:00
Neil Alexander
1796000b05
Change to InterfacePeers instead of modifying the tcp:// URI format 2018-09-25 16:55:57 +01:00
Neil Alexander
aecc151baf
Add support for specifying TCP source interface, i.e. tcp://a.b.c.d:e/eth0, for multiple simultaneous peerings to the same node over different interfaces 2018-09-25 15:32:45 +01:00
Arceliar
25661ebcad fix 0 port number on links to unknown nodes in the admin dot graph 2018-09-04 19:30:07 -05:00
Arceliar
996a593fa2 Sort dotgraph links by integer value 2018-07-20 23:02:25 -05:00
Neil Alexander
cff7ef026f
Make yggdrasilctl less case-sensitive 2018-07-09 19:30:41 +01:00
Neil Alexander
d59bdfeb99
Fail to TCP when parsing AdminListen 2018-07-08 10:37:20 +01:00
Arceliar
bf90447cc4 update admin socket error message and run gofmt 2018-07-07 19:37:36 -05:00
Neil Alexander
b24c7ffa6b
Resolve merge conflict with platformdefaults 2018-07-07 20:08:23 +01:00
Neil Alexander
a5af69df8a
Use Close() for admin socket 2018-07-07 20:04:11 +01:00
Neil Alexander
2a931df07a
Try to clean up UNIX domain admin sockets if shutdown properly 2018-07-07 12:34:10 +01:00
Neil Alexander
1692bd98fd
Centralise platform defaults into the 'defaults' package 2018-07-07 12:08:52 +01:00
Neil Alexander
cd6030ec8f
Add support for UNIX domain admin sockets and specifying URIs in AdminListen 2018-07-07 11:22:49 +01:00
Neil Alexander
f68f779bee
Change box_pub_key to key in admin API 2018-06-22 22:26:17 +01:00
Arceliar
330175889e switch address range from fd00::/8 to the deprecated 0200::/7 range 2018-06-14 07:08:48 -05:00
Arceliar
b006748da4 code cleanup 2018-06-12 17:50:08 -05:00
Arceliar
56802d569e minor documentation updates, code comments, and a couple of bugfixes that I noticed when going through the code to comment it 2018-06-10 18:03:28 -05:00
Arceliar
f30d040366 Merge branch 'master' of https://github.com/yggdrasil-network/yggdrasil-go into develop 2018-06-08 16:17:24 -05:00
Arceliar
e29f700dd6 enable multicast on interfaces that come up after startup 2018-06-07 22:07:19 -05:00
Arceliar
1b89892610 remove UDP, to be replaced with a better implementation later 2018-06-06 16:40:35 -05:00
Neil Alexander
49af65296d Export fields of wire structs 2018-06-02 21:21:05 +01:00
Neil Alexander
bc37d4fb76 Improve formatting of dot: dashed grey for unknown nodes, sans-serif text 2018-06-02 14:24:06 +01:00
Neil Alexander
ec80a81ed5 Mark extrapolated nodes with dashed outline 2018-06-01 23:33:02 +01:00
Neil Alexander
e4082f218f Add text to dot graph explaining how a node is known 2018-06-01 23:23:24 +01:00
Neil Alexander
a2df5107f0
Change colour scheme: green for self, yellow for peer, blue for open session, white for DHT 2018-06-01 14:20:47 +01:00
Arceliar
ca15bbea57 try color coding dot output 2018-05-31 20:28:09 -05:00
Neil Alexander
4c115de633
De-debug 2018-05-27 22:13:37 +01:00
Neil Alexander
5d87601118
Add getMulticastInterfaces and getSelf to yggdrasilctl 2018-05-23 22:13:52 +01:00
Neil Alexander
9d9083e373
Update configuration names, fix multicast interface selection 2018-05-23 11:28:20 +01:00
Neil Alexander
9567446f50
Offload formatting to yggdrasilctl and keep precision in JSON 2018-05-21 15:21:23 +01:00
Neil Alexander
59688dcab3
Fix formatting of bytes_sent, bytes_recvd, last_seen, uptime 2018-05-21 15:05:01 +01:00
Neil Alexander
ca3e541d3b
Friendly formats for getDHT, getSessions, setTunTap etc 2018-05-21 14:14:57 +01:00
Neil Alexander
201701ae4a
Add some pretty printing to yggdrasilctl, small modifications to JSON formatting in admin socket 2018-05-21 13:54:51 +01:00
Neil Alexander
bd32f5890b
Run gofmt -s -w 2018-05-21 07:28:03 +01:00
Neil Alexander
79131bb959
Minor tweaks 2018-05-20 23:25:07 +01:00
Neil Alexander
aae570de2a
Optional parameters are now square instead of pointed brackets, avoid nils for help 2018-05-20 21:57:05 +01:00
Neil Alexander
c765e0566f
Convert rest of functions, fix setTunTap 2018-05-20 21:54:15 +01:00
Neil Alexander
c75566d5ac
Various fixes and error catching, add setTunTap 2018-05-20 21:44:30 +01:00
Neil Alexander
4ecc7ce860
Add getTunTap to JSON admin socket 2018-05-20 19:42:37 +01:00
Neil Alexander
c3ca5c64b1
Add some more functions to JSON admin socket 2018-05-20 19:23:43 +01:00
Neil Alexander
9713e73969
Fix dot 2018-05-20 17:25:13 +01:00
Neil Alexander
a6ef7166ea
Start JSON-ifying the admin socket 2018-05-20 17:21:14 +01:00
Arceliar
5c0636eb3d add uptime and bytes sent/recvd to peer struct and getPeers 2018-05-18 20:41:02 -05:00
Neil Alexander
ca96bbf014
Accept exchanging an MTU of 0 to signify that TUN/TAP is disabled, don't send traffic to a node in that case 2018-05-18 18:56:33 +01:00
Neil Alexander
ec371af84f
Track TX/RX bytes over session and if MTU was adjusted, add to admin socket getSession 2018-05-18 17:59:29 +01:00
Arceliar
ec8fe338d5 more insertIfNew bugfixes, and add peerOnly to getDHT output (true if a node is in the bucket.peers slice instead of bucket.others--it means they're not regularly pinged, they're only there to make sure DHT lookups include them as a result, for bootstrapping reasons) 2018-05-17 21:43:26 -05:00
Arceliar
8d9887294c add dht time since last ping to admin socket, some DHT code cleanup, bugfix to insertIfNew 2018-05-17 19:32:29 -05:00
Neil Alexander
5299783e35
Add getTunTap to admin socket 2018-05-10 09:48:12 +01:00
Arceliar
5dac273a3d rename to 'AllowedBoxPubs' and similar 2018-05-07 17:05:54 -05:00
Arceliar
6ce16d8192 debug admin socket 2018-05-06 19:48:26 -05:00
Arceliar
94dd231e13 add (not working) admin functions for auth keys, needs debugging 2018-05-06 19:31:19 -05:00
Arceliar
3a1b67da8c
Update admin.go 2018-05-05 20:20:38 -05:00
Arceliar
cdedd304af make removePeers work for TCP connections and minor admin cleanup 2018-05-05 17:14:03 -05:00
Arceliar
0459f88b92 add a udp close packet, and partial support for a removePeer admin call (sends close to UDP peers, but doesn't close TCP connections yet) 2018-03-16 18:24:28 -05:00
Arceliar
9ce0b7fbea keep peers separate from other nodes in dht 2018-03-10 13:58:48 -06:00
Neil Alexander
ebc4eacee4 Allow sane defaults on setTunTap 2018-02-28 15:27:58 +00:00
Neil Alexander
fdd32b9571 Add setTunTap 2018-02-28 15:15:57 +00:00
Neil Alexander
2b48fd1fce Add addPeer to admin socket 2018-02-28 13:43:06 +00:00
Neil Alexander
536974f20c Try to exchange MTUs when creating sessions 2018-02-11 23:09:05 +00:00
Arceliar
e9adf327b0 possibly fix deadlock from race in peer linkloop goroutine, add some related debug code to the admin 2018-02-07 17:48:30 -06:00
Arceliar
2dd8152a0c reorganize and add more to the admin 2018-01-29 18:48:14 -06:00
Arceliar
c18d863a3e update comments, mostly TODO/FIXME notes 2018-01-26 17:30:51 -06:00
Arceliar
2b7c6eafcd In admin dot, reverse direction of peer links, include the switch port for each link, and sort the output by coords 2018-01-21 16:19:39 -06:00
Neil Alexander
36f9cc5041 Highlight own node on dot graph 2018-01-21 21:54:50 +00:00
Arceliar
87a4af7841 update admin dot to better handle missing nodes and to direct links towards parent, based on neilalexander's work 2018-01-21 14:58:54 -06:00
Arceliar
625b97c511 add and use a thread-safe way of reading router internal state, and include active sessions in the admin query 2018-01-21 12:55:45 -06:00
Neil Alexander
8ef852469b Formatting 2018-01-21 17:53:25 +00:00
Neil Alexander
483d90a728 Draw dot draphs (although maybe not very well) 2018-01-21 17:51:51 +00:00
Neil Alexander
c4ac0a90ac Add the ability to see switch ports and DHT 2018-01-21 12:57:54 +00:00
Neil Alexander
b754d68068 Add an admin socket 2018-01-21 00:17:15 +00:00