-/* $OpenBSD: channels.c,v 1.441 2024/12/05 06:47:00 dtucker Exp $ */
+/* $OpenBSD: channels.c,v 1.442 2024/12/05 06:49:26 dtucker Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
#define NUM_SOCKS 10
/* -- X11 forwarding */
+/* X11 port for display :0 */
+#define X11_BASE_PORT 6000
/* Maximum number of fake X11 displays to try. */
#define MAX_DISPLAYS 1000
int gaierr, n, num_socks = 0, socks[NUM_SOCKS];
if (chanids == NULL || x11_display_offset < 0 ||
- x11_display_offset > UINT16_MAX - 6000 - MAX_DISPLAYS)
+ x11_display_offset > UINT16_MAX - X11_BASE_PORT - MAX_DISPLAYS)
return -1;
for (display_number = x11_display_offset;
display_number < MAX_DISPLAYS;
display_number++) {
- port = 6000 + display_number;
+ port = X11_BASE_PORT + display_number;
memset(&hints, 0, sizeof(hints));
hints.ai_family = ssh->chanctxt->IPv4or6;
hints.ai_flags = x11_use_localhost ? 0: AI_PASSIVE;
* display number.
*/
if (sscanf(cp + 1, "%u", &display_number) != 1 ||
- display_number > UINT16_MAX - 6000) {
+ display_number > UINT16_MAX - X11_BASE_PORT) {
error("Could not parse display number from DISPLAY: %.100s",
display);
return -1;
memset(&hints, 0, sizeof(hints));
hints.ai_family = ssh->chanctxt->IPv4or6;
hints.ai_socktype = SOCK_STREAM;
- snprintf(strport, sizeof strport, "%u", 6000 + display_number);
+ snprintf(strport, sizeof strport, "%u", X11_BASE_PORT + display_number);
if ((gaierr = getaddrinfo(buf, strport, &hints, &aitop)) != 0) {
error("%.100s: unknown host. (%s)", buf,
ssh_gai_strerror(gaierr));
/* Connect it to the display. */
if (connect(sock, ai->ai_addr, ai->ai_addrlen) == -1) {
debug2("connect %.100s port %u: %.100s", buf,
- 6000 + display_number, strerror(errno));
+ X11_BASE_PORT + display_number, strerror(errno));
close(sock);
continue;
}
freeaddrinfo(aitop);
if (!ai) {
error("connect %.100s port %u: %.100s", buf,
- 6000 + display_number, strerror(errno));
+ X11_BASE_PORT + display_number, strerror(errno));
return -1;
}
set_nodelay(sock);