diff options
author | Jeremy Kerr <jk@ozlabs.org> | 2016-04-12 08:10:12 +0300 |
---|---|---|
committer | Jeremy Kerr <jk@ozlabs.org> | 2016-04-14 09:26:12 +0300 |
commit | 2a9a9d7c3995a5f7c0b5a6daa0e8317b6678bb75 (patch) | |
tree | 72dadb04cdbba8820a2e60fd82b5d42d4aa3352f | |
parent | fac2e5c6691f02aa1573ea6c882092d0a47b1a3c (diff) | |
download | openbmc-2a9a9d7c3995a5f7c0b5a6daa0e8317b6678bb75.tar.xz |
obmc-console: Add ssh endpoint
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
3 files changed, 41 insertions, 1 deletions
diff --git a/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console.bb b/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console.bb index 75a1d84295..e5553fe437 100644 --- a/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console.bb +++ b/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console.bb @@ -10,12 +10,30 @@ inherit autotools TARGET_CFLAGS += "-fpic -O2" SRC_URI += "git://github.com/openbmc/obmc-console" -SRC_URI += "file://${PN}.conf" +SRC_URI += "file://${PN}.conf \ + file://obmc-console-ssh.socket \ + file://obmc-console-ssh@.service" + SRCREV = "2eacda524e98c7964e542e01aabf82360cf60344" +FILES_${PN} += "${systemd_unitdir}/system/obmc-console-ssh@.service \ + ${systemd_unitdir}/system/obmc-console-ssh.socket" + +SYSTEMD_SERVICE_${PN} = "${BPN}.service ${BPN}-ssh.socket" + do_install_append() { install -m 0755 -d ${D}${sysconfdir} install -m 0644 ${WORKDIR}/${PN}.conf ${D}${sysconfdir}/${PN}.conf + + # add additional unit files for ssh-based console server + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/obmc-console-ssh@.service ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/obmc-console-ssh.socket ${D}${systemd_unitdir}/system + sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ + -e 's,@BINDIR@,${bindir},g' \ + -e 's,@SBINDIR@,${sbindir},g' \ + ${D}${systemd_unitdir}/system/obmc-console-ssh@.service \ + ${D}${systemd_unitdir}/system/obmc-console-ssh.socket } S = "${WORKDIR}/git" diff --git a/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console/obmc-console-ssh.socket b/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console/obmc-console-ssh.socket new file mode 100644 index 0000000000..3fbfd99d74 --- /dev/null +++ b/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console/obmc-console-ssh.socket @@ -0,0 +1,11 @@ +[Unit] +Description=OpenBMC console ssh server socket +Conflicts=obmc-console-ssh.service +Requires=obmc-console.service + +[Socket] +ListenStream=2200 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console/obmc-console-ssh@.service b/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console/obmc-console-ssh@.service new file mode 100644 index 0000000000..74d5a7a32f --- /dev/null +++ b/meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console/obmc-console-ssh@.service @@ -0,0 +1,11 @@ +[Unit] +Description=OBMC console SSH Per-Connection Server +Wants=obmc-console.service + +[Service] +Environment="DROPBEAR_RSAKEY_DIR=/etc/dropbear" +EnvironmentFile=-/etc/default/dropbear +ExecStart=-@SBINDIR@/dropbear -i -r ${DROPBEAR_RSAKEY_DIR}/dropbear_rsa_host_key -c @BINDIR@/obmc-console-client $DROPBEAR_EXTRA_ARGS +ExecReload=@BASE_BINDIR@/kill -HUP $MAINPID +StandardInput=socket +KillMode=process |