Hi

This updates librelp to version 1.9.0. The changelog can be found here:
https://github.com/rsyslog/librelp/blob/master/ChangeLog

Many changes are related to TLS and openssl. I had to add a patch to make
it compile with libressl.

Running the tests shows that librelp does not work with libressl. Most TLS
tests run twice: once with gnutls and once with openssl. The runs with
openssl fail.

Most of the failures look like this:
send: authentication error 'Certificate error in verify_callback at depth: 1
        issuer  = /CN=rsyslog ca/OU=Adiscon/O=Adiscon 
GmbH/L=Grossrinderfeld/ST=BW/C=DE/DC=rsyslog
        subject = /CN=rsyslog ca/OU=Adiscon/O=Adiscon 
GmbH/L=Grossrinderfeld/ST=BW/C=DE/DC=rsyslog
        err 53:unsupported or invalid name syntax
', object 'unsupported or invalid name syntax'

The certificate used by the test with the above error is this one:
https://github.com/rsyslog/librelp/tree/master/tests/tls-certs/cert.pm

rsyslogd is the user of librelp and  our package is linked against gnutls
and therefor not directly affected by these failures with libressl.

I verified that rsyslogd in ports can still send messages with omrelp and
tls=on. The rsyslogd package needs to be rebuilt (library version).

Comments, hints, OKs?

Remi


Index: Makefile
===================================================================
RCS file: /cvs/ports/sysutils/librelp/Makefile,v
retrieving revision 1.17
diff -u -p -r1.17 Makefile
--- Makefile    25 Aug 2020 05:48:54 -0000      1.17
+++ Makefile    7 Feb 2021 10:42:03 -0000
@@ -2,9 +2,9 @@
 
 COMMENT =      reliable event logging protocol library
 
-DISTNAME =     librelp-1.6.0
+DISTNAME =     librelp-1.9.0
 
-SHARED_LIBS +=  relp                      4.0 # 5.0
+SHARED_LIBS +=  relp                      5.0 # 5.0
 
 CATEGORIES =   sysutils
 
@@ -15,7 +15,7 @@ MAINTAINER =  Remi Locherer <remi@openbsd
 # GPLv3+
 PERMIT_PACKAGE =       Yes
 
-WANTLIB =  ffi gmp gnutls hogweed iconv idn2 intl nettle p11-kit pthread
+WANTLIB =  gmp gnutls hogweed iconv idn2 intl nettle p11-kit pthread
 WANTLIB += tasn1 unistring crypto ssl
 
 MASTER_SITES =         http://download.rsyslog.com/librelp/
Index: distinfo
===================================================================
RCS file: /cvs/ports/sysutils/librelp/distinfo,v
retrieving revision 1.9
diff -u -p -r1.9 distinfo
--- distinfo    25 Aug 2020 05:48:54 -0000      1.9
+++ distinfo    7 Feb 2021 10:42:24 -0000
@@ -1,2 +1,2 @@
-SHA256 (librelp-1.6.0.tar.gz) = z2zJSKWz0eVrMlFYXBG+6hxbKF/L+OKa1olVx+t1+Mo=
-SIZE (librelp-1.6.0.tar.gz) = 522827
+SHA256 (librelp-1.9.0.tar.gz) = JO6ehDlg0UAKRP+u2wseyRRj34+KzKhpzAJ+0l7mvzM=
+SIZE (librelp-1.9.0.tar.gz) = 540477
Index: patches/patch-src_tcp_c
===================================================================
RCS file: patches/patch-src_tcp_c
diff -N patches/patch-src_tcp_c
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_tcp_c     10 Jan 2021 23:44:08 -0000
@@ -0,0 +1,14 @@
+$OpenBSD$
+
+Index: src/tcp.c
+--- src/tcp.c.orig
++++ src/tcp.c
+@@ -1494,7 +1494,7 @@ relpTcpSslInitCerts(relpTcp_t *const pThis, char *ownC
+       ENTER_RELPFUNC;
+ 
+       if(     ownCertFile!= NULL ) {
+-      #if OPENSSL_VERSION_NUMBER >= 0x10100000L
++      #if OPENSSL_VERSION_NUMBER >= 0x10100000L && 
!defined(LIBRESSL_VERSION_NUMBER)
+               if (SSL_use_certificate_chain_file(pThis->ssl, ownCertFile) != 
1) {
+       #else
+               if (SSL_use_certificate_file(pThis->ssl, ownCertFile, 
SSL_FILETYPE_PEM) != 1) {

Reply via email to