1
0
mirror of https://github.com/tmate-io/tmate-ssh-server.git synced 2020-11-18 19:53:51 -08:00

Rename: tmate-slave -> tmate-ssh-server

This commit is contained in:
Nicolas Viennot 2019-04-10 08:56:37 -04:00
parent 55ffd5b64b
commit 9c45f61585
9 changed files with 47 additions and 46 deletions

2
.gitignore vendored
View File

@ -17,7 +17,7 @@ Makefile
Makefile.in
configure
keys/
tmate-slave
tmate-ssh-server
cscope.*
tags
tmux.1.*

View File

@ -1,12 +1,12 @@
# tmate-slave, see https://tmate.io/
# tmate-ssh-server, see https://tmate.io/
#
# Example usage:
#
# docker run --privileged --rm -i -p 22:22 \
# -v /etc/tmate/keys:/daemon-keys \
# -v /etc/tmate/authorized_keys:/authorized-keys \
# varac/tmate-slave \
# /bin/sh -c "/sbin/tmate-slave -k /daemon-keys -a /authorized-keys -b 0.0.0.0 -p 22 -v -v -v -h SERVER_FQDN"
# varac/tmate-ssh-server \
# /bin/sh -c "/sbin/tmate-ssh-server -k /daemon-keys -a /authorized-keys -b 0.0.0.0 -p 22 -v -v -v -h SERVER_FQDN"
FROM debian:jessie-slim
@ -24,17 +24,17 @@ RUN mkdir /src && cd /src/ &&\
# jessie-backports provides 3.6.2 but this pulls too many dependencies in.
git clone -b libssh-0.7.6 git://git.libssh.org/projects/libssh.git &&\
git clone https://github.com/msgpack/msgpack-c.git &&\
git clone https://github.com/tmate-io/tmate-slave.git
git clone https://github.com/tmate-io/tmate-ssh-server.git
RUN cd /src/libssh &&\
mkdir build && cd build && cmake .. && make install
RUN cd /src/msgpack-c &&\
mkdir build && cd build && cmake .. && make install
RUN cd /src/tmate-slave &&\
RUN cd /src/tmate-ssh-server &&\
sh autogen.sh && PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure && make
RUN cp /src/tmate-slave/tmate-slave /sbin/
RUN cp /src/tmate-ssh-server/tmate-ssh-server /sbin/
# Clean up
RUN rm -rf /src

View File

@ -1,7 +1,7 @@
# Makefile.am
# Obvious program stuff.
bin_PROGRAMS = tmate-slave
bin_PROGRAMS = tmate-ssh-server
CLEANFILES = tmate.1.mdoc tmate.1.man
# Distribution tarball options.
@ -72,7 +72,7 @@ DEFS += -D_LINUX_SOURCE_COMPAT=1
endif
# List of sources.
dist_tmate_slave_SOURCES = \
dist_tmate_ssh_server_SOURCES = \
alerts.c \
arguments.c \
attributes.c \
@ -185,7 +185,7 @@ dist_tmate_slave_SOURCES = \
tmate-daemon-legacy.c \
tmate-msgpack.c \
tmate-proxy.c \
tmate-slave.c \
tmate-main.c \
tmate-ssh-client-pty.c \
tmate-ssh-daemon.c \
tmate-ssh-exec.c \
@ -203,63 +203,63 @@ dist_tmate_slave_SOURCES = \
window.c \
xmalloc.c \
xterm-keys.c
nodist_tmate_slave_SOURCES = osdep-@PLATFORM@.c
nodist_tmate_ssh_server_SOURCES = osdep-@PLATFORM@.c
# Pile in all the compat/ stuff that is needed.
if NO_FORKPTY
nodist_tmate_slave_SOURCES += compat/forkpty-@PLATFORM@.c
nodist_tmate_ssh_server_SOURCES += compat/forkpty-@PLATFORM@.c
endif
if NO_IMSG
nodist_tmate_slave_SOURCES += compat/imsg.c compat/imsg-buffer.c
nodist_tmate_ssh_server_SOURCES += compat/imsg.c compat/imsg-buffer.c
endif
if NO_CLOSEFROM
nodist_tmate_slave_SOURCES += compat/closefrom.c
nodist_tmate_ssh_server_SOURCES += compat/closefrom.c
endif
if NO_DAEMON
nodist_tmate_slave_SOURCES += compat/daemon.c
nodist_tmate_ssh_server_SOURCES += compat/daemon.c
endif
if NO_SETENV
nodist_tmate_slave_SOURCES += compat/setenv.c
nodist_tmate_ssh_server_SOURCES += compat/setenv.c
endif
if NO_STRLCAT
nodist_tmate_slave_SOURCES += compat/strlcat.c
nodist_tmate_ssh_server_SOURCES += compat/strlcat.c
endif
if NO_STRLCPY
nodist_tmate_slave_SOURCES += compat/strlcpy.c
nodist_tmate_ssh_server_SOURCES += compat/strlcpy.c
endif
if NO_ASPRINTF
nodist_tmate_slave_SOURCES += compat/asprintf.c
nodist_tmate_ssh_server_SOURCES += compat/asprintf.c
endif
if NO_FGETLN
nodist_tmate_slave_SOURCES += compat/fgetln.c
nodist_tmate_ssh_server_SOURCES += compat/fgetln.c
endif
if NO_FPARSELN
nodist_tmate_slave_SOURCES += compat/fparseln.c
nodist_tmate_ssh_server_SOURCES += compat/fparseln.c
endif
if NO_GETOPT
nodist_tmate_slave_SOURCES += compat/getopt.c
nodist_tmate_ssh_server_SOURCES += compat/getopt.c
endif
if NO_STRCASESTR
nodist_tmate_slave_SOURCES += compat/strcasestr.c
nodist_tmate_ssh_server_SOURCES += compat/strcasestr.c
endif
if NO_STRSEP
nodist_tmate_slave_SOURCES += compat/strsep.c
nodist_tmate_ssh_server_SOURCES += compat/strsep.c
endif
if NO_VIS
nodist_tmate_slave_SOURCES += compat/vis.c compat/unvis.c
nodist_tmate_ssh_server_SOURCES += compat/vis.c compat/unvis.c
endif
if NO_STRTONUM
nodist_tmate_slave_SOURCES += compat/strtonum.c
nodist_tmate_ssh_server_SOURCES += compat/strtonum.c
endif
if NO_B64_NTOP
nodist_tmate_slave_SOURCES += compat/b64_ntop.c
nodist_tmate_ssh_server_SOURCES += compat/b64_ntop.c
endif
if NO_CFMAKERAW
nodist_tmate_slave_SOURCES += compat/cfmakeraw.c
nodist_tmate_ssh_server_SOURCES += compat/cfmakeraw.c
endif
if NO_OPENAT
nodist_tmate_slave_SOURCES += compat/openat.c
nodist_tmate_ssh_server_SOURCES += compat/openat.c
endif
if NO_REALLOCARRAY
nodist_tmate_slave_SOURCES += compat/reallocarray.c
nodist_tmate_ssh_server_SOURCES += compat/reallocarray.c
endif

View File

@ -1,7 +1,7 @@
tmate server side
==================
tmate-slave is the server side part of [tmate.io](http://tmate.io/).
tmate-ssh-server is the server side part of [tmate.io](http://tmate.io/).
Usage
-----

View File

@ -27,7 +27,7 @@ loop do
Dir['/proc/*/cmdline'].map do |f|
if File.read(f) =~ /^tmate-slave \[(.+)\] \((.+)\) (.+)$/
if File.read(f) =~ /^tmate-ssh-server \[(.+)\] \((.+)\) (.+)$/
token = $1
role = $2
ip = $3

View File

@ -103,7 +103,7 @@ void request_server_termination(void)
static void usage(void)
{
fprintf(stderr, "usage: tmate-slave [-b ip] [-h hostname] [-k keys_dir] [-a authorized_keys_path] [-p port] [-x proxy_hostname] [-q proxy_port] [-s] [-v]\n");
fprintf(stderr, "usage: tmate-ssh-server [-b ip] [-h hostname] [-k keys_dir] [-a authorized_keys_path] [-p port] [-x proxy_hostname] [-q proxy_port] [-s] [-v]\n");
}
static char* get_full_hostname(void)
@ -259,7 +259,7 @@ void set_session_token(struct tmate_session *session,
socket_path = path;
memset(cmdline, 0, cmdline_end - cmdline);
sprintf(cmdline, "tmate-slave [%s] %s %s",
sprintf(cmdline, "tmate-ssh-server [%s] %s %s",
session->session_token,
session->ssh_client.role == TMATE_ROLE_DAEMON ? "(daemon)" : "(pty client)",
session->ssh_client.ip_address);
@ -415,7 +415,7 @@ static void handle_sigterm(__unused int sig)
request_server_termination();
}
static void tmate_spawn_slave_daemon(struct tmate_session *session)
static void tmate_spawn_daemon(struct tmate_session *session)
{
struct tmate_ssh_client *client = &session->ssh_client;
char *token;
@ -429,7 +429,7 @@ static void tmate_spawn_slave_daemon(struct tmate_session *session)
set_session_token(session, token);
free(token);
tmate_notice("Spawning slave server for %s at %s (%s)",
tmate_notice("Spawning daemon for %s at %s (%s)",
client->username, client->ip_address, client->pubkey);
session->tmux_socket_fd = server_create_socket();
@ -460,7 +460,7 @@ static void tmate_spawn_slave_daemon(struct tmate_session *session)
/* never reached */
}
static void tmate_spawn_slave_pty_client(struct tmate_session *session)
static void tmate_spawn_pty_client(struct tmate_session *session)
{
struct tmate_ssh_client *client = &session->ssh_client;
char *argv_rw[] = {(char *)"attach", NULL};
@ -479,7 +479,7 @@ static void tmate_spawn_slave_pty_client(struct tmate_session *session)
set_session_token(session, token);
tmate_notice("Spawning slave client for %s (%s)",
tmate_notice("Spawning pty client for %s (%s)",
client->ip_address, client->pubkey);
session->tmux_socket_fd = client_connect(session->ev_base, socket_path, 0);
@ -531,7 +531,7 @@ static void tmate_spawn_slave_pty_client(struct tmate_session *session)
exit(ret);
}
static void tmate_spawn_slave_exec(struct tmate_session *session)
static void tmate_spawn_exec(struct tmate_session *session)
{
close_fds_except((int[]){ssh_get_fd(session->ssh_client.session),
log_file ? fileno(log_file) : -1,
@ -546,11 +546,11 @@ static void tmate_spawn_slave_exec(struct tmate_session *session)
exit(0);
}
void tmate_spawn_slave(struct tmate_session *session)
void tmate_spawn(struct tmate_session *session)
{
switch (session->ssh_client.role) {
case TMATE_ROLE_DAEMON: tmate_spawn_slave_daemon(session); break;
case TMATE_ROLE_PTY_CLIENT: tmate_spawn_slave_pty_client(session); break;
case TMATE_ROLE_EXEC: tmate_spawn_slave_exec(session); break;
case TMATE_ROLE_DAEMON: tmate_spawn_daemon(session); break;
case TMATE_ROLE_PTY_CLIENT: tmate_spawn_pty_client(session); break;
case TMATE_ROLE_EXEC: tmate_spawn_exec(session); break;
}
}

1
tmate-slave Symbolic link
View File

@ -0,0 +1 @@
tmate-ssh-server

View File

@ -277,7 +277,7 @@ static void client_bootstrap(struct tmate_session *_session)
tmate_start_ssh_latency_probes(client, &ssh_server_cb, TMATE_SSH_KEEPALIVE * 1000);
register_on_ssh_read(client);
tmate_spawn_slave(_session);
tmate_spawn(_session);
/* never reached */
}

View File

@ -189,7 +189,7 @@ struct tmate_ssh_client {
extern void tmate_ssh_server_main(struct tmate_session *session,
const char *keys_dir, const char *bind_addr, int port);
/* tmate-slave.c */
/* tmate-main.c */
#ifdef DEVENV
#define TMATE_SSH_DEFAULT_PORT 2200
@ -259,7 +259,7 @@ extern struct tmate_session *tmate_session;
extern void tmate_get_random_bytes(void *buffer, ssize_t len);
extern long tmate_get_random_long(void);
extern void request_server_termination(void);
extern void tmate_spawn_slave(struct tmate_session *session);
extern void tmate_spawn(struct tmate_session *session);
extern void set_session_token(struct tmate_session *session, const char *token);
/* tmate-proxy.c */