diff options
| author | Hongxu Jia <hongxu.jia@windriver.com> | 2018-05-02 17:31:54 +0800 |
|---|---|---|
| committer | Armin Kuster <akuster808@gmail.com> | 2018-05-17 08:19:21 -0700 |
| commit | 7eb04ba6772272a30c4a184702d039d145ec7799 (patch) | |
| tree | 17efbd81366d540ee5c18229332a7388b6bf540c | |
| parent | 1ec2d489c30bf14f2bc6e8bbc01e642a065b7ac6 (diff) | |
| download | meta-openembedded-7eb04ba6772272a30c4a184702d039d145ec7799.tar.gz | |
krb5: support environment setting on systemd
Let krb5 support environment setting on systemd startup.
Here is one requirement of environment setting from upstream krb5
...
https://web.mit.edu/kerberos/krb5-1.16/doc/admin/conf_files/kdc_conf.html
|Normally, the kdc.conf file is found in the KDC state directory,
LOCALSTATEDIR/krb5kdc. You can override the default location by
setting the environment variable KRB5_KDC_PROFILE.
...
The fix of (krb5-admin-server.service/krb5-kdc.service) refers ubuntu 1604
Variable RUN_KADMIND is sysvinit, move it out from default/krb5-admin-server
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
4 files changed, 8 insertions, 3 deletions
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-admin-server b/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-admin-server index 2835929139..e097353c2b 100644 --- a/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-admin-server +++ b/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-admin-server | |||
| @@ -1,6 +1,4 @@ | |||
| 1 | # Automatically generated. If you change anything in this file other than the | 1 | # Automatically generated. If you change anything in this file other than the |
| 2 | # values of RUN_KADMIND or DAEMON_ARGS, first run dpkg-reconfigure | 2 | # values of DAEMON_ARGS, first run dpkg-reconfigure |
| 3 | # krb5-admin-server and disable managing the kadmin configuration with | 3 | # krb5-admin-server and disable managing the kadmin configuration with |
| 4 | # debconf. Otherwise, changes will be overwritten. | 4 | # debconf. Otherwise, changes will be overwritten. |
| 5 | |||
| 6 | RUN_KADMIND=true | ||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/krb5-admin-server.service b/meta-oe/recipes-connectivity/krb5/krb5/krb5-admin-server.service index 1b4271643e..21939a1f05 100644 --- a/meta-oe/recipes-connectivity/krb5/krb5/krb5-admin-server.service +++ b/meta-oe/recipes-connectivity/krb5/krb5/krb5-admin-server.service | |||
| @@ -7,6 +7,7 @@ ConditionPathExists=/etc/krb5.conf | |||
| 7 | Type=forking | 7 | Type=forking |
| 8 | ExecStartPre=/bin/sh -c "test ! -f /var/log/kadmind.log || test ! -x /sbin/restorecon || /sbin/restorecon -F /var/log/kadmind.log" | 8 | ExecStartPre=/bin/sh -c "test ! -f /var/log/kadmind.log || test ! -x /sbin/restorecon || /sbin/restorecon -F /var/log/kadmind.log" |
| 9 | ExecStart=/usr/sbin/kadmind | 9 | ExecStart=/usr/sbin/kadmind |
| 10 | EnvironmentFile=-/etc/default/krb5-admin-server | ||
| 10 | SuccessExitStatus=1 2 SIGKILL | 11 | SuccessExitStatus=1 2 SIGKILL |
| 11 | TimeoutStopSec=30 | 12 | TimeoutStopSec=30 |
| 12 | 13 | ||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/krb5-kdc.service b/meta-oe/recipes-connectivity/krb5/krb5/krb5-kdc.service index d5e5a95794..bf37c45ba4 100644 --- a/meta-oe/recipes-connectivity/krb5/krb5/krb5-kdc.service +++ b/meta-oe/recipes-connectivity/krb5/krb5/krb5-kdc.service | |||
| @@ -6,6 +6,7 @@ ConditionPathExists=/etc/krb5.conf | |||
| 6 | [Service] | 6 | [Service] |
| 7 | Type=forking | 7 | Type=forking |
| 8 | ExecStart=/usr/sbin/krb5kdc | 8 | ExecStart=/usr/sbin/krb5kdc |
| 9 | EnvironmentFile=-/etc/default/krb5-kdc | ||
| 9 | SuccessExitStatus=1 2 SIGKILL | 10 | SuccessExitStatus=1 2 SIGKILL |
| 10 | TimeoutStopSec=30 | 11 | TimeoutStopSec=30 |
| 11 | 12 | ||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5_1.16.bb b/meta-oe/recipes-connectivity/krb5/krb5_1.16.bb index ce2134513e..f95240f545 100644 --- a/meta-oe/recipes-connectivity/krb5/krb5_1.16.bb +++ b/meta-oe/recipes-connectivity/krb5/krb5_1.16.bb | |||
| @@ -78,12 +78,17 @@ do_install_append() { | |||
| 78 | mkdir -p ${D}/${sysconfdir}/default/volatiles | 78 | mkdir -p ${D}/${sysconfdir}/default/volatiles |
| 79 | echo "d root root 0755 ${localstatedir}/run/krb5kdc none" \ | 79 | echo "d root root 0755 ${localstatedir}/run/krb5kdc none" \ |
| 80 | > ${D}${sysconfdir}/default/volatiles/87_krb5 | 80 | > ${D}${sysconfdir}/default/volatiles/87_krb5 |
| 81 | |||
| 82 | echo "RUN_KADMIND=true" >> ${D}/${sysconfdir}/default/krb5-admin-server | ||
| 81 | fi | 83 | fi |
| 82 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then | 84 | if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then |
| 83 | install -d ${D}${sysconfdir}/tmpfiles.d | 85 | install -d ${D}${sysconfdir}/tmpfiles.d |
| 84 | echo "d /run/krb5kdc - - - -" \ | 86 | echo "d /run/krb5kdc - - - -" \ |
| 85 | > ${D}${sysconfdir}/tmpfiles.d/krb5.conf | 87 | > ${D}${sysconfdir}/tmpfiles.d/krb5.conf |
| 86 | 88 | ||
| 89 | mkdir -p ${D}/${sysconfdir}/default | ||
| 90 | install -m 0644 ${WORKDIR}/etc/default/* ${D}/${sysconfdir}/default | ||
| 91 | |||
| 87 | install -d ${D}${systemd_system_unitdir} | 92 | install -d ${D}${systemd_system_unitdir} |
| 88 | install -m 0644 ${WORKDIR}/krb5-admin-server.service ${D}${systemd_system_unitdir} | 93 | install -m 0644 ${WORKDIR}/krb5-admin-server.service ${D}${systemd_system_unitdir} |
| 89 | install -m 0644 ${WORKDIR}/krb5-kdc.service ${D}${systemd_system_unitdir} | 94 | install -m 0644 ${WORKDIR}/krb5-kdc.service ${D}${systemd_system_unitdir} |
