version 1.74, 2012/05/22 14:32:28 |
version 1.75, 2012/06/18 13:16:42 |
|
|
struct options *oo = s != NULL ? &s->options : &global_s_options; |
struct options *oo = s != NULL ? &s->options : &global_s_options; |
char *overrides; |
char *overrides; |
|
|
|
if (c->flags & CLIENT_CONTROL) |
|
return (0); |
|
|
if (!(c->flags & CLIENT_TERMINAL)) { |
if (!(c->flags & CLIENT_TERMINAL)) { |
*cause = xstrdup ("not a terminal"); |
*cause = xstrdup ("not a terminal"); |
return (-1); |
return (-1); |
|
|
data->cwd[(sizeof data->cwd) - 1] = '\0'; |
data->cwd[(sizeof data->cwd) - 1] = '\0'; |
if (*data->cwd != '\0') |
if (*data->cwd != '\0') |
c->cwd = xstrdup(data->cwd); |
c->cwd = xstrdup(data->cwd); |
|
|
|
if (data->flags & IDENTIFY_CONTROL) { |
|
c->stdin_callback = control_callback; |
|
c->flags |= (CLIENT_CONTROL|CLIENT_SUSPENDED); |
|
|
|
c->tty.fd = -1; |
|
c->tty.log_fd = -1; |
|
|
|
close(fd); |
|
return; |
|
} |
|
|
if (!isatty(fd)) |
if (!isatty(fd)) |
return; |
return; |