projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
*** empty log message ***
[spider.git]
/
src
/
client.c
diff --git
a/src/client.c
b/src/client.c
index 22e06f6976505fdebac7b3fa31db1e739d95519e..3cd88068d54aa65f282f9230c936b85681a3282b 100644
(file)
--- a/
src/client.c
+++ b/
src/client.c
@@
-232,7
+232,7
@@
void send_text(fcb_t *f, char *s, int l)
flush_text(f);
f->obuf = mp = cmsg_new(paclen+1, f->sort, f);
}
flush_text(f);
f->obuf = mp = cmsg_new(paclen+1, f->sort, f);
}
- *mp->inp++ =
nl
;
+ *mp->inp++ =
'\n'
;
if (!f->buffer_it)
flush_text(f);
}
if (!f->buffer_it)
flush_text(f);
}
@@
-264,7
+264,7
@@
void send_msg(fcb_t *f, char let, unsigned char *s, int l)
} else
*mp->inp++ = *p;
}
} else
*mp->inp++ = *p;
}
- }
+ }
*mp->inp++ = '\n';
*mp->inp = 0;
cmsg_send(f->outq, mp, 0);
*mp->inp++ = '\n';
*mp->inp = 0;
cmsg_send(f->outq, mp, 0);
@@
-295,14
+295,14
@@
int fcb_handler(sel_t *sp, int in, int out, int err)
case EAGAIN:
goto lout;
default:
case EAGAIN:
goto lout;
default:
-
if (f->sort == MSG)
- send_Z = 0;
+
/*
if (f->sort == MSG)
+ send_Z = 0; */
ending++;
return 0;
}
} else if (r == 0) {
ending++;
return 0;
}
} else if (r == 0) {
-
if (f->sort == MSG)
- send_Z = 0;
+
/*
if (f->sort == MSG)
+ send_Z = 0; */
ending++;
return 0;
}
ending++;
return 0;
}
@@
-473,8
+473,8
@@
lout:;
case EAGAIN:
goto lend;
default:
case EAGAIN:
goto lend;
default:
-
if (f->sort == MSG)
- send_Z = 0;
+
/*
if (f->sort == MSG)
+ send_Z = 0; */
ending++;
return;
}
ending++;
return;
}
@@
-597,6
+597,7
@@
void term_timeout(int i)
if (in && in->t_set)
tcsetattr(0, TCSANOW, &in->t);
if (node) {
if (in && in->t_set)
tcsetattr(0, TCSANOW, &in->t);
if (node) {
+ shutdown(node->cnum, 3);
close(node->cnum);
}
exit(i);
close(node->cnum);
}
exit(i);
@@
-605,7
+606,7
@@
void term_timeout(int i)
void terminate(int i)
{
if (node && send_Z && call) {
void terminate(int i)
{
if (node && send_Z && call) {
- send_msg(node, 'Z', "
", 0
);
+ send_msg(node, 'Z', "
bye", 3
);
}
signal(SIGALRM, term_timeout);
}
signal(SIGALRM, term_timeout);
@@
-617,8
+618,10
@@
void terminate(int i)
}
if (in && in->t_set)
tcsetattr(0, TCSADRAIN, &in->t);
}
if (in && in->t_set)
tcsetattr(0, TCSADRAIN, &in->t);
- if (node)
+ if (node) {
+ shutdown(node->cnum, 3);
close(node->cnum);
close(node->cnum);
+ }
exit(i);
}
exit(i);
}