mirror of
https://github.com/tmate-io/tmate-ssh-server.git
synced 2020-11-18 19:53:51 -08:00
tabs are better; ok nicm
This commit is contained in:
parent
a8b1379ccb
commit
ed62d1263c
2
array.h
2
array.h
@ -85,7 +85,7 @@
|
|||||||
ARRAY_ITEMSIZE(a) * ((a)->num - (i) - 1)); \
|
ARRAY_ITEMSIZE(a) * ((a)->num - (i) - 1)); \
|
||||||
} \
|
} \
|
||||||
(a)->num--; \
|
(a)->num--; \
|
||||||
if ((a)->num == 0) \
|
if ((a)->num == 0) \
|
||||||
ARRAY_FREE(a); \
|
ARRAY_FREE(a); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
|
4
cfg.c
4
cfg.c
@ -53,9 +53,9 @@ cfg_error(unused struct cmd_ctx *ctx, const char *fmt, ...)
|
|||||||
int
|
int
|
||||||
load_cfg(const char *path, struct cmd_ctx *ctxin, char **cause)
|
load_cfg(const char *path, struct cmd_ctx *ctxin, char **cause)
|
||||||
{
|
{
|
||||||
FILE *f;
|
FILE *f;
|
||||||
u_int n;
|
u_int n;
|
||||||
char *buf, *line, *ptr;
|
char *buf, *line, *ptr;
|
||||||
size_t len;
|
size_t len;
|
||||||
struct cmd_list *cmdlist;
|
struct cmd_list *cmdlist;
|
||||||
struct cmd_ctx ctx;
|
struct cmd_ctx ctx;
|
||||||
|
@ -70,8 +70,8 @@ cmd_server_info_exec(unused struct cmd *self, struct cmd_ctx *ctx)
|
|||||||
ctx->print(ctx, "pid %ld, started %s", (long) getpid(), tim);
|
ctx->print(ctx, "pid %ld, started %s", (long) getpid(), tim);
|
||||||
ctx->print(ctx, "socket path %s, debug level %d%s",
|
ctx->print(ctx, "socket path %s, debug level %d%s",
|
||||||
socket_path, debug_level, be_quiet ? ", quiet" : "");
|
socket_path, debug_level, be_quiet ? ", quiet" : "");
|
||||||
if (uname(&un) == 0) {
|
if (uname(&un) == 0) {
|
||||||
ctx->print(ctx, "system is %s %s %s %s",
|
ctx->print(ctx, "system is %s %s %s %s",
|
||||||
un.sysname, un.release, un.version, un.machine);
|
un.sysname, un.release, un.version, un.machine);
|
||||||
}
|
}
|
||||||
if (cfg_file != NULL)
|
if (cfg_file != NULL)
|
||||||
|
40
cmd-string.c
40
cmd-string.c
@ -204,33 +204,33 @@ cmd_string_string(const char *s, size_t *p, char endch, int esc)
|
|||||||
char *buf, *t;
|
char *buf, *t;
|
||||||
size_t len;
|
size_t len;
|
||||||
|
|
||||||
buf = NULL;
|
buf = NULL;
|
||||||
len = 0;
|
len = 0;
|
||||||
|
|
||||||
while ((ch = cmd_string_getc(s, p)) != endch) {
|
while ((ch = cmd_string_getc(s, p)) != endch) {
|
||||||
switch (ch) {
|
switch (ch) {
|
||||||
case EOF:
|
case EOF:
|
||||||
goto error;
|
goto error;
|
||||||
case '\\':
|
case '\\':
|
||||||
if (!esc)
|
if (!esc)
|
||||||
break;
|
break;
|
||||||
switch (ch = cmd_string_getc(s, p)) {
|
switch (ch = cmd_string_getc(s, p)) {
|
||||||
case EOF:
|
case EOF:
|
||||||
goto error;
|
goto error;
|
||||||
case 'e':
|
case 'e':
|
||||||
ch = '\033';
|
ch = '\033';
|
||||||
break;
|
break;
|
||||||
case 'r':
|
case 'r':
|
||||||
ch = '\r';
|
ch = '\r';
|
||||||
break;
|
break;
|
||||||
case 'n':
|
case 'n':
|
||||||
ch = '\n';
|
ch = '\n';
|
||||||
break;
|
break;
|
||||||
case 't':
|
case 't':
|
||||||
ch = '\t';
|
ch = '\t';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case '$':
|
case '$':
|
||||||
if (!esc)
|
if (!esc)
|
||||||
break;
|
break;
|
||||||
@ -241,13 +241,13 @@ cmd_string_string(const char *s, size_t *p, char endch, int esc)
|
|||||||
len += strlen(t);
|
len += strlen(t);
|
||||||
xfree(t);
|
xfree(t);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (len >= SIZE_MAX - 2)
|
if (len >= SIZE_MAX - 2)
|
||||||
goto error;
|
goto error;
|
||||||
buf = xrealloc(buf, 1, len + 1);
|
buf = xrealloc(buf, 1, len + 1);
|
||||||
buf[len++] = ch;
|
buf[len++] = ch;
|
||||||
}
|
}
|
||||||
|
|
||||||
buf = xrealloc(buf, 1, len + 1);
|
buf = xrealloc(buf, 1, len + 1);
|
||||||
buf[len] = '\0';
|
buf[len] = '\0';
|
||||||
@ -272,7 +272,7 @@ cmd_string_variable(const char *s, size_t *p)
|
|||||||
((ch) >= 'a' && (ch) <= 'z') || ((ch) >= 'A' && (ch) <= 'Z') || \
|
((ch) >= 'a' && (ch) <= 'z') || ((ch) >= 'A' && (ch) <= 'Z') || \
|
||||||
((ch) >= '0' && (ch) <= '9'))
|
((ch) >= '0' && (ch) <= '9'))
|
||||||
|
|
||||||
buf = NULL;
|
buf = NULL;
|
||||||
len = 0;
|
len = 0;
|
||||||
|
|
||||||
fch = EOF;
|
fch = EOF;
|
||||||
|
4
cmd.c
4
cmd.c
@ -179,7 +179,7 @@ struct cmd *
|
|||||||
cmd_parse(int argc, char **argv, char **cause)
|
cmd_parse(int argc, char **argv, char **cause)
|
||||||
{
|
{
|
||||||
const struct cmd_entry **entryp, *entry;
|
const struct cmd_entry **entryp, *entry;
|
||||||
struct cmd *cmd;
|
struct cmd *cmd;
|
||||||
char s[BUFSIZ];
|
char s[BUFSIZ];
|
||||||
int opt, ambiguous = 0;
|
int opt, ambiguous = 0;
|
||||||
|
|
||||||
@ -842,7 +842,7 @@ cmd_find_pane(struct cmd_ctx *ctx,
|
|||||||
|
|
||||||
/* Get the current session. */
|
/* Get the current session. */
|
||||||
if ((s = cmd_current_session(ctx)) == NULL) {
|
if ((s = cmd_current_session(ctx)) == NULL) {
|
||||||
ctx->error(ctx, "can't establish current session");
|
ctx->error(ctx, "can't establish current session");
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
if (sp != NULL)
|
if (sp != NULL)
|
||||||
|
6
input.c
6
input.c
@ -128,7 +128,7 @@ input_sequence_cmp(const void *a, const void *b)
|
|||||||
void
|
void
|
||||||
input_new_argument(struct input_ctx *ictx)
|
input_new_argument(struct input_ctx *ictx)
|
||||||
{
|
{
|
||||||
struct input_arg *arg;
|
struct input_arg *arg;
|
||||||
|
|
||||||
ARRAY_EXPAND(&ictx->args, 1);
|
ARRAY_EXPAND(&ictx->args, 1);
|
||||||
|
|
||||||
@ -139,7 +139,7 @@ input_new_argument(struct input_ctx *ictx)
|
|||||||
int
|
int
|
||||||
input_add_argument(struct input_ctx *ictx, u_char ch)
|
input_add_argument(struct input_ctx *ictx, u_char ch)
|
||||||
{
|
{
|
||||||
struct input_arg *arg;
|
struct input_arg *arg;
|
||||||
|
|
||||||
if (ARRAY_LENGTH(&ictx->args) == 0)
|
if (ARRAY_LENGTH(&ictx->args) == 0)
|
||||||
return (0);
|
return (0);
|
||||||
@ -792,7 +792,7 @@ input_handle_sequence(u_char ch, struct input_ctx *ictx)
|
|||||||
{
|
{
|
||||||
struct input_sequence_entry *entry, find;
|
struct input_sequence_entry *entry, find;
|
||||||
struct screen *s = ictx->ctx.s;
|
struct screen *s = ictx->ctx.s;
|
||||||
u_int i;
|
u_int i;
|
||||||
struct input_arg *iarg;
|
struct input_arg *iarg;
|
||||||
|
|
||||||
log_debug2("-- sq %zu: %hhu (%c): %u [sx=%u, sy=%u, cx=%u, cy=%u, "
|
log_debug2("-- sq %zu: %hhu (%c): %u [sx=%u, sy=%u, cx=%u, cy=%u, "
|
||||||
|
@ -492,8 +492,8 @@ server_client_msg_dispatch(struct client *c)
|
|||||||
struct msg_environ_data environdata;
|
struct msg_environ_data environdata;
|
||||||
ssize_t n, datalen;
|
ssize_t n, datalen;
|
||||||
|
|
||||||
if ((n = imsg_read(&c->ibuf)) == -1 || n == 0)
|
if ((n = imsg_read(&c->ibuf)) == -1 || n == 0)
|
||||||
return (-1);
|
return (-1);
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
if ((n = imsg_get(&c->ibuf, &imsg)) == -1)
|
if ((n = imsg_get(&c->ibuf, &imsg)) == -1)
|
||||||
|
8
server.c
8
server.c
@ -667,12 +667,12 @@ void
|
|||||||
server_lock_sessions(void)
|
server_lock_sessions(void)
|
||||||
{
|
{
|
||||||
struct session *s;
|
struct session *s;
|
||||||
u_int i;
|
u_int i;
|
||||||
int timeout;
|
int timeout;
|
||||||
time_t t;
|
time_t t;
|
||||||
|
|
||||||
t = time(NULL);
|
t = time(NULL);
|
||||||
for (i = 0; i < ARRAY_LENGTH(&sessions); i++) {
|
for (i = 0; i < ARRAY_LENGTH(&sessions); i++) {
|
||||||
if ((s = ARRAY_ITEM(&sessions, i)) == NULL)
|
if ((s = ARRAY_ITEM(&sessions, i)) == NULL)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
10
tmux.c
10
tmux.c
@ -344,10 +344,10 @@ main(int argc, char **argv)
|
|||||||
case 'v':
|
case 'v':
|
||||||
debug_level++;
|
debug_level++;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
usage();
|
usage();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
argc -= optind;
|
argc -= optind;
|
||||||
argv += optind;
|
argv += optind;
|
||||||
|
|
||||||
@ -569,7 +569,7 @@ main(int argc, char **argv)
|
|||||||
if (pfd.revents & (POLLERR|POLLHUP|POLLNVAL))
|
if (pfd.revents & (POLLERR|POLLHUP|POLLNVAL))
|
||||||
fatalx("socket error");
|
fatalx("socket error");
|
||||||
|
|
||||||
if (pfd.revents & POLLIN) {
|
if (pfd.revents & POLLIN) {
|
||||||
if (dispatch_imsg(ibuf, shellcmd, &retcode) != 0)
|
if (dispatch_imsg(ibuf, shellcmd, &retcode) != 0)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -594,7 +594,7 @@ dispatch_imsg(struct imsgbuf *ibuf, const char *shellcmd, int *retcode)
|
|||||||
struct msg_print_data printdata;
|
struct msg_print_data printdata;
|
||||||
struct msg_shell_data shelldata;
|
struct msg_shell_data shelldata;
|
||||||
|
|
||||||
if ((n = imsg_read(ibuf)) == -1 || n == 0)
|
if ((n = imsg_read(ibuf)) == -1 || n == 0)
|
||||||
fatalx("imsg_read failed");
|
fatalx("imsg_read failed");
|
||||||
|
|
||||||
for (;;) {
|
for (;;) {
|
||||||
|
2
tty.c
2
tty.c
@ -144,7 +144,7 @@ tty_start_tty(struct tty *tty)
|
|||||||
tio.c_lflag &= ~(IEXTEN|ICANON|ECHO|ECHOE|ECHONL|ECHOCTL|
|
tio.c_lflag &= ~(IEXTEN|ICANON|ECHO|ECHOE|ECHONL|ECHOCTL|
|
||||||
ECHOPRT|ECHOKE|ECHOCTL|ISIG);
|
ECHOPRT|ECHOKE|ECHOCTL|ISIG);
|
||||||
tio.c_cc[VMIN] = 1;
|
tio.c_cc[VMIN] = 1;
|
||||||
tio.c_cc[VTIME] = 0;
|
tio.c_cc[VTIME] = 0;
|
||||||
if (tcsetattr(tty->fd, TCSANOW, &tio) != 0)
|
if (tcsetattr(tty->fd, TCSANOW, &tio) != 0)
|
||||||
fatal("tcsetattr failed");
|
fatal("tcsetattr failed");
|
||||||
|
|
||||||
|
62
xmalloc.c
62
xmalloc.c
@ -42,16 +42,16 @@ xstrdup(const char *s)
|
|||||||
void *
|
void *
|
||||||
xcalloc(size_t nmemb, size_t size)
|
xcalloc(size_t nmemb, size_t size)
|
||||||
{
|
{
|
||||||
void *ptr;
|
void *ptr;
|
||||||
|
|
||||||
if (size == 0 || nmemb == 0)
|
if (size == 0 || nmemb == 0)
|
||||||
fatalx("zero size");
|
fatalx("zero size");
|
||||||
if (SIZE_MAX / nmemb < size)
|
if (SIZE_MAX / nmemb < size)
|
||||||
fatalx("nmemb * size > SIZE_MAX");
|
fatalx("nmemb * size > SIZE_MAX");
|
||||||
if ((ptr = calloc(nmemb, size)) == NULL)
|
if ((ptr = calloc(nmemb, size)) == NULL)
|
||||||
fatal("xcalloc failed");
|
fatal("xcalloc failed");
|
||||||
|
|
||||||
return (ptr);
|
return (ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void *
|
void *
|
||||||
@ -59,12 +59,12 @@ xmalloc(size_t size)
|
|||||||
{
|
{
|
||||||
void *ptr;
|
void *ptr;
|
||||||
|
|
||||||
if (size == 0)
|
if (size == 0)
|
||||||
fatalx("zero size");
|
fatalx("zero size");
|
||||||
if ((ptr = malloc(size)) == NULL)
|
if ((ptr = malloc(size)) == NULL)
|
||||||
fatal("xmalloc failed");
|
fatal("xmalloc failed");
|
||||||
|
|
||||||
return (ptr);
|
return (ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void *
|
void *
|
||||||
@ -74,13 +74,13 @@ xrealloc(void *oldptr, size_t nmemb, size_t size)
|
|||||||
void *newptr;
|
void *newptr;
|
||||||
|
|
||||||
if (newsize == 0)
|
if (newsize == 0)
|
||||||
fatalx("zero size");
|
fatalx("zero size");
|
||||||
if (SIZE_MAX / nmemb < size)
|
if (SIZE_MAX / nmemb < size)
|
||||||
fatalx("nmemb * size > SIZE_MAX");
|
fatalx("nmemb * size > SIZE_MAX");
|
||||||
if ((newptr = realloc(oldptr, newsize)) == NULL)
|
if ((newptr = realloc(oldptr, newsize)) == NULL)
|
||||||
fatal("xrealloc failed");
|
fatal("xrealloc failed");
|
||||||
|
|
||||||
return (newptr);
|
return (newptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -94,12 +94,12 @@ xfree(void *ptr)
|
|||||||
int printflike2
|
int printflike2
|
||||||
xasprintf(char **ret, const char *fmt, ...)
|
xasprintf(char **ret, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
va_list ap;
|
va_list ap;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
va_start(ap, fmt);
|
va_start(ap, fmt);
|
||||||
i = xvasprintf(ret, fmt, ap);
|
i = xvasprintf(ret, fmt, ap);
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
|
|
||||||
return (i);
|
return (i);
|
||||||
}
|
}
|
||||||
@ -110,21 +110,21 @@ xvasprintf(char **ret, const char *fmt, va_list ap)
|
|||||||
int i;
|
int i;
|
||||||
|
|
||||||
i = vasprintf(ret, fmt, ap);
|
i = vasprintf(ret, fmt, ap);
|
||||||
if (i < 0 || *ret == NULL)
|
if (i < 0 || *ret == NULL)
|
||||||
fatal("xvasprintf failed");
|
fatal("xvasprintf failed");
|
||||||
|
|
||||||
return (i);
|
return (i);
|
||||||
}
|
}
|
||||||
|
|
||||||
int printflike3
|
int printflike3
|
||||||
xsnprintf(char *buf, size_t len, const char *fmt, ...)
|
xsnprintf(char *buf, size_t len, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
va_list ap;
|
va_list ap;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
va_start(ap, fmt);
|
va_start(ap, fmt);
|
||||||
i = xvsnprintf(buf, len, fmt, ap);
|
i = xvsnprintf(buf, len, fmt, ap);
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
|
|
||||||
return (i);
|
return (i);
|
||||||
}
|
}
|
||||||
@ -138,8 +138,8 @@ xvsnprintf(char *buf, size_t len, const char *fmt, va_list ap)
|
|||||||
fatalx("len > INT_MAX");
|
fatalx("len > INT_MAX");
|
||||||
|
|
||||||
i = vsnprintf(buf, len, fmt, ap);
|
i = vsnprintf(buf, len, fmt, ap);
|
||||||
if (i < 0)
|
if (i < 0)
|
||||||
fatal("vsnprintf failed");
|
fatal("vsnprintf failed");
|
||||||
|
|
||||||
return (i);
|
return (i);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user