]> git.ipfire.org Git - thirdparty/wireguard-tools.git/log
thirdparty/wireguard-tools.git
9 years agowg: abstract sockets are dangerous
Jason A. Donenfeld [Thu, 21 Jul 2016 10:27:54 +0000 (12:27 +0200)] 
wg: abstract sockets are dangerous

They have no permissions, so we're probably better off just creating a
socket file with the umask set, as we do in BSD.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agowg: rename kernel to ipc
Jason A. Donenfeld [Wed, 20 Jul 2016 19:24:27 +0000 (21:24 +0200)] 
wg: rename kernel to ipc

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agowg: support horrible freebsd/osx/unix semantics
Jason A. Donenfeld [Wed, 20 Jul 2016 18:52:11 +0000 (20:52 +0200)] 
wg: support horrible freebsd/osx/unix semantics

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agowg: first additions of userspace integration
Jason A. Donenfeld [Tue, 19 Jul 2016 13:26:56 +0000 (15:26 +0200)] 
wg: first additions of userspace integration

This is designed to work with a server that follows this:

  struct sockaddr_un addr = {
      .sun_family = AF_UNIX,
      .sun_path = "/var/run/wireguard/wguserspace0.sock"
  };
  int fd, ret;
  ssize_t len;
  socklen_t socklen;
  struct wgdevice *device;

  fd = socket(AF_UNIX, SOCK_DGRAM, 0);
  if (fd < 0)
      exit(1);
  if (bind(fd, (struct sockaddr *)&addr, sizeof(addr)) < 0)
      exit(1);

  for (;;) {
      /* First we look at how big the next message is, so we know how much to
       * allocate. Note on BSD you can instead use ioctl(fd, FIONREAD, &len). */
      len = recv(fd, NULL, 0, MSG_PEEK | MSG_TRUNC);
      if (len < 0) {
          handle_error();
          continue;
      }
      /* Next we allocate a buffer for the received data. */
      device = NULL;
      if (len) {
          device = malloc(len);
          if (!device) {
              handle_error();
              continue;
          }
      }
      /* Finally we receive the data, storing too the return address. */
      socklen = sizeof(addr);
      len = recvfrom(fd, device, len, 0, (struct sockaddr *)&addr, (socklen_t *)&socklen);
      if (len < 0) {
          handle_error();
          free(device);
          continue;
      }
      if (!len) { /* If len is zero, it's a "get" request, so we send our device back. */
          device = get_current_wireguard_device(&len);
          sendto(fd, device, len, 0, (struct sockaddr *)&addr, socklen);
      } else { /* Otherwise, we just received a wgdevice, so we should "set" and send back the return status. */
          ret = set_current_wireguard_device(device);
          sendto(fd, &ret, sizeof(ret), 0, (struct sockaddr *)&addr, socklen);
          free(device);
      }
  }

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agowg: fix numbering in man page
Jason A. Donenfeld [Mon, 11 Jul 2016 10:49:47 +0000 (12:49 +0200)] 
wg: fix numbering in man page

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agopersistent keepalive: use authenticated keepalives
Jason A. Donenfeld [Fri, 8 Jul 2016 18:34:32 +0000 (20:34 +0200)] 
persistent keepalive: use authenticated keepalives

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agoexamples: update ncat-client-server readme
Jason A. Donenfeld [Fri, 8 Jul 2016 21:41:45 +0000 (23:41 +0200)] 
examples: update ncat-client-server readme

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agopersistent keepalive: enable in an example
Jason A. Donenfeld [Fri, 8 Jul 2016 10:36:04 +0000 (12:36 +0200)] 
persistent keepalive: enable in an example

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agopersistent keepalive: documentation
Jason A. Donenfeld [Fri, 8 Jul 2016 00:52:41 +0000 (02:52 +0200)] 
persistent keepalive: documentation

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agopersistent keepalive: add userspace support
Jason A. Donenfeld [Fri, 8 Jul 2016 00:30:03 +0000 (02:30 +0200)] 
persistent keepalive: add userspace support

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agogo test: don't rely on undefined append behavior
Jonathan Rudenberg [Thu, 7 Jul 2016 11:58:30 +0000 (07:58 -0400)] 
go test: don't rely on undefined append behavior

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agorust test: actually use tai64n
Jason A. Donenfeld [Thu, 7 Jul 2016 11:48:04 +0000 (13:48 +0200)] 
rust test: actually use tai64n

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agogo test: actually use TAI64N
Jason A. Donenfeld [Thu, 7 Jul 2016 11:47:32 +0000 (13:47 +0200)] 
go test: actually use TAI64N

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agogo test: don't use 1 as icmp ids
Jason A. Donenfeld [Thu, 7 Jul 2016 11:44:01 +0000 (13:44 +0200)] 
go test: don't use 1 as icmp ids

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agogo test: dynamically calculate ip checksum
Jason A. Donenfeld [Thu, 7 Jul 2016 11:42:35 +0000 (13:42 +0200)] 
go test: dynamically calculate ip checksum

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agogo test: add ICMP ping
Jonathan Rudenberg [Thu, 7 Jul 2016 02:57:08 +0000 (22:57 -0400)] 
go test: add ICMP ping

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agoexternal-tests: switch to demo server
Jason A. Donenfeld [Thu, 7 Jul 2016 01:52:21 +0000 (03:52 +0200)] 
external-tests: switch to demo server

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agogo test: put nonce at correct location
Jason A. Donenfeld [Thu, 7 Jul 2016 00:32:40 +0000 (02:32 +0200)] 
go test: put nonce at correct location

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agogo test: make more idiomatic
Jonathan Rudenberg [Wed, 6 Jul 2016 23:49:30 +0000 (19:49 -0400)] 
go test: make more idiomatic

- gofmt
- Give config struct one line per field
- Use camel case
- Check errors
- Log invariants with detail
- Use consistent pronouns

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agowg: use pkg-config in Makefile
Jason A. Donenfeld [Wed, 6 Jul 2016 21:51:00 +0000 (23:51 +0200)] 
wg: use pkg-config in Makefile

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agocontrib: organize example scripts and add synergy
Jason A. Donenfeld [Tue, 5 Jul 2016 14:01:31 +0000 (16:01 +0200)] 
contrib: organize example scripts and add synergy

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agowg: always fallback to /dev/urandom
Jason A. Donenfeld [Sun, 3 Jul 2016 18:39:47 +0000 (20:39 +0200)] 
wg: always fallback to /dev/urandom

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agowg: improve error reporting and detection
Jason A. Donenfeld [Sun, 3 Jul 2016 18:06:33 +0000 (20:06 +0200)] 
wg: improve error reporting and detection

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agocontrib: remove extraneous cruft
Jason A. Donenfeld [Fri, 1 Jul 2016 21:36:59 +0000 (23:36 +0200)] 
contrib: remove extraneous cruft

We don't want people packaging these or even using these scripts, which
are only useful for limited development circumstances, so get rid of
them. More widespread development testing techniques still exist in
src/debug.mk and src/netns.sh

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agowg.8: wording tweaks
Jason A. Donenfeld [Fri, 1 Jul 2016 02:08:29 +0000 (04:08 +0200)] 
wg.8: wording tweaks

Suggested-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agoReadme: the documentation moved to .io
Jason A. Donenfeld [Thu, 30 Jun 2016 19:45:42 +0000 (21:45 +0200)] 
Readme: the documentation moved to .io

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agoReadme: use https instead of http
Daniel Kahn Gillmor [Thu, 30 Jun 2016 18:47:09 +0000 (14:47 -0400)] 
Readme: use https instead of http

For the websites referenced that offer https instead of http, use
https.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
9 years agoInitial commit
Jason A. Donenfeld [Fri, 5 Jun 2015 13:58:00 +0000 (15:58 +0200)] 
Initial commit

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>