1*4882a593SmuzhiyunDESCRIPTION = "netkit-rsh includes the rsh daemon and client." 2*4882a593SmuzhiyunSECTION = "net" 3*4882a593SmuzhiyunHOMEPAGE="ftp://ftp.uk.linux.org/pub/linux/Networking/netkit" 4*4882a593SmuzhiyunLICENSE = "BSD-4-Clause" 5*4882a593SmuzhiyunDEPENDS = "xinetd libgcrypt virtual/crypt" 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://rsh/rsh.c;endline=32;md5=487b3c637bdc181d32b2a8543d41b606" 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunSRC_URI = "${DEBIAN_MIRROR}/main/n/netkit-rsh/netkit-rsh_${PV}.orig.tar.gz;name=archive \ 10*4882a593Smuzhiyun ${DEBIAN_MIRROR}/main/n/netkit-rsh/netkit-rsh_${PV}-15.diff.gz;name=patch15 \ 11*4882a593Smuzhiyun file://rsh-redone_link_order_file.patch \ 12*4882a593Smuzhiyun file://no_pam_build_fix.patch \ 13*4882a593Smuzhiyun file://rexec.xinetd.netkit \ 14*4882a593Smuzhiyun file://rlogin.xinetd.netkit \ 15*4882a593Smuzhiyun file://rsh.xinetd.netkit \ 16*4882a593Smuzhiyun file://netkit-rsh-0.17-rexec-ipv6.patch \ 17*4882a593Smuzhiyun file://fix-host-variable.patch \ 18*4882a593Smuzhiyun file://fixup_wait3_api_change.patch \ 19*4882a593Smuzhiyun file://CVE-2019-7282-and-CVE-2019-7283.patch \ 20*4882a593Smuzhiyun" 21*4882a593Smuzhiyun 22*4882a593SmuzhiyunSRC_URI[archive.md5sum] = "65f5f28e2fe22d9ad8b17bb9a10df096" 23*4882a593SmuzhiyunSRC_URI[archive.sha256sum] = "edcac7fa18015f0bc04e573f3f54ae3b638d71335df1ad7dae692779914ad669" 24*4882a593SmuzhiyunSRC_URI[patch15.md5sum] = "655efc0d541b03ca5de0ae506c805ea3" 25*4882a593SmuzhiyunSRC_URI[patch15.sha256sum] = "2bc071c438e8b0ed42a0bd2db2d8b681b27a1e9b1798694d9874733293bc2aa9" 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun# Other support files 28*4882a593SmuzhiyunPAM_SRC_URI = "file://rexec.pam \ 29*4882a593Smuzhiyun file://rlogin.pam \ 30*4882a593Smuzhiyun file://rsh.pam \ 31*4882a593Smuzhiyun" 32*4882a593SmuzhiyunSRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)}" 33*4882a593Smuzhiyun 34*4882a593Smuzhiyuninherit pkgconfig update-alternatives 35*4882a593Smuzhiyun 36*4882a593SmuzhiyunCFLAGS += " -D_GNU_SOURCE -Wno-deprecated-declarations" 37*4882a593SmuzhiyunLDFLAGS += " -L${STAGING_LIBDIR} -lutil -lcrypt" 38*4882a593Smuzhiyun 39*4882a593SmuzhiyunPACKAGECONFIG ??= "" 40*4882a593SmuzhiyunPACKAGECONFIG:append = " ${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" 41*4882a593SmuzhiyunPACKAGECONFIG[pam] = " , --without-pam, libpam, libpam" 42*4882a593Smuzhiyun 43*4882a593SmuzhiyunCOMPATIBLE_HOST:libc-musl = 'null' 44*4882a593Smuzhiyun 45*4882a593Smuzhiyundo_configure () { 46*4882a593Smuzhiyun ./configure --prefix=${prefix} --exec-prefix=${exec_prefix} 47*4882a593Smuzhiyun echo "INSTALLROOT=${D}" > MCONFIG 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then 50*4882a593Smuzhiyun echo "USE_PAM=1" >> MCONFIG 51*4882a593Smuzhiyun fi 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun # didn't want to patch these next changes 54*4882a593Smuzhiyun sed -i 's/netkit-//' ${S}/rsh/pathnames.h 55*4882a593Smuzhiyun sed -i 's/netkit-//' ${S}/rcp/pathnames.h 56*4882a593Smuzhiyun} 57*4882a593Smuzhiyun 58*4882a593Smuzhiyundo_install () { 59*4882a593Smuzhiyun install -d ${D}${bindir} 60*4882a593Smuzhiyun install -d ${D}${sbindir} 61*4882a593Smuzhiyun install -d ${D}${mandir}/man1 62*4882a593Smuzhiyun install -d ${D}${mandir}/man8 63*4882a593Smuzhiyun install -d ${D}${sysconfdir}/xinetd.d 64*4882a593Smuzhiyun 65*4882a593Smuzhiyun oe_runmake 'INSTALLROOT=${D}' 'BINMODE=0755' \ 66*4882a593Smuzhiyun 'DAEMONMODE=0755' 'MANMODE=0644' \ 67*4882a593Smuzhiyun 'SUIDMODE=4755' \ 68*4882a593Smuzhiyun 'BINDIR=${bindir}' 'SBINDIR=${sbindir}' \ 69*4882a593Smuzhiyun 'MANDIR=${mandir}' install 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then 72*4882a593Smuzhiyun install -d ${D}${sysconfdir}/pam.d 73*4882a593Smuzhiyun install -m 0644 debian/hosts.equiv ${D}/${sysconfdir} 74*4882a593Smuzhiyun install -m 0644 ${WORKDIR}/rexec.pam ${D}/${sysconfdir}/pam.d/rexec 75*4882a593Smuzhiyun install -m 0644 ${WORKDIR}/rlogin.pam ${D}/${sysconfdir}/pam.d/rlogin 76*4882a593Smuzhiyun install -m 0644 ${WORKDIR}/rsh.pam ${D}/${sysconfdir}/pam.d/rsh 77*4882a593Smuzhiyun fi 78*4882a593Smuzhiyun cp ${WORKDIR}/rexec.xinetd.netkit ${D}/${sysconfdir}/xinetd.d/rexec 79*4882a593Smuzhiyun cp ${WORKDIR}/rlogin.xinetd.netkit ${D}/${sysconfdir}/xinetd.d/rlogin 80*4882a593Smuzhiyun cp ${WORKDIR}/rsh.xinetd.netkit ${D}/${sysconfdir}/xinetd.d/rsh 81*4882a593Smuzhiyun} 82*4882a593Smuzhiyun 83*4882a593SmuzhiyunPACKAGES = "${PN}-client ${PN}-server ${PN}-doc ${BPN}-dbg" 84*4882a593Smuzhiyun 85*4882a593SmuzhiyunFILES:${PN}-client = "${bindir}/*" 86*4882a593SmuzhiyunFILES:${PN}-server = "${sbindir}/* ${sysconfdir}" 87*4882a593SmuzhiyunFILES:${PN}-doc = "${mandir}" 88*4882a593SmuzhiyunFILES:${PN}-dbg = "${prefix}/src/debug \ 89*4882a593Smuzhiyun ${sbindir}/.debug ${bindir}/.debug" 90*4882a593Smuzhiyun 91*4882a593SmuzhiyunALTERNATIVE_PRIORITY = "80" 92*4882a593SmuzhiyunALTERNATIVE:${PN}-client = "rcp rexec rlogin rsh" 93*4882a593SmuzhiyunALTERNATIVE:${PN}-server = "rshd rexecd rlogind" 94*4882a593SmuzhiyunALTERNATIVE_LINK_NAME[server] = "${bindir}/rshd" 95*4882a593SmuzhiyunALTERNATIVE_TARGET[rshd] = "${sbindir}/in.rshd" 96*4882a593SmuzhiyunALTERNATIVE_LINK_NAME[rexecd] = "${bindir}/rexecd" 97*4882a593SmuzhiyunALTERNATIVE_TARGET[rexecd] = "${sbindir}/in.rexecd" 98*4882a593SmuzhiyunALTERNATIVE_LINK_NAME[rlogind] = "${bindir}/rlogind" 99*4882a593SmuzhiyunALTERNATIVE_TARGET[rlogind] = "${sbindir}/in.rlogind" 100*4882a593Smuzhiyun 101*4882a593SmuzhiyunRCONFLICTS:${PN}-server += "inetutils-rshd" 102*4882a593SmuzhiyunRPROVIDES:${PN}-server = "rshd" 103*4882a593Smuzhiyun 104*4882a593SmuzhiyunRDEPENDS:${PN}-server = "xinetd" 105*4882a593SmuzhiyunRDEPENDS:${PN}-server += "tcp-wrappers" 106