From: Roman B. <bog...@in...> - 2004-05-13 18:38:43
|
Stefan wrote: > I'm sorry. My mistake. Should work now. So, this does not work on FreeBSD for the following reason: When you are using AC_CHECK_HEADERS(asm/types.h sys/socket.h linux/netlink.h, AC_DEFINE(HAVE_ETHERTAP, 1, [Have linux/netlink.h?]),, it defines HAVE_ETHERTAP even if it's only one of this 3 files was found. AFAIK, all Unix systems have sys/socket.h, so it should be checked separatly. And there is a such bug I've noticed: when executing ppc in a such way: 'ppc nonexistantfile', it goes core dump.=20 Here is a quickfix (out of your coding style, probably): Index: stream.cc =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/pearpc/pearpc/src/tools/stream.cc,v retrieving revision 1.3 diff -u -r1.3 stream.cc --- stream.cc 11 May 2004 15:37:12 -0000 1.3 +++ stream.cc 13 May 2004 17:59:40 -0000 @@ -1027,6 +1027,9 @@ if (!file) setAccessMode(IOAM_NULL); } else { file =3D fopen(mFilename.contentChar(), mode); + if (file =3D=3D NULL) + perror("fopen()"); + exit(-1); } if (!file) e =3D errno; if (!e) { -Roman Bogorodskiy |