diff --git a/include/prototypes.h b/include/prototypes.h index e6aa58b2..b20997c1 100644 --- a/include/prototypes.h +++ b/include/prototypes.h @@ -77,6 +77,7 @@ extern void trdswitchown(int, void *, int); extern int do_look(short); extern int radar(short); extern void update_power(void); +extern int show_first_tel(char *); /* Commands */ int acce(void); int add(void); @@ -382,7 +383,6 @@ extern int natbyname(char *, natid *); extern int natpass(int, char *); /* player.c */ extern struct player *player; /* current player's context */ -extern int show_first_tel(char *); extern char *praddr(struct player *); extern void player_main(struct player *); /* more under Commands */ diff --git a/src/lib/commands/rea.c b/src/lib/commands/rea.c index cf58ed99..94465953 100644 --- a/src/lib/commands/rea.c +++ b/src/lib/commands/rea.c @@ -36,6 +36,7 @@ #include #include +#include #include #include "commands.h" #include "match.h" @@ -200,6 +201,31 @@ rea(void) return RET_OK; } +/* + * Print first telegram in file FNAME. + */ +int +show_first_tel(char *fname) +{ + FILE *fp; + struct telstr tgm; + + if ((fp = fopen(fname, "rb")) == NULL) { + if (errno == ENOENT) + return 0; + else { + logerror("Could not open %s.\n", fname); + return -1; + } + } + if (tel_read_header(fp, fname, &tgm) < 0) + return -1; + if (tel_read_body(fp, fname, &tgm, print_sink, NULL) < 0) + return -1; + fclose(fp); + return 0; +} + static int print_sink(char *chunk, size_t sz, void *arg) { diff --git a/src/lib/player/player.c b/src/lib/player/player.c index 3852c116..4666d179 100644 --- a/src/lib/player/player.c +++ b/src/lib/player/player.c @@ -35,8 +35,6 @@ #include -#include -#include #include "com.h" #include "empio.h" #include "empthread.h" @@ -53,7 +51,6 @@ static int command(void); static int status(void); -static int print_sink(char *, size_t, void *); struct player *player; @@ -262,38 +259,6 @@ show_motd(void) return RET_OK; } -/* - * Print first telegram in file FNAME. - */ -int -show_first_tel(char *fname) -{ - FILE *fp; - struct telstr tgm; - - if ((fp = fopen(fname, "rb")) == NULL) { - if (errno == ENOENT) - return 0; - else { - logerror("Could not open %s.\n", fname); - return -1; - } - } - if (tel_read_header(fp, fname, &tgm) < 0) - return -1; - if (tel_read_body(fp, fname, &tgm, print_sink, NULL) < 0) - return -1; - fclose(fp); - return 0; -} - -static int -print_sink(char *chunk, size_t sz, void *arg) -{ - uprnf(chunk); - return 0; -} - int quit(void) {