From 1d9bc5552b20927104fb89e58f7a384778a7cb93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 2 Mar 2021 16:13:57 +0100 Subject: [PATCH 01/21] Rebuilt for updated systemd-rpm-macros See https://pagure.io/fesco/issue/2583. --- dictd.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index 7d4c57b..a477af1 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 27%{?dist} +Release: 28%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -191,6 +191,10 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1.12.1-28 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + * Tue Jan 26 2021 Fedora Release Engineering - 1.12.1-27 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 92152538e2408683c4e5c9191f60d1858e86b202 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 20:46:37 +0000 Subject: [PATCH 02/21] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index a477af1..4910ec6 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 28%{?dist} +Release: 29%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -191,6 +191,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Wed Jul 21 2021 Fedora Release Engineering - 1.12.1-29 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 1.12.1-28 - Rebuilt for updated systemd-rpm-macros See https://pagure.io/fesco/issue/2583. From dea4847e6c9f04fa057bc27d308213e3f61f0b07 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 00:39:16 +0000 Subject: [PATCH 03/21] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index 4910ec6..6d14437 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 29%{?dist} +Release: 30%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -191,6 +191,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 1.12.1-30 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Wed Jul 21 2021 Fedora Release Engineering - 1.12.1-29 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 47afcf4839335c661171568b82c7a7eb19e5d936 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 21 Jul 2022 00:26:56 +0000 Subject: [PATCH 04/21] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index 6d14437..e227f5d 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 30%{?dist} +Release: 31%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -191,6 +191,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Thu Jul 21 2022 Fedora Release Engineering - 1.12.1-31 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jan 20 2022 Fedora Release Engineering - 1.12.1-30 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From cf1515997abf86ef6dd26553b5a875da82cfc496 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 01:23:12 +0000 Subject: [PATCH 05/21] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index e227f5d..5c04062 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 31%{?dist} +Release: 32%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -191,6 +191,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 1.12.1-32 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Thu Jul 21 2022 Fedora Release Engineering - 1.12.1-31 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From ceffbde0326dcf0d7f422469a786a33bbaafaf68 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Thu, 2 Feb 2023 18:06:30 +0100 Subject: [PATCH 06/21] Fix C99 compatibility issues in lexer/parser integration Related to: --- dictd-c99.patch | 90 +++++++++++++++++++++++++++++++++++++++++++++++++ dictd.spec | 7 +++- 2 files changed, 96 insertions(+), 1 deletion(-) create mode 100644 dictd-c99.patch diff --git a/dictd-c99.patch b/dictd-c99.patch new file mode 100644 index 0000000..e674948 --- /dev/null +++ b/dictd-c99.patch @@ -0,0 +1,90 @@ +Consolidate all lexer/parser declarations in lexparse.h and include +this file in both the generated lexers and parsers and the code that +invokes them. + +This avoids implicit function declarations and build failures with +future compilers. + +Submitted upstream: + +diff -ur dictd-1.12.1.orig/clientparse.y dictd-1.12.1/clientparse.y +--- dictd-1.12.1.orig/clientparse.y 2008-12-07 17:50:05.000000000 +0100 ++++ dictd-1.12.1/clientparse.y 2023-02-02 17:24:40.745626699 +0100 +@@ -20,6 +20,7 @@ + + %{ + #include "dict.h" ++#include "lexparse.h" + #define YYDEBUG 1 + #define YYERROR_VERBOSE + +diff -ur dictd-1.12.1.orig/clientscan.l dictd-1.12.1/clientscan.l +--- dictd-1.12.1.orig/clientscan.l 2008-12-07 17:50:05.000000000 +0100 ++++ dictd-1.12.1/clientscan.l 2023-02-02 17:24:40.745626699 +0100 +@@ -24,9 +24,7 @@ + + #include "dict.h" + #include "clientparse.h" +-extern int yylex( void ); +-extern int yydebug; +-extern void yyerror( const char *message ); ++#include "lexparse.h" + #define RETURN(val) do { \ + yylval.token.src = src_get( yyleng ); \ + return val; \ +diff -ur dictd-1.12.1.orig/lexparse.h dictd-1.12.1/lexparse.h +--- dictd-1.12.1.orig/lexparse.h 2023-02-02 17:26:45.585386576 +0100 ++++ dictd-1.12.1/lexparse.h 2023-02-02 17:42:35.003954718 +0100 +@@ -0,0 +1,8 @@ ++/* Shared prototypes for lexers and parsers. */ ++ ++extern int yylex( void ); ++extern int yydebug; ++extern void yyerror( const char *message ); ++extern int yydebug; ++extern FILE *yyin; ++extern int yyparse( void ); +diff -ur dictd-1.12.1.orig/parse.c dictd-1.12.1/parse.c +--- dictd-1.12.1.orig/parse.c 2008-12-07 17:50:05.000000000 +0100 ++++ dictd-1.12.1/parse.c 2023-02-02 17:31:20.149658981 +0100 +@@ -24,14 +24,11 @@ + #include "dictP.h" + #include "maa.h" + #include "parse.h" ++#include "lexparse.h" + + static int _prs_debug_flag = 0; + static const char *_prs_cpp_options = NULL; + +-extern int yydebug; +-extern FILE *yyin; +-extern int yyparse( void ); +- + /* \doc |prs_set_debug| specifies the value of |yyerror| that |prs_file| + will use. */ + +diff -ur dictd-1.12.1.orig/servparse.y dictd-1.12.1/servparse.y +--- dictd-1.12.1.orig/servparse.y 2008-12-07 17:50:05.000000000 +0100 ++++ dictd-1.12.1/servparse.y 2023-02-02 17:24:40.745626699 +0100 +@@ -24,6 +24,7 @@ + #include "index.h" + #include "data.h" + #include "maa.h" ++#include "lexparse.h" + + #define YYDEBUG 1 + #define YYERROR_VERBOSE +diff -ur dictd-1.12.1.orig/servscan.l dictd-1.12.1/servscan.l +--- dictd-1.12.1.orig/servscan.l 2008-12-07 17:50:05.000000000 +0100 ++++ dictd-1.12.1/servscan.l 2023-02-02 17:24:40.745626699 +0100 +@@ -22,9 +22,7 @@ + %{ + #include "dictd.h" + #include "servparse.h" +-extern int yylex( void ); +-extern int yydebug; +-extern void yyerror( const char *message ); ++#include "lexparse.h" + static void include_file( void ); + static void include_complete( void ); + YY_BUFFER_STATE orig_buffer = NULL; diff --git a/dictd.spec b/dictd.spec index 5c04062..f25d4f5 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 32%{?dist} +Release: 33%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -24,6 +24,7 @@ Source3: dictd2.te Source4: dictd.init Patch0: dictd-1.12.1-unused-return.patch Patch1: dictd-1.12.1-maa-bufsize.patch +Patch2: dictd-c99.patch URL: http://www.dict.org/ BuildRequires: flex bison libtool libtool-ltdl-devel byacc @@ -69,6 +70,7 @@ tar xzf %{SOURCE2} mv libmaa-%{libmaaVersion} libmaa %patch0 -p1 %patch1 -p1 +%patch2 -p1 mkdir SELinux cp -p %{SOURCE3} SELinux @@ -191,6 +193,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Thu Feb 02 2023 Florian Weimer - 1.12.1-33 +- Fix C99 compatibility issues in lexer/parser integration + * Thu Jan 19 2023 Fedora Release Engineering - 1.12.1-32 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 54b7dd307a7d027277e546924ec1f8428dce31a7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 17:26:41 +0000 Subject: [PATCH 07/21] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index f25d4f5..b5e4d24 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 33%{?dist} +Release: 34%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -193,6 +193,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 1.12.1-34 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Thu Feb 02 2023 Florian Weimer - 1.12.1-33 - Fix C99 compatibility issues in lexer/parser integration From 334bcd1bc164c9f91221bbe6a21c56333ed3fc19 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 17:08:54 +0000 Subject: [PATCH 08/21] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index b5e4d24..e0e55d8 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 34%{?dist} +Release: 35%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -193,6 +193,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Fri Jan 19 2024 Fedora Release Engineering - 1.12.1-35 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Wed Jul 19 2023 Fedora Release Engineering - 1.12.1-34 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From fb04d1e88478c48e95cda481b949f5317c1718ad Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jan 2024 09:25:39 +0000 Subject: [PATCH 09/21] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index e0e55d8..dca3691 100644 --- a/dictd.spec +++ b/dictd.spec @@ -15,7 +15,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.12.1 -Release: 35%{?dist} +Release: 36%{?dist} License: GPL+ and zlib and MIT Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz Source1: dictd.service @@ -193,6 +193,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Wed Jan 24 2024 Fedora Release Engineering - 1.12.1-36 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Fedora Release Engineering - 1.12.1-35 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 1fa903c0a24e40f252163ae0a230694d56b0c83a Mon Sep 17 00:00:00 2001 From: Carlos Rodriguez-Fernandez Date: Thu, 11 Jan 2024 13:42:14 -0700 Subject: [PATCH 10/21] perform serveral cleanups and update to 1.13.1 --- .fmf/version | 1 + .gitignore | 8 +- ...ility-issues-in-lexer-parser-integra.patch | 69 +++++--- dictd-1.12.0-unusedvar.patch | 33 ---- dictd-1.12.1-maa-bufsize.patch | 12 -- dictd-1.12.1-unused-return.patch | 86 --------- dictd.conf | 9 + dictd.init | 100 ----------- dictd.spec | 163 ++++++------------ gating.yaml | 19 ++ plans/main.fmf | 5 + tests/core/data/dict.conf | 1 + tests/core/data/dictd.conf | 11 ++ tests/core/data/hello.dict | 25 +++ tests/core/data/hello.index | 11 ++ tests/core/main.fmf | 1 + tests/core/test.sh | 35 ++++ tests/main.fmf | 3 + tests/manpages/main.fmf | 2 + tests/manpages/test.sh | 23 +++ tests/selinux/main.fmf | 2 + tests/selinux/test.sh | 18 ++ 22 files changed, 273 insertions(+), 364 deletions(-) create mode 100644 .fmf/version rename dictd-c99.patch => 0001-Fix-C99-compatibility-issues-in-lexer-parser-integra.patch (58%) delete mode 100644 dictd-1.12.0-unusedvar.patch delete mode 100644 dictd-1.12.1-maa-bufsize.patch delete mode 100644 dictd-1.12.1-unused-return.patch create mode 100644 dictd.conf delete mode 100644 dictd.init create mode 100644 gating.yaml create mode 100644 plans/main.fmf create mode 100644 tests/core/data/dict.conf create mode 100644 tests/core/data/dictd.conf create mode 100644 tests/core/data/hello.dict create mode 100644 tests/core/data/hello.index create mode 100644 tests/core/main.fmf create mode 100755 tests/core/test.sh create mode 100644 tests/main.fmf create mode 100644 tests/manpages/main.fmf create mode 100755 tests/manpages/test.sh create mode 100644 tests/selinux/main.fmf create mode 100755 tests/selinux/test.sh diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/.gitignore b/.gitignore index 75d1f94..d820c84 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,2 @@ -dictd-1.11.0.tar.gz -libmaa-1.1.0.tar.gz -/libmaa-1.3.0.tar.gz -/dictd-1.12.0.tar.gz -/dictd-1.12.1.tar.gz -/libmaa-1.3.2.tar.gz +*.tar.gz +*.src.rpm diff --git a/dictd-c99.patch b/0001-Fix-C99-compatibility-issues-in-lexer-parser-integra.patch similarity index 58% rename from dictd-c99.patch rename to 0001-Fix-C99-compatibility-issues-in-lexer-parser-integra.patch index e674948..bdca78f 100644 --- a/dictd-c99.patch +++ b/0001-Fix-C99-compatibility-issues-in-lexer-parser-integra.patch @@ -1,3 +1,8 @@ +From 3f72d457cc49bd52106c8bd7779d867ca7a57e0d Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Thu, 11 Jan 2024 08:53:25 -0700 +Subject: [PATCH] Fix C99 compatibility issues in lexer/parser integration + Consolidate all lexer/parser declarations in lexparse.h and include this file in both the generated lexers and parsers and the code that invokes them. @@ -7,9 +12,23 @@ future compilers. Submitted upstream: -diff -ur dictd-1.12.1.orig/clientparse.y dictd-1.12.1/clientparse.y ---- dictd-1.12.1.orig/clientparse.y 2008-12-07 17:50:05.000000000 +0100 -+++ dictd-1.12.1/clientparse.y 2023-02-02 17:24:40.745626699 +0100 +Related to: + + +--- + clientparse.y | 1 + + clientscan.l | 4 +--- + lexparse.h | 8 ++++++++ + parse.c | 4 +--- + servparse.y | 1 + + servscan.l | 4 +--- + 6 files changed, 13 insertions(+), 9 deletions(-) + create mode 100644 lexparse.h + +diff --git a/clientparse.y b/clientparse.y +index f4162e6..073c85a 100644 +--- a/clientparse.y ++++ b/clientparse.y @@ -20,6 +20,7 @@ %{ @@ -18,9 +37,10 @@ diff -ur dictd-1.12.1.orig/clientparse.y dictd-1.12.1/clientparse.y #define YYDEBUG 1 #define YYERROR_VERBOSE -diff -ur dictd-1.12.1.orig/clientscan.l dictd-1.12.1/clientscan.l ---- dictd-1.12.1.orig/clientscan.l 2008-12-07 17:50:05.000000000 +0100 -+++ dictd-1.12.1/clientscan.l 2023-02-02 17:24:40.745626699 +0100 +diff --git a/clientscan.l b/clientscan.l +index d47b5b8..dbcc8f6 100644 +--- a/clientscan.l ++++ b/clientscan.l @@ -24,9 +24,7 @@ #include "dict.h" @@ -32,9 +52,11 @@ diff -ur dictd-1.12.1.orig/clientscan.l dictd-1.12.1/clientscan.l #define RETURN(val) do { \ yylval.token.src = src_get( yyleng ); \ return val; \ -diff -ur dictd-1.12.1.orig/lexparse.h dictd-1.12.1/lexparse.h ---- dictd-1.12.1.orig/lexparse.h 2023-02-02 17:26:45.585386576 +0100 -+++ dictd-1.12.1/lexparse.h 2023-02-02 17:42:35.003954718 +0100 +diff --git a/lexparse.h b/lexparse.h +new file mode 100644 +index 0000000..d7b1955 +--- /dev/null ++++ b/lexparse.h @@ -0,0 +1,8 @@ +/* Shared prototypes for lexers and parsers. */ + @@ -44,10 +66,11 @@ diff -ur dictd-1.12.1.orig/lexparse.h dictd-1.12.1/lexparse.h +extern int yydebug; +extern FILE *yyin; +extern int yyparse( void ); -diff -ur dictd-1.12.1.orig/parse.c dictd-1.12.1/parse.c ---- dictd-1.12.1.orig/parse.c 2008-12-07 17:50:05.000000000 +0100 -+++ dictd-1.12.1/parse.c 2023-02-02 17:31:20.149658981 +0100 -@@ -24,14 +24,11 @@ +diff --git a/parse.c b/parse.c +index 1cdaf91..47c2ebc 100644 +--- a/parse.c ++++ b/parse.c +@@ -24,13 +24,11 @@ #include "dictP.h" #include "maa.h" #include "parse.h" @@ -59,13 +82,13 @@ diff -ur dictd-1.12.1.orig/parse.c dictd-1.12.1/parse.c -extern int yydebug; -extern FILE *yyin; -extern int yyparse( void ); -- + /* \doc |prs_set_debug| specifies the value of |yyerror| that |prs_file| will use. */ - -diff -ur dictd-1.12.1.orig/servparse.y dictd-1.12.1/servparse.y ---- dictd-1.12.1.orig/servparse.y 2008-12-07 17:50:05.000000000 +0100 -+++ dictd-1.12.1/servparse.y 2023-02-02 17:24:40.745626699 +0100 +diff --git a/servparse.y b/servparse.y +index 4d4e0bc..ae7fb39 100644 +--- a/servparse.y ++++ b/servparse.y @@ -24,6 +24,7 @@ #include "index.h" #include "data.h" @@ -74,9 +97,10 @@ diff -ur dictd-1.12.1.orig/servparse.y dictd-1.12.1/servparse.y #define YYDEBUG 1 #define YYERROR_VERBOSE -diff -ur dictd-1.12.1.orig/servscan.l dictd-1.12.1/servscan.l ---- dictd-1.12.1.orig/servscan.l 2008-12-07 17:50:05.000000000 +0100 -+++ dictd-1.12.1/servscan.l 2023-02-02 17:24:40.745626699 +0100 +diff --git a/servscan.l b/servscan.l +index 2001605..2460ea4 100644 +--- a/servscan.l ++++ b/servscan.l @@ -22,9 +22,7 @@ %{ #include "dictd.h" @@ -88,3 +112,6 @@ diff -ur dictd-1.12.1.orig/servscan.l dictd-1.12.1/servscan.l static void include_file( void ); static void include_complete( void ); YY_BUFFER_STATE orig_buffer = NULL; +-- +2.43.0 + diff --git a/dictd-1.12.0-unusedvar.patch b/dictd-1.12.0-unusedvar.patch deleted file mode 100644 index ab92b1c..0000000 --- a/dictd-1.12.0-unusedvar.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up dictd-1.12.0/libmaa/pr.c.unusedvar dictd-1.12.0/libmaa/pr.c ---- dictd-1.12.0/libmaa/pr.c.unusedvar 2011-07-04 13:40:12.130732584 +0200 -+++ dictd-1.12.0/libmaa/pr.c 2011-07-04 13:40:33.479732586 +0200 -@@ -386,7 +386,7 @@ int pr_filter( const char *command, - const char *inBuffer, int inLen, - char *outBuffer, int outMaxLen ) - { -- int pid; -+ __attribute__((__unused__)) int pid; - int in, out; - - pid = pr_open( command, PR_CREATE_STDIN | PR_CREATE_STDOUT, -diff -up dictd-1.12.0/libmaa/string.c.unusedvar dictd-1.12.0/libmaa/string.c ---- dictd-1.12.0/libmaa/string.c.unusedvar 2008-12-07 15:58:11.000000000 +0100 -+++ dictd-1.12.0/libmaa/string.c 2011-07-04 13:39:40.787732580 +0200 -@@ -111,7 +111,7 @@ int str_pool_iterate( - hsh_HashTable hash = p -> hash; - hsh_Position hash_pos; - void *key; -- void *datum; -+ __attribute__((__unused__)) void *datum; - - /* printf ("inside str_pool_iterate\n"); */ - -@@ -140,7 +140,7 @@ int str_pool_iterate_arg( - hsh_HashTable hash = p -> hash; - hsh_Position hash_pos; - void *key; -- void *datum; -+ __attribute__((__unused__)) void *datum; - - HSH_ITERATE (hash, hash_pos, key, datum){ - if ((*iterator) (key, arg)){ diff --git a/dictd-1.12.1-maa-bufsize.patch b/dictd-1.12.1-maa-bufsize.patch deleted file mode 100644 index 14dc235..0000000 --- a/dictd-1.12.1-maa-bufsize.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up dictd-1.12.1/libmaa/log.c.size dictd-1.12.1/libmaa/log.c ---- dictd-1.12.1/libmaa/log.c.size 2018-02-13 15:13:53.441469899 +0100 -+++ dictd-1.12.1/libmaa/log.c 2018-02-13 15:18:35.743558067 +0100 -@@ -297,7 +297,7 @@ static void _log_base_va( - { - va_list ap_copy; - time_t t; -- static char buf [4096] = ""; -+ static char buf [4608] = ""; - static char buf_main [4096] = ""; - static char buf_preamble [256] = ""; - diff --git a/dictd-1.12.1-unused-return.patch b/dictd-1.12.1-unused-return.patch deleted file mode 100644 index 3edcb6a..0000000 --- a/dictd-1.12.1-unused-return.patch +++ /dev/null @@ -1,86 +0,0 @@ -diff -purN dictd-1.12.1/dictd.c dictd-1.12.1_new/dictd.c ---- dictd-1.12.1/dictd.c 2011-01-09 17:53:27.000000000 +0100 -+++ dictd-1.12.1_new/dictd.c 2014-02-25 16:12:49.752301674 +0100 -@@ -329,6 +329,7 @@ static void xsigprocmask (int how, const - } - } - -+/* - static void block_signals (void) - { - sigset_t set; -@@ -350,6 +351,7 @@ static void unblock_signals (void) - - xsigprocmask (SIG_UNBLOCK, &set, NULL); - } -+*/ - - static void handler( int sig ) - { -@@ -1264,21 +1266,22 @@ static void release_root_privileges( voi - * -- Bob Hilliard - */ - { -+ int unused __attribute__((unused)); - if (geteuid() == 0) { - struct passwd *pwd; - - if ((pwd = getpwnam("dictd"))) { -- setgid(pwd->pw_gid); -+ unused = setgid(pwd->pw_gid); - initgroups("dictd",pwd->pw_gid); -- setuid(pwd->pw_uid); -+ unused = setuid(pwd->pw_uid); - } else if ((pwd = getpwnam("nobody"))) { -- setgid(pwd->pw_gid); -+ unused = setgid(pwd->pw_gid); - initgroups("nobody",pwd->pw_gid); -- setuid(pwd->pw_uid); -+ unused = setuid(pwd->pw_uid); - } else { -- setgid(GID_NOGROUP); -+ unused = setgid(GID_NOGROUP); - initgroups("nobody", GID_NOGROUP); -- setuid(UID_NOBODY); -+ unused = setuid(UID_NOBODY); - } - } - } -@@ -1464,6 +1467,7 @@ static void pid_file_write () - static void reopen_012 (void) - { - int fd = open ("/dev/null", O_RDWR); -+ int unused __attribute__((unused)); - if (fd == -1) - err_fatal_errno (__func__, ":E: can't open /dev/null"); - -@@ -1471,9 +1475,9 @@ static void reopen_012 (void) - close (1); - close (2); - -- dup (fd); -- dup (fd); -- dup (fd); -+ unused = dup (fd); -+ unused = dup (fd); -+ unused = dup (fd); - } - - int main (int argc, char **argv, char **envp) -@@ -1489,6 +1493,7 @@ int main (int argc, char **argv, char ** - int i; - - int errno_accept = 0; -+ int unused __attribute__((unused)); - - const char * default_strategy_arg = "???"; - -@@ -1696,7 +1701,7 @@ int main (int argc, char **argv, char ** - - if (detach){ - /* become a daemon */ -- daemon (0, 1); -+ unused = daemon (0, 1); - reopen_012 (); - - /* after fork from daemon(3) */ diff --git a/dictd.conf b/dictd.conf new file mode 100644 index 0000000..dc8e906 --- /dev/null +++ b/dictd.conf @@ -0,0 +1,9 @@ +global { +} + +# Add database definitions here... + +# We stop the search here +database_exit + +# Add hidden database definitions here... diff --git a/dictd.init b/dictd.init deleted file mode 100644 index 91501ea..0000000 --- a/dictd.init +++ /dev/null @@ -1,100 +0,0 @@ -#!/bin/sh -# -# chkconfig: - 91 9 -# description: Starts and stops the dict server -# processname: dictd -# config: /etc/dictd.conf - -### BEGIN INIT INFO -# Provides: dictd -# Required-Start: -# Required-Stop: -# Default-Start: -# Default-Stop: 0 1 2 4 6 -# Short-Description: start|stop|restart|try-restart|status|force-reload dictd -# Description: control dictionary server which allows clients access to -# dictionary definitions from a set of natural language dictionary databases -### END INIT INFO - -# Source function library. -. /etc/rc.d/init.d/functions - - -DICTD=/usr/sbin/dictd -DICTD_FLAGS= -LOCKFILE=/var/lock/subsys/dictd -prog=dictd - -[ -e /etc/sysconfig/dictd ] && . /etc/sysconfig/dictd - -function start -{ - unset RETVAL - if [ -x $DICTD ]; then - echo -n $"Starting $prog: " - if [ -s /etc/dictd.conf ]; then - daemon $DICTD $DICTD_FLAGS - echo - else - echo -n $"no dictionaries installed" - echo_failure - echo - RETVAL=6 - fi - else - echo "$0: cannot find $DICTD or it's not executable" - RETVAL=1 - fi - - RETVAL=${RETVAL:-$?} - [ $RETVAL -eq 0 ] && touch $LOCKFILE -} - -function stop -{ - echo -n $"Shutting down $prog: " - killproc $prog - RETVAL=$? - echo - rm -f $LOCKFILE -} - -function restart -{ - stop - start -} - -# See how we were called. -case "$1" in - start) start - ;; - stop) stop - ;; - restart | force-reload) restart - ;; - reload) - killproc $prog -HUP - RETVAL=$? - ;; - force-reload) - killproc $prog -USR1 - killproc $prog -HUP - RETVAL=$? - ;; - try-restart | condrestart ) - RETVAL=0 - test -f $LOCKFILE && restart - ;; - status) - status dictd - RETVAL=$? - ;; - *) - echo $"Usage: $0 {start|stop|restart|try-restart|condrestart|reload|force-reload|status}" - exit 1 - ;; -esac - -exit $RETVAL - diff --git a/dictd.spec b/dictd.spec index dca3691..a8b40aa 100644 --- a/dictd.spec +++ b/dictd.spec @@ -1,41 +1,36 @@ -%if 0%{?rhel} > 6 || 0%{?fedora} >= 16 -%bcond_with fedora -%bcond_without systemd -%else -%bcond_without fedora -%bcond_with systemd -%endif %global _hardened_build 1 # Do no change username -- hardcoded in dictd.c %global username dictd %global homedir %{_datadir}/dict/dictd %global selinux_variants mls targeted -%define libmaaVersion 1.3.2 Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd -Version: 1.12.1 -Release: 36%{?dist} -License: GPL+ and zlib and MIT -Source0: http://downloads.sourceforge.net/dict/%{name}-%{version}.tar.gz +Version: 1.13.1 +Release: 1%{?dist} +License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-PublicDomain +Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service -Source2: libmaa-%{libmaaVersion}.tar.gz -Source3: dictd2.te -Source4: dictd.init -Patch0: dictd-1.12.1-unused-return.patch -Patch1: dictd-1.12.1-maa-bufsize.patch -Patch2: dictd-c99.patch +Source2: dictd2.te +Source3: dictd.conf +Patch0: 0001-Fix-C99-compatibility-issues-in-lexer-parser-integra.patch URL: http://www.dict.org/ -BuildRequires: flex bison libtool libtool-ltdl-devel byacc -BuildRequires: libdbi-devel, zlib-devel, gawk, gcc -%if %{with systemd} -BuildRequires: systemd -%endif -BuildRequires: checkpolicy, selinux-policy-devel -BuildRequires: make -# , /usr/share/selinux/devel/policyhelp -Requires(pre): shadow-utils +BuildRequires: flex +Buildrequires: autoconf +BuildRequires: bison +BuildRequires: libtool +BuildRequires: libtool-ltdl-devel +BuildRequires: libmaa-devel +BuildRequires: byacc +BuildRequires: libdbi-devel +BuildRequires: zlib-devel +BuildRequires: gawk +BuildRequires: gcc +BuildRequires: pkgconfig(systemd) +BuildRequires: checkpolicy, selinux-policy-devel + +Requires(pre): shadow-utils %description Command-line client for the DICT protocol. The Dictionary Server @@ -45,15 +40,9 @@ language dictionary databases. %package server Summary: Server for the Dictionary Server Protocol (DICT) -%if %{with systemd} Requires(post): systemd Requires(preun): systemd Requires(postun): systemd -%else -Requires(post): chkconfig -Requires(preun): chkconfig -Requires(postun): initscripts -%endif %if "%{_selinux_policy_version}" != "" Requires: selinux-policy >= %{_selinux_policy_version} %endif @@ -65,63 +54,32 @@ ftp://ftp.dict.org/pub/dict/pre/ More information can be found in the INSTALL file in this package. %prep -%setup -q -tar xzf %{SOURCE2} -mv libmaa-%{libmaaVersion} libmaa -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 +%autosetup -p1 + +autoreconf -fv mkdir SELinux -cp -p %{SOURCE3} SELinux +cp -p %{SOURCE2} SELinux %build -export CFLAGS="$RPM_OPT_FLAGS -fPIC" -export LDFLAGS="%{?__global_ldflags}" CPPFLAGS="$RPM_OPT_FLAGS -fPIC" -pushd libmaa -# Required for aarch64 support: -%configure -make %{?_smp_mflags} -popd - -cd SELinux +pushd SELinux for selinuxvariant in %{selinux_variants} do make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile mv dictd2.pp dictd2.pp.${selinuxvariant} make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile clean done -cd - +popd -export LDFLAGS="%{?__global_ldflags} -Llibmaa/.libs" CPPFLAGS="-Ilibmaa $RPM_OPT_FLAGS -fPIC" %configure --enable-dictorg --disable-plugin make %{?_smp_mflags} %install -make install DESTDIR=$RPM_BUILD_ROOT -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir} -mkdir -p $RPM_BUILD_ROOT%{homedir} -%if %{with systemd} -mkdir -p $RPM_BUILD_ROOT%{_unitdir} -install -m 755 %{SOURCE1} $RPM_BUILD_ROOT/%{_unitdir}/dictd.service -%else -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d -install -m 755 %{SOURCE4} $RPM_BUILD_ROOT/%{_sysconfdir}/rc.d/init.d/dictd -%endif - -cat < $RPM_BUILD_ROOT/%{_sysconfdir}/dictd.conf -global { - #syslog - #syslog_facility daemon -} - -# Add database definitions here... - -# We stop the search here -database_exit - -# Add hidden database definitions here... - -EOF +%make_install +mkdir -p %{buildroot}%{homedir} +mkdir -p %{buildroot}%{_unitdir} +install -m 755 %{SOURCE1} %{buildroot}%{_unitdir}/dictd.service +mkdir -p %{buildroot}%{_sysconfdir} +install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/dictd.conf for selinuxvariant in %{selinux_variants} do @@ -132,33 +90,13 @@ done %post server -%if %{with systemd} %systemd_post dictd.service -%else -if [ $1 = 1 ]; then - /sbin/chkconfig --add dictd -fi -%endif %preun server -%if %{with systemd} %systemd_preun dictd.service -%else -if [ $1 = 0 ]; then - # Stop the service (otherwise userdel will fail) - /etc/rc.d/init.d/dictd stop &>/dev/null || : - /sbin/chkconfig --del dictd -fi -%endif %postun server -%if %{with systemd} %systemd_postun_with_restart dictd.service -%else -if [ $1 -ge 1 ] ; then - /sbin/service dictd condrestart > /dev/null 2>&1 || : -fi -%endif %pre getent group %{username} >/dev/null || groupadd -r %{username} @@ -168,31 +106,44 @@ getent passwd %{username} >/dev/null || \ exit 0 %files -%doc ANNOUNCE COPYING ChangeLog README doc/rfc2229.txt doc/security.doc +%doc ANNOUNCE COPYING README doc/rfc2229.txt doc/security.doc %doc examples/dict1.conf %{_bindir}/dict %{_mandir}/man1/dict.1* - %files server -%doc ANNOUNCE COPYING INSTALL ChangeLog README doc/rfc2229.txt doc/security.doc +%doc ANNOUNCE COPYING INSTALL README doc/rfc2229.txt doc/security.doc %doc examples/dictd* %exclude %{_mandir}/man1/dict.1* %exclude %{_bindir}/dict -%{_bindir}/* -%{_sbindir}/* -%{_mandir}/man?/* -%if %{with systemd} +%{_bindir}/dict_lookup +%{_bindir}/dictfmt +%{_bindir}/dictfmt_index2suffix +%{_bindir}/dictfmt_index2word +%{_bindir}/dictl +%{_bindir}/dictunformat +%{_bindir}/dictzip +%{_bindir}/colorit +%{_sbindir}/dictd +%{_mandir}/man1/colorit.1* +%{_mandir}/man1/dict_lookup.1* +%{_mandir}/man1/dictfmt.1* +%{_mandir}/man1/dictfmt_index2suffix.1* +%{_mandir}/man1/dictfmt_index2word.1* +%{_mandir}/man1/dictl.1* +%{_mandir}/man1/dictunformat.1* +%{_mandir}/man1/dictzip.1* +%{_mandir}/man8/dictd.8* %attr(0644,root,root) %{_unitdir}/dictd.service -%else -%{_sysconfdir}/rc.d/init.d/* -%endif %{homedir} %config(noreplace) %{_sysconfdir}/dictd.conf %doc SELinux %{_datadir}/selinux/*/dictd2.pp %changelog +* Sat Mar 02 2024 Carlos Rodriguez-Fernandez - 1.13.1-1 +- Update to version 1.13.1 + * Wed Jan 24 2024 Fedora Release Engineering - 1.12.1-36 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..fefdc9f --- /dev/null +++ b/gating.yaml @@ -0,0 +1,19 @@ +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_testing +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_stable +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} diff --git a/plans/main.fmf b/plans/main.fmf new file mode 100644 index 0000000..c1627f9 --- /dev/null +++ b/plans/main.fmf @@ -0,0 +1,5 @@ +summary: Basic smoke test +discover: + how: fmf +execute: + how: tmt diff --git a/tests/core/data/dict.conf b/tests/core/data/dict.conf new file mode 100644 index 0000000..d2682cb --- /dev/null +++ b/tests/core/data/dict.conf @@ -0,0 +1 @@ +server localhost diff --git a/tests/core/data/dictd.conf b/tests/core/data/dictd.conf new file mode 100644 index 0000000..19c56d0 --- /dev/null +++ b/tests/core/data/dictd.conf @@ -0,0 +1,11 @@ +global { + #syslog + #syslog_facility daemon +} + +database hello { data "/usr/share/dict/dictd/hello.dict" + index "/usr/share/dict/dictd/hello.index" } + +database_exit + +# Add hidden database definitions here... diff --git a/tests/core/data/hello.dict b/tests/core/data/hello.dict new file mode 100644 index 0000000..bc873e4 --- /dev/null +++ b/tests/core/data/hello.dict @@ -0,0 +1,25 @@ + +The original data is available from: + unknown + +The original data was distributed with the notice shown below. No +additional restrictions are claimed. Please redistribute this changed +version under the same conditions and restriction that apply to the +original version. + +Привет + hello1 +Прывітанне + hello2 +Привіт + hello4 +Hello + hello3 +haló + hello5 +dobrý den + hello6 +unknown +00-database-short + unknown + abdehlnoróýавеинпртыі diff --git a/tests/core/data/hello.index b/tests/core/data/hello.index new file mode 100644 index 0000000..3e62622 --- /dev/null +++ b/tests/core/data/hello.index @@ -0,0 +1,11 @@ +00databasealphabet G9 j +00databaseinfo B ET +00databaseshort Ge f +00databaseurl GW I +00databaseutf8 A B +dobrý den GB V +haló Fx Q +hello Fh Q +привет EU X +привіт FK X +прывітанне Er f diff --git a/tests/core/main.fmf b/tests/core/main.fmf new file mode 100644 index 0000000..03de3c5 --- /dev/null +++ b/tests/core/main.fmf @@ -0,0 +1 @@ +summary: dict and dictd smoke test diff --git a/tests/core/test.sh b/tests/core/test.sh new file mode 100755 index 0000000..c96411c --- /dev/null +++ b/tests/core/test.sh @@ -0,0 +1,35 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +rlJournalStart + rlPhaseStartSetup + rlRun "cp ./data/hello.dict /usr/share/dict/dictd/" 0 "Copying hello dict" + rlRun "cp ./data/hello.index /usr/share/dict/dictd/" 0 "Copying hello index" + rlFileBackup --missing-ok "/etc/dictd.conf" + rlFileBackup --missing-ok "/etc/dict.conf" + rlRun "cp ./data/dictd.conf /etc/dictd.conf" 0 "Setting up hello db" + rlRun "cp ./data/dict.conf /etc/dict.conf" 0 "Setting up client" + rlServiceStop "dictd.service" + rlServiceStart "dictd.service" + rlPhaseEnd + + rlPhaseStartTest + rlRun -s "dict -I" 0 "Validate connectivity to local server" + rlAssertGrep "dictd" "$rlRun_LOG" + rlAssertGrep "up" "$rlRun_LOG" + rlAssertGrep "hello" "$rlRun_LOG" + rlPhaseEnd + + rlPhaseStartTest + rlRun -s "dict haló" 0 "Search haló" + rlAssertGrep "hello5" "$rlRun_LOG" + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "rm -f /usr/share/dict/dictd/hello.*" + rlFileRestore "/etc/dictd.conf" + rlFileRestore "/etc/dict.conf" + rlServiceRestore "dictd.service" + rlPhaseEnd +rlJournalEnd diff --git a/tests/main.fmf b/tests/main.fmf new file mode 100644 index 0000000..034a796 --- /dev/null +++ b/tests/main.fmf @@ -0,0 +1,3 @@ +summary: dict and dictd smoke test +test: ./test.sh +framework: beakerlib diff --git a/tests/manpages/main.fmf b/tests/manpages/main.fmf new file mode 100644 index 0000000..3ee823e --- /dev/null +++ b/tests/manpages/main.fmf @@ -0,0 +1,2 @@ +summary: verify manpages +require: [man-db] diff --git a/tests/manpages/test.sh b/tests/manpages/test.sh new file mode 100755 index 0000000..91f3fa9 --- /dev/null +++ b/tests/manpages/test.sh @@ -0,0 +1,23 @@ +#!/bin/bash +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +expected_manpages=( + 'dict(1)' + 'dictd(8)' + 'dictzip(1)' + 'colorit(1)' + 'dict_lookup(1)' + 'dictfmt(1)' + 'dictfmt_index2suffix(1)' + 'dictfmt_index2word(1)' + 'dictl(1)' + 'dictunformat(1)' +) + +rlJournalStart + for page in "${expected_manpages[@]}"; do + rlPhaseStartTest "test ${page}" + rlRun "man --pager=cat '${page}'" + rlPhaseEnd + done +rlJournalEnd diff --git a/tests/selinux/main.fmf b/tests/selinux/main.fmf new file mode 100644 index 0000000..d625b4a --- /dev/null +++ b/tests/selinux/main.fmf @@ -0,0 +1,2 @@ +summary: verify selinux configuration +require: [audit] \ No newline at end of file diff --git a/tests/selinux/test.sh b/tests/selinux/test.sh new file mode 100755 index 0000000..d104512 --- /dev/null +++ b/tests/selinux/test.sh @@ -0,0 +1,18 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +rlJournalStart + rlPhaseStartSetup + rlServiceStop "dictd.service" + rlServiceStart "dictd.service" + rlPhaseEnd + + rlPhaseStartTest + rlRun "ausearch -m AVC -c dictd" 1 "Should find no audit for dictd" + rlPhaseEnd + + rlPhaseStartCleanup + rlServiceRestore "dictd.service" + rlPhaseEnd +rlJournalEnd From 7ee38f7aa924a83658f38804a1b36f0013476ecb Mon Sep 17 00:00:00 2001 From: Carlos Rodriguez-Fernandez Date: Sat, 2 Mar 2024 12:48:24 -0700 Subject: [PATCH 11/21] update sources --- sources | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sources b/sources index 4be4c3c..92ea5d3 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -62696491174c22079f664830d07c0623 dictd-1.12.1.tar.gz -01dab2cde2e0a322653e45bfa63537ee libmaa-1.3.2.tar.gz +SHA512 (dictd-1.13.1.tar.gz) = 5e4b67e8d74cec174e9c36b0ccecf1363eed324ec6216307b03f68571155c98bd94e5d3b7fc0b096585172c687aca832fd4110849a403da8c722eba9a4e74fa3 From a13756fa70c9d7d5665f1632cc63844e2a7db506 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Wed, 6 Mar 2024 12:07:11 +0000 Subject: [PATCH 12/21] Correct typo in license name --- dictd.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index a8b40aa..6a05201 100644 --- a/dictd.spec +++ b/dictd.spec @@ -8,7 +8,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.13.1 Release: 1%{?dist} -License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-PublicDomain +License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service Source2: dictd2.te From 341db09c085e11f894b32ddf85fe04e07fe7623c Mon Sep 17 00:00:00 2001 From: Carlos Rodriguez-Fernandez Date: Sun, 10 Mar 2024 22:38:18 -0700 Subject: [PATCH 13/21] Fix license, and prepare new release --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index 6a05201..4bffbe4 100644 --- a/dictd.spec +++ b/dictd.spec @@ -7,7 +7,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.13.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service @@ -141,6 +141,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Sun Mar 10 2024 Miroslav Suchy 1.13.1-2 +- Correct typo in license name + * Sat Mar 02 2024 Carlos Rodriguez-Fernandez - 1.13.1-1 - Update to version 1.13.1 From 1d36c0aa8a3f077ba2ea722404a61dacac7f5301 Mon Sep 17 00:00:00 2001 From: Carlos Rodriguez-Fernandez Date: Mon, 11 Mar 2024 20:55:59 -0700 Subject: [PATCH 14/21] Remove use of deprecated functions --- ...f-deprecated-inet_aton-and-inet_ntoa.patch | 96 +++++++++++++++++++ dictd.rpmlintrc | 2 + dictd.spec | 6 +- 3 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 0001-remove-use-of-deprecated-inet_aton-and-inet_ntoa.patch create mode 100644 dictd.rpmlintrc diff --git a/0001-remove-use-of-deprecated-inet_aton-and-inet_ntoa.patch b/0001-remove-use-of-deprecated-inet_aton-and-inet_ntoa.patch new file mode 100644 index 0000000..3acc6a7 --- /dev/null +++ b/0001-remove-use-of-deprecated-inet_aton-and-inet_ntoa.patch @@ -0,0 +1,96 @@ +From 941a0027855ae2d55b6672a692a750a33a0d3260 Mon Sep 17 00:00:00 2001 +From: Carlos Rodriguez-Fernandez +Date: Mon, 11 Mar 2024 20:20:39 -0700 +Subject: [PATCH] remove use of deprecated inet_aton and inet_ntoa + +--- + daemon.c | 43 +++++++++++++++++++++++++++++++------------ + 1 file changed, 31 insertions(+), 12 deletions(-) + +diff --git a/daemon.c b/daemon.c +index 449caca..4d9f078 100644 +--- a/daemon.c ++++ b/daemon.c +@@ -90,6 +90,8 @@ static struct { + }; + #define COMMANDS (sizeof(commandInfo)/sizeof(commandInfo[0])) + ++#define ADDR_LEN 64 ++ + static command_t lookup_command( int argc, const char **argv ) + { + size_t i; +@@ -199,7 +201,7 @@ static int daemon_check_mask(const char *spec, const char *ip) + { + char *tmp = alloca(strlen(spec) + 1); + char *pt; +- char tstring[64], mstring[64]; ++ char tstring[ADDR_LEN], mstring[ADDR_LEN]; + struct in_addr target, mask; + int bits; + unsigned long bitmask; +@@ -216,11 +218,18 @@ static int daemon_check_mask(const char *spec, const char *ip) + return DICT_DENY; + } + +- inet_aton(ip, &target); +- inet_aton(tmp, &mask); ++ ++ if (inet_pton(AF_INET, ip, &target) < 1) { ++ log_info( ":E: Unable to parse '%s' as an IPv4 address\n", ip); ++ return DICT_DENY; ++ } ++ if (inet_pton(AF_INET, tmp, &mask) < 1) { ++ log_info( ":E: Unable to parse '%s' as an IPv4 address\n", tmp); ++ return DICT_DENY; ++ } + bits = strtol(pt, NULL, 10); +- strcpy(tstring, inet_ntoa(target)); +- strcpy(mstring, inet_ntoa(mask)); ++ inet_ntop(AF_INET, &target, tstring, ADDR_LEN); ++ inet_ntop(AF_INET, &mask, mstring, ADDR_LEN); + if (bits < 0 || bits > 32) { + log_info( ":E: Bit count (%d) out of range, denying access to %s\n", + bits, ip); +@@ -240,7 +249,7 @@ static int daemon_check_range(const char *spec, const char *ip) + { + char *tmp = alloca(strlen(spec) + 1); + char *pt; +- char tstring[64], minstring[64], maxstring[64]; ++ char tstring[ADDR_LEN], minstring[ADDR_LEN], maxstring[ADDR_LEN]; + struct in_addr target, min, max; + + strcpy(tmp, spec); +@@ -258,13 +267,23 @@ static int daemon_check_range(const char *spec, const char *ip) + log_info( ":E: Misformed range %s, denying access to %s\n", spec, ip); + return DICT_DENY; + } ++ ++ if (inet_pton(AF_INET, ip, &target) < 1) { ++ log_info( ":E: Unable to parse '%s' as an IPv4 address\n", ip); ++ return DICT_DENY; ++ } ++ if (inet_pton(AF_INET, tmp, &min) < 1) { ++ log_info( ":E: Unable to parse '%s' as an IPv4 address\n", tmp); ++ return DICT_DENY; ++ } ++ if (inet_pton(AF_INET, pt, &max) < 1) { ++ log_info( ":E: Unable to parse '%s' as an IPv4 address\n", pt); ++ return DICT_DENY; ++ } + +- inet_aton(ip, &target); +- inet_aton(tmp, &min); +- inet_aton(pt, &max); +- strcpy(tstring, inet_ntoa(target)); +- strcpy(minstring, inet_ntoa(min)); +- strcpy(maxstring, inet_ntoa(max)); ++ inet_ntop(AF_INET, &target, tstring, ADDR_LEN); ++ inet_ntop(AF_INET, &min, minstring, ADDR_LEN); ++ inet_ntop(AF_INET, &max, maxstring, ADDR_LEN); + if (ntohl(target.s_addr) >= ntohl(min.s_addr) + && ntohl(target.s_addr) <= ntohl(max.s_addr)) { + PRINTF(DBG_AUTH,("%s in range from %s to %s\n", +-- +2.44.0 + diff --git a/dictd.rpmlintrc b/dictd.rpmlintrc new file mode 100644 index 0000000..ae705c3 --- /dev/null +++ b/dictd.rpmlintrc @@ -0,0 +1,2 @@ +addFilter('.*incorrect-fsf-address.*') +addFilter('.*zero-length.*') diff --git a/dictd.spec b/dictd.spec index 4bffbe4..26b096a 100644 --- a/dictd.spec +++ b/dictd.spec @@ -7,13 +7,14 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.13.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service Source2: dictd2.te Source3: dictd.conf Patch0: 0001-Fix-C99-compatibility-issues-in-lexer-parser-integra.patch +Patch1: 0001-remove-use-of-deprecated-inet_aton-and-inet_ntoa.patch URL: http://www.dict.org/ BuildRequires: flex @@ -141,6 +142,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Mon Mar 11 2024 Carlos Rodriguez-Fernandez 1.13.1-3 +- Remove use of deprecated functions + * Sun Mar 10 2024 Miroslav Suchy 1.13.1-2 - Correct typo in license name From 19cbc75753ea98f7f1e4e2f074e7510ae22cca5e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 20:57:34 +0000 Subject: [PATCH 15/21] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index 26b096a..0aeb7ed 100644 --- a/dictd.spec +++ b/dictd.spec @@ -7,7 +7,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.13.1 -Release: 3%{?dist} +Release: 4%{?dist} License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service @@ -142,6 +142,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 1.13.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Mon Mar 11 2024 Carlos Rodriguez-Fernandez 1.13.1-3 - Remove use of deprecated functions From 73b9ec83aff2243185c6903afb1b70240b314ee9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 15:44:14 +0000 Subject: [PATCH 16/21] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index 0aeb7ed..340b653 100644 --- a/dictd.spec +++ b/dictd.spec @@ -7,7 +7,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.13.1 -Release: 4%{?dist} +Release: 5%{?dist} License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service @@ -142,6 +142,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 1.13.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Jul 17 2024 Fedora Release Engineering - 1.13.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 9d42e6db82adca49673bb61c4248937f2277f7fd Mon Sep 17 00:00:00 2001 From: Carlos Rodriguez-Fernandez Date: Wed, 29 Jan 2025 22:40:33 -0700 Subject: [PATCH 17/21] Set default client configuration to use dict.org --- dict.conf | 1 + dictd.spec | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 dict.conf diff --git a/dict.conf b/dict.conf new file mode 100644 index 0000000..1f0b681 --- /dev/null +++ b/dict.conf @@ -0,0 +1 @@ +server dict.org diff --git a/dictd.spec b/dictd.spec index 340b653..43d7f46 100644 --- a/dictd.spec +++ b/dictd.spec @@ -7,12 +7,13 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.13.1 -Release: 5%{?dist} +Release: 6%{?dist} License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service Source2: dictd2.te Source3: dictd.conf +Source4: dict.conf Patch0: 0001-Fix-C99-compatibility-issues-in-lexer-parser-integra.patch Patch1: 0001-remove-use-of-deprecated-inet_aton-and-inet_ntoa.patch URL: http://www.dict.org/ @@ -81,6 +82,7 @@ mkdir -p %{buildroot}%{_unitdir} install -m 755 %{SOURCE1} %{buildroot}%{_unitdir}/dictd.service mkdir -p %{buildroot}%{_sysconfdir} install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/dictd.conf +install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/dict.conf for selinuxvariant in %{selinux_variants} do @@ -111,6 +113,7 @@ exit 0 %doc examples/dict1.conf %{_bindir}/dict %{_mandir}/man1/dict.1* +%config(noreplace) %{_sysconfdir}/dict.conf %files server %doc ANNOUNCE COPYING INSTALL README doc/rfc2229.txt doc/security.doc @@ -142,6 +145,9 @@ exit 0 %{_datadir}/selinux/*/dictd2.pp %changelog +* Wed Jan 29 2025 Carlos Rodriguez-Fernandez - 1.13.1-6 +- Set default client configuration to use dict.org + * Thu Jan 16 2025 Fedora Release Engineering - 1.13.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 4958d0ad6ced200dd4b39a041025051778164934 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 11 Feb 2025 14:36:24 +0100 Subject: [PATCH 18/21] Add sysusers.d config file to allow rpm to create users/groups automatically See https://fedoraproject.org/wiki/Changes/RPMSuportForSystemdSysusers. The sysusers file is now in server subpackage, even though the %pre scriptlet was previously attached to the main subpackage. --- dictd.spec | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/dictd.spec b/dictd.spec index 43d7f46..b9e517f 100644 --- a/dictd.spec +++ b/dictd.spec @@ -7,7 +7,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.13.1 -Release: 6%{?dist} +Release: 7%{?dist} License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service @@ -32,7 +32,6 @@ BuildRequires: gcc BuildRequires: pkgconfig(systemd) BuildRequires: checkpolicy, selinux-policy-devel -Requires(pre): shadow-utils %description Command-line client for the DICT protocol. The Dictionary Server @@ -62,6 +61,11 @@ autoreconf -fv mkdir SELinux cp -p %{SOURCE2} SELinux +# Create a sysusers.d config file +cat >dictd.sysusers.conf </dev/null || groupadd -r %{username} -getent passwd %{username} >/dev/null || \ - useradd -r -g %{username} -d %{homedir} -s /sbin/nologin \ - -c "dictd dictionary server" %{username} -exit 0 %files %doc ANNOUNCE COPYING README doc/rfc2229.txt doc/security.doc @@ -139,12 +139,16 @@ exit 0 %{_mandir}/man1/dictzip.1* %{_mandir}/man8/dictd.8* %attr(0644,root,root) %{_unitdir}/dictd.service +%{_sysusersdir}/dictd.conf %{homedir} %config(noreplace) %{_sysconfdir}/dictd.conf %doc SELinux %{_datadir}/selinux/*/dictd2.pp %changelog +* Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek - 1.13.1-7 +- Add sysusers.d config file to allow rpm to create users/groups automatically + * Wed Jan 29 2025 Carlos Rodriguez-Fernandez - 1.13.1-6 - Set default client configuration to use dict.org From abfd3092b0806a5d9892db45fbdf39e8ff0ceb60 Mon Sep 17 00:00:00 2001 From: Carlos Rodriguez-Fernandez Date: Wed, 12 Feb 2025 21:28:10 -0700 Subject: [PATCH 19/21] Disable broken check from known issue --- gating.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gating.yaml b/gating.yaml index fefdc9f..5c82166 100644 --- a/gating.yaml +++ b/gating.yaml @@ -13,7 +13,7 @@ product_versions: decision_context: bodhi_update_push_stable subject_type: koji_build rules: - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} +# - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional} # known issue rhbz#2268949 - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional} - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} From 9672054974e8042a1600807cfafeeacc412a2a31 Mon Sep 17 00:00:00 2001 From: Carlos Rodriguez-Fernandez Date: Thu, 17 Apr 2025 21:57:10 -0700 Subject: [PATCH 20/21] Update to 1.13.3 --- dictd.spec | 10 +++++++--- sources | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/dictd.spec b/dictd.spec index b9e517f..8fe7fbd 100644 --- a/dictd.spec +++ b/dictd.spec @@ -6,8 +6,8 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd -Version: 1.13.1 -Release: 7%{?dist} +Version: 1.13.3 +Release: 1%{?dist} License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service @@ -19,6 +19,7 @@ Patch1: 0001-remove-use-of-deprecated-inet_aton-and-inet_ntoa.patch URL: http://www.dict.org/ BuildRequires: flex +BuildRequires: flex-devel Buildrequires: autoconf BuildRequires: bison BuildRequires: libtool @@ -57,7 +58,7 @@ More information can be found in the INSTALL file in this package. %prep %autosetup -p1 -autoreconf -fv +autoreconf -fiv mkdir SELinux cp -p %{SOURCE2} SELinux @@ -146,6 +147,9 @@ install -m0644 -D dictd.sysusers.conf %{buildroot}%{_sysusersdir}/dictd.conf %{_datadir}/selinux/*/dictd2.pp %changelog +* Thu Apr 17 2025 Carlos Rodriguez-Fernandez - 1.13.3-1 +- Update to 1.13.3 + * Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek - 1.13.1-7 - Add sysusers.d config file to allow rpm to create users/groups automatically diff --git a/sources b/sources index 92ea5d3..e522365 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (dictd-1.13.1.tar.gz) = 5e4b67e8d74cec174e9c36b0ccecf1363eed324ec6216307b03f68571155c98bd94e5d3b7fc0b096585172c687aca832fd4110849a403da8c722eba9a4e74fa3 +SHA512 (dictd-1.13.3.tar.gz) = fb118a7594566a8e4e3fdff9bf79c37ed29f1f2eb3a9f380ba7c57740839b723537a0ed8864c0b425774b564f78ae50624756c3ca3a372a971002bcaca7fb934 From 8fa2c2cc9b220810422ee037a8e3db572ec7374a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 19:16:18 +0000 Subject: [PATCH 21/21] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- dictd.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dictd.spec b/dictd.spec index 8fe7fbd..71ad2ca 100644 --- a/dictd.spec +++ b/dictd.spec @@ -7,7 +7,7 @@ Summary: DICT protocol (RFC 2229) server and command-line client Name: dictd Version: 1.13.3 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL-2.0-only AND GPL-2.0-or-later AND GPL-1.0-or-later AND GPL-3.0-or-later AND MIT AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Source0: https://github.com/cheusov/dictd/archive/%{version}/%{name}-%{version}.tar.gz Source1: dictd.service @@ -147,6 +147,9 @@ install -m0644 -D dictd.sysusers.conf %{buildroot}%{_sysusersdir}/dictd.conf %{_datadir}/selinux/*/dictd2.pp %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 1.13.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Thu Apr 17 2025 Carlos Rodriguez-Fernandez - 1.13.3-1 - Update to 1.13.3