Skip to content

core: bind to all addresses#11389

Merged
sergepetrenko merged 3 commits intotarantool:masterfrom
LevKats:gh-7152-bind-all-addresses
Jun 27, 2025
Merged

core: bind to all addresses#11389
sergepetrenko merged 3 commits intotarantool:masterfrom
LevKats:gh-7152-bind-all-addresses

Conversation

@LevKats
Copy link
Contributor

@LevKats LevKats commented Apr 13, 2025

Bind all addresses returned by getaddrinfo except for duplicates
caused by glibc behavior which is the case on the CI machine and may be
the result of multiple localhost entries in /etc/hosts. Also bind
all ipv6 results with the IPV6_V6ONLY option so it is possible to
listen ipv4 and ipv6 services on a single port number.

Fixes #7152
NO_DOC=bugfix

@LevKats LevKats self-assigned this Apr 13, 2025
@LevKats LevKats added the asan-ci Enables asan build tests for a pull request label Apr 13, 2025
@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch 2 times, most recently from a4160e9 to f47df85 Compare April 13, 2025 22:59
@LevKats LevKats added full-ci Enables all tests for a pull request and removed full-ci Enables all tests for a pull request labels Apr 18, 2025
@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch from f47df85 to f0ecce4 Compare April 18, 2025 10:28
@coveralls
Copy link

coveralls commented Apr 18, 2025

Coverage Status

coverage: 87.525% (+0.005%) from 87.52%
when pulling 21795e0 on LevKats:gh-7152-bind-all-addresses
into e5a665d
on tarantool:master
.

@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch 6 times, most recently from 1a15c8d to 9d002da Compare April 18, 2025 16:25
@LevKats LevKats removed the asan-ci Enables asan build tests for a pull request label Apr 18, 2025
@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch 6 times, most recently from a20be6c to a2457c8 Compare April 20, 2025 20:39
@LevKats LevKats added the asan-ci Enables asan build tests for a pull request label Apr 20, 2025
@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch 5 times, most recently from 3d1e0e4 to a1c41f8 Compare April 22, 2025 06:24
@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch from a1c41f8 to 9510fb3 Compare May 5, 2025 02:08
@LevKats LevKats changed the title [WIP] core: bind to all addresses core: bind to all addresses May 5, 2025
@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch from 9510fb3 to 0d054c4 Compare May 5, 2025 02:13
@LevKats LevKats added asan-ci Enables asan build tests for a pull request and removed asan-ci Enables asan build tests for a pull request labels Jun 6, 2025
@LevKats LevKats requested a review from nshy June 6, 2025 16:13
@locker locker removed their assignment Jun 20, 2025
@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch from 97d075f to 630caa2 Compare June 20, 2025 16:48
@LevKats LevKats requested a review from nshy June 23, 2025 09:52
@nshy nshy removed their assignment Jun 23, 2025
LevKats added 3 commits June 25, 2025 08:43
Fix the indentation in the `struct evio_service` so now any changes
there can meet the checkpatch requirements.

Part of tarantool#7152

NO_DOC=refactoring
NO_TEST=refactoring
NO_CHANGELOG=refactoring
Refactor the `struct evio_service` so it contains an rlist of entries
which doesn't need to have some fixed size after the creation. The main
reason for the change is that we don't know the number of bounded
entries for each uri on service creation once tarantool#7152 being fixed.

Part of tarantool#7152

NO_DOC=refactoring
NO_TEST=refactoring
NO_CHANGELOG=refactoring
Bind all addresses returned by `getaddrinfo` except for duplicates
caused by glibc behavior which is the case on the CI machine and may be
the result of multiple `localhost` entries in `/etc/hosts`. Also bind
all ipv6 results with the `IPV6_V6ONLY` option so it is possible to
listen ipv4 and ipv6 services on a single port number.

Fixes tarantool#7152

@TarantoolBot document
Title: bind all URIs matching the `listen` box configuration parameters.
@LevKats LevKats force-pushed the gh-7152-bind-all-addresses branch from 630caa2 to 21795e0 Compare June 25, 2025 06:04
@LevKats LevKats added the full-ci Enables all tests for a pull request label Jun 25, 2025
@LevKats LevKats requested a review from nshy June 25, 2025 06:40
@TarantoolBot
Copy link
Collaborator

Successfully created backport PR for release/3.2:

@TarantoolBot
Copy link
Collaborator

Successfully created backport PR for release/3.3:

@TarantoolBot
Copy link
Collaborator

Successfully created backport PR for release/3.4:

@TarantoolBot
Copy link
Collaborator

Backport summary

@sergepetrenko
Copy link
Collaborator

/backport 2.11

@TarantoolBot
Copy link
Collaborator

Backport failed for release/2.11, because it was unable to cherry-pick the commit(s).

Please cherry-pick the changes locally and resolve any conflicts.

git fetch origin release/2.11
git worktree add -d .worktree/backport/release/2.11/11389 origin/release/2.11
cd .worktree/backport/release/2.11/11389
git switch --create backport/release/2.11/11389
git cherry-pick -x aba83a42fc7364e5ab1ee0389f4e3770ddd75e29 2cf6d3f95b7db41389b3061e6335f25e42f36b48 4c8463cc498d53b2de549be461fce7c06bd75760

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport/3.2 Automatically create a 3.2 backport PR backport/3.3 Automatically create a 3.3 backport PR backport/3.4 Automatically create a 3.4 backport PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bind to all addresses if host name is unspecified in box.cfg.listen

7 participants