Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Configurable idle timeout for Homer TCP connection

Open
#2,040 0 comments 1 reaction 0 assignees View on GitHub

Maintainers usually reply within 2 days

@darwvin-dev is already working on this.

Since Oct 13, 2026.

  • #2202 by @darwvin-dev — open

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Domain
networking

Research direction

The payload names no files: start from wherever the --homer / --homer-protocol=tcp options are parsed and from the code that opens and writes the HEP socket, since that is where Write error to Homer ... Broken pipe is emitted. Read how other connection-related options are declared and documented so a new idle-timeout/reconnect option follows the same pattern. Done means the Homer TCP socket is detected as closed (CLOSE_WAIT) and reopened instead of failing the next write, with the option documented and a repro or test for an idle peer close.

Written by the indexing model from the issue text.

Description

Is your feature request related to a problem? Please describe

Hi,

I'm using rtpengine with --homer and --homer-protocol=tcp to send HEP traffic to a local stunnel instance, which then forwards the traffic (over TLS) to a remote Homer server.

From time to time I see the following log line:

[1765850620.856975] ERR: [U62KpxU9D2/bB5blxZxA/1 port 36493]: [core] Write error to Homer at 172.16.1.198:9062: Broken pipe

After some investigation it looks like the remote side (Homer/stunnel) closes the TCP connection when it has been idle for too long. On the rtpengine host, when the remote side closes the connection, netstat shows the socket in CLOSE_WAIT state. The connection stays in CLOSE_WAIT until the next call, and when rtpengine tries to send the next HEP packet over that connection, the write fails with Broken pipe.

My question: is there currently any way to control the idle timeout behavior for the TCP connection from rtpengine to Homer?

If this is not configurable today, would you consider adding such an option or automatic reconnect behavior when the Homer TCP connection has been closed by the peer due to idling?

Environment

  • rtpengine version: 12.5
  • OS / distro: bullseye
Dominant language
Perl
Stars
992
Forks
459
PR merge metrics
No merged PRs in 30d

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from sipwise/rtpengine

All issues in sipwise/rtpengine

Similar issues

More Perl issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.