Hello community,

here is the log from the commit of package EternalTerminal for openSUSE:Factory 
checked in at 2020-03-04 09:48:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/EternalTerminal (Old)
 and      /work/SRC/openSUSE:Factory/.EternalTerminal.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "EternalTerminal"

Wed Mar  4 09:48:42 2020 rev:4 rq:781390 version:6.0.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/EternalTerminal/EternalTerminal.changes  
2020-02-18 10:39:13.348799690 +0100
+++ 
/work/SRC/openSUSE:Factory/.EternalTerminal.new.26092/EternalTerminal.changes   
    2020-03-04 09:48:50.678231281 +0100
@@ -1,0 +2,6 @@
+Wed Mar  4 06:50:04 UTC 2020 - Michael Vetter <[email protected]>
+
+- Update to 6.0.7:
+  * Add Match Host support to ssh config
+
+-------------------------------------------------------------------

Old:
----
  et-v6.0.6.tar.gz

New:
----
  et-v6.0.7.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ EternalTerminal.spec ++++++
--- /var/tmp/diff_new_pack.ltA3gw/_old  2020-03-04 09:48:52.218232203 +0100
+++ /var/tmp/diff_new_pack.ltA3gw/_new  2020-03-04 09:48:52.222232206 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package EternalTerminal
 #
-# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %global _firewalld_dir %{_prefix}/lib/firewalld
 Name:           EternalTerminal
-Version:        6.0.6
+Version:        6.0.7
 Release:        0
 Summary:        Remote shell that survives IP roaming and disconnect
 License:        Apache-2.0

++++++ et-v6.0.6.tar.gz -> et-v6.0.7.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/EternalTerminal-et-v6.0.6/CMakeLists.txt 
new/EternalTerminal-et-v6.0.7/CMakeLists.txt
--- old/EternalTerminal-et-v6.0.6/CMakeLists.txt        2020-02-15 
04:41:24.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/CMakeLists.txt        2020-03-02 
23:19:47.000000000 +0100
@@ -1,5 +1,5 @@
 cmake_minimum_required (VERSION 3.0.2)
-project (EternalTCP VERSION 6.0.6)
+project (EternalTCP VERSION 6.0.7)
 
 SET(CMAKE_MODULE_PATH 
"${CMAKE_SOURCE_DIR}/external_imported/sanitizers-cmake/cmake" 
${CMAKE_MODULE_PATH})
 FIND_PACKAGE(Sanitizers)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/EternalTerminal-et-v6.0.6/README.md 
new/EternalTerminal-et-v6.0.7/README.md
--- old/EternalTerminal-et-v6.0.6/README.md     2020-02-15 04:41:24.000000000 
+0100
+++ new/EternalTerminal-et-v6.0.7/README.md     2020-03-02 23:19:47.000000000 
+0100
@@ -37,52 +37,17 @@
 
 ### Debian
 
-For debian, use our deb repo. For stretch:
+For debian, use our deb repo. For buster:
 
-       echo "deb https://mistertea.github.io/debian-et/debian-source/ stretch 
main" | sudo tee -a /etc/apt/sources.list
-       curl -sS https://mistertea.github.io/debian-et/et.gpg | sudo apt-key 
add -
+       echo "deb 
https://github.com/MisterTea/debian-et/raw/master/debian-source/ buster main" | 
sudo tee -a /etc/apt/sources.list
+       curl -sS https://github.com/MisterTea/debian-et/raw/master/et.gpg | 
sudo apt-key add -
        sudo apt update
        sudo apt install et
 
 
 ### CentOS 7
-_Note: As of April 2019, the service does not start on CentOS 7, see 
[#182](https://github.com/MisterTea/EternalTerminal/issues/182)_
 
-Install dependencies:
-```
-sudo yum -y install epel-release
-sudo yum install cmake3
-sudo yum install boost-devel libsodium-devel ncurses-devel protobuf-devel \
-protobuf-compiler cmake gflags-devel protobuf-lite-devel
-```
-
-Download and install from source:
-```
-git clone --recurse-submodules https://github.com/MisterTea/EternalTerminal.git
-cd EternalTerminal
-mkdir build
-cd build
-cmake3 ../
-make && sudo make install
-sudo cp ../systemctl/et.service /etc/systemd/system/
-sudo cp ../etc/et.cfg /etc/
-```
-Find the actual location of et:
-
-       which etserver
-
-Correct the service file:
-Open up /etc/systemd/system/et.service in an editor.
-Correct the ExectStart line to have the correct path to the etserver binary 
(see [#180](https://github.com/MisterTea/EternalTerminal/issues/180)).
-
-        ExecStart=/usr/local/bin/etserver --daemon --cfgfile=/etc/et.cfg
-
-Start the et service:
-
-```
-sudo systemctl enable et.service
-sudo systemctl start et.service
-```
+Up to the present day the only way to install is to [build from 
source](#centos-7).
 
 
 ### FreeBSD
@@ -149,7 +114,6 @@
 
 ET uses TCP, so you need an open port on your server. By default, it uses 2022.
 
-
 Once you have an open port, the syntax is similar to ssh. Username is default 
to the current username starting the et process, use `-u` or `user@` to specify 
a different if necessary.
 ```
 et hostname (etserver running on default port 2022, username is the same as 
current)
@@ -200,21 +164,14 @@
 make
 ```
 
-### Debian/Ubuntu/CentOS
+### Debian/Ubuntu
 
 Grab the deps and then follow this process:
 
 Debian/Ubuntu Dependencies:
 ```
-sudo apt install libboost-dev libsodium-dev libncurses5-dev libprotobuf-dev 
protobuf-compiler cmake libgflags-dev libutempter-dev cmake git
-```
-
-CentOS/RHEL Dependencies:
-```
-sudo yum -y install epel-release
-sudo yum install cmake3
-sudo yum install boost-devel libsodium-devel ncurses-devel protobuf-devel \
-  protobuf-compiler cmake gflags-devel
+sudo apt install libboost-dev libsodium-dev libncurses5-dev \
+     libprotobuf-dev protobuf-compiler cmake libgflags-dev libutempter-dev 
cmake git
 ```
 
 Source and setup:
@@ -229,11 +186,56 @@
 sudo make install
 ```
 
-Copy config file, the service and enable it:
+### CentOS 7
+
+Install dependencies:
+```
+sudo yum install epel-release
+sudo yum install cmake3 boost-devel libsodium-devel ncurses-devel 
protobuf-devel \
+     protobuf-compiler gflags-devel protobuf-lite-devel
+```
+
+Install scl dependencies
+```
+sudo yum install centos-release-scl
+sudo yum install devtoolset-8
+```
 
+Download and install from source ([see #238 for 
details](https://github.com/MisterTea/EternalTerminal/issues/238)):
 ```
+git clone --recurse-submodules https://github.com/MisterTea/EternalTerminal.git
+cd EternalTerminal
+mkdir build
+cd build
+scl enable devtoolset-8 'cmake3 ../'
+scl enable devtoolset-8 'make && sudo make install'
 sudo cp ../systemctl/et.service /etc/systemd/system/
 sudo cp ../etc/et.cfg /etc/
+```
+
+Find the actual location of et:
+
+       which etserver
+
+Correct the service file (see 
[#180](https://github.com/MisterTea/EternalTerminal/issues/180) for details).
+
+```
+sudo sed -ie "s|ExecStart=.*[[:space:]]|ExecStart=$(which etserver) |" 
/etc/systemd/system/et.service
+```
+
+Alternativelly, open the file /etc/systemd/system/et.service in an editor and 
correct the `ExectStart=...` line to point to the correct path of the 
`etserver` binary.
+
+        ExecStart=/usr/local/bin/etserver --daemon --cfgfile=/etc/et.cfg
+
+Reload systemd configs:
+
+```
+sudo systemctl daemon-reload
+```
+
+Start the et service:
+
+```
 sudo systemctl enable et.service
 sudo systemctl start et.service
 ```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/EternalTerminal-et-v6.0.6/deployment/debian/Vagrantfile 
new/EternalTerminal-et-v6.0.7/deployment/debian/Vagrantfile
--- old/EternalTerminal-et-v6.0.6/deployment/debian/Vagrantfile 2020-02-15 
04:41:24.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/deployment/debian/Vagrantfile 2020-03-02 
23:19:47.000000000 +0100
@@ -16,8 +16,8 @@
   config.ssh.shell = "sh"
 
   config.vm.provider "virtualbox" do |v|
-    v.memory = 2048
-    v.cpus = 8
+    v.memory = 4096
+    v.cpus = 4
   end
 
   # Disable automatic box update checking. If you disable this, then
@@ -97,11 +97,9 @@
   git clone [email protected]:MisterTea/debian-et.git
   
   for distro in `distro-info --supported | grep -v experimental`; do
-    pbuilder-dist ${distro} i386 create --debootstrapopts --variant=buildd
-    pbuilder-dist ${distro} amd64 create --debootstrapopts --variant=buildd
-    pbuilder-dist ${distro} armhf create --debootstrapopts --variant=buildd
-    pbuilder-dist ${distro} armel create --debootstrapopts --variant=buildd
-    pbuilder-dist ${distro} arm64 create --debootstrapopts --variant=buildd
+    for ARCH in amd64 i386 armhf armel arm64; do
+      pbuilder-dist ${distro} ${ARCH} create --debootstrapopts --variant=buildd
+    done
 
     aptly repo create -distribution=${distro} -component=main et-${distro}
   done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/EternalTerminal-et-v6.0.6/deployment/debian/build_all_deb.sh 
new/EternalTerminal-et-v6.0.7/deployment/debian/build_all_deb.sh
--- old/EternalTerminal-et-v6.0.6/deployment/debian/build_all_deb.sh    
2020-02-15 04:41:24.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/deployment/debian/build_all_deb.sh    
2020-03-02 23:19:47.000000000 +0100
@@ -12,16 +12,11 @@
     pushd EternalTerminal
     debuild -S
     popd
-    pbuilder-dist ${distro} amd64 update
-    pbuilder-dist ${distro} amd64 build *.dsc
-    pbuilder-dist ${distro} i386 update
-    pbuilder-dist ${distro} i386 build *.dsc
-    pbuilder-dist ${distro} armhf update
-    pbuilder-dist ${distro} armhf build *.dsc
-    pbuilder-dist ${distro} armel update
-    pbuilder-dist ${distro} armel build *.dsc
-    pbuilder-dist ${distro} arm64 update
-    pbuilder-dist ${distro} arm64 build *.dsc
+    for ARCH in amd64 i386 armhf armel arm64
+    do
+        pbuilder-dist ${distro} ${ARCH} update
+        pbuilder-dist ${distro} ${ARCH} build *.dsc
+    done
 
     aptly repo add -force-replace=true et-${distro} 
~/pbuilder/${distro}*_result/*.deb
     aptly publish drop ${distro} || true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/EternalTerminal-et-v6.0.6/deployment/debian/debian_SOURCE/changelog 
new/EternalTerminal-et-v6.0.7/deployment/debian/debian_SOURCE/changelog
--- old/EternalTerminal-et-v6.0.6/deployment/debian/debian_SOURCE/changelog     
2020-02-15 04:41:24.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/deployment/debian/debian_SOURCE/changelog     
2020-03-02 23:19:47.000000000 +0100
@@ -1,3 +1,15 @@
+et (6.0.7-##DISTRO##1) ##DISTRO##; urgency=medium
+
+  * https://github.com/MisterTea/EternalTerminal/releases/tag/et-v6.0.7
+
+ -- Jason Gauci <[email protected]>  Mon, 3 Mar 2020 16:36:51 -0800
+
+et (6.0.6-##DISTRO##1) ##DISTRO##; urgency=medium
+
+  * https://github.com/MisterTea/EternalTerminal/releases/tag/et-v6.0.6
+
+ -- Jason Gauci <[email protected]>  Sat, 25 Jan 2020 16:36:51 -0800
+
 et (6.0.5-##DISTRO##2) ##DISTRO##; urgency=medium
 
   * Add arm64 build on Ubuntu
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/EternalTerminal-et-v6.0.6/deployment/debian.Dockerfile 
new/EternalTerminal-et-v6.0.7/deployment/debian.Dockerfile
--- old/EternalTerminal-et-v6.0.6/deployment/debian.Dockerfile  2020-02-15 
04:41:24.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/deployment/debian.Dockerfile  2020-03-02 
23:19:47.000000000 +0100
@@ -7,7 +7,9 @@
 COPY id_rsa .ssh/
 COPY id_rsa.pub .ssh/
 RUN chmod ao-rwx .ssh/id_rsa
-COPY ubuntu/debian_SOURCE ./debian_SOURCE
+COPY debian/debian_SOURCE ./debian_SOURCE
+
+RUN echo "For debian, docker doesn't work with pbuilder.  Use vagrant" && exit 
1
 
 RUN apt update && apt upgrade -y && apt install -y build-essential git 
devscripts aptly dput jq libsodium-dev libprotobuf-dev protobuf-compiler cmake 
libutempter-dev debhelper dh-systemd pbuilder ubuntu-dev-tools
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/EternalTerminal-et-v6.0.6/docker/Dockerfile.client 
new/EternalTerminal-et-v6.0.7/docker/Dockerfile.client
--- old/EternalTerminal-et-v6.0.6/docker/Dockerfile.client      1970-01-01 
01:00:00.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/docker/Dockerfile.client      2020-03-02 
23:19:47.000000000 +0100
@@ -0,0 +1,27 @@
+FROM centos:7 as base
+
+ENV BUILD_REPOS="epel-release centos-release-scl" \
+    BUILD_DEPS="cmake3 boost-devel libsodium-devel ncurses-devel 
protobuf-devel \
+        protobuf-compiler gflags-devel protobuf-lite-devel git devtoolset-8"
+
+WORKDIR /
+
+RUN yum install -y $BUILD_REPOS && \
+    yum install -y $BUILD_DEPS && \
+    git clone --recurse-submodules 
https://github.com/MisterTea/EternalTerminal.git && \
+    cd EternalTerminal && \
+    mkdir build && \
+    cd build && \
+    bash -c "scl enable devtoolset-8 'cmake3 ../'" && \
+    bash -c "scl enable devtoolset-8 'make -j $(grep ^processor /proc/cpuinfo 
|wc -l) && make install'"
+
+FROM centos:7
+
+RUN yum install -y epel-release && \
+    yum install -y protobuf-lite libsodium
+
+COPY --from=base /usr/local/bin/etserver /usr/local/bin/etterminal 
/usr/local/bin/htm /usr/local/bin/htmd  /usr/local/bin/
+COPY --from=base /EternalTerminal/etc/et.cfg /etc/et.cfg
+COPY container-entrypoint /bin/container-entrypoint
+
+ENTRYPOINT ["/bin/container-entrypoint", "client"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/EternalTerminal-et-v6.0.6/docker/Dockerfile.server 
new/EternalTerminal-et-v6.0.7/docker/Dockerfile.server
--- old/EternalTerminal-et-v6.0.6/docker/Dockerfile.server      1970-01-01 
01:00:00.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/docker/Dockerfile.server      2020-03-02 
23:19:47.000000000 +0100
@@ -0,0 +1,31 @@
+FROM centos:7 as base
+
+ENV BUILD_REPOS="epel-release centos-release-scl" \
+    BUILD_DEPS="cmake3 boost-devel libsodium-devel ncurses-devel 
protobuf-devel \
+        protobuf-compiler gflags-devel protobuf-lite-devel git devtoolset-8"
+
+WORKDIR /
+
+RUN yum install -y $BUILD_REPOS && \
+    yum install -y $BUILD_DEPS && \
+    git clone --recurse-submodules 
https://github.com/MisterTea/EternalTerminal.git && \
+    cd EternalTerminal && \
+    mkdir build && \
+    cd build && \
+    bash -c "scl enable devtoolset-8 'cmake3 ../'" && \
+    bash -c "scl enable devtoolset-8 'make -j $(grep ^processor /proc/cpuinfo 
|wc -l) && make install'"
+
+FROM centos:7
+
+RUN yum install -y epel-release && \
+    yum install -y protobuf-lite libsodium openssh-server
+
+COPY --from=base /usr/local/bin/etserver /usr/local/bin/etterminal 
/usr/local/bin/htm /usr/local/bin/htmd  /usr/local/bin/
+COPY --from=base /EternalTerminal/etc/et.cfg /etc/et.cfg
+COPY container-entrypoint /bin/container-entrypoint
+
+EXPOSE 2022 2222
+
+ENTRYPOINT ["/bin/container-entrypoint", "server"]
+
+CMD ["--cfgfile=/etc/et.cfg"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/EternalTerminal-et-v6.0.6/docker/README.md 
new/EternalTerminal-et-v6.0.7/docker/README.md
--- old/EternalTerminal-et-v6.0.6/docker/README.md      1970-01-01 
01:00:00.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/docker/README.md      2020-03-02 
23:19:47.000000000 +0100
@@ -0,0 +1,36 @@
+# Docker container for et-server
+
+## Build
+
+```
+$ make
+$ docker images |grep et-.*
+et-client                latest              54c495fe34dc        11 minutes 
ago      422MB
+et-server                latest              1bf233faf414        11 minutes 
ago      425MB
+```
+
+## Run
+
+
+```
+$ docker run -it --rm -p 2022:2022 -p 2222:22 \
+    -v /etc/ssh:/etc/ssh \
+    -v /etc/passwd:/etc/passwd \
+    -v /etc/shadow:/etc/shadow \
+    -v /etc/group:/etc/group \
+    -v /home:/home \
+    et-server
+```
+
+## Notice
+
+- Both ports 2022 and 2222 must be open at the server host (per example above);
+- The container starts an sshd server to initiate et-server's handshake.
+- You ssh client must be able to connect to container's sshd, not host's sshd;
+- Running `ssh -p 2222 user@host` must work out-of-the box;
+- Tip: add below to your client's `~/.ssh/config`:
+
+```
+Host myhost
+  Port 2222
+```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/EternalTerminal-et-v6.0.6/docker/container-entrypoint 
new/EternalTerminal-et-v6.0.7/docker/container-entrypoint
--- old/EternalTerminal-et-v6.0.6/docker/container-entrypoint   1970-01-01 
01:00:00.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/docker/container-entrypoint   2020-03-02 
23:19:47.000000000 +0100
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+set -x
+
+if [ "$1" == server ]; then
+    /usr/sbin/sshd
+    shift
+    exec etserver --logtostdout -v 1 "$@"
+else
+    shift
+    exec et "$@"
+fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/EternalTerminal-et-v6.0.6/src/terminal/ParseConfigFile.hpp 
new/EternalTerminal-et-v6.0.7/src/terminal/ParseConfigFile.hpp
--- old/EternalTerminal-et-v6.0.6/src/terminal/ParseConfigFile.hpp      
2020-02-15 04:41:24.000000000 +0100
+++ new/EternalTerminal-et-v6.0.7/src/terminal/ParseConfigFile.hpp      
2020-03-02 23:19:47.000000000 +0100
@@ -61,6 +61,7 @@
   SOC_UNSUPPORTED = -1,
   SOC_HOST,
   SOC_HOSTNAME,
+  SOC_MATCH,
   SOC_PORT,
   SOC_USERNAME,
   SOC_TIMEOUT,
@@ -142,6 +143,7 @@
 static struct ssh_config_keyword_table_s ssh_config_keyword_table[] = {
     {"host", SOC_HOST},
     {"hostname", SOC_HOSTNAME},
+    {"match", SOC_MATCH},
     {"port", SOC_PORT},
     {"user", SOC_USERNAME},
     {"connecttimeout", SOC_TIMEOUT},
@@ -1174,8 +1176,8 @@
   }
 
   opcode = ssh_config_get_opcode(keyword);
-  if (*parsing == 1 && opcode != SOC_HOST && opcode != SOC_UNSUPPORTED &&
-      opcode != SOC_INCLUDE) {
+  if (*parsing == 1 && opcode != SOC_HOST && opcode != SOC_MATCH &&
+      opcode != SOC_UNSUPPORTED && opcode != SOC_INCLUDE) {
     if (seen[opcode] != 0) {
       SAFE_FREE(x);
       return 0;
@@ -1225,6 +1227,11 @@
         free(z);
       }
       break;
+    case SOC_MATCH:
+      i = ssh_config_parse_line(targethost, options, s, count, parsing, seen);
+      SAFE_FREE(x);
+      return i;
+      break;
     case SOC_PORT:
       if (options->port == 0) {
         p = ssh_config_get_str_tok(&s, NULL);


Reply via email to