52void error (
const char *format, ...)
55 va_start (argptr, format);
56 fprintf (stderr,
"%s error: ",
prog);
57 (void) vfprintf (stderr, format, argptr);
75 fprintf (stderr,
"%s: %s\n",
prog, version_str);
103 fprintf (stderr,
"%s: unknown option `-%s'\n",
prog, *argv);
111#define INF_BUF_SIZE 32768U
127 if ((r = read (
fd, p, b)) == (
unsigned) -1)
137 while ((b -= r) > 0);
138 while (p !=
inf_buf && *--p !=
'\n')
140 while (p !=
inf_buf && *--p !=
'\n')
151 while (p !=
inf_buf && p[-1] !=
'\n')
158 printf (
"%5d:\t%s\n",
line_no, p0);
177 if (c >= t->
ch[0] && c <= t->
ch[1])
182 if ((s = dfaar[t->
to])->rule_no &&
190 if ((
unsigned) *p >= t->
ch[0]
191 && (
unsigned) *p <= t->
ch[1])
209 fprintf (stderr,
"%s: read error\n",
prog);
235int main (
int argc,
char **argv)
237 const char *pattern = NULL;
245 fprintf (stderr,
"usage: agrep [options] pattern file..\n");
246 fprintf (stderr,
" -v dfa verbose\n");
247 fprintf (stderr,
" -n show lines\n");
248 fprintf (stderr,
" -d debug\n");
249 fprintf (stderr,
" -V show version\n");
252 setbuf (stdout, outbuf);
257 if (**++argv !=
'-' && **argv)
265 fprintf (stderr,
"%s: illegal pattern\n",
prog);
276 fprintf (stderr,
"%s: couldn't open `%s'\n",
prog, *argv);
287 fprintf (stderr,
"usage:\n "
288 " %s [-d] [-v] [-n] [-f] pattern file ..\n",
prog);
static int go(int fd, struct DFA_state **dfaar)
int main(int argc, char **argv)
int agrep(struct DFA_state **dfas, int fd)
int agrep_options(int argc, char **argv)
static int inf_flush(int fd)
static char * prline(char *p)
void error(const char *format,...)
int dfa_parse(struct DFA *, const char **)
void dfa_mkstate(struct DFA *)
void dfa_delete(struct DFA **)
struct DFA * dfa_init(void)
void * imalloc(size_t size)
struct DFA_state ** states
void zebra_get_version(char *version_str, char *sha1_str)
Returns Zebra version and SHA1 ID as generated by Git.