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

Ignore environment variables that are too long to send to the server.

This commit is contained in:
nicm 2015-07-13 18:10:26 +00:00
parent e45d624df2
commit 4e637b1b61

View File

@ -350,6 +350,7 @@ client_send_identify(int flags)
{ {
const char *s; const char *s;
char **ss; char **ss;
size_t sslen;
int fd; int fd;
pid_t pid; pid_t pid;
@ -374,8 +375,11 @@ client_send_identify(int flags)
pid = getpid(); pid = getpid();
client_write_one(MSG_IDENTIFY_CLIENTPID, -1, &pid, sizeof pid); client_write_one(MSG_IDENTIFY_CLIENTPID, -1, &pid, sizeof pid);
for (ss = environ; *ss != NULL; ss++) for (ss = environ; *ss != NULL; ss++) {
client_write_one(MSG_IDENTIFY_ENVIRON, -1, *ss, strlen(*ss) + 1); sslen = strlen(*ss) + 1;
if (sslen <= MAX_IMSGSIZE - IMSG_HEADER_SIZE)
client_write_one(MSG_IDENTIFY_ENVIRON, -1, *ss, sslen);
}
client_write_one(MSG_IDENTIFY_DONE, -1, NULL, 0); client_write_one(MSG_IDENTIFY_DONE, -1, NULL, 0);