Commit Graph

909 Commits

Author SHA1 Message Date
Oleksandr Natalenko 11dd73a646 rename check_superuser() to check_privileges()
It's a preparatory commit to reflect upcoming changes in how
capabilities are checked under Linux in presence of libcap-ng.

No functional change.

Signed-off-by: Oleksandr Natalenko <oleksandr@redhat.com>
2022-10-17 13:53:39 +02:00
Erik Ekman df49fd6f3d Update changelog 2022-07-18 23:36:07 +02:00
Erik Ekman 3cb6a1eec2 user: Expand newip char array
Avoid warning
../src/user.c:66:17: note: ‘snprintf’ output between 8 and 18 bytes into a destination of size 16
2022-07-18 23:35:54 +02:00
Erik Ekman 17169e3444 tun: Add openvpn componentid prefix
Some drivers use root prefix. See https://patchwork.openvpn.net/patch/555/

Hopefully helping with bugs #46 and #73.
2022-07-18 23:31:13 +02:00
Erik Ekman 1df7d235f5
Merge pull request #61 from NilsIrl/makefile_cd
Use `make -C <dir>` instead of (cd <dir> && make)
2021-10-11 00:10:53 +02:00
Nils c74618ae9e Use `make -C <dir>` instead of (cd <dir> && make)
* fixes the build for some people #57
* cleaner and more idiomatic
2021-10-10 17:40:33 +01:00
Erik Ekman 25867f20b4 readme: Reword the multiple domain section
Using the same host was repeated
2021-08-29 14:56:25 +02:00
Erik Ekman b004723a28 readme: Update markdown format
Remove backslash

Add note that all domains should point to the same host (will be assumed
later)
2021-08-29 13:54:48 +02:00
Erik Ekman 0032ffa055
readme: Add IPv6 DNS setup example 2021-08-25 22:18:38 +02:00
Erik Ekman 3818a59541 util: Remove duplicate assignments of rv to NULL 2021-08-25 22:05:19 +02:00
Erik Ekman 853d5f3764 Update CHANGELOG 2021-08-25 22:00:11 +02:00
Erik Ekman 95fde8b3ee Handle wildcard prefix of allowed tunnel domain names 2021-08-25 01:24:58 +02:00
Erik Ekman f1e7823a3d Add helper for matching topdomain and getting data length 2021-08-25 01:13:48 +02:00
Erik Ekman 589027568b Add option to allow wildcard as start of topdomain 2021-08-24 23:32:57 +02:00
Erik Ekman f09dadb1ed test: Replace assert_msg(strcmp(),...) with str_eq
str_eq will print the strings in case of failure:

Assertion '"BB." == buf' failed: "BB." == "BB.", buf == "BA."
2021-08-24 23:10:26 +02:00
Erik Ekman 5388eae1df test/common: Use ck_assert_str_eq to verify strings
Requires check 0.9.6, released Dec 2008

Also reset error ptr between checks.
2021-08-24 23:04:32 +02:00
Erik Ekman 6e4107a93b Avoid make recursing in case a directory is missing 2021-08-18 12:36:20 +02:00
Erik Ekman f5a82afe29 Initialize get_resolvconf_addr variable rv to NULL
Getting warning compiling for Android:

./util.c:35:6: warning: variable 'rv' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
        if (sscanf(buf, "%15s", addr) == 1)
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./util.c:79:9: note: uninitialized use occurs here
        return rv;
               ^~
2021-08-16 15:06:02 +02:00
Erik Ekman cfd0b07e1f Attempt to do cross-android build in CI 2021-08-16 14:58:20 +02:00
Erik Ekman 569a86a140 Fix Android cross-compile
./common.h:136:29: error: unknown type name 'va_list'
 void vwarn(const char *fmt, va_list list);
                             ^
2021-08-16 14:45:02 +02:00
Erik Ekman cb6cbecba1 Make it clearer that iodine is asking for a password
To not confuse it with sudo or similar
2021-08-16 10:34:41 +02:00
Erik Ekman 348aee839a
Merge pull request #55 from yarrick/win-ci
Add github CI action for Windows
2021-08-16 09:36:20 +02:00
Erik Ekman d00eba8df2 Add github CI action for Windows
Hardcode TARGETOS to make it work.
2021-08-16 09:31:55 +02:00
Erik Ekman 8afcf4fb8d Add github CI action for macOS 2021-08-11 09:40:35 +02:00
Erik Ekman f19948b6cf Fix ubuntu CI test target 2021-08-11 09:36:53 +02:00
Erik Ekman aa5819fe35
Add github CI action for ubuntu 2021-08-11 09:35:05 +02:00
Erik Ekman 1684aa3806 Travis is dead 2021-08-11 09:28:33 +02:00
Erik Ekman ee623a2d84 Rework handling of IPv6 address failures
Skip IPv6 on any error getting the default address (::) if IPv6 is not
explicitly chosen.
2021-08-11 09:23:03 +02:00
Erik Ekman 43a82ef6be Print getaddrinfo failure properly 2021-08-09 13:42:49 +02:00
Erik Ekman 559dafb030 Attempt skipping IPv6 if not supported 2021-08-09 12:14:42 +02:00
Erik Ekman 3c7169fcf5 Change formatter for size_t from %d to %zu in tests 2021-06-05 14:47:24 +02:00
Erik Ekman f2b619faad Allow looking up external address and listen to it 2021-06-04 19:06:03 +02:00
Erik Ekman a6d82b1a44 Allow listen adresses to be non-numeric (using domains) 2021-06-04 18:57:34 +02:00
Erik Ekman 8041e0368c Print address when failing to bind 2021-06-04 18:38:50 +02:00
Erik Ekman d02f1b4f41 tun: Fix warning
tun.c:389:19: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
        if (addr.sc_unit < 0) {
            ~~~~~~~~~~~~ ^ ~
2021-05-14 13:38:51 +02:00
Erik Ekman 4c46580e43 Remove brew update in travis script 2021-05-14 13:33:41 +02:00
Erik Ekman 02173b8352 Fix iteration of utun devices on macos
Pass the constructed name instead of NULL to open_utun

Also add some error handling to utun_unit.
2021-05-13 20:13:00 +02:00
Erik Ekman 25e4caa105 Update vimrc 2021-05-13 20:11:41 +02:00
Erik Ekman dc307b7183 Add prototypes for vwarn/vwarnx
Fixes this warning:
common.c:406:1: warning: no previous prototype for 'vwarn' [-Wmissing-prototypes]
  406 | vwarn(const char *fmt, va_list list)
      | ^~~~~
common.c:429:1: warning: no previous prototype for 'vwarnx' [-Wmissing-prototypes]
  429 | vwarnx(const char *fmt, va_list list)
      | ^~~~~~

Also move err() to have non-x versions first.
2021-01-31 14:08:27 +01:00
Erik Ekman 6a7763c210 More compact no-op of Windows syslog 2021-01-31 14:01:13 +01:00
Erik Ekman cc51ee6f02 Formatting: Indent multi-line prints less 2021-01-31 13:54:09 +01:00
Erik Ekman 4b3d6e2962 Formatting: Use tabs for indents 2021-01-31 13:46:12 +01:00
Erik Ekman 9faaa44787 Add simple vimrc 2021-01-31 13:46:12 +01:00
Erik Ekman a9045705ba tun: Automatically attempt to use utun on mac
Once /dev/tunX has been tried without success
2021-01-21 17:40:22 +01:00
Erik Ekman 39356163d9 Formatting: Fix mixed use of tabs and spaces 2020-08-01 17:29:49 +02:00
Erik Ekman 9a041683be Formatting: Fix lines starting with spaces 2020-08-01 17:19:37 +02:00
Erik Ekman 8d2c86c73d Fix strncat size argument in send_handshake_query
Found by clang:
client.c:1276:26: warning: the value of the size argument in 'strncat' is too large, might lead to a buffer overflow [-Wstrncat-size]
        strncat(buf, topdomain, sizeof(buf) - strlen(buf));
                                ^~~~~~~~~~~~~~~~~~~~~~~~~
2020-07-25 15:45:24 +02:00
Erik Ekman b7b1082dc6 client: Stop passing static variable userid to local functions 2020-07-24 21:17:18 +02:00
Erik Ekman c399f915b7 Improve logging around getting server address 2020-07-24 21:01:38 +02:00
Erik Ekman bbb604db06 Use send_handshake_query inside send_lazy_switch 2020-07-24 20:49:39 +02:00