projects
/
spider.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
2465a04
)
add the ability to have an 'after connect' script called 'connected'
author
minima
<minima>
Thu, 26 Oct 2000 17:44:31 +0000
(17:44 +0000)
committer
minima
<minima>
Thu, 26 Oct 2000 17:44:31 +0000
(17:44 +0000)
Changes
patch
|
blob
|
history
src/client.c
patch
|
blob
|
history
diff --git
a/Changes
b/Changes
index 5b2a78ece9eff4a31f56f13996d34cc9cf5bf117..1fdd338a0b5958256f4f4da6df1a75ca9ec68bfb 100644
(file)
--- a/
Changes
+++ b/
Changes
@@
-1,3
+1,6
@@
+26Oct00=======================================================================
+1. if there is a 'connected' file in /spider/data then the client will send
+it out to the user after connection.
25Oct00=======================================================================
1. fix catchup and uncatchup commands so that they accept ranges
24Oct00=======================================================================
25Oct00=======================================================================
1. fix catchup and uncatchup commands so that they accept ranges
24Oct00=======================================================================
diff --git
a/src/client.c
b/src/client.c
index d2ed0c473ed01731063a2a689e8825c75c37fe68..0fd8950e4d76f5d88523ac809d0af2c0b9630ae6 100644
(file)
--- a/
src/client.c
+++ b/
src/client.c
@@
-300,6
+300,26
@@
void send_msg(fcb_t *f, char let, UC *s, int l)
f->sp->flags |= SEL_OUTPUT;
}
f->sp->flags |= SEL_OUTPUT;
}
+/*
+ * send a file out to the user
+ */
+void send_file(char *name)
+{
+ int i;
+ char buf[MAXPACLEN+1];
+
+ FILE *f = xopen("data", name, "r");
+ if (f) {
+ while (fgets(buf, paclen, f)) {
+ i = strlen(buf);
+ if (i && buf[i-1] == '\n')
+ buf[--i] = 0;
+ send_text(in, buf, i, 1);
+ }
+ fclose(f);
+ }
+}
+
/*
* the callback (called by sel_run) that handles all the inputs and outputs
*/
/*
* the callback (called by sel_run) that handles all the inputs and outputs
*/
@@
-852,19
+872,7
@@
main(int argc, char *argv[])
/* is this a login? */
if (eq(call, "LOGIN") || eq(call, "login")) {
/* is this a login? */
if (eq(call, "LOGIN") || eq(call, "login")) {
-
- char buf[MAXPACLEN+1];
- int r, i;
- FILE *f = xopen("data", "issue", "r");
- if (f) {
- while (fgets(buf, paclen, f)) {
- i = strlen(buf);
- if (i && buf[i-1] == '\n')
- buf[--i] = 0;
- send_text(in, buf, i, 1);
- }
- fclose(f);
- }
+ send_file("issue");
signal(SIGALRM, login_timeout);
alarm(timeout);
send_text(in, "login: ", 7, 0);
signal(SIGALRM, login_timeout);
alarm(timeout);
send_text(in, "login: ", 7, 0);
@@
-880,6
+888,8
@@
main(int argc, char *argv[])
send_msg(node, 'A', connsort, strlen(connsort));
chgstate(CONNECTED);
send_msg(node, 'A', connsort, strlen(connsort));
chgstate(CONNECTED);
+
+ send_file("connected");
}
}