version 1.21, 1998/07/12 08:07:12 |
version 1.22, 2000/01/27 05:27:42 |
|
|
int omask; |
int omask; |
int argoff, ch, dflag, one, uid; |
int argoff, ch, dflag, one, uid; |
char *host, *p, *user, term[64]; |
char *host, *p, *user, term[64]; |
|
struct sockaddr_storage ss; |
|
socklen_t sslen; |
|
|
argoff = dflag = 0; |
argoff = dflag = 0; |
one = 1; |
one = 1; |
|
|
"rlogin: the -x flag requires Kerberos authentication.\n"); |
"rlogin: the -x flag requires Kerberos authentication.\n"); |
exit(1); |
exit(1); |
} |
} |
rem = rcmd(&host, sp->s_port, pw->pw_name, user, term, 0); |
rem = rcmd_af(&host, sp->s_port, pw->pw_name, user, term, 0, |
|
PF_UNSPEC); |
} |
} |
#else |
#else |
rem = rcmd(&host, sp->s_port, pw->pw_name, user, term, 0); |
rem = rcmd_af(&host, sp->s_port, pw->pw_name, user, term, 0, PF_UNSPEC); |
#endif /* KERBEROS */ |
#endif /* KERBEROS */ |
|
|
if (rem < 0) |
if (rem < 0) |
|
|
setsockopt(rem, SOL_SOCKET, SO_DEBUG, &one, sizeof(one)) < 0) |
setsockopt(rem, SOL_SOCKET, SO_DEBUG, &one, sizeof(one)) < 0) |
(void)fprintf(stderr, "rlogin: setsockopt: %s.\n", |
(void)fprintf(stderr, "rlogin: setsockopt: %s.\n", |
strerror(errno)); |
strerror(errno)); |
one = IPTOS_LOWDELAY; |
|
if (setsockopt(rem, IPPROTO_IP, IP_TOS, (char *)&one, sizeof(int)) < 0) |
sslen = sizeof(ss); |
perror("rlogin: setsockopt TOS (ignored)"); |
if (getsockname(rem, (struct sockaddr *)&ss, &sslen) == 0 && |
|
ss.ss_family == AF_INET) { |
|
one = IPTOS_LOWDELAY; |
|
if (setsockopt(rem, IPPROTO_IP, IP_TOS, (char *)&one, |
|
sizeof(int)) < 0) |
|
perror("rlogin: setsockopt TOS (ignored)"); |
|
} |
|
|
(void)seteuid(uid); |
(void)seteuid(uid); |
(void)setuid(uid); |
(void)setuid(uid); |