X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/9e164d82c8990d3c8cff58d866fb9938907d4d7b..2ff340bdd3941537211af374feaa6023a20529be:/rlogin.c diff --git a/rlogin.c b/rlogin.c index f9a546e9..c392fa0a 100644 --- a/rlogin.c +++ b/rlogin.c @@ -182,12 +182,14 @@ static const char *rlogin_init(void *frontend_handle, void **backend_handle, { char z = 0; char *p; + char ruser[sizeof(cfg->username)]; + (void) get_remote_username(cfg, ruser, sizeof(ruser)); sk_write(rlogin->s, &z, 1); sk_write(rlogin->s, cfg->localusername, strlen(cfg->localusername)); sk_write(rlogin->s, &z, 1); - sk_write(rlogin->s, cfg->username, - strlen(cfg->username)); + sk_write(rlogin->s, ruser, + strlen(ruser)); sk_write(rlogin->s, &z, 1); sk_write(rlogin->s, cfg->termtype, strlen(cfg->termtype)); @@ -197,6 +199,22 @@ static const char *rlogin_init(void *frontend_handle, void **backend_handle, rlogin->bufsize = sk_write(rlogin->s, &z, 1); } + if (*cfg->loghost) { + char *colon; + + sfree(*realhost); + *realhost = dupstr(cfg->loghost); + colon = strrchr(*realhost, ':'); + if (colon) { + /* + * FIXME: if we ever update this aspect of ssh.c for + * IPv6 literal management, this should change in line + * with it. + */ + *colon++ = '\0'; + } + } + return NULL; } @@ -351,5 +369,5 @@ Backend rlogin_backend = { rlogin_cfg_info, "rlogin", PROT_RLOGIN, - 1 + 513 };