summaryrefslogtreecommitdiffstats
path: root/meta-phosphor
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2016-04-12 13:10:12 +0800
committerJeremy Kerr <jk@ozlabs.org>2016-04-14 14:26:12 +0800
commit2a9a9d7c3995a5f7c0b5a6daa0e8317b6678bb75 (patch)
tree72dadb04cdbba8820a2e60fd82b5d42d4aa3352f /meta-phosphor
parentfac2e5c6691f02aa1573ea6c882092d0a47b1a3c (diff)
downloadtalos-openbmc-2a9a9d7c3995a5f7c0b5a6daa0e8317b6678bb75.tar.gz
talos-openbmc-2a9a9d7c3995a5f7c0b5a6daa0e8317b6678bb75.zip
obmc-console: Add ssh endpoint
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'meta-phosphor')
-rw-r--r--meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console.bb20
-rw-r--r--meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console/obmc-console-ssh.socket11
-rw-r--r--meta-phosphor/common/recipes-phosphor/obmc-console/obmc-console/obmc-console-ssh@.service11
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 75a1d8429..e5553fe43 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 000000000..3fbfd99d7
--- /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 000000000..74d5a7a32
--- /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
OpenPOWER on IntegriCloud