[PKG-IRC-Maintainers] Bug#519910: inspircd: weird and undocumented syntax required for links, accessign clsoed fd's

Marc Lehmann debian-reportbug at plan9.de
Mon Mar 16 06:02:16 UTC 2009


Package: inspircd
Version: 1.1.22+dfsg-3
Severity: normal


when having two servers with the following link lines (without passwords
etc.):

   <link name="server2" ipaddr="1.0.0.2"

   <link name="server1" ipaddr="1.0.0.1"

then despite trying to connect,t he other server will instantly close the
conenction, without logging a message:

   accept(11, {sa_family=AF_INET6, sin6_port=htons(41545), inet_pton(AF_INET6, "::ffff:1.0.0.1", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, [28]) = 23
   close(23)                               = 0
   fcntl(23, F_GETFL)                      = -1 EBADF (Bad file descriptor)
   fcntl(23, F_SETFL, O_ACCMODE|O_CREAT|O_EXCL|O_NOCTTY|O_TRUNC|O_APPEND|O_NONBLOCK|O_SYNC|O_ASYNC|O_DIRECT|O_LARGEFILE|O_DIRECTORY|O_NOFOLLOW|O_NOATIME|O_CLOEXEC|0xfff0003c) = -1 EBADF (Bad file descriptor)
   setsockopt(23, SOL_SOCKET, SO_SNDBUF, [32768], 4) = -1 EBADF (Bad file descriptor)

The first problem here is that the socket gets close()ed first, and then
inspircd tries to access it - when any multithreadeds modules are in use,
this will poentially damage unrelated file descriptions under the same
file descriptor.

The second problem is that ipv4 addresses are not matched correctly -
inspircd will try to connect to the correct address, but the receiving
server requires specification of ::ffff:1.0.0.1 instead of just 1.0.0.1
for the ip address to match.

-- System Information:
Debian Release: 5.0
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.26-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages inspircd depends on:
hi  libc6                        2.9-4       GNU C Library: Shared libraries
ii  libgcc1                      1:4.3.2-1.1 GCC support library
ii  libgnutls26                  2.6.4-2     the GNU TLS library - runtime libr
ii  libstdc++6                   4.3.2-1.1   The GNU Standard C++ Library v3

inspircd recommends no packages.

inspircd suggests no packages.

-- no debconf information





More information about the Pkg-irc-maintainers mailing list