rsyslog/librelp

error opening connection to remote peer

rssh22 opened this issue · 10 comments

I'm getting this error and I'm not sure if there is a problem with my configuration:

2020-09-15T08:37:12.000000+02:00 wlpro-sns11n2 rsyslogd[17247]: [ID 702911 syslog.error] omrelp[10.15.247.47:20514]: error 'error connecting: 'Interrupted system call'', object 'conn to srvr 10.15.247.47:20514' - action may not work as intended [v8.2008.0 try https://www.rsyslog.com/e/2353 ]
2020-09-15T08:37:12.000000+02:00 wlpro-sns11n2 rsyslogd[17247]: [ID 702911 syslog.error] omrelp[10.15.247.47:20514]: error 'error opening connection to remote peer', object 'conn to srvr 10.15.247.47:20514' - action may not work as intended [v8.2008.0 try https://www.rsyslog.com/e/2353 ]

I'm trying to send a log file from n2: wlpro-sns11n2 (10.15.247.48) to n1: wlpro-sns11n1 (10.15.247.47) through RELP.

RELP in node n1 is listening on port 20514 without TLS configuration.

I can do telnet from n2 to n1 on port 20514 (so there is no FW issues)

I've attached rsyslog.conf of both nodes.

rsyslog.conf.n2.txt
rsyslog.conf.n1.txt

I've enabled debug mode in both nodes but I haven't been able to see anything significant about the error.

Thanks in advance

image

This is the TCP connection try.

Is this running on CentOS 8 or Fedora 30 / 31?

And which rsyslog and relp versions are installed?

I'm running it on Solaris 11.3


# pkginfo -l CSWlibrelp0
   PKGINST:  CSWlibrelp0
      NAME:  librelp0 - A reliable logging library, librelp.so.0
  CATEGORY:  application
      ARCH:  sparc
   VERSION:  1.7.0,REV=2020.09.07
   BASEDIR:  /
    VENDOR:  http://www.librelp.com packaged for CSW by Dagobert Michelsen
    PSTAMP:  dam@unstable10s-20200907115308
  INSTDATE:  Sep 07 2020 17:17
   HOTLINE:  http://www.opencsw.org/bugtrack/
     EMAIL:  dam@opencsw.org
    STATUS:  completely installed
     FILES:        6 installed pathnames
                   1 directories
                   2 executables
                 589 blocks used (approx)

# pkginfo -l CSWrsyslog
   PKGINST:  CSWrsyslog
      NAME:  rsyslog - Enhanced multi-threaded syslogd with a focus on security and reliability
  CATEGORY:  application
      ARCH:  sparc
   VERSION:  8.2008.0,REV=2020.09.07
   BASEDIR:  /
    VENDOR:  http://www.rsyslog.com/files/download/rsyslog/ packaged for CSW by Dagobert Michelsen
    PSTAMP:  dam@unstable10s-20200907135754
  INSTDATE:  Sep 07 2020 17:17
   HOTLINE:  http://www.opencsw.org/bugtrack/
     EMAIL:  dam@opencsw.org
    STATUS:  completely installed
     FILES:       60 installed pathnames
                   5 shared pathnames
                   7 directories
                  48 executables
                4356 blocks used (approx)

@alorbach this sounds a bit like it could also be fixed by your last PR?

It was more TLS related. He is not using TLS, so we will need a debug log to tell more.

@rssh22 can you create a debug log? It would be best to have one of the client as well of the server. This sounds really strange.

Yeah sure, I'll attach a debug log asap.

Here are the debug files from node n1 (server) and n2 (client)

rsyslog.debug.zip

I reviewed the debug logfiles and I see the error:

omrelp.c: librelp: generic error: ecode 10014, emsg 'error connecting: 'Error 0''

This actually happens after client connect here:

librelp/src/tcp.c

Line 3598 in 31018d1

if(connect(pThis->sock, res->ai_addr, res->ai_addrlen) == -1) {

However errno is 0 which is strange and is not documented that way:
https://docs.oracle.com/cd/E53394_01/html/E54815/sockets-18552.html#OSPIGsockets-8

Also our testbench runs a Solaris 11 System and did not catch this error.

Perhaps there is something in your configuration that we do not test, could you post your fill client configuration as well?

I sent the client configuration in the file rsyslog.conf.n2.txt.