version 1.323, 2009/01/22 10:02:34 |
version 1.324, 2009/02/12 03:00:56 |
|
|
break; |
break; |
|
|
case 'L': |
case 'L': |
if (parse_forward(&fwd, optarg, 0)) |
if (parse_forward(&fwd, optarg, 0, 0)) |
add_local_forward(&options, &fwd); |
add_local_forward(&options, &fwd); |
else { |
else { |
fprintf(stderr, |
fprintf(stderr, |
|
|
break; |
break; |
|
|
case 'R': |
case 'R': |
if (parse_forward(&fwd, optarg, 0)) { |
if (parse_forward(&fwd, optarg, 0, 1)) { |
add_remote_forward(&options, &fwd); |
add_remote_forward(&options, &fwd); |
} else { |
} else { |
fprintf(stderr, |
fprintf(stderr, |
|
|
break; |
break; |
|
|
case 'D': |
case 'D': |
if (parse_forward(&fwd, optarg, 1)) { |
if (parse_forward(&fwd, optarg, 1, 0)) { |
add_local_forward(&options, &fwd); |
add_local_forward(&options, &fwd); |
} else { |
} else { |
fprintf(stderr, |
fprintf(stderr, |
|
|
{ |
{ |
Forward *rfwd = (Forward *)ctxt; |
Forward *rfwd = (Forward *)ctxt; |
|
|
|
/* XXX verbose() on failure? */ |
debug("remote forward %s for: listen %d, connect %s:%d", |
debug("remote forward %s for: listen %d, connect %s:%d", |
type == SSH2_MSG_REQUEST_SUCCESS ? "success" : "failure", |
type == SSH2_MSG_REQUEST_SUCCESS ? "success" : "failure", |
rfwd->listen_port, rfwd->connect_host, rfwd->connect_port); |
rfwd->listen_port, rfwd->connect_host, rfwd->connect_port); |
|
if (type == SSH2_MSG_REQUEST_SUCCESS && rfwd->listen_port == 0) { |
|
logit("Allocated port %u for remote forward to %s:%d", |
|
packet_get_int(), |
|
rfwd->connect_host, rfwd->connect_port); |
|
} |
|
|
if (type == SSH2_MSG_REQUEST_FAILURE) { |
if (type == SSH2_MSG_REQUEST_FAILURE) { |
if (options.exit_on_forward_failure) |
if (options.exit_on_forward_failure) |
fatal("Error: remote port forwarding failed for " |
fatal("Error: remote port forwarding failed for " |