X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=src%2Fclient.c;fp=src%2Fclient.c;h=0fd8950e4d76f5d88523ac809d0af2c0b9630ae6;hb=3a6b5b143e5d0e6011a70ec6897934b518f744e1;hp=d2ed0c473ed01731063a2a689e8825c75c37fe68;hpb=2465a0437f983a61c6c0490bc7000c831ff5ee55;p=spider.git diff --git a/src/client.c b/src/client.c index d2ed0c47..0fd8950e 100644 --- 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; } +/* + * 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 */ @@ -852,19 +872,7 @@ main(int argc, char *argv[]) /* 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); @@ -880,6 +888,8 @@ main(int argc, char *argv[]) send_msg(node, 'A', connsort, strlen(connsort)); chgstate(CONNECTED); + + send_file("connected"); }