X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/6ee9b735013c0e636b027b77e9f6ba57a96e142f..6f1e7b78af0f9c4c502609392f62771cf2528d8f:/ssh.c?ds=inline diff --git a/ssh.c b/ssh.c index 32753657..7e064ece 100644 --- a/ssh.c +++ b/ssh.c @@ -297,6 +297,7 @@ extern int x11_send(Socket, char *, int); extern void *x11_invent_auth(char *, int, char *, int); extern void x11_unthrottle(Socket s); extern void x11_override_throttle(Socket s, int enable); +extern int x11_get_screen_number(char *display); extern char *pfd_newconnect(Socket * s, char *hostname, int port, void *c); extern char *pfd_addforward(char *desthost, int destport, char *srcaddr, @@ -638,13 +639,7 @@ struct ssh_tag { int (*s_rdpkt) (Ssh ssh, unsigned char **data, int *datalen); }; -#define logevent(s) do { \ - logevent(ssh->frontend, s); \ - if ((flags & FLAG_STDERR) && (flags & FLAG_VERBOSE)) { \ - fprintf(stderr, "%s\n", s); \ - fflush(stderr); \ - } \ -} while (0) +#define logevent(s) logevent(ssh->frontend, s) /* logevent, only printf-formatted. */ void logeventf(Ssh ssh, char *fmt, ...) @@ -656,10 +651,6 @@ void logeventf(Ssh ssh, char *fmt, ...) buf = dupvprintf(fmt, ap); va_end(ap); logevent(buf); - if ((flags & FLAG_STDERR) && (flags & FLAG_VERBOSE)) { - fprintf(stderr, "%s\n", buf); - fflush(stderr); - } sfree(buf); } @@ -2072,7 +2063,7 @@ static char *connect_to_host(Ssh ssh, char *host, int port, * Try to find host. */ logeventf(ssh, "Looking up host \"%s\"", host); - addr = sk_namelookup(host, realhost); + addr = name_lookup(host, port, realhost); if ((err = sk_addr_error(addr))) return err; @@ -3047,7 +3038,8 @@ static void ssh1_protocol(Ssh ssh, unsigned char *in, int inlen, int ispkt) if (ssh->v1_local_protoflags & SSH1_PROTOFLAG_SCREEN_NUMBER) { send_packet(ssh, SSH1_CMSG_X11_REQUEST_FORWARDING, PKT_STR, proto, PKT_STR, data, - PKT_INT, 0, PKT_END); + PKT_INT, x11_get_screen_number(cfg.x11_display), + PKT_END); } else { send_packet(ssh, SSH1_CMSG_X11_REQUEST_FORWARDING, PKT_STR, proto, PKT_STR, data, PKT_END); @@ -5093,7 +5085,7 @@ static void do_ssh2_authconn(Ssh ssh, unsigned char *in, int inlen, int ispkt) ssh2_pkt_addbool(ssh, 0); /* many connections */ ssh2_pkt_addstring(ssh, proto); ssh2_pkt_addstring(ssh, data); - ssh2_pkt_adduint32(ssh, 0); /* screen number */ + ssh2_pkt_adduint32(ssh, x11_get_screen_number(cfg.x11_display)); ssh2_pkt_send(ssh); do {