summaryrefslogtreecommitdiffstats
path: root/mbbsd/mbbsd.c
diff options
context:
space:
mode:
authorscw <scw@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2004-06-29 22:17:59 +0800
committerscw <scw@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2004-06-29 22:17:59 +0800
commitc0a22dee78c1470d62d658e1b2beacb84ffb5cc5 (patch)
tree463fbd38518dffa479767dfc59a8cc69225da29e /mbbsd/mbbsd.c
parent3cbefc4792908b0b0f7433f6565958032e01b241 (diff)
downloadpttbbs-c0a22dee78c1470d62d658e1b2beacb84ffb5cc5.tar
pttbbs-c0a22dee78c1470d62d658e1b2beacb84ffb5cc5.tar.gz
pttbbs-c0a22dee78c1470d62d658e1b2beacb84ffb5cc5.tar.bz2
pttbbs-c0a22dee78c1470d62d658e1b2beacb84ffb5cc5.tar.lz
pttbbs-c0a22dee78c1470d62d658e1b2beacb84ffb5cc5.tar.xz
pttbbs-c0a22dee78c1470d62d658e1b2beacb84ffb5cc5.tar.zst
pttbbs-c0a22dee78c1470d62d658e1b2beacb84ffb5cc5.zip
Reverting revision 2098 and 2100. These make kernel panic due to out of swap.
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@2101 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/mbbsd.c')
-rw-r--r--mbbsd/mbbsd.c28
1 files changed, 8 insertions, 20 deletions
diff --git a/mbbsd/mbbsd.c b/mbbsd/mbbsd.c
index 8c5ac52d..c202e786 100644
--- a/mbbsd/mbbsd.c
+++ b/mbbsd/mbbsd.c
@@ -1076,41 +1076,29 @@ start_client()
static void
telnet_init()
{
- const static unsigned char svr[] = {
+ const static char svr[] = {
IAC, DO, TELOPT_TTYPE,
IAC, SB, TELOPT_TTYPE, TELQUAL_SEND, IAC, SE,
IAC, WILL, TELOPT_ECHO,
- IAC, WILL, TELOPT_SGA,
-#ifndef SKIP_TELNET_CONTROL_SIGNAL
- IAC, DO, TELOPT_NAWS,
-#endif
- 0
+ IAC, WILL, TELOPT_SGA
};
- const unsigned char *cmd;
+ const char *cmd;
int n, len;
struct timeval to;
- unsigned char buf[64];
+ char buf[64];
fd_set ReadSet, r;
- int recvlen;
FD_ZERO(&ReadSet);
FD_SET(0, &ReadSet);
- for (n = 0, cmd = svr; *cmd == IAC; n++) {
- len = (cmd[1] == SB ? 6 : 3);
+ for (n = 0, cmd = svr; n < 4; n++) {
+ len = (n == 1 ? 6 : 3);
write(0, cmd, len);
cmd += len;
to.tv_sec = 3;
to.tv_usec = 0;
r = ReadSet;
- if (select(1, &r, NULL, NULL, &to) > 0){
- recvlen = recv(0, buf, sizeof(buf), 0);
-#ifndef SKIP_TELNET_CONTROL_SIGNAL
- if (recvlen && len == 3 && *(cmd - 1) == TELOPT_NAWS){
- if (buf[0] == IAC && buf[1] == WILL && buf[2] == TELOPT_NAWS)
- telnet_parse_size(buf + 3);
- }
-#endif
- }
+ if (select(1, &r, NULL, NULL, &to) > 0)
+ recv(0, buf, sizeof(buf), 0);
}
}