Commit graph

  • 6b6266bfdd
    Merge pull request #419 from yggdrasil-network/modular Neil Alexander 2019-05-29 18:19:13 +01:00
  • 78eb40cbad
    Record session uptime (purely for the admin socket) Neil Alexander 2019-05-29 12:59:36 +01:00
  • b2513fce56 have the tunConn close things after a 2 minute timeout Arceliar 2019-05-28 18:35:52 -05:00
  • 5ea864869a don't spam searches for unused connections. todo: timeout old connections somehow Arceliar 2019-05-23 20:27:52 -05:00
  • 70774fc3de
    Reimplement get/setTunnelRouting, add/removeSourceSubnet, add/removeRoute, getRoutes, getSourceSubnets, make CKR threadsafe Neil Alexander 2019-05-20 21:45:33 +01:00
  • 5b8d8a9341
    Reimplement getNodeInfo, dhtPing, get/add/removeAllowedEncryptionPublicKey, add/removePeer Neil Alexander 2019-05-20 19:51:44 +01:00
  • e9e2d7bc6f
    Remove debug println Neil Alexander 2019-05-19 22:03:20 +01:00
  • d575b83ec1
    Refactor admin socket somewhat, allow modules to set up their own handlers Neil Alexander 2019-05-19 22:02:04 +01:00
  • 8ef1978cb1
    Start factoring out the admin socket into a separate module (not all functions implemented yet) Neil Alexander 2019-05-19 17:27:48 +01:00
  • 7ca5a2533d
    Implement GetDHT, GetSwitchQueues, GetSessions Neil Alexander 2019-05-19 16:29:04 +01:00
  • 8a6f6f3b2b
    Implement GetPeers and GetSwitchPeers API functions in Core, in preparation for breaking out the admin socket into a separate module Neil Alexander 2019-05-18 17:21:02 +01:00
  • ce60609906
    Remove wrappedConn as unnecessary Neil Alexander 2019-05-18 16:16:32 +01:00
  • 5b09b45572
    Merge pull request #416 from fifteenthcommotion/yggdrasil-brute-simple Neil Alexander 2019-05-18 12:28:49 +01:00
  • 080052ce04 remove ygg-brute gitignore fifteenthcommotion 2019-05-18 04:25:57 -07:00
  • 1b3ec0b93f
    Fix multicast start check so that it shouldn't give up if interfaces aren't up when Yggdrasil starts (fixes #405) Neil Alexander 2019-05-17 22:59:29 +01:00
  • 2df62e2b9b
    Remove code that translates v0.2 config options (it was commented out anyway) Neil Alexander 2019-05-17 22:52:14 +01:00
  • ae2cc13d14
    Fix configuration reloading support Neil Alexander 2019-05-17 22:29:52 +01:00
  • 71ccaf753e
    Add crypto-key routing into TUN/TAP Neil Alexander 2019-05-17 22:09:20 +01:00
  • 9c01947b1c reduce allocations in switch Arceliar 2019-05-16 18:10:47 -05:00
  • 522ed147b1 use the subnet derived ID/mask when creating a connection based on a subnet address, fix a potential blocking channel send in tuntap/conn.go, and get debug.go compiling well enough to profile things (the sim is currently still broken) Arceliar 2019-05-15 18:01:26 -05:00
  • 5bed78c7a7 add CC0 for good measure fifteenthcommotion 2019-05-12 12:40:45 -07:00
  • db85a11194 unlicense and spacing perfectionism fifteenthcommotion 2019-05-12 02:18:03 -07:00
  • 5a3c730097 contribute decently fast yggdrasil address generator in C fifteenthcommotion 2019-05-11 16:31:46 -07:00
  • efdaea1b5e fix some races and GetBytes/PutBytes usage, but this still seems to deadlock somewhere in iperf tests Arceliar 2019-05-02 17:37:49 -05:00
  • 5f66c4c95c
    Try using separate workers for each TUN/TAP connection (sometimes produces duplicate packets when communicating with both the node address and a subnet address, sometimes also can't Ctrl-C to quit) Neil Alexander 2019-04-28 17:14:09 +01:00
  • 6469e39ff1 workaround to random timeouts Arceliar 2019-04-26 22:42:05 -05:00
  • 5d323861f0 properly fix the memory errors, it was caused by a function returning and PutBytes-ing a buffer before a worker had a chance to decrypt the buffer, so it would GetBytes the same buffer by dumb luck and then get an illegal overlap Arceliar 2019-04-26 22:21:31 -05:00
  • 01ea6d3d80 somehow this doesn't seem to deadlock or crash from buffer reuse (util.PutBytes), but I have no idea why it was doing that before and not now Arceliar 2019-04-26 21:49:11 -05:00
  • 15051b0a3c Add deadline timers, keep searches alive until they complete (or the conn is closed) to keep Write from blocking forever Arceliar 2019-04-26 19:31:47 -05:00
  • 0059baf36c add a newConn function that returns a pointer to a Conn with atomics properly initialized Arceliar 2019-04-26 18:07:57 -05:00
  • 75130f7735
    Fix TAP support again Neil Alexander 2019-04-23 11:46:16 +01:00
  • 2b44f5d2f6
    Fix TAP support Neil Alexander 2019-04-23 11:37:32 +01:00
  • b4513ca2e8
    Re-add support for TAP mode Neil Alexander 2019-04-23 10:43:07 +01:00
  • 870b2b6a2e
    Remove CKR from src/yggdrasil (it will be moved into tuntap) Neil Alexander 2019-04-23 10:28:40 +01:00
  • 2bee3cd7ca
    Update TODOs at top of tun.go Neil Alexander 2019-04-23 00:04:22 +01:00
  • d7a1c04748
    It works, sort of, amazingly Neil Alexander 2019-04-22 23:58:59 +01:00
  • e1a2d666bf
    Clean up router, tweaks Neil Alexander 2019-04-22 23:12:13 +01:00
  • 6e528799e9
    Conn Read/Write operations will block while search completes Neil Alexander 2019-04-22 22:38:37 +01:00
  • ea8948f378
    TUN/TAP addr/subnet to Conn mappings, other fixes Neil Alexander 2019-04-22 20:06:39 +01:00
  • 9778f5d2b8
    Fix search behaviour on closed Conns, various other fixes Neil Alexander 2019-04-22 15:00:19 +01:00
  • bbd1246f7b
    Fix bug in mask generation for outbound dials, change iface reader mutexes to read-only locks unless RW is needed Neil Alexander 2019-04-22 11:49:47 +01:00
  • ccf03fd3b6
    Don't write huge mostly empty buffers unnecessarily Neil Alexander 2019-04-22 11:22:40 +01:00
  • 47eb2fc47f
    Break deadlock by creating session recv queue when session is created instead of repointing at search completion, also make expired atomic Neil Alexander 2019-04-22 11:20:35 +01:00
  • 5a02e2ff44 apparently it was these callbacks that were sometimes deadlocking things Arceliar 2019-04-21 22:31:56 -05:00
  • 9ce7fe2e3f fix tun/tap CIDR notation so things work on linux, may break other platforms for all I know Arceliar 2019-04-21 20:56:12 -05:00
  • 5dada3952c use a session worker to try to avoid mutex hell. compiles, but incomplete and doesn't work yet Arceliar 2019-04-21 20:38:14 -05:00
  • 0b8f5b5dda
    Tweaks Neil Alexander 2019-04-21 12:28:46 +01:00
  • 781cd7571f
    Fix race on tun conns, but still deadlocks if more than one connection is opened Neil Alexander 2019-04-21 12:00:31 +01:00
  • 79bcfbf175
    Change some mutexes to atomics, change conns map to pointers, sort of works but seems to deadlock very easily Neil Alexander 2019-04-21 11:50:41 +01:00
  • 62621f2960
    Some tweaks Neil Alexander 2019-04-20 20:22:58 +01:00
  • d01662c1fb
    Try to convert TUN/TAP to use new yggdrasil.Conn, search masks are still broken Neil Alexander 2019-04-20 16:32:27 +01:00
  • 319366513c
    Allow building with race detector Neil Alexander 2019-04-20 11:53:46 +01:00
  • f3e742a297
    Squash a whole load of races (and mutex half the world) Neil Alexander 2019-04-20 11:53:38 +01:00
  • 24281d4049
    Fix Read, update sample Neil Alexander 2019-04-19 23:47:11 +01:00
  • 693bcc5713
    Update sample in cmd/yggdrasil Neil Alexander 2019-04-19 23:30:57 +01:00
  • e31b914e38
    Improve errors and handling of expired sessions Neil Alexander 2019-04-19 23:30:43 +01:00
  • 7e726b0afb
    Listener should clean up a bit more when closing Neil Alexander 2019-04-19 23:04:09 +01:00
  • aac88adbed
    Listen-Accept-Read-Write pattern now works, amazingly Neil Alexander 2019-04-19 22:57:52 +01:00
  • 27b78b925d
    Move mutexes around Neil Alexander 2019-04-19 21:23:15 +01:00
  • e3eadba4b7
    Protect session nonces with mutexes, modify sent/received bytes atomically Neil Alexander 2019-04-19 20:10:41 +01:00
  • ade684beff
    Signal when a session is closed, other tweaks Neil Alexander 2019-04-19 10:55:15 +01:00
  • c593721362
    Tweaks Neil Alexander 2019-04-19 00:33:54 +01:00
  • b20c8b6da5
    Move some things around a bit, delete session workers Neil Alexander 2019-04-19 00:11:43 +01:00
  • b2f4f2e1b6
    Update errors, update Write Neil Alexander 2019-04-19 00:07:26 +01:00
  • 160e01e84f
    Searches called from api.go, various other tweaks, searches now have a callback for success/failure, node ID now reported by admin socket Neil Alexander 2019-04-18 23:38:23 +01:00
  • eef2a02d0a
    Experiment with new API Neil Alexander 2019-04-18 16:38:24 +01:00
  • 24fa8355f1
    Merge pull request #401 from neilalexander/modular Neil Alexander 2019-04-17 18:35:10 +01:00
  • 9bc24f8dbf
    Return both current and previous config when replacing Neil Alexander 2019-04-15 22:00:38 +01:00
  • 53fba06382
    Merge pull request #407 from cathugger/develop Arceliar 2019-04-11 00:28:27 -05:00
  • 71fa9413da contrib/yggdrasilconf: src/config.go Listen is now type []string William Fleurant 2019-04-11 00:27:22 -04:00
  • fb92c0d1ca admin-api: move from tcp/9001 to tcp/3959 William Fleurant 2019-04-07 19:13:43 -04:00
  • ed4e21478f
    Merge pull request #409 from vpzomtrrfrt/armel Neil Alexander 2019-04-07 23:30:07 +01:00
  • 2465ad0384
    Add armel to PKGARCH usage list Colin Reeder 2019-04-07 16:14:37 -06:00
  • b5e3b05e77 Add armel support to deb script Colin Reeder 2019-04-07 13:06:24 -06:00
  • 4488189a75
    wire: cleaner and faster wire_intToUint and wire_intFromUint cathugger 2019-04-06 21:34:47 +03:00
  • 7866f3a531
    wire: cleaner and faster wire_intToUint and wire_intFromUint cathugger 2019-04-06 21:09:56 +03:00
  • 2e72c7c93d
    Fix mobile logging Neil Alexander 2019-04-01 22:45:30 +01:00
  • 90feae6a7d
    Comment out AWDL (doesn't work in iOS properly) and move out of main package Neil Alexander 2019-04-01 20:12:39 +01:00
  • 350b51cabb
    TUN/TAP now uses config, log, etc from adapter.go Neil Alexander 2019-04-01 20:10:14 +01:00
  • 58f5cc88d0
    Fix session bug, fix dummy adapter, fix mobile framework builds Neil Alexander 2019-04-01 19:59:50 +01:00
  • 047717abf2
    Break out mobile and dummy adapter Neil Alexander 2019-04-01 18:02:06 +01:00
  • 39baf7365c
    Unexport/modify some interfaces to revive broken iOS/Android builds Neil Alexander 2019-03-30 00:09:35 +00:00
  • 4c0c3a23cb
    Fix bugs Neil Alexander 2019-03-29 18:24:57 +00:00
  • f19a4e4398
    More godoc improvements Neil Alexander 2019-03-29 18:18:31 +00:00
  • b5ac65cacb
    Rearrange public interface, godoc improvements Neil Alexander 2019-03-29 18:05:17 +00:00
  • 399e1a2ffe
    Make AddPeer remember added peer (as opposed to CallPeer which does not) Neil Alexander 2019-03-29 08:58:30 +00:00
  • a830521078
    Don't crash if Yggdrasil is started with no router adapter Neil Alexander 2019-03-29 08:38:09 +00:00
  • dd05a7f2a8
    Tweaks Neil Alexander 2019-03-28 19:09:19 +00:00
  • fd0b614f9c
    Temporarily disable debug CircleCI builds as I don't know how badly I've broken the sim with this PR Neil Alexander 2019-03-28 18:03:14 +00:00
  • 7ea4e9575e
    Break out multicast into a separate package Neil Alexander 2019-03-28 16:13:14 +00:00
  • 03bc7bbcd6
    Fix TUN/TAP for non-Darwin platforms Neil Alexander 2019-03-28 15:32:01 +00:00
  • eb22ed44ac
    Add new reject channel to router so we can send back rejected packets to adapter (e.g. for ICMPv6 Packet Too Big), implement ICMPv6 PTB in TUN/TAP instead of router Neil Alexander 2019-03-28 09:50:13 +00:00
  • 0715e829c2
    Fix adapter setup and no longer panics on packets shorter than IP header Neil Alexander 2019-03-28 09:12:00 +00:00
  • 0b494a8255
    Refactoring: move tuntap and icmpv6 into separate package Neil Alexander 2019-03-28 00:30:25 +00:00
  • 7f0e3d5135
    Break out TUN/TAP into another package, make various other changes to support it Neil Alexander 2019-03-27 20:10:25 +00:00
  • 658a7c6948
    Slight rearrangement of TXT handling Neil Alexander 2019-03-27 17:26:16 +00:00
  • a642c6009f
    Update addPeer behavior and peer loop for URIs that may have transforms (like srv:// and txt://) Neil Alexander 2019-03-26 19:15:59 +00:00
  • 246c60ae4d
    Experimental (read: badly tested) support for srv:// and txt:// handlers Neil Alexander 2019-03-25 23:58:53 +00:00
  • 240883ad4b
    Merge pull request #19 from yggdrasil-network/develop Christer Warén 2019-03-22 08:53:49 +02:00
  • 67c670ab4c
    Merge pull request #391 from aparcar/patch-1 Neil Alexander 2019-03-19 16:39:02 +00:00