On Sep 14, 2010, at 9:17 AM, Alon Bar-Lev wrote:
> 4. grammar.y - any idea why we need pcap_parse if yacc defines it
> anyway instead of yyparse?
Because
1) WinPcap is based on libpcap;
2) libpcap was originally written back when many UN*Xes had only the
old AT&T YACC, which only defined yyparse().
The current top-of-trunk version of grammar.y, at least, defines pcap_parse()
only if YYBISON is not defined, which presumably means "not Bison".
> 5. yacc does not accept -y argument.
Earlier versions of GNUmakefile mirrored the UN*X Makefile.in, and had a YACC
variable that ran Bison, rather than YACC, with the "-y" flag (which, for
Bison, means "act like YACC and produce y.tab.c and y.tab.h files").
The 4.1.2 version runs whatever make sets YACC to refer to, with the YFLAGS
flag. Is there some reason why that was done? Was this to support
parser-generators *other* than Bison? Unless there's a compelling reason not
to run Bison, it should probably go back to the way it was, using Bison -
that'll fix that problem *and* the previous problem, with no changes required
to grammar.y.
If there *is* a compelling reason not to run Bison, then
1) it should not include "-y"
and
2) either it should not do "-p pcap_", if whatever version of YACC is
being used doesn't support "-p", or:
2a) grammar.y should check for YYBISON *and* some other #define
named appropriately for whatever parser-generator is being used
and
2b) it should do "-D{that #define name}".
> 7. Minor modification of (char*)A += code.
(I.e., "casting lvalues considered harmful - and possibly rejected by some
compilers.")
_______________________________________________
Winpcap-users mailing list
[email protected]
https://www.winpcap.org/mailman/listinfo/winpcap-users