diff options
author | Baptiste Daroussin <bapt@FreeBSD.org> | 2016-10-06 21:30:09 +0000 |
---|---|---|
committer | Baptiste Daroussin <bapt@FreeBSD.org> | 2016-10-06 21:30:09 +0000 |
commit | aa7798c94fa57f6c00fab4393c9fe91334864371 (patch) | |
tree | 61b5a60e9c086b1ba44b4718e7666304a8edab6f /refer/refer..c |
Notes
Diffstat (limited to 'refer/refer..c')
-rw-r--r-- | refer/refer..c | 180 |
1 files changed, 180 insertions, 0 deletions
diff --git a/refer/refer..c b/refer/refer..c new file mode 100644 index 0000000000000..d98f71626558c --- /dev/null +++ b/refer/refer..c @@ -0,0 +1,180 @@ +/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ +/* All Rights Reserved */ + + +/* + * Copyright (c) 1980 Regents of the University of California. + * All rights reserved. The Berkeley software License Agreement + * specifies the terms and conditions for redistribution. + */ + +/* + * Copyright (c) 1983, 1984 1985, 1986, 1987, 1988, Sun Microsystems, Inc. + * All Rights Reserved. + */ + +/* from OpenSolaris "refer..c 1.3 05/06/02 SMI" */ + +/* + * Portions Copyright (c) 2005 Gunnar Ritter, Freiburg i. Br., Germany + * + * Sccsid @(#)refer..c 1.5 (gritter) 12/25/06 + */ + +#include <stdio.h> +#include <ctype.h> +#include <assert.h> +#include "global.h" +#ifndef EUC +#undef getw +#define getw(f) getc(f) +#undef putw +#define putw(c, f) putc(c, f) +#endif /* !EUC */ + +#define FLAG 003 +#define AFLAG 007 +#define NRFTXT 10000 +#define NRFTBL 500 +#define NTFILE 20 +#define QLEN 512 +#define ANSLEN 4000 +#define TAGLEN 400 +#define NSERCH 20 +#define MXSIG 200 /* max bytes in aggregate signal */ + +extern FILE *in; +extern int endpush, sort, labels, keywant, bare; +extern int biblio, science, postpunct; +extern char *smallcaps; +extern char *comname; +extern char *keystr; +extern char *convert; +extern int authrev; +extern int nmlen, dtlen; +extern char *rdata[], **search; +extern int refnum; +extern char *reftable[]; +extern char *rtp, reftext[]; +extern int sep; +extern char tfile[]; +extern char gfile[]; +extern char ofile[]; +extern char hidenam[]; +extern char *Ifile; extern int Iline; +extern FILE *fo, *ftemp; + +/* deliv2.c */ +int hash(const char *); +void err(const char *, ...); +int prefix(const char *, const char *); +char *mindex(const char *, int); +void *zalloc(int, int); +/* glue1.c */ +void huntmain(int, char **); +char *todir(char *); +int setfrom(int); +/* glue2.c */ +void savedir(void); +void restodir(void); +/* glue3.c */ +int corout(char *, char *, char *, char *, int); +int callhunt(char *, char *, char *, int); +int dodeliv(char *, char *, char *, int); +/* glue4.c */ +int grepcall(char *, char *, char *); +void clfgrep(void); +/* glue5.c */ +int fgrep(int, char **); +/* hunt1.c */ +char *todir(char *); +int setfrom(int); +/* hunt2.c */ +int doquery(long *, int, FILE *, int, char **, unsigned *); +long getl(FILE *); +void putl(long, FILE *); +int hcomp(int, int); +int hexch(int, int); +/* hunt3.c */ +int getq(char **); +/* hunt5.c */ +void result(unsigned *, int, FILE *); +long gdate(FILE *); +/* hunt6.c */ +int baddrop(unsigned *, int, FILE *, int, char **, char *, int); +int auxil(char *, char *); +/* hunt7.c */ +int findline(char *, char **, int, long); +/* hunt8.c */ +void runbib(const char *); +int makefgrep(char *); +int ckexist(const char *, const char *); +FILE *iopen(const char *, const char *); +/* hunt9.c */ +void remote(const char *, const char *); +/* inv2.c */ +int newkeys(FILE *, FILE *, FILE *, int, FILE *, int *); +char *trimnl(char *); +/* inv3.c */ +int getargs(char *, char **); +/* inv5.c */ +int recopy(FILE *, FILE *, FILE *, int); +/* inv6.c */ +void whash(FILE *, FILE *, FILE *, int, int, long *, int *); +void putl(long, FILE *); +long getl(FILE *); +/* mkey2.c */ +void dofile(FILE *, char *); +int outkey(char *, int, int); +long grec(char *, FILE *); +char *trimnl(char *); +void chkey(int, char *); +/* mkey3.c */ +int common(char *); +void cominit(void); +int c_look(char *, int); +/* refer2.c */ +void doref(char *); +int newline(const char *); +void choices(char *); +int control(int); +/* refer3.c */ +int corout(char *, char *, char *, char *, int); +/* refer4.c */ +void output(const char *); +void append(char *); +void flout(void); +char *trimnl(char *); +/* refer5.c */ +void putsig(int, char **, int, char *, char *, int); +char *fpar(int, char **, char *, size_t, int, int, int); +void putkey(int, char **, int, char *); +void tokeytab(const char *, int); +int keylet(char *, int); +void mycpy(char *, const char *); +void mycpy2(char *, const char *, int); +void initadd(char *, const char *, const char *); +char *artskp(char *); +/* refer6.c */ +void putref(int, char **); +int tabs(char **, char *); +char *class(int, char **); +int hastype(int, char **, int); +char *caps(char *, char *); +char *revauth(char *, char *); +int last(const char *); +/* refer7.c */ +int chkdup(const char *); +void dumpold(void); +void recopy1(char *); +void condense(int *, int, char *); +int wswap(const void *, const void *); +/* refer8.c */ +char *input(char *, size_t); +char *lookat(void); +void addch(char *, int); +/* shell.c */ +void shell(int, int (*)(int, int), int (*)(int, int)); +/* tick.c */ +void tick(void); +void tock(void); |