summaryrefslogtreecommitdiffstats
path: root/meta/recipes-connectivity/kea/files
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-connectivity/kea/files')
-rw-r--r--meta/recipes-connectivity/kea/files/0001-keactrl.in-create-var-lib-kea-and-var-run-kea-folder.patch39
-rw-r--r--meta/recipes-connectivity/kea/files/0001-src-lib-log-logger_unittest_support.cc-do-not-write-.patch28
-rw-r--r--meta/recipes-connectivity/kea/files/fix-multilib-conflict.patch55
-rw-r--r--meta/recipes-connectivity/kea/files/fix_pid_keactrl.patch29
-rw-r--r--meta/recipes-connectivity/kea/files/kea-dhcp-ddns-server46
-rw-r--r--meta/recipes-connectivity/kea/files/kea-dhcp-ddns.service1
-rw-r--r--meta/recipes-connectivity/kea/files/kea-dhcp4-server46
-rw-r--r--meta/recipes-connectivity/kea/files/kea-dhcp6-server47
8 files changed, 225 insertions, 66 deletions
diff --git a/meta/recipes-connectivity/kea/files/0001-keactrl.in-create-var-lib-kea-and-var-run-kea-folder.patch b/meta/recipes-connectivity/kea/files/0001-keactrl.in-create-var-lib-kea-and-var-run-kea-folder.patch
deleted file mode 100644
index ab3fd83946..0000000000
--- a/meta/recipes-connectivity/kea/files/0001-keactrl.in-create-var-lib-kea-and-var-run-kea-folder.patch
+++ /dev/null
@@ -1,39 +0,0 @@
1From 639dc25cdabc9d1846000a542c8cc19158b69994 Mon Sep 17 00:00:00 2001
2From: Mingli Yu <mingli.yu@windriver.com>
3Date: Fri, 18 Sep 2020 08:18:08 +0000
4Subject: [PATCH] keactrl.in: create /var/lib/kea and /var/run/kea folder
5
6Create /var/lib/kea and /var/run/kea folder to fix below error:
7 # keactrl start
8 INFO/keactrl: Starting /usr/sbin/kea-dhcp4 -c /etc/kea/kea-dhcp4.conf
9 INFO/keactrl: Starting /usr/sbin/kea-dhcp6 -c /etc/kea/kea-dhcp6.conf
10 INFO/keactrl: Starting /usr/sbin/kea-ctrl-agent -c /etc/kea/kea-ctrl-agent.conf
11 Unable to use interprocess sync lockfile (No such file or directory): /var/run/kea/logger_lockfile
12 Service failed: Launch failed: Unable to open PID file '/var/run/kea/kea-ctrl-agent.kea-ctrl-agent.pid' for write
13 [snip]
14 ERROR [kea-dhcp4.dhcp4/615.140641792751488] DHCP4_CONFIG_LOAD_FAIL configuration error using file: /etc/kea/kea-dhcp4.conf, reason: Unable to open database: unable to open '/var/lib/kea/kea-leases4.csv'
15 [snip]
16
17Upstream-Status: Inappropriate [config specific]
18
19Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
20---
21 src/bin/keactrl/keactrl.in | 2 ++
22 1 file changed, 2 insertions(+)
23
24diff --git a/src/bin/keactrl/keactrl.in b/src/bin/keactrl/keactrl.in
25index 12b2b3f..47cf6f9 100644
26--- a/src/bin/keactrl/keactrl.in
27+++ b/src/bin/keactrl/keactrl.in
28@@ -482,6 +482,8 @@ case ${command} in
29 # The variables (dhcp4_srv, dhcp6_serv, dhcp_ddns_srv etc) are set in the
30 # keactrl.conf file that shellcheck is unable to read.
31 # shellcheck disable=SC2154
32+ [ -d @LOCALSTATEDIR@/run/kea ] || mkdir -p @LOCALSTATEDIR@/run/kea
33+ [ -d @LOCALSTATEDIR@/lib/kea ] || mkdir -p @LOCALSTATEDIR@/lib/kea
34 run_conditional "dhcp4" "start_server ${dhcp4_srv} -c ${kea_dhcp4_config_file} ${args}" 1
35 run_conditional "dhcp6" "start_server ${dhcp6_srv} -c ${kea_dhcp6_config_file} ${args}" 1
36 # shellcheck disable=SC2154
37--
382.26.2
39
diff --git a/meta/recipes-connectivity/kea/files/0001-src-lib-log-logger_unittest_support.cc-do-not-write-.patch b/meta/recipes-connectivity/kea/files/0001-src-lib-log-logger_unittest_support.cc-do-not-write-.patch
new file mode 100644
index 0000000000..94fbd12737
--- /dev/null
+++ b/meta/recipes-connectivity/kea/files/0001-src-lib-log-logger_unittest_support.cc-do-not-write-.patch
@@ -0,0 +1,28 @@
1From 841924e1fe8db2bff3eab8d37634ef08f86c00ec Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Tue, 10 Nov 2020 15:57:03 +0000
4Subject: [PATCH] src/lib/log/logger_unittest_support.cc: do not write build
5 path into binary
6
7This breaks reproducibility and is needed only in unit testing.
8
9Upstream-Status: Inappropriate [oe-core specific]
10Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
11
12---
13 src/lib/log/logger_unittest_support.cc | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-)
15
16diff --git a/src/lib/log/logger_unittest_support.cc b/src/lib/log/logger_unittest_support.cc
17index fc01c6e..f46d17e 100644
18--- a/src/lib/log/logger_unittest_support.cc
19+++ b/src/lib/log/logger_unittest_support.cc
20@@ -84,7 +84,7 @@ void initLogger(isc::log::Severity severity, int dbglevel) {
21 const char* localfile = getenv("KEA_LOGGER_LOCALMSG");
22
23 // Set a directory for creating lockfiles when running tests
24- setenv("KEA_LOCKFILE_DIR", TOP_BUILDDIR, 0);
25+ //setenv("KEA_LOCKFILE_DIR", TOP_BUILDDIR, 0);
26
27 // Initialize logging
28 initLogger(root, severity, dbglevel, localfile);
diff --git a/meta/recipes-connectivity/kea/files/fix-multilib-conflict.patch b/meta/recipes-connectivity/kea/files/fix-multilib-conflict.patch
index 733adf5536..5b135b3aee 100644
--- a/meta/recipes-connectivity/kea/files/fix-multilib-conflict.patch
+++ b/meta/recipes-connectivity/kea/files/fix-multilib-conflict.patch
@@ -1,4 +1,7 @@
1There are conflict of config files between kea and lib32-kea: 1From 06ebd1b2ced426c420ed162980eca194f9f918ae Mon Sep 17 00:00:00 2001
2From: Kai Kang <kai.kang@windriver.com>
3Date: Tue, 22 Sep 2020 15:02:33 +0800
4Subject: [PATCH] There are conflict of config files between kea and lib32-kea:
2 5
3| Error: Transaction test error: 6| Error: Transaction test error:
4| file /etc/kea/kea-ctrl-agent.conf conflicts between attempted installs of 7| file /etc/kea/kea-ctrl-agent.conf conflicts between attempted installs of
@@ -9,17 +12,19 @@ There are conflict of config files between kea and lib32-kea:
9Because they are all commented out, replace the expanded libdir path with 12Because they are all commented out, replace the expanded libdir path with
10'$libdir' in the config files to avoid conflict. 13'$libdir' in the config files to avoid conflict.
11 14
15Upstream-Status: Submitted [https://gitlab.isc.org/isc-projects/kea/-/issues/2602]
12Signed-off-by: Kai Kang <kai.kang@windriver.com> 16Signed-off-by: Kai Kang <kai.kang@windriver.com>
17
13--- 18---
14 src/bin/keactrl/kea-ctrl-agent.conf.pre | 3 ++- 19 src/bin/keactrl/kea-ctrl-agent.conf.pre | 3 ++-
15 src/bin/keactrl/kea-dhcp4.conf.pre | 6 ++++-- 20 src/bin/keactrl/kea-dhcp4.conf.pre | 4 ++--
16 2 files changed, 6 insertions(+), 3 deletions(-) 21 2 files changed, 4 insertions(+), 3 deletions(-)
17 22
18diff --git a/src/bin/keactrl/kea-ctrl-agent.conf.pre b/src/bin/keactrl/kea-ctrl-agent.conf.pre 23diff --git a/src/bin/keactrl/kea-ctrl-agent.conf.pre b/src/bin/keactrl/kea-ctrl-agent.conf.pre
19index 211b7ff..d710ec7 100644 24index e6ae8b8..50a3092 100644
20--- a/src/bin/keactrl/kea-ctrl-agent.conf.pre 25--- a/src/bin/keactrl/kea-ctrl-agent.conf.pre
21+++ b/src/bin/keactrl/kea-ctrl-agent.conf.pre 26+++ b/src/bin/keactrl/kea-ctrl-agent.conf.pre
22@@ -45,7 +45,8 @@ 27@@ -51,7 +51,8 @@
23 // Agent will fail to start. 28 // Agent will fail to start.
24 "hooks-libraries": [ 29 "hooks-libraries": [
25 // { 30 // {
@@ -30,26 +35,24 @@ index 211b7ff..d710ec7 100644
30 // "param1": "foo" 35 // "param1": "foo"
31 // } 36 // }
32diff --git a/src/bin/keactrl/kea-dhcp4.conf.pre b/src/bin/keactrl/kea-dhcp4.conf.pre 37diff --git a/src/bin/keactrl/kea-dhcp4.conf.pre b/src/bin/keactrl/kea-dhcp4.conf.pre
33index 5f77a32..70ae3d9 100644 38index 6edb8a1..b2a7385 100644
34--- a/src/bin/keactrl/kea-dhcp4.conf.pre 39--- a/src/bin/keactrl/kea-dhcp4.conf.pre
35+++ b/src/bin/keactrl/kea-dhcp4.conf.pre 40+++ b/src/bin/keactrl/kea-dhcp4.conf.pre
36@@ -252,7 +252,8 @@ 41@@ -255,7 +255,7 @@
37 // // of all devices serviced by Kea, including their identifiers 42 // // of all devices serviced by Kea, including their identifiers
38 // // (like MAC address), their location in the network, times 43 // // (like MAC address), their location in the network, times
39 // // when they were active etc. 44 // // when they were active etc.
40- // "library": "@libdir@/kea/hooks/libdhcp_legal_log.so" 45- // "library": "@libdir@/kea/hooks/libdhcp_legal_log.so",
41+ // // Replace $libdir with real library path /usr/lib or /usr/lib64 46+ // "library": "$libdir/kea/hooks/libdhcp_legal_log.so",
42+ // "library": "$libdir/kea/hooks/libdhcp_legal_log.so" 47 // "parameters": {
43 // "parameters": { 48 // "path": "/var/lib/kea",
44 // "path": "/var/lib/kea", 49 // "base-name": "kea-forensic4"
45 // "base-name": "kea-forensic4" 50@@ -272,7 +272,7 @@
46@@ -269,7 +270,8 @@ 51 // // of specific options or perhaps even a combination of several
47 // // of specific options or perhaps even a combination of several 52 // // options and fields to uniquely identify a client. Those scenarios
48 // // options and fields to uniquely identify a client. Those scenarios 53 // // are addressed by the Flexible Identifiers hook application.
49 // // are addressed by the Flexible Identifiers hook application. 54- // "library": "@libdir@/kea/hooks/libdhcp_flex_id.so",
50- // "library": "@libdir@/kea/hooks/libdhcp_flex_id.so", 55+ // "library": "$libdir/kea/hooks/libdhcp_flex_id.so",
51+ // // Replace $libdir with real library path /usr/lib or /usr/lib64 56 // "parameters": {
52+ // "library": "$libdir/kea/hooks/libdhcp_flex_id.so", 57 // "identifier-expression": "relay4[2].hex"
53 // "parameters": { 58 // }
54 // "identifier-expression": "substring(relay6[0].option[18],0,8)"
55 // }
diff --git a/meta/recipes-connectivity/kea/files/fix_pid_keactrl.patch b/meta/recipes-connectivity/kea/files/fix_pid_keactrl.patch
new file mode 100644
index 0000000000..63a6a2805b
--- /dev/null
+++ b/meta/recipes-connectivity/kea/files/fix_pid_keactrl.patch
@@ -0,0 +1,29 @@
1From c878a356712606549f7f188b62f7d1cae08a176e Mon Sep 17 00:00:00 2001
2From: Armin kuster <akuster808@gmail.com>
3Date: Wed, 14 Oct 2020 22:48:31 -0700
4Subject: [PATCH] Busybox does not support ps -p so use pgrep
5
6Upstream-Status: Inappropriate [embedded specific]
7Based on changes from Diego Sueiro <Diego.Sueiro@arm.com>
8
9Signed-off-by: Armin kuster <akuster808@gmail.com>
10
11---
12 src/bin/keactrl/keactrl.in | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/src/bin/keactrl/keactrl.in b/src/bin/keactrl/keactrl.in
16index 450e997..c353ca9 100644
17--- a/src/bin/keactrl/keactrl.in
18+++ b/src/bin/keactrl/keactrl.in
19@@ -149,8 +149,8 @@ check_running() {
20 # Get the PID from the PID file (if it exists)
21 get_pid_from_file "${proc_name}"
22 if [ ${_pid} -gt 0 ]; then
23- # Use ps to check if PID is alive
24- if ps -p ${_pid} 1>/dev/null; then
25+ # Use pgrep and grep to check if PID is alive
26+ if pgrep -v 1 | grep ${_pid} 1>/dev/null; then
27 # No error, so PID IS ALIVE
28 _running=1
29 fi
diff --git a/meta/recipes-connectivity/kea/files/kea-dhcp-ddns-server b/meta/recipes-connectivity/kea/files/kea-dhcp-ddns-server
new file mode 100644
index 0000000000..50fe40d439
--- /dev/null
+++ b/meta/recipes-connectivity/kea/files/kea-dhcp-ddns-server
@@ -0,0 +1,46 @@
1#!/bin/sh
2### BEGIN INIT INFO
3# Provides: kea-dhcp-ddns-server
4# Required-Start: $local_fs $network $remote_fs $syslog
5# Required-Stop: $local_fs $network $remote_fs $syslog
6# Default-Start: 2 3 4 5
7# Default-Stop: 0 1 6
8# Short-Description: ISC KEA DHCP IPv6 Server
9### END INIT INFO
10
11PATH=/sbin:/usr/sbin:/bin:/usr/bin
12DESC="kea-dhcp-ddns-server"
13NAME=kea-dhcp-ddns
14DAEMON=/usr/sbin/keactrl
15DAEMON_ARGS=" -s dhcp_ddns"
16
17set -e
18
19# Exit if the package is not installed
20[ -x "$DAEMON" ] || exit 0
21
22# Source function library.
23. /etc/init.d/functions
24
25case "$1" in
26 start)
27 echo -n "Starting $DESC: "
28 start-stop-daemon -S -b -n $NAME -x $DAEMON -- start $DAEMON_ARGS
29 echo "done."
30 ;;
31 stop)
32 echo -n "Stopping $DESC: "
33 kpid=`pidof $NAME`
34 kill $kpid
35 echo "done."
36 ;;
37 restart|force-reload)
38 #
39 $0 stop
40 $0 start
41 ;;
42 *)
43 echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
44 exit 1
45 ;;
46esac
diff --git a/meta/recipes-connectivity/kea/files/kea-dhcp-ddns.service b/meta/recipes-connectivity/kea/files/kea-dhcp-ddns.service
index 91aa2eb14f..f6059d73cb 100644
--- a/meta/recipes-connectivity/kea/files/kea-dhcp-ddns.service
+++ b/meta/recipes-connectivity/kea/files/kea-dhcp-ddns.service
@@ -6,7 +6,6 @@ After=time-sync.target
6 6
7[Service] 7[Service]
8ExecStartPre=@BASE_BINDIR@/mkdir -p @LOCALSTATEDIR@/run/kea/ 8ExecStartPre=@BASE_BINDIR@/mkdir -p @LOCALSTATEDIR@/run/kea/
9ExecStartPre=@BASE_BINDIR@/mkdir -p @LOCALSTATEDIR@/kea
10ExecStart=@SBINDIR@/kea-dhcp-ddns -c @SYSCONFDIR@/kea/kea-dhcp-ddns.conf 9ExecStart=@SBINDIR@/kea-dhcp-ddns -c @SYSCONFDIR@/kea/kea-dhcp-ddns.conf
11 10
12[Install] 11[Install]
diff --git a/meta/recipes-connectivity/kea/files/kea-dhcp4-server b/meta/recipes-connectivity/kea/files/kea-dhcp4-server
new file mode 100644
index 0000000000..e83e51025d
--- /dev/null
+++ b/meta/recipes-connectivity/kea/files/kea-dhcp4-server
@@ -0,0 +1,46 @@
1#!/bin/sh
2### BEGIN INIT INFO
3# Provides: kea-dhcp4-server
4# Required-Start: $local_fs $network $remote_fs $syslog
5# Required-Stop: $local_fs $network $remote_fs $syslog
6# Default-Start: 2 3 4 5
7# Default-Stop: 0 1 6
8# Short-Description: ISC KEA DHCP IPv6 Server
9### END INIT INFO
10
11PATH=/sbin:/usr/sbin:/bin:/usr/bin
12DESC="kea-dhcp4-server"
13NAME=kea-dhcp4
14DAEMON=/usr/sbin/keactrl
15DAEMON_ARGS=" -s dhcp4"
16
17set -e
18
19# Exit if the package is not installed
20[ -x "$DAEMON" ] || exit 0
21
22# Source function library.
23. /etc/init.d/functions
24
25case "$1" in
26 start)
27 echo -n "Starting $DESC: "
28 start-stop-daemon -S -b -n $NAME -x $DAEMON -- start $DAEMON_ARGS
29 echo "done."
30 ;;
31 stop)
32 echo -n "Stopping $DESC: "
33 kpid=`pidof $NAME`
34 kill $kpid
35 echo "done."
36 ;;
37 restart|force-reload)
38 #
39 $0 stop
40 $0 start
41 ;;
42 *)
43 echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
44 exit 1
45 ;;
46esac
diff --git a/meta/recipes-connectivity/kea/files/kea-dhcp6-server b/meta/recipes-connectivity/kea/files/kea-dhcp6-server
new file mode 100644
index 0000000000..10f2d22641
--- /dev/null
+++ b/meta/recipes-connectivity/kea/files/kea-dhcp6-server
@@ -0,0 +1,47 @@
1#!/bin/sh
2### BEGIN INIT INFO
3# Provides: kea-dhcp6-server
4# Required-Start: $local_fs $network $remote_fs $syslog
5# Required-Stop: $local_fs $network $remote_fs $syslog
6# Default-Start: 2 3 4 5
7# Default-Stop: 0 1 6
8# Short-Description: ISC KEA DHCP IPv6 Server
9### END INIT INFO
10
11# PATH should only include /usr/* if it runs after the mountnfs.sh script
12PATH=/sbin:/usr/sbin:/bin:/usr/bin
13DESC="kea-dhcp6-server"
14NAME=kea-dhcp6
15DAEMON=/usr/sbin/keactrl
16DAEMON_ARGS=" -s dhcp6"
17
18set -e
19
20# Exit if the package is not installed
21[ -x "$DAEMON" ] || exit 0
22
23# Source function library.
24. /etc/init.d/functions
25
26case "$1" in
27 start)
28 echo -n "Starting $DESC: "
29 start-stop-daemon -S -b -n $NAME -x $DAEMON -- start $DAEMON_ARGS
30 echo "done."
31 ;;
32 stop)
33 echo -n "Stopping $DESC: "
34 kpid=`pidof $NAME`
35 kill $kpid
36 echo "done."
37 ;;
38 restart|force-reload)
39 #
40 $0 stop
41 $0 start
42 ;;
43 *)
44 echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
45 exit 1
46 ;;
47esac