Subject: bug#55585: inetd-based bitlbee service terminating on new connections

From: Kaelyn <[email-masked]>
Date: Wed, 25 May 2022 15:31:25 +0000

On Wednesday, May 25th, 2022 at 3:04 AM, Ludovic Courtès <[email-masked]> wrote:

> Hi Kaelyn,
>
> Kaelyn [email-masked] skribis:
>
> > Recently I upgraded my server running bitlbee for the first time in a few weeks (from guix commit 3363f2c878 to 14384d9586), and after rebooting I was unable to connect to bitlbee because the child service spawned on connect terminates within a few seconds. I'm not certain, but I believe commit 211fe3f66e "services: bitlbee: Use 'make-inetd-constructor'." is the culprit. From /var/log/messages (with the IP address edited out) when I try to connect:
> >
> > May 21 21:24:31 localhost shepherd[1]: Accepted connection on 0.0.0.0:22 from W.X.Y.Z:38014.
> > May 21 21:25:21 localhost shepherd[1]: 0 connections still in use after bitlbee-3 termination.
> > May 21 21:25:21 localhost shepherd[1]: Service bitlbee-3 has been disabled.
> > May 21 21:25:21 localhost shepherd[1]: Transient service bitlbee-3 terminated, now unregistered.
> > May 21 21:25:26 localhost shepherd[1]: Accepted connection on 0.0.0.0:6969 from W.X.Y.Z:46492.
> > May 21 21:25:26 localhost shepherd[1]: Service bitlbee-4 has been started.
> > May 21 21:25:26 localhost shepherd[1]: 0 connections still in use after bitlbee-4 termination.
> > May 21 21:25:26 localhost shepherd[1]: Service bitlbee-4 has been disabled.
> > May 21 21:25:26 localhost shepherd[1]: Transient service bitlbee-4 terminated, now unregistered.
>
>
> What configuration of Bitlbee are you using?
>
> I have this:
>
> (service bitlbee-service-type
> (bitlbee-configuration
> (bitlbee bitlbee-purple)
> (plugins (list purple-mattermost))))
>
> and it works well, modulo warnings from libpurple about locale
> conversion errors it seems (I haven’t investigated, but it’s harmless).

My bitlbee config (which I first added about 7 months ago) is simply:

(service bitlbee-service-type
         (bitlbee-configuration
          (interface "0.0.0.0")
          (port 6969)))

and I use it as a bridge between znc and a local/private prosody server.

>
> What do you see in your IRC client when connecting?

I've since rolled back the system config of the server to the previously running version, but basically znc kept connecting and getting disconnected. >From the znc status log (~/.znc/moddata/log/<username>/<servername>/status/2022-05-21.log) around the same time as the syslog messages:

[21:25:26] Disconnected from IRC (jibber +6969)
[21:25:56] Connected to IRC (jibber 6969)
[21:27:57] Disconnected from IRC (jibber 6969)
[21:27:57] Disconnected from IRC (jibber +6969)
[21:28:56] Disconnected from IRC (jibber +6969)
[21:29:26] Connected to IRC (jibber 6969)
[21:53:52] Disconnected from IRC (jibber +6969)

>
> Can you reproduce the problem in a VM with ‘guix system vm’?

I'm uncertain if I can; I haven't really used 'guix system vm' before, so I'll have to play around with it a bit. I think the most notable difference between your config and mine is that I use the default `bitlbee` package instead of overriding it to use `bitlbee-purple` (since I didn't need any protocol support other than XMPP, which is one of the two non-purple protocol plugins).

Thank you for your assistance!

Cheers,
Kaelyn

> Thanks in advance,
> Ludo’.