aboutsummaryrefslogtreecommitdiff
path: root/device/device.go
AgeCommit message (Expand)Author
2023-12-11device: fix possible deadlock in close methodHEADmasterMartin Basovnik
2023-12-11device: change Peer.endpoint locking to reduce contentionJordan Whited
2023-10-10device: move Queue{In,Out}boundElement Mutex to container typeJordan Whited
2023-06-27device: wait for and lock ipc operations during closeJames Tucker
2023-03-10conn, device, tun: implement vectorized I/O plumbingJordan Whited
2023-02-16device: uniformly check ECDH output for zerosJason A. Donenfeld
2023-02-07global: bump copyright yearJason A. Donenfeld
2022-09-20global: bump copyright yearJason A. Donenfeld
2022-09-04all: use Go 1.19 and its atomic typesBrad Fitzpatrick
2021-11-16device: align 64-bit atomic member in DeviceJason A. Donenfeld
2021-11-15device: make new peers inherit broken mobile semanticsJason A. Donenfeld
2021-11-15device: defer state machine transitions until configuration is completeJason A. Donenfeld
2021-05-22device: allow reducing queue constants on iOSJason A. Donenfeld
2021-05-07device: add ID to repeated routinesJason A. Donenfeld
2021-04-02all: make conn.Bind.Open return a slice of receive functionsJosh Bleecher Snyder
2021-03-30device: rename unsafeCloseBind to closeBindLockedJosh Bleecher Snyder
2021-03-06device: get rid of peers.empty boolean in timersActiveJason A. Donenfeld
2021-02-23conn: make binds replacableJason A. Donenfeld
2021-02-10device: return error from Up() and Down()Jason A. Donenfeld
2021-02-09device: handshake routine writes into encryption queueJason A. Donenfeld
2021-02-09device: make RoutineReadFromTUN keep encryption queue aliveJosh Bleecher Snyder
2021-02-09device: clarify device.state.state docs (again)Josh Bleecher Snyder
2021-02-09device: rename unsafeRemovePeer to removePeerLockedJason A. Donenfeld
2021-02-09device: remove deviceStateNewJason A. Donenfeld
2021-02-09device: fix comment typo and shorten state.mu.Lock to state.LockJason A. Donenfeld
2021-02-09device: fix typo in commentJason A. Donenfeld
2021-02-09device: fix alignment on 32-bit machines and test for itJason A. Donenfeld
2021-02-09device: do not log on idempotent device state changeJason A. Donenfeld
2021-02-08device: create channels.goJosh Bleecher Snyder
2021-02-08device: remove device.state.stopping from RoutineTUNEventReaderJosh Bleecher Snyder
2021-02-08device: overhaul device state managementJosh Bleecher Snyder
2021-02-08device: remove device.state.stopping from RoutineHandshakeJosh Bleecher Snyder
2021-02-08device: remove device.state.stopping from RoutineDecryptionJosh Bleecher Snyder
2021-02-03device: tie encryption queue lifetime to the peers that write to itJosh Bleecher Snyder
2021-02-02device: use a waiting sync.Pool instead of a channelJason A. Donenfeld
2021-01-29device: use int64 instead of atomic.Value for time stampJason A. Donenfeld
2021-01-29device: use new model queues for handshakesJason A. Donenfeld
2021-01-29device: simplify peer queue lockingJason A. Donenfeld
2021-01-28global: bump copyrightJason A. Donenfeld
2021-01-28device: do not allow get to run while set runsJason A. Donenfeld
2021-01-27device: avoid deadlock when changing private key and removing self peersJason A. Donenfeld
2021-01-27device: use linked list for per-peer allowed-ip traversalJason A. Donenfeld
2021-01-26device: combine debug and info log levels into 'verbose'Jason A. Donenfeld
2021-01-26device: change logging interface to use functionsJosh Bleecher Snyder
2021-01-25device: serialize access to IpcSetOperationJosh Bleecher Snyder
2021-01-20device: remove unnecessary zeroingJosh Bleecher Snyder
2021-01-20device: put handshake buffer in pool in FlushPacketQueuesJosh Bleecher Snyder
2021-01-20device: use channel close to shut down and drain decryption channelJosh Bleecher Snyder
2021-01-07device: receive: drain decryption queue before exiting RoutineDecryptionJason A. Donenfeld
2021-01-07all: use ++ to incrementJosh Bleecher Snyder