On 11/08/2013 12:32 PM, Hongxu Jia wrote:
According to DISTRO_FEATURES to add pam support for quagga, and import
configure file from Fedora.
Signed-off-by: Hongxu Jia <hongxu....@windriver.com>
---
meta-networking/recipes-protocols/quagga/files/quagga.pam | 13 +++++++++++++
meta-networking/recipes-protocols/quagga/quagga.inc | 13 ++++++++++++-
2 files changed, 25 insertions(+), 1 deletion(-)
create mode 100644 meta-networking/recipes-protocols/quagga/files/quagga.pam
diff --git a/meta-networking/recipes-protocols/quagga/files/quagga.pam
b/meta-networking/recipes-protocols/quagga/files/quagga.pam
new file mode 100644
index 0000000..3541a97
--- /dev/null
+++ b/meta-networking/recipes-protocols/quagga/files/quagga.pam
@@ -0,0 +1,13 @@
+#
+# The PAM configuration file for the quagga `vtysh' service
+#
+
+# This allows root to change user infomation without being
+# prompted for a password
+auth sufficient pam_rootok.so
+
+# The standard Unix authentication modules, used with
+# NIS (man nsswitch) as well as normal /etc/passwd and
+# /etc/shadow entries.
+auth include common-auth
+
diff --git a/meta-networking/recipes-protocols/quagga/quagga.inc
b/meta-networking/recipes-protocols/quagga/quagga.inc
index 2106c9b..52cd7a3 100644
--- a/meta-networking/recipes-protocols/quagga/quagga.inc
+++ b/meta-networking/recipes-protocols/quagga/quagga.inc
@@ -32,10 +32,12 @@ SRC_URI =
"http://download.savannah.gnu.org/releases/quagga${QUAGGASUBDIR}/quagg
file://watchquagga.init \
file://watchquagga.default \
file://volatiles.03_quagga \
+ file://file://quagga.pam \
Why is there be two file://?
file://ripd-fix-two-bugs-after-received-SIGHUP.patch"
-PACKAGECONFIG ??= ""
+PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}"
PACKAGECONFIG[cap] = "--enable-capabilities,--disable-capabilities,libcap"
+PACKAGECONFIG[pam] = "--with-libpam, --without-libpam, libpam"
inherit autotools update-rc.d useradd
@@ -98,6 +100,15 @@ do_install () {
# Remove generated info dir file, it doesn't belong in the generated
# package.
rm -f ${D}${infodir}/dir
+
+ # For PAM
+ for feature in ${DISTRO_FEATURES}; do
+ if [ "$feature" = "pam" ]; then
+ install -D -m 644 ${WORKDIR}/quagga.pam
${D}/${sysconfdir}/pam.d/quagga
+ break
+ fi
+ done
+
Could you use the below method to simply this loop
if
${@base_contains('DISTRO_FEATURES','sysvinit','false','true',d)};then
if
-Roy
}
# Split into a main package and separate per-protocol packages
--
Best Reagrds,
Roy | RongQing Li
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel