* [gentoo-commits] repo/gentoo:master commit in: net-dns/knot-resolver/files/
@ 2025-03-23 14:30 Conrad Kostecki
0 siblings, 0 replies; 2+ messages in thread
From: Conrad Kostecki @ 2025-03-23 14:30 UTC (permalink / raw
To: gentoo-commits
commit: 8fc94b8390929d2ce40c4582b06435cd7fc484eb
Author: Michael Mair-Keimberger <mmk <AT> levelnine <DOT> at>
AuthorDate: Thu Mar 20 07:16:18 2025 +0000
Commit: Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Sun Mar 23 14:26:22 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8fc94b83
net-dns/knot-resolver: remove unused patch
Signed-off-by: Michael Mair-Keimberger <mmk <AT> levelnine.at>
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>
.../files/knot-resolver-6.0.9-sd_notify_alt.patch | 82 ----------------------
1 file changed, 82 deletions(-)
diff --git a/net-dns/knot-resolver/files/knot-resolver-6.0.9-sd_notify_alt.patch b/net-dns/knot-resolver/files/knot-resolver-6.0.9-sd_notify_alt.patch
deleted file mode 100644
index 9752b314cfa0..000000000000
--- a/net-dns/knot-resolver/files/knot-resolver-6.0.9-sd_notify_alt.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-https://gitlab.nic.cz/knot/knot-resolver/-/merge_requests/1608
-Draft: daemon: add sd_notify alternative
-This allows kresd to run even if libsystemd is not available.
-
-diff --git a/daemon/main.c b/daemon/main.c
-index 44b8ae4c1b745c19ae91f6c9119b895d7738947f..230b1e453217682df387165c08f4115d795cb983 100644
---- a/daemon/main.c
-+++ b/daemon/main.c
-@@ -36,6 +36,8 @@
- #include <uv.h>
- #if ENABLE_LIBSYSTEMD
- #include <systemd/sd-daemon.h>
-+#else
-+static int notify_ready(const char *state);
- #endif
- #include <libknot/error.h>
-
-@@ -68,6 +70,7 @@ KR_EXPORT const char *malloc_conf = "narenas:1";
- #define TCP_BACKLOG_DEFAULT 128
- #endif
-
-+
- /** I don't know why linker is dropping these functions otherwise. TODO: revisit. */
- KR_EXPORT void kr_misc_unused(void)
- {
-@@ -209,6 +212,8 @@ static int run_worker(uv_loop_t *loop, bool leader, struct args *args)
- /* Notify supervisor. */
- #if ENABLE_LIBSYSTEMD
- sd_notify(0, "READY=1");
-+#else
-+ notify_ready("READY=1");
- #endif
- /* Run event loop */
- uv_run(loop, UV_RUN_DEFAULT);
-@@ -414,6 +419,47 @@ static int start_listening(flagged_fd_array_t *fds) {
- return some_bad_ret;
- }
-
-+#if !ENABLE_LIBSYSTEMD
-+/* Notify supervisord about successful inicialization
-+ * @note tested only on an abstract address in $NOTIFY_SOCKET*/
-+static int notify_ready(const char *state)
-+{
-+ int sockfd;
-+ struct sockaddr_un addr;
-+ char *socket_path = getenv("NOTIFY_SOCKET");
-+ if (!socket_path) {
-+ kr_log_error(WORKER, "Failed retrieving env variable $NOTIFY_SOCKET\n");
-+ return EXIT_FAILURE;
-+ }
-+ if ((sockfd = socket(AF_UNIX, SOCK_DGRAM, 0)) == -1) {
-+ kr_log_error(WORKER, "Failed to create unix socket at $NOTIFY_SOCKET ('%s'): %s\n",
-+ socket_path, strerror(errno));
-+ return EXIT_FAILURE;
-+ }
-+
-+ addr.sun_family = AF_UNIX;
-+
-+ int addrlen;
-+ if (socket_path[0] == '@') {
-+ addr.sun_path[0] = '\0';
-+ strncpy(&addr.sun_path[1], socket_path + 1, sizeof(addr.sun_path) - 2);
-+ addrlen = offsetof(struct sockaddr_un, sun_path) + strlen(addr.sun_path + 1) + 1;
-+ } else {
-+ strncpy(addr.sun_path, socket_path, sizeof(addr.sun_path) - 1);
-+ addrlen = offsetof(struct sockaddr_un, sun_path) + strlen(addr.sun_path) + 1;
-+ }
-+ if (sendto(sockfd, state, strlen(state), 0, &addr, addrlen) == -1) {
-+ kr_log_error(WORKER, "Failed to send notify message to '%s': %s\n",
-+ socket_path, strerror(errno));
-+ close(sockfd);
-+ return EXIT_FAILURE;
-+ }
-+
-+ close(sockfd);
-+ return kr_ok();
-+}
-+#endif /* if !ENABLE_LIBSYSTEMD */
-+
- /* Drop POSIX 1003.1e capabilities. */
- static void drop_capabilities(void)
- {
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-dns/knot-resolver/files/
@ 2025-05-04 6:42 Sam James
0 siblings, 0 replies; 2+ messages in thread
From: Sam James @ 2025-05-04 6:42 UTC (permalink / raw
To: gentoo-commits
commit: 7d7831e60958eb705e9572c5eed35dadb7a1b430
Author: Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Fri May 2 05:13:04 2025 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun May 4 06:42:27 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d7831e6
net-dns/knot-resolver: remove unused patch
Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/41892
Closes: https://github.com/gentoo/gentoo/pull/41892
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../knot-resolver-6.0.11-abs_path_socket.patch | 385 ---------------------
1 file changed, 385 deletions(-)
diff --git a/net-dns/knot-resolver/files/knot-resolver-6.0.11-abs_path_socket.patch b/net-dns/knot-resolver/files/knot-resolver-6.0.11-abs_path_socket.patch
deleted file mode 100644
index dea7a243bb44..000000000000
--- a/net-dns/knot-resolver/files/knot-resolver-6.0.11-abs_path_socket.patch
+++ /dev/null
@@ -1,385 +0,0 @@
-https://gitlab.nic.cz/knot/knot-resolver/-/merge_requests/1664.patch
-From a009365df3f0429edfd181d0109372aca1892298 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ale=C5=A1=20Mr=C3=A1zek?= <ales.mrazek@nic.cz>
-Date: Fri, 28 Feb 2025 10:07:08 +0100
-Subject: [PATCH 1/5] Revert "python: constants: added API_SOCKET_NAME"
-
-This reverts commit cee2250c5a52a4d67ea2a37cc97761ba530f856b.
----
- python/knot_resolver/constants.py | 9 +++------
- python/knot_resolver/constants.py.in | 9 +++------
- 2 files changed, 6 insertions(+), 12 deletions(-)
-
-diff --git a/python/knot_resolver/constants.py b/python/knot_resolver/constants.py
-index 525e8629c..d65c24acb 100644
---- a/python/knot_resolver/constants.py
-+++ b/python/knot_resolver/constants.py
-@@ -5,18 +5,15 @@ VERSION = "6.0.11"
- USER = "knot-resolver"
- GROUP = "knot-resolver"
-
--# default files names
--API_SOCK_NAME = "kres-api.sock"
--
--# default dirs paths
-+# dirs paths
- RUN_DIR = Path("/run/knot-resolver")
- ETC_DIR = Path("/etc/knot-resolver")
- SBIN_DIR = Path("/usr/sbin")
- CACHE_DIR = Path("/var/cache/knot-resolver")
-
--# default files paths
-+# files paths
- CONFIG_FILE = ETC_DIR / "config.yaml"
--API_SOCK_FILE = RUN_DIR / API_SOCK_NAME
-+API_SOCK_FILE = RUN_DIR / "kres-api.sock"
-
- # executables paths
- KRESD_EXECUTABLE = SBIN_DIR / "kresd"
-diff --git a/python/knot_resolver/constants.py.in b/python/knot_resolver/constants.py.in
-index 8c2974a58..35c25ac64 100644
---- a/python/knot_resolver/constants.py.in
-+++ b/python/knot_resolver/constants.py.in
-@@ -5,18 +5,15 @@ VERSION = "@version@"
- USER = "@user@"
- GROUP = "@group@"
-
--# default files names
--API_SOCK_NAME = "kres-api.sock"
--
--# default dirs paths
-+# dirs paths
- RUN_DIR = Path("@run_dir@")
- ETC_DIR = Path("@etc_dir@")
- SBIN_DIR = Path("@sbin_dir@")
- CACHE_DIR = Path("@cache_dir@")
-
--# default files paths
-+# files paths
- CONFIG_FILE = ETC_DIR / "config.yaml"
--API_SOCK_FILE = RUN_DIR / API_SOCK_NAME
-+API_SOCK_FILE = RUN_DIR / "kres-api.sock"
-
- # executables paths
- KRESD_EXECUTABLE = SBIN_DIR / "kresd"
---
-GitLab
-
-
-From 2b312097f4ed0c0240b70fb365ac5d1f515812bc Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ale=C5=A1=20Mr=C3=A1zek?= <ales.mrazek@nic.cz>
-Date: Fri, 28 Feb 2025 10:07:35 +0100
-Subject: [PATCH 2/5] Revert "datamodel: management socket default based on
- rundir"
-
-This reverts commit 10fb87547af05cd78e76dfb94951c34f4554d090.
----
- doc/_static/config.schema.json | 4 +--
- python/knot_resolver/client/command.py | 35 +++++--------------
- .../knot_resolver/datamodel/config_schema.py | 17 +++------
- tests/manager/datamodel/test_config_schema.py | 23 ------------
- 4 files changed, 15 insertions(+), 64 deletions(-)
-
-diff --git a/doc/_static/config.schema.json b/doc/_static/config.schema.json
-index a429b15dd..0bedbbc4e 100644
---- a/doc/_static/config.schema.json
-+++ b/doc/_static/config.schema.json
-@@ -54,7 +54,7 @@
- "default": 256
- },
- "management": {
-- "description": "Configuration of management HTTP API. By default, unix-socket is located in 'rundir'.",
-+ "description": "Configuration of management HTTP API.",
- "type": "object",
- "properties": {
- "unix-socket": {
-@@ -75,7 +75,7 @@
- }
- },
- "default": {
-- "unix_socket": "kres-api.sock",
-+ "unix_socket": "/run/knot-resolver/kres-api.sock",
- "interface": null
- }
- },
-diff --git a/python/knot_resolver/client/command.py b/python/knot_resolver/client/command.py
-index 464eb16e6..3966f8ca9 100644
---- a/python/knot_resolver/client/command.py
-+++ b/python/knot_resolver/client/command.py
-@@ -4,7 +4,7 @@ from pathlib import Path
- from typing import Dict, List, Optional, Set, Tuple, Type, TypeVar
- from urllib.parse import quote
-
--from knot_resolver.constants import API_SOCK_FILE, API_SOCK_NAME, CONFIG_FILE, RUN_DIR
-+from knot_resolver.constants import API_SOCK_FILE, CONFIG_FILE
- from knot_resolver.datamodel.types import IPAddressPort
- from knot_resolver.utils.modeling import parsing
- from knot_resolver.utils.modeling.exceptions import DataValidationError
-@@ -154,38 +154,21 @@ def get_socket_from_config(config: Path, optional_file: bool) -> Optional[Socket
- try:
- with open(config, "r", encoding="utf8") as f:
- data = parsing.try_to_parse(f.read())
--
-- rkey = "rundir"
-- rundir = Path(data[rkey]) if rkey in data else RUN_DIR
--
- mkey = "management"
- if mkey in data:
- management = data[mkey]
--
-- ikey = "interface"
-- if ikey in data[mkey]:
-- ip = IPAddressPort(data[mkey][ikey], object_path=f"/{mkey}/{ikey}")
-+ if "unix-socket" in management:
- return SocketDesc(
-- f"http://{ip.addr}:{ip.port}",
-- f'Key "/management/interface" in "{config}" file',
-+ f'http+unix://{quote(management["unix-socket"], safe="")}/',
-+ f'Key "/management/unix-socket" in "{config}" file',
- )
--
-- skey = "unix-socket"
-- if skey in management:
-- socket = Path(management[skey])
-- if not socket.is_absolute():
-- socket = rundir / socket
-+ if "interface" in management:
-+ ip = IPAddressPort(management["interface"], object_path=f"/{mkey}/interface")
- return SocketDesc(
-- f'http+unix://{quote(str(socket), safe="")}/',
-- f'Key "/management/unix-socket" in "{config}" file',
-+ f"http://{ip.addr}:{ip.port}",
-+ f'Key "/management/interface" in "{config}" file',
- )
--
-- socket = rundir / API_SOCK_NAME
-- return SocketDesc(
-- f'http+unix://{quote(str(socket), safe="")}/',
-- f'Key "/rundir" in "{config}" file',
-- )
--
-+ return None
- except ValueError as e:
- raise DataValidationError(*e.args) from e # pylint: disable=no-value-for-parameter
- except OSError as e:
-diff --git a/python/knot_resolver/datamodel/config_schema.py b/python/knot_resolver/datamodel/config_schema.py
-index f8733cb11..410e94d7c 100644
---- a/python/knot_resolver/datamodel/config_schema.py
-+++ b/python/knot_resolver/datamodel/config_schema.py
-@@ -1,10 +1,9 @@
- import logging
- import os
- import socket
--from pathlib import Path
- from typing import Any, Dict, List, Literal, Optional, Tuple, Union
-
--from knot_resolver.constants import API_SOCK_NAME, RUN_DIR, VERSION
-+from knot_resolver.constants import API_SOCK_FILE, RUN_DIR, VERSION
- from knot_resolver.datamodel.cache_schema import CacheSchema
- from knot_resolver.datamodel.defer_schema import DeferSchema
- from knot_resolver.datamodel.dns64_schema import Dns64Schema
-@@ -96,7 +95,7 @@ class KresConfig(ConfigSchema):
- rundir: Directory where the resolver can create files and which will be it's cwd.
- workers: The number of running kresd (Knot Resolver daemon) workers. If set to 'auto', it is equal to number of CPUs available.
- max_workers: The maximum number of workers allowed. Cannot be changed in runtime.
-- management: Configuration of management HTTP API. By default, unix-socket is located in 'rundir'.
-+ management: Configuration of management HTTP API.
- webmgmt: Configuration of legacy web management endpoint.
- options: Fine-tuning global parameters of DNS resolver operation.
- network: Network connections and protocols configuration.
-@@ -119,7 +118,7 @@ class KresConfig(ConfigSchema):
- rundir: WritableDir = lazy_default(WritableDir, str(RUN_DIR))
- workers: Union[Literal["auto"], IntPositive] = IntPositive(1)
- max_workers: IntPositive = IntPositive(WORKERS_MAX)
-- management: ManagementSchema = lazy_default(ManagementSchema, {"unix-socket": str(API_SOCK_NAME)})
-+ management: ManagementSchema = lazy_default(ManagementSchema, {"unix-socket": str(API_SOCK_FILE)})
- webmgmt: Optional[WebmgmtSchema] = None
- options: OptionsSchema = OptionsSchema()
- network: NetworkSchema = NetworkSchema()
-@@ -174,14 +173,6 @@ class KresConfig(ConfigSchema):
- )
- return obj.workers
-
-- def _management(self, obj: Raw) -> Any:
-- if obj.management.unix_socket:
-- soc = Path(obj.management.unix_socket.serialize())
-- if soc.is_absolute():
-- return obj.management
-- return ManagementSchema({"unix-socket": str(obj.rundir.to_path() / soc)})
-- return obj.management
--
- def _dnssec(self, obj: Raw) -> Any:
- if obj.dnssec is True:
- return DnssecSchema()
-@@ -268,7 +259,7 @@ def kres_config_json_schema() -> Dict[str, Any]:
- """
-
- context = get_global_validation_context()
-- set_global_validation_context(Context(RUN_DIR, False))
-+ set_global_validation_context(Context(None, False))
-
- schema = KresConfig.json_schema(
- schema_id=f"https://www.knot-resolver.cz/documentation/v{VERSION}/_static/config.schema.json",
-diff --git a/tests/manager/datamodel/test_config_schema.py b/tests/manager/datamodel/test_config_schema.py
-index 437cade8d..9ec2b31b2 100644
---- a/tests/manager/datamodel/test_config_schema.py
-+++ b/tests/manager/datamodel/test_config_schema.py
-@@ -1,9 +1,7 @@
- import inspect
- import json
--import os
- from typing import Any, Dict, Type, cast
-
--from knot_resolver.constants import API_SOCK_FILE, API_SOCK_NAME, RUN_DIR
- from knot_resolver.datamodel import KresConfig
- from knot_resolver.datamodel.lua_schema import LuaSchema
- from knot_resolver.utils.modeling import BaseSchema
-@@ -51,31 +49,10 @@ def test_config_check_str_type():
- def test_config_defaults():
- config = KresConfig()
-
-- # Management API default
-- assert config.management.unix_socket.to_path() == API_SOCK_FILE
--
- # DNS64 default
- assert config.dns64 == False
-
-
--def test_management_unix_socket():
-- cwd = os.getcwd()
-- config = KresConfig({"rundir": cwd})
-- assert str(config.management.unix_socket) == f"{cwd}/{API_SOCK_NAME}"
--
-- my_soc = "my-new.soc"
-- config = KresConfig({"management": {"unix-socket": my_soc}})
-- assert str(config.management.unix_socket) == f"{RUN_DIR}/{my_soc}"
--
--
--def test_management_interface():
-- cwd = os.getcwd()
-- config = KresConfig({"rundir": cwd, "management": {"interface": "127.0.0.1@5000"}})
--
-- assert config.management.unix_socket == None
-- assert str(config.management.interface) == "127.0.0.1@5000"
--
--
- def test_dnssec_false():
- config = KresConfig({"dnssec": False})
-
---
-GitLab
-
-
-From c1f8f7bc043ca31b9aac96c13411769fad17f6b2 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ale=C5=A1=20Mr=C3=A1zek?= <ales.mrazek@nic.cz>
-Date: Fri, 28 Feb 2025 10:14:22 +0100
-Subject: [PATCH 3/5] datamodel: management: warning that the unix-socket is
- not located in rundir
-
----
- python/knot_resolver/datamodel/config_schema.py | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/python/knot_resolver/datamodel/config_schema.py b/python/knot_resolver/datamodel/config_schema.py
-index 410e94d7c..713c4a3e2 100644
---- a/python/knot_resolver/datamodel/config_schema.py
-+++ b/python/knot_resolver/datamodel/config_schema.py
-@@ -184,6 +184,14 @@ class KresConfig(ConfigSchema):
- return obj.dns64
-
- def _validate(self) -> None:
-+ # warn about '/management/unix-socket' not located in '/rundir'
-+ if self.management.unix_socket and self.management.unix_socket.to_path().parent != self.rundir.to_path():
-+ logger.warning(
-+ f"The management API unix-socket '{self.management.unix_socket}'"
-+ f" is not located in the resolver's rundir '{self.rundir}'."
-+ " This can lead to permissions issues."
-+ )
-+
- # enforce max-workers config
- workers_max = _workers_max_count()
- if int(self.workers) > workers_max:
---
-GitLab
-
-
-From 2c467aceded3cfa6eb077439d63b8637d17155c3 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ale=C5=A1=20Mr=C3=A1zek?= <ales.mrazek@nic.cz>
-Date: Fri, 28 Feb 2025 10:17:17 +0100
-Subject: [PATCH 4/5] client: command: get_socket_from_config improved
-
----
- python/knot_resolver/client/command.py | 15 ++++++++++-----
- 1 file changed, 10 insertions(+), 5 deletions(-)
-
-diff --git a/python/knot_resolver/client/command.py b/python/knot_resolver/client/command.py
-index 3966f8ca9..7a679885a 100644
---- a/python/knot_resolver/client/command.py
-+++ b/python/knot_resolver/client/command.py
-@@ -5,7 +5,7 @@ from typing import Dict, List, Optional, Set, Tuple, Type, TypeVar
- from urllib.parse import quote
-
- from knot_resolver.constants import API_SOCK_FILE, CONFIG_FILE
--from knot_resolver.datamodel.types import IPAddressPort
-+from knot_resolver.datamodel.types import IPAddressPort, WritableFilePath
- from knot_resolver.utils.modeling import parsing
- from knot_resolver.utils.modeling.exceptions import DataValidationError
- from knot_resolver.utils.requests import SocketDesc
-@@ -154,16 +154,21 @@ def get_socket_from_config(config: Path, optional_file: bool) -> Optional[Socket
- try:
- with open(config, "r", encoding="utf8") as f:
- data = parsing.try_to_parse(f.read())
-+
- mkey = "management"
- if mkey in data:
- management = data[mkey]
-- if "unix-socket" in management:
-+
-+ skey = "unix-socket"
-+ if skey in management:
-+ sock = WritableFilePath(management[skey], object_path=f"/{mkey}/{skey}")
- return SocketDesc(
-- f'http+unix://{quote(management["unix-socket"], safe="")}/',
-+ f'http+unix://{quote(str(sock), safe="")}/',
- f'Key "/management/unix-socket" in "{config}" file',
- )
-- if "interface" in management:
-- ip = IPAddressPort(management["interface"], object_path=f"/{mkey}/interface")
-+ ikey = "interface"
-+ if ikey in data[mkey]:
-+ ip = IPAddressPort(management[ikey], object_path=f"/{mkey}/{ikey}")
- return SocketDesc(
- f"http://{ip.addr}:{ip.port}",
- f'Key "/management/interface" in "{config}" file',
---
-GitLab
-
-
-From f9a75b65cc3664294188de8a5cb93909ea58cadd Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ale=C5=A1=20Mr=C3=A1zek?= <ales.mrazek@nic.cz>
-Date: Fri, 28 Feb 2025 10:18:04 +0100
-Subject: [PATCH 5/5] NEWS: update about revert
-
----
- NEWS | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/NEWS b/NEWS
-index 70f5db2f0..614177308 100644
---- a/NEWS
-+++ b/NEWS
-@@ -1,3 +1,11 @@
-+Knot Resolver 6.0.12 (2025-0m-dd)
-+=================================
-+
-+Bugfixes
-+--------
-+- /management/unix-socket: revert to absolute path (#926, !1664)
-+
-+
- Knot Resolver 6.0.11 (2025-02-26)
- =================================
-
---
-GitLab
-
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-05-04 6:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-23 14:30 [gentoo-commits] repo/gentoo:master commit in: net-dns/knot-resolver/files/ Conrad Kostecki
-- strict thread matches above, loose matches on Subject: below --
2025-05-04 6:42 Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox