296 Commits

Author SHA1 Message Date
Nikos Mavrogiannopoulos
1837b5877d NEWS: updated for 1.4.1
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2026-01-04 15:11:37 +01:00
Nikos Mavrogiannopoulos
5f5ac6fe65 Released 1.4.0
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2026-01-04 14:41:44 +01:00
Dimitri Papadopoulos Orfanos
d817992938 Merge branch 'gperf' into 'master'
build: add gperf check

See merge request openconnect/ocserv!466
2025-11-21 21:07:48 +01:00
Grigory Trenin
49a807a25f build: add gperf check
Check for gperf in ./configure to provide a clear, user-friendly
error message if it's not found and required generated files are
missing, instead of failing at compile time.

Also fix an invalid package name ('install') in README.md for
Fedora/RHEL build.

Signed-off-by: Grigory Trenin <grigory.trenin@gmail.com>
2025-11-06 15:57:19 -05:00
Mohammad Amin Taheri
77b1bffaa5 docs: add ipcalc installation in README.md
Signed-off-by: Mohammad Amin Taheri <xirehat@gmail.com>

docs: update ipcalc in configure.ac
2025-08-17 22:19:17 +03:30
Dimitri Papadopoulos
caeb4fa103 Follow-up to cf56c975: remove http-parser
Delete last occurrence of http-parser.

Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com>
2024-09-09 21:34:29 +02:00
Nikos Mavrogiannopoulos
92dba6e4f5 released 1.3.0
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2024-05-05 21:08:20 +02:00
Nikos Mavrogiannopoulos
cf56c9754b Switch from http-parser to llhttp
http-parser is an unmaintained library that has been replaced by llhttp.

Resolves: #598

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2024-04-28 13:37:19 +02:00
Nikos Mavrogiannopoulos
444ae6022a bumped version [ci skip]
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2024-02-02 16:29:50 +01:00
Nikos Mavrogiannopoulos
fe05d2a630 Require ipcalc for the test suite
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2024-01-25 09:57:39 +01:00
Nikos Mavrogiannopoulos
7ced730fb2 released 1.2.4
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2024-01-22 22:57:08 +01:00
Dimitri Papadopoulos
badf9be99a Further improvements to arguments of AC_INIT
Reapply df6a3c2a, this time without regression.

Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com>
2024-01-06 18:21:27 +01:00
Nikos Mavrogiannopoulos
311abb5443 coverage: fix coverage calculation
This fixes regression from df6a3c2abe

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2024-01-05 21:13:08 +01:00
Dimitri Papadopoulos Orfanos
92a9205814 Merge branch 'automake_1.14' into 'master'
Restore AM_PROG_CC_C_O instead of bumping minimal Automake version

See merge request openconnect/ocserv!402
2023-12-30 19:06:31 +00:00
Dimitri Papadopoulos
ff9d43df09 Revert eeac2728
AM_PROG_CC_C_O is obsolescent starting with Automake 1.14.

CentOS 7 ships Automake 1.13.4. Keep AM_PROG_CC_C_O as long as we need
to support CentOS 7, to avoid this warning:
	src/Makefile.am:170: warning: compiling 'ccan/hash/hash.c' in
	                              subdir requires 'AM_PROG_CC_C_O'
	                              in 'configure.ac'

Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com>
2023-12-30 13:06:04 +01:00
Dimitri Papadopoulos
df6a3c2abe Further improvements to arguments of AC_INIT
The first argument is the full package name. Change it to match the
GitLab home page and documentation:
	ocserv → OpenConnect VPN Server

The package tarname differs from the package name: the latter designates
the full package name, while the former is the distribution tarball name.
Because the tarname cannot be inferred from the newly modified full
package name, we have to set it explicitly:
	ocserv

The last argument url should be the home page for the package.

Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com>
2023-12-29 15:34:20 +01:00
Nikos Mavrogiannopoulos
1507742896 Merge branch 'bug-report' into 'master'
Modify bug-report argument of AC_INIT

See merge request openconnect/ocserv!401
2023-12-24 08:52:54 +00:00
Dimitri Papadopoulos
eeac272832 Get rid of obsolescent AM_PROG_CC_C_O
From the Automake manual:
	This is an obsolescent macro that checks that the C compiler
	supports the -c and -o options together. Note that, since
	Automake 1.14, the AC_PROG_CC is rewritten to implement such
	checks itself, and thus the explicit use of AM_PROG_CC_C_O
	should no longer be required.

Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com>
2023-12-23 23:17:45 +01:00
Dimitri Papadopoulos
443a4ea795 Modify bug-report argument of AC_INIT
The third argument of the Autoconf macro AC_INIT() is bug-report.

The Autoconf 2.61 manual states this should be an email:
	The optional argument bug-report should be the email to
	which users should send bug reports.

The Autoconf 2.68 manual relaxes the requirement by adding:
	AC_PACKAGE_BUGREPORT, PACKAGE_BUGREPORT
	Exactly bug-report, if one was provided. Typically an
	email address, or URL to a bug management web page.

Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com>
2023-12-23 13:01:00 +01:00
Dimitri Papadopoulos
725be86e0c Small autoconf fixes
Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com>
2023-11-26 14:43:01 +01:00
Nikos Mavrogiannopoulos
c7ca2c0c46 bumped version
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2023-10-03 12:30:08 +02:00
Nikos Mavrogiannopoulos
6dd533a10c bumped version
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2023-09-02 20:54:15 +02:00
Nikos Mavrogiannopoulos
02442aabbc Replaced nuttcp tests with iperf3
iperf3 is consistently included in all distributions we
are testing at, in contrast with nuttcp.

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2023-07-27 15:50:33 +02:00
Nikos Mavrogiannopoulos
7c8abd2e2c NEWS: updated for next release
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2023-07-11 19:39:09 +02:00
Nikos Mavrogiannopoulos
42b125a32f configure: bumped version
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2023-07-11 14:47:23 +02:00
Dimitri Papadopoulos
b6658a8eaa Get rid of strcasestr.c vendored file
The initial indea was to move strcasestr.c out of src/common,
as it only used by the main program, perhaps changing to the
OpenBSD implementation at the same time instead of falling back
to the Gnulib test.

Then it appeared we probably don't support systems without strcasestr().
I checked ihe following systems support it:
- glibc
- uClibc    https://git.uclibc.org/uClibc/tree/libc/string/strcasestr.c
- musl libc https://git.musl-libc.org/cgit/musl/tree/src/string/strcasestr.c
- Bionic    https://android.googlesource.com/platform/bionic/+log/master/libc/string/strcasestr.c
- Newlib    https://sourceware.org/git/?p=newlib-cygwin.git;a=blob;f=newlib/libc/string/strcasestr.c
- FreeeBSD  https://cgit.freebsd.org/src/tree/lib/libc/string/strcasestr.c
- OpenBSD   https://cvsweb.openbsd.org/src/lib/libc/string/strcasestr.c
- NetBSD    http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/string/strcasestr.c
- Solaris   https://docs.oracle.com/cd/E88353_01/html/E37843/strcasestr-3c.html

It might appear not to be available when _GNU_SOURCE or equivalent macros
have not been defined. Now with AC_USE_SYSTEM_EXTENSIONS, I doubt the
function is missing on any platform, therefore I get rid of the test and
the Gnulib fallback.

Signed-off-by: Dimitri Papadopoulos <3350651-DimitriPapadopoulos@users.noreply.gitlab.com>
2023-06-19 08:33:59 +02:00
Nikos Mavrogiannopoulos
1ca50d7337 Removed gnulib
Supporting gnulib brought a whole class of problems due to its complexity.
Removing its support eliminates this class of problems and simplifies the
code significantly.

This sets the locale explicitly on server startup to eliminate the
need for custom string comparison functions.

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2023-06-13 16:54:38 +02:00
Nikos Mavrogiannopoulos
1bc33ad612 released 1.1.7
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2023-05-07 14:07:55 +02:00
Dimitri Papadopoulos
f28669bf60 Remove spaces
* Remove trailing spaces at end-of-line
* Remove blank lines at end-of-file

Signed-off-by: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com>
2022-11-28 11:22:33 +01:00
Nikos Mavrogiannopoulos
8b00d198d9 released 1.1.6
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2022-02-17 09:21:36 +01:00
Nikos Mavrogiannopoulos
cd2ad0c66f radiusd.conf: set libdir through autoconf
It should depend on the system tested.

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2021-12-22 22:28:06 +01:00
Nikos Mavrogiannopoulos
11fdd9fb04 manpages: fixed output with ronn-ng
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2021-11-17 13:18:55 +01:00
Nikos Mavrogiannopoulos
176a10b8dc configure.ac: 1.1.4
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2021-11-13 08:45:56 +01:00
Nikos Mavrogiannopoulos
559a0f85c6 released 1.1.3
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2021-06-02 08:32:46 +02:00
Nikos Mavrogiannopoulos
bbaf5125e1 released 1.1.2
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-12-06 14:00:50 +01:00
Nikos Mavrogiannopoulos
16bfb30586 inih: reintroduced INI_STOP_ON_FIRST_ERROR
This also introduces better error reporting to inih, and
handling of the errors received by inih.

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-10-18 21:05:08 +02:00
Nikos Mavrogiannopoulos
e7233819da inih: increased max line size
This also removes the stop on first error directive
which was set but not used for very long time.

Resolves: #364

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-10-18 13:30:00 +02:00
Nikos Mavrogiannopoulos
b9f8ea6b6c bumped version for 1.1.1 release
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-09-21 12:21:21 +02:00
Nikos Mavrogiannopoulos
d0a509c6c3 tests: introduced new proxy protocol tests
This replaces the old no longer used "docker-tests".

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-08-09 21:32:27 +02:00
Nikos Mavrogiannopoulos
0ecef93423 .gitlab-ci.yml: reenable address sanitizer
This disables all the tests that use LD_PRELOAD, and thus limits
the test suite on the tests that are run as root.

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-08-05 23:08:43 +02:00
Nikos Mavrogiannopoulos
0fa951a06b .gitlab-ci.yml: introduced clang compilation
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-08-03 14:54:59 +02:00
William Dauchy
f4c7d41d14 add basic namespace support for listen address
- this patch adds `listen-netns` parameter
- when set the listening socket will be created in the given namespace

it allows to properly segregate your traffic:
- do the backend traffic in the root namespace
- receive the VIP traffic in a given namespace

All this patch is widely inspired by haproxy implementation which allows
to bind each IP in a given namespace.

Resolves: #316

Signed-off-by: William Dauchy <w.dauchy@criteo.com>
2020-07-13 18:11:30 +02:00
Alan Jowett
6533299b78 Improve accept rate limitation and make it conditional on queue depth.
Resolves: #310

Signed-off-by: Alan Jowett <alanjo@microsoft.com>
2020-07-11 12:51:29 +02:00
Alan Jowett
770c4202f5 Provide option to suppress tests that depend on /dev/net/tun
Signed-off-by: Alan Jowett <alanjo@microsoft.com>
2020-07-08 14:31:35 -06:00
Alan Jowett
be17dac16f OpenBSD lacks support for procfs
Based on
60641282df.

Snapshot of config files are used to ensure that ocserv-sm and
ocserv-worker remain in sync. These snapshots are anonymous files that
are passed via a file descriptor. A worker creates a new file
description and file descriptor by using open(2) on /proc/self/fd.
Unfortunately OpenBSD lacks support for procfs.

Instead of using snapshot of config files let workers use the config
files.

While here add a note to README.md about this limitation, and add a CI
run (from @nmav).

Signed-off-by: Björn Ketelaars <bjorn.ketelaars@hydroxide.nl>
2020-07-01 16:20:46 +02:00
Nikos Mavrogiannopoulos
56794e4b0c bumped version
Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-06-16 19:37:45 +02:00
Alan Jowett
722e030e58 Add reporting of RX latency
Resolve: #258

Signed-off-by: Alan Jowett <alanjo@microsoft.com>
2020-05-26 18:14:36 -06:00
Nikos Mavrogiannopoulos
350250ea82 worker: allow filtered calls to fail with a trap
This adds a fedora CI run to with filtered calls failing
with a signal in order to detect missing syscalls from our filters.

Signed-off-by: Nikos Mavrogiannopoulos <n.mavrogiannopoulos@gmail.com>
2020-05-10 21:45:05 +02:00
Nikos Mavrogiannopoulos
626ca7f377 configure: fixed enable-oidc-auth help message
Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
2020-04-22 13:01:43 +02:00
Nikos Mavrogiannopoulos
fd2bd42cb2 .gitlab-ci.yml: corrected kerberos tests
This also corrects the kerberos test script environment
to enable running the test.

Signed-off-by: Nikos Mavrogiannopoulos <nmav@gnutls.org>
2020-04-10 23:06:07 +02:00