diff --git a/src/client/Makefile.standalone b/src/client/Makefile.standalone index 149defc2..1687b1b7 100644 --- a/src/client/Makefile.standalone +++ b/src/client/Makefile.standalone @@ -71,6 +71,7 @@ clean: expect.o: misc.h fnlist.h globals.o: misc.h fnlist.h proto.h +handle.o: misc.h host.o: misc.h ioqueue.o: misc.h queue.h ioqueue.h ipglob.o: misc.h diff --git a/src/client/expect.c b/src/client/expect.c index b44ee9fd..11ac8ad4 100644 --- a/src/client/expect.c +++ b/src/client/expect.c @@ -142,7 +142,6 @@ expect(int s, int match, s_char *buf) void sendcmd(int s, int cmd, s_char *arg) { - extern struct fn fnlist[]; s_char buf[128]; int cc; int len; diff --git a/src/client/handle.c b/src/client/handle.c index 0cffd316..bc6517f8 100644 --- a/src/client/handle.c +++ b/src/client/handle.c @@ -35,12 +35,11 @@ #if !defined(_WIN32) #include #endif +#include "misc.h" int handleintr(int s) { - extern int interrupt; - if (interrupt) { /* tacky, but it works */ if (write(s, "\naborted\n", 1 + 7 + 1) <= 0) diff --git a/src/client/ioqueue.c b/src/client/ioqueue.c index e1caac94..93f4b13d 100644 --- a/src/client/ioqueue.c +++ b/src/client/ioqueue.c @@ -47,8 +47,6 @@ static int dequeuecc(register struct ioqueue *ioq, register int cc); void ioq_init(struct ioqueue *ioq, int bsize) { - extern s_char num_teles[]; - initque(&ioq->queue); ioq->cc = 0; ioq->bsize = bsize; diff --git a/src/client/login.c b/src/client/login.c index f8c43e15..3a5a10b2 100644 --- a/src/client/login.c +++ b/src/client/login.c @@ -43,9 +43,6 @@ #include #endif -int expect(int s, int match, s_char *buf); -void sendcmd(int s, int cmd, s_char *arg); - int login(int s, s_char *uname, s_char *cname, s_char *cpass, int kill_proc) { diff --git a/src/client/main.c b/src/client/main.c index 827bba72..df5c345b 100644 --- a/src/client/main.c +++ b/src/client/main.c @@ -73,17 +73,6 @@ HANDLE hStdIn; int interrupt; int sock; -void saveargv(int ac, s_char **src, s_char **dst); -void getsose(void); -int hostport(s_char *name, struct sockaddr_in *addr); -int hostaddr(s_char *name, struct sockaddr_in *addr); -int hostconnect(struct sockaddr_in *addr); -int login(int s, s_char *uname, s_char *cname, s_char *cpass, int kill_proc); -int handleintr(int); -int termio(int fd, int sock, FILE *auxfi); -int serverio(int s, struct ioqueue *ioq); -void servercmd(struct ioqueue *ioq, FILE *auxfi); - static void intr(int sig); @@ -98,8 +87,6 @@ main(int ac, s_char **av) DWORD stdinmode; SECURITY_ATTRIBUTES security; #endif - extern s_char empireport[]; - extern s_char empirehost[]; fd_set mask; struct ioqueue server; s_char *argv[128]; diff --git a/src/client/misc.h b/src/client/misc.h index 647f8858..29f39068 100644 --- a/src/client/misc.h +++ b/src/client/misc.h @@ -35,7 +35,14 @@ #define _MISC_H_ #include +#include #include +#ifdef _WIN32 +#include +#include +#else +#include +#endif #if !defined(aix) && !defined(sgi) #ifndef ultrix /* already defined in ultrix */ @@ -46,4 +53,33 @@ typedef signed char s_char; #endif /* !aix && !sgi */ typedef short coord; /* also change NSC_COORD in nsc.h */ +struct ioqueue; + +extern struct fn fnlist[]; +extern s_char empirehost[]; +extern s_char empireport[]; +extern int interrupt; +extern s_char num_teles[]; +extern int sock; +extern s_char *SO; +extern s_char *SE; + +#ifdef _WIN32 +HANDLE hStdIn; +#endif + +void getsose(void); +int expect(int s, int match, s_char *buf); +int handleintr(int); +int hostaddr(s_char *name, struct sockaddr_in *addr); +int hostconnect(struct sockaddr_in *addr); +int hostport(s_char *name, struct sockaddr_in *addr); +int login(int s, s_char *uname, s_char *cname, s_char *cpass, int kill_proc); +void saveargv(int ac, s_char **src, s_char **dst); +void sendcmd(int s, int cmd, s_char *arg); +int sendeof(int sock); +void servercmd(struct ioqueue *ioq, FILE *auxfi); +int serverio(int s, struct ioqueue *ioq); +int termio(int fd, int sock, FILE *auxfi); + #endif diff --git a/src/client/servcmd.c b/src/client/servcmd.c index f2ae219d..ae7224c1 100644 --- a/src/client/servcmd.c +++ b/src/client/servcmd.c @@ -58,18 +58,12 @@ FILE *redir_fp; FILE *pipe_fp; int exec_fd; -void prompt(FILE *auxfi); -void doredir(s_char *p); -void dopipe(s_char *p); -void doexecute(s_char *p, FILE *auxfi); -void output(int code, s_char *buf, FILE *auxfi); -void screen(register s_char *buf); -int sendeof(int); -int termio(int fd, int sock, FILE *auxfi); -void _noecho(int); - -extern s_char *SO; -extern s_char *SE; +static void prompt(FILE *auxfi); +static void doredir(s_char *p); +static void dopipe(s_char *p); +static void doexecute(s_char *p, FILE *auxfi); +static void output(int code, s_char *buf, FILE *auxfi); +static void screen(register s_char *buf); void servercmd(struct ioqueue *ioq, FILE *auxfi) @@ -128,7 +122,7 @@ servercmd(struct ioqueue *ioq, FILE *auxfi) } } -void +static void prompt(FILE *auxfi) { if (mode == C_PROMPT) { @@ -160,7 +154,7 @@ prompt(FILE *auxfi) /* * opens redir_fp if successful */ -void +static void doredir(s_char *p) { s_char *how; @@ -212,7 +206,7 @@ doredir(s_char *p) /* * opens "pipe_fp" if successful */ -void +static void dopipe(s_char *p) { s_char *tag; @@ -242,10 +236,9 @@ dopipe(s_char *p) free(tag); } -void +static void doexecute(s_char *p, FILE *auxfi) { - extern int sock; int fd; s_char *tag; @@ -286,7 +279,7 @@ doexecute(s_char *p, FILE *auxfi) free(tag); } -void +static void output(int code, s_char *buf, FILE *auxfi) { switch (code) { @@ -344,7 +337,7 @@ output(int code, s_char *buf, FILE *auxfi) } } -void +static void screen(register s_char *buf) { register s_char *sop; diff --git a/src/client/tags.h b/src/client/tags.h index 69a69f5d..fbe7d530 100644 --- a/src/client/tags.h +++ b/src/client/tags.h @@ -39,6 +39,10 @@ struct tagstruct { struct tagstruct *next; }; +extern struct tagstruct *taglist; +extern s_char buf[4096]; +extern s_char exec[8]; + void io_init(void); s_char *gettag(s_char *p); diff --git a/src/client/termio.c b/src/client/termio.c index f70135c2..27d9da3c 100644 --- a/src/client/termio.c +++ b/src/client/termio.c @@ -44,16 +44,6 @@ #include "misc.h" #include "tags.h" -extern struct tagstruct *taglist; -extern s_char buf[4096]; -extern s_char exec[]; - -#ifdef _WIN32 -extern HANDLE hStdIn; -#endif - -int sendeof(int sock); - int termio(int fd, int sock, FILE *auxfi) { diff --git a/src/client/termlib.c b/src/client/termlib.c index 21472157..444aa917 100644 --- a/src/client/termlib.c +++ b/src/client/termlib.c @@ -47,7 +47,7 @@ s_char *SE = 0; int tgetent(char *, char *); -void +static void parsedelay(s_char *r) { s_char *s, *t;